Contract-sync synchronizes changed contracts across specs, context files, agent workflows, progress trackers, and affected systems before review. Use it when implementation changes schemas, routes, GraphQL types, env vars, ports, tokens, enums, Docker services, or related contracts.
Install
npx skillscat add donartkins/griot/contract-sync Install via the SkillsCat registry.
Contract-sync synchronizes changed contracts across specs, context files, agent workflows, progress trackers, and affected systems before review. Use it when implementation changes schemas, routes, GraphQL types, env vars, ports, tokens, enums, Docker services, or related contracts.
Contract Synchronization Gate
Any implementation change that corrects or changes a contract must be reflected in the same branch across:
- The owning system's current feature spec (correct field names, real signatures, final enums).
- Every future spec in that system AND every dependent system's specs (fix stale references).
- Relevant context files:
project-kit/context/*,<system>/project-kit/context/*. - Root
AGENTS.mdwhen agent workflow or system boundaries change. progress-tracker.mdof every affected system (session notes on what changed and why).
Contract Types
- Backend: EF Core entities/relations, enum values, REST route signatures, GraphQL type/query/mutation names, auth token claims/endpoints,
GRIOT_SERVICE_TOKENbehavior, Docker/Compose service names and ports. - Web/Mobile: route names, theme tokens, query cache shapes, auth store/cookie behavior.
- Infra: compose service names/ports, container registry names, CI job names, env var matrix.
- QA: suite names, coverage thresholds, test environment expectations.
- AI/MCP: tool names, tool input/output JSON contract, agent/task ids, realtime stream shapes.
Procedure
- Before starting a feature, list every contract it touches.
- Implement.
- Diff against every file that references those contracts; update stale mentions in the same branch.
- Verify with grep: search the repo for the old contract name/signature and confirm zero stale hits.
- Commit the contract updates together with the feature — never on
mainseparately.
A feature is not ready for review while later specs or context still describe stale contracts.