Files
conductor/semver.yml

93 lines
2.7 KiB
YAML

# Conductor — Semantic Versioning Config
# Mode: on completion
# Structure: component + root
version_mode: completion
structure: component_root
codeberg: true
codeberg_repo: thingscouldgetdicey/conductor
gitea: true
gitea_repo: gitea.thingscouldgetdicey.online/conductor/conductor
tag_format: "${component}@${version}"
# Root version = project completeness toward 1.0.0
# Root → 1.0.0 only when ALL components are production-ready and system works end-to-end
root:
version: 0.7.2
bump_rules:
component_patch: root_patch # 0.0.x
component_minor: root_patch # 0.0.x typically, OR 0.x.0 for milestones
component_major: root_minor # 0.x.0
documentation_rules:
minor_bump: "PRD.md and README.md MUST be updated — document what was added, how it works, and any new install steps"
patch_bump: "Changelog entry in commit message is sufficient"
major_bump: "Full PRD revision + migration guide + README update"
# Each component has its own version, starting at 0.0.0
# Components are added as the project is built
components:
- name: core
version: 0.0.0
path: crates/core
description: Core types, traits, error handling, and shared abstractions
- name: config
version: 0.0.0
path: crates/config
description: Configuration loading, validation, and environment management
- name: platform
version: 0.0.0
path: crates/platform
description: Platform API client traits and shared platform logic
- name: tiktok
version: 0.0.0
path: crates/tiktok
description: TikTok API client (posting, analytics, auth)
- name: instagram
version: 0.0.0
path: crates/instagram
description: Instagram API client (posting, stories, analytics, auth)
- name: youtube
version: 0.0.0
path: crates/youtube
description: YouTube API client (upload, analytics, auth)
- name: content
version: 0.0.0
path: crates/content
description: Content suggestion engine, scheduling, and pipeline
- name: storage
version: 0.0.0
path: crates/storage
description: SQLite persistence layer, migrations, and data access
- name: thumbnail
version: 0.0.0
path: crates/thumbnail
description: Thumbnail generation and image processing
- name: ui
version: 0.0.0
path: crates/ui
description: Tauri desktop UI (HTML/CSS/JS frontend + Rust backend)
- name: cli
version: 0.0.0
path: crates/cli
description: Command-line interface for headless operation
- name: lan
version: 0.0.0
path: crates/lan
description: LAN hosting mode — optional setting to serve the app on your local network
- name: pi
version: 0.0.0
path: crates/pi
description: Pi setup assistant — optional setting to flash and deploy Conductor to a Raspberry Pi