feat: migrate legacy codex hooks cleanup
This commit is contained in:
@@ -15,6 +15,22 @@ We decided to introduce an explicit Installer Migration Module for install-time
|
||||
- Require migrations to plan first, then apply through a shared executor that owns backup, rollback, and reporting.
|
||||
- Default ambiguous or unknown files to preserve; destructive changes need managed-file evidence or explicit user choice.
|
||||
- Support dry-run output using the same planner used by apply mode.
|
||||
- Treat the runtime configuration contract registry in `docs/installer-migrations.md` as the source of truth for migrations that touch host runtime config.
|
||||
|
||||
## Runtime Contract Decision
|
||||
|
||||
Every migration that rewrites runtime config, moves an invocation surface, or
|
||||
retires a generated runtime artifact must cite the registry row in
|
||||
`docs/installer-migrations.md`. If the migration changes where a runtime loads
|
||||
commands, skills, agents, hooks, or rules, the PR must update both the registry
|
||||
and `docs/ARCHITECTURE.md`.
|
||||
|
||||
The registry records what GSD installs, where it installs it, when migrations
|
||||
may touch it, who owns the surrounding config, and why the shape matches the
|
||||
host runtime. When upstream docs do not publish an API or docs version, the
|
||||
checked date is the drift sentinel. A later upstream docs or CLI release that
|
||||
changes command, skill, agent, hook, or rule loading requires a new registry
|
||||
snapshot before migration work proceeds.
|
||||
|
||||
## Consequences
|
||||
|
||||
@@ -23,6 +39,7 @@ We decided to introduce an explicit Installer Migration Module for install-time
|
||||
- Locally modified managed files get a consistent backup path before removal or replacement.
|
||||
- Future rollback work can become runtime-neutral instead of Codex-specific.
|
||||
- Migration authors must define ownership evidence, conflict behavior, runtime scope, and non-interactive behavior.
|
||||
- Migration authors must also define which runtime contract they are relying on and whether the upstream documentation is versioned.
|
||||
- The installer gains another state file, so tests must cover missing, legacy, and checksum-mismatch state.
|
||||
|
||||
## Scope
|
||||
|
||||
Reference in New Issue
Block a user