Skip to content

Squelette 3.20.2 — the fake newer template starts from blank registers too

Choose a tag to compare

@JyMinet JyMinet released this 28 Sep 05:19
· 1 commit to main since this release

Second fix to the template suite for derived projects, right after 3.20.1. Not a single line of the controller changes; for the template itself, nothing changes.

What was broken. The upgrade tests build a "newer version" of the template by copying the tree the suite runs in (make_template_source). Inside a derived project, that copy carried the project's own records — its ideas list, whose ideas point at its Work Items and its decisions — and --seed-required planted them into a pristine copy that has neither: the rehearsal audit failed on IDEAS. Found while rehearsing a real project's upgrade to 3.20.1 on a throwaway copy: 182 tests, 1 red — the last one the bound volume had been hiding.

What changes.

  • Fixture (tests/test_template.py, make_template_source): the template source goes through reset_to_not_started_fixture, like every test copy — blank records, template role, not initialized.
  • New test (B16, test_a_template_source_built_inside_a_derived_project_carries_none_of_its_records): from a bound derived project holding an idea aimed at its own Work Item, it builds a template source, checks it carries no idea, no decision and no volume, then replays the path that fell (--seed-required, --apply). Red on 3.20.1, green on 3.20.2.
  • Core manifest at 3.20.2; demo and transcript regenerated; changelog, roadmap and view updated.

Verified. Template: 183 tests green, audit, bootstrap-audit, traceability and demo.py --check PASS. A real derived project upgraded with this core: 183 tests, 173 passed, 10 skipped, 0 failures.

For derived projects. A routine upgrade with template-upgrade from tag v3.20.2 (one core file changes: tests/test_template.py) — straight from 3.20.0 if 3.20.1 was skipped —, under a Work Item and the double stop, then install-gate.