Skip to content

T2-4: tycoon.yml version field enforcement #96

Description

@JesuFemi-O

Milestone: #83
Depends on: #90, #92

Context

TycoonProject has a version field but load_project() never checks or enforces it. Old projects may have version: "0.1.0" while the new schema is "0.2.0".

Goal

In load_project(), after parsing, if project.version < SCHEMA_VERSION, emit a console warning (do not fail):

Warning: tycoon.yml is at schema version 0.1.0, current is 0.2.0.
Run 'tycoon init --upgrade' to migrate.

Add --upgrade flag to tycoon init that calls migrate_project(root) and prints what changed.

Acceptance

  • A tycoon.yml with version: "0.1.0" triggers the warning on tycoon data sources list
  • tycoon init --upgrade in a project dir bumps version and adds missing sections without touching existing fields
  • pytest tests/test_project.py covers both paths

Metadata

Metadata

Assignees

No one assigned

    Labels

    agent-readyClear AC, no open design decisionsarea: configtycoon.yml schema + config singletontype: taskIndividual implementation tasks

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions