[Debt] Remove legacy compatibility code only after migration/export compatibility requirements are explicit #40

Closed
opened 2026-07-06 11:32:46 +02:00 by zemion · 6 comments
Owner

Imported from the consolidated GovOPlaN product backlog.

  • Source: /mnt/DATA/Nextcloud/ADD ideas UG/Products/govoplan/backlog.md
  • Line: 258
  • Section: Deferred Cleanup Notes

Imported backlog item:

- [ ] Remove legacy compatibility code only after migration/export compatibility requirements are explicit.
<!-- codex-backlog-fingerprint:f0ba0190be7a72dfc362bfa8 --> Imported from the consolidated GovOPlaN product backlog. - Source: `/mnt/DATA/Nextcloud/ADD ideas UG/Products/govoplan/backlog.md` - Line: `258` - Section: `Deferred Cleanup Notes` Imported backlog item: ```markdown - [ ] Remove legacy compatibility code only after migration/export compatibility requirements are explicit. ```
zemion added this to the Deferred Cleanup milestone 2026-07-06 12:53:53 +02:00
Author
Owner

Codex State: progress

Summary

  • Compatibility requirements are now documented in MODULE_ARCHITECTURE.md, RELEASE_DEPENDENCIES.md, CONFIGURATION_PACKAGES.md, and module boundary docs.

Next / Blocked

  • Keep open as the cleanup umbrella until remaining runtime compatibility paths are inventoried and either removed, version-gated, or marked public for the 0.1.x split line.
  • Known linked work: access permission/default-role migration (#77), admin UI/helper cleanup (#79), historical migration baseline/squash (#78 follow-up context), and old scope alias retirement.

Suggested status label: status/in-progress

## Codex State: progress ### Summary - Compatibility requirements are now documented in MODULE_ARCHITECTURE.md, RELEASE_DEPENDENCIES.md, CONFIGURATION_PACKAGES.md, and module boundary docs. ### Next / Blocked - Keep open as the cleanup umbrella until remaining runtime compatibility paths are inventoried and either removed, version-gated, or marked public for the 0.1.x split line. - Known linked work: access permission/default-role migration (#77), admin UI/helper cleanup (#79), historical migration baseline/squash (#78 follow-up context), and old scope alias retirement. Suggested status label: `status/in-progress`
Author
Owner

Related release-migration baseline work: add-ideas/govoplan-core#223 add-ideas/govoplan-core#223.

Keeping this compatibility-cleanup umbrella open until all remaining runtime compatibility paths are inventoried and either removed, version-gated, or declared public for the 0.1.x split line.

Related release-migration baseline work: `add-ideas/govoplan-core#223` https://git.add-ideas.de/add-ideas/govoplan-core/issues/223. Keeping this compatibility-cleanup umbrella open until all remaining runtime compatibility paths are inventoried and either removed, version-gated, or declared public for the 0.1.x split line.
Author
Owner

Codex State: reviewed

Reviewed after the current push. This remains open by design: the remaining compatibility paths have not yet been fully inventoried and classified as removable, version-gated, or public, and migration/export compatibility requirements are not yet explicit.

## Codex State: reviewed Reviewed after the current push. This remains open by design: the remaining compatibility paths have not yet been fully inventoried and classified as removable, version-gated, or public, and migration/export compatibility requirements are not yet explicit.
Author
Owner

2026-07-29 compatibility review: the previously linked implementation work #77, #78, #79, and #223 is closed. The remaining blocker is now policy, not code discovery. Decisions still required: (1) oldest supported database upgrade origin, (2) config/export schema read and write window, (3) scope/API alias deprecation window, and (4) retention period for migration-only compatibility. Recommended pre-1.0 baseline: support database upgrades from every tagged 0.1.x release; read the previous two config/export schema versions while writing only the current version; emit explicit diagnostics for aliases; retire runtime/API aliases at 0.2 with migration notes; retain database reconciliation for at least one major cycle. Once adopted, the remaining compatibility inventory can be classified and removed/version-gated mechanically.

2026-07-29 compatibility review: the previously linked implementation work #77, #78, #79, and #223 is closed. The remaining blocker is now policy, not code discovery. Decisions still required: (1) oldest supported database upgrade origin, (2) config/export schema read and write window, (3) scope/API alias deprecation window, and (4) retention period for migration-only compatibility. Recommended pre-1.0 baseline: support database upgrades from every tagged 0.1.x release; read the previous two config/export schema versions while writing only the current version; emit explicit diagnostics for aliases; retire runtime/API aliases at 0.2 with migration notes; retain database reconciliation for at least one major cycle. Once adopted, the remaining compatibility inventory can be classified and removed/version-gated mechanically.
Author
Owner

Codex State: ready

Summary

  • The product decision is adopted and documented in 51d4032 (docs/COMPATIBILITY_POLICY.md): all tagged 0.1.x database origins are supported; portable schemas read current plus two previous versions and write current only; runtime/API aliases retire at 0.2 with diagnostics and migration notes; migration-only reconciliation remains for at least one subsequent major cycle.

Next / Blocked

  • Inventory remaining compatibility paths against the removal checklist and classify each as database bridge, portable-schema reader, or runtime/API alias before removal or version-gating.

Suggested status label: status/ready

## Codex State: ready ### Summary - The product decision is adopted and documented in 51d4032 (docs/COMPATIBILITY_POLICY.md): all tagged 0.1.x database origins are supported; portable schemas read current plus two previous versions and write current only; runtime/API aliases retire at 0.2 with diagnostics and migration notes; migration-only reconciliation remains for at least one subsequent major cycle. ### Next / Blocked - Inventory remaining compatibility paths against the removal checklist and classify each as database bridge, portable-schema reader, or runtime/API alias before removal or version-gating. Suggested status label: `status/ready`
zemion added
status
ready
codex/ready
and removed
status
triage
codex/needs-human
labels 2026-07-30 01:05:39 +02:00
Author
Owner

Completed in 9b88ae3. docs/COMPATIBILITY_INVENTORY.md classifies retained database bridges, portable-schema readers, and runtime/API aliases with their retention and removal releases. The dead _run_restart_command_legacy path was removed; retained paths are required by the adopted compatibility policy. Default and development migration tracks pass.

Completed in `9b88ae3`. `docs/COMPATIBILITY_INVENTORY.md` classifies retained database bridges, portable-schema readers, and runtime/API aliases with their retention and removal releases. The dead `_run_restart_command_legacy` path was removed; retained paths are required by the adopted compatibility policy. Default and development migration tracks pass.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-core#40