development-contract-repo-overlay-template
Development Contract Repo Overlay Template
This skill documents the expected shape of the repo-local overlay that a target repository should have after adopting the development contract system. It is not guidance for this skills repository itself, which only stores the reusable skills.
In a target repo, start by reading that repo's policy file, then apply development-contract-process.
Treat repo guidance as secondary to the policy file for contract mechanics; if they disagree, fix the mismatch instead of guessing.
Use this skill when
- authoring or revising the repo-local overlay generated for a target repository
- checking that overlay guidance matches the target repo's policy file, checker command, lifecycle helper, plan directory, and validation profiles
- deciding which repo-specific literals belong in the overlay versus the policy file
Do not use this skill as the primary process for ordinary implementation work
inside a target repo. For that, use development-contract-process plus the
target repo's actual local overlay and implementation skill.
Repo overlay workflow
- Read the touched files before editing.
- Read the target repo's policy file for the plan directory, substantive path rules, required lanes, and validation profiles.
- Apply
development-contract-processfor the generic workflow and decision rules. - If the change is substantive under repo policy, update a non-template plan in the lifecycle subdirectory under the repo's plan directory that matches the record's
State. Prefer the repo's lifecycle helper when changing an existing record's lifecycle. - Keep verifier notes concrete: record commands, observed results, and any contract mismatches explicitly.
- Run the smallest repo policy profile that proves the change, then extend when the surface justifies it.
- Before closing work, run the checker command declared in the repo policy file.
Decision rules
- Treat the target repo's policy file as the source of truth for what is substantive in that repo.
- Do not leave a substantive change without a non-template plan update.
- Use the repo's lifecycle helper with its supersede option when superseding a record so the replacement link is updated with the move.
- Keep the repo overlay thin: change policy data first, then only add prose when the repo needs extra human guidance that policy cannot express.
- If repo policy and docs disagree, fix the policy or the docs so the checker, template, and guidance converge again.
What the generated overlay should contain
- the concrete policy file path used by the target repo
- the checker command used by that repo
- the lifecycle helper command when the repo uses state-specific directories
- the named validation profiles exposed by the repo policy
- only the extra repo-specific human guidance that policy cannot express
Example target-repo literals
Many repos generated from the example system will expose names such as:
config/change-contract-policy.shbash scripts/check-change-contracts.shbash scripts/set-feature-record-lifecycle.shFRAME_CONTRACT_VALIDATION_PROFILE_DOCSFRAME_CONTRACT_VALIDATION_PROFILE_CODEFRAME_CONTRACT_VALIDATION_PROFILE_RELEASE
Treat those as common examples, not universal constants.
Output expectations
When this skill applies, the final work should leave behind:
- a thin repo-local overlay aligned with
development-contract-process - code or docs aligned with repo guidance and policy
- an updated non-template plan when the change is substantive
- explicit verifier evidence in the plan
- repo policy, docs, and checker behavior that still agree
- a concise report of what was validated and what could not be validated
Examples
Generate the repo-local contract overlay after porting the system: write a thin overlay that names the concrete policy file, checker, helper, plan directory, and validation profile names without duplicating schema details.Tighten this target repo's contract overlay because policy paths changed: read the policy and helper names, update only the repo-specific literals in the overlay, and leave day-to-day process rules indevelopment-contract-process.Port this contract system into another repo: usedevelopment-contract-systemto build the repo-owned policy, checker, template, helper, tests, docs, and generated repo-local overlay.
More from n-n-code/n-n-code-skills
project-vendor-boundary
Overlay for app-owned versus vendored dependency boundaries. Portable across repos that vendor third-party code. Use when work touches vendored dependencies or their integration seam.
19coding-guidance-cpp
C++ implementation and review skill. Use when writing, modifying, refactoring, or reviewing C++ code, especially modern C++17/20/23 code that needs strong ownership, type safety, and testable design. Portable across C++ repos and build systems.
18project-platform-diagnose
Overlay for environment-sensitive diagnosis — service startup, install issues, platform integration, headless/container behavior, and runtime smoke checks. Portable across repos where build, install, or runtime behavior depends on the local platform.
18documenter
Baseline overlay for substantial documentation authoring or restructuring: README, specs, ADRs, tutorials, how-to guides, reference docs, explanations, API docs, code comments, changelogs, and agent-facing docs. Use when the agent should classify doc type, ground claims in repo truth, and validate examples before finishing.
18security
Security workflow skill for repo-grounded threat modeling, exploit-focused security review, and secure-by-default implementation guidance. Use when the user explicitly asks for security work, or when security properties are the primary concern in a high-risk change. Do not trigger for ordinary code review, routine endpoint work, or general backend implementation just because a repo contains APIs, auth, or secrets.
18project-release-maintainer
Overlay for release-facing docs, install layout, workflows, licenses, and hygiene scripts. Portable across repos with a release/packaging pipeline. Use for publication-facing changes.
17