AGENT SKILL

eng-contract-codegen-coship

Contract co-ship for Compozy wire changes. Use when editing public DTOs, OpenAPI, JSON-RPC extension shapes, generated clients, or handler request/response semantics. Do not use for internal Go refactors or test-only changes that leave the wire contract unchanged.

适用职业律师与法务
License 许可
MIT
所属仓库
compozy/compozy
最近更新
2026-11-14
Stars
★ 2.9k
Forks
187

01 前言 Front Matter

name
eng-contract-codegen-coship
trigger
implicit
description
Contract co-ship for Compozy wire changes. Use when editing public DTOs, OpenAPI, JSON-RPC extension shapes, generated clients, or handler request/response semantics. Do not use for internal Go refactors or test-only changes that leave the wire contract unchanged.

02 资源文件 1

03 SKILL.md 正文

Contract Codegen Co-Ship

Ship changed wire contracts with their generated artifacts and affected consumers. Triggers include public DTOs under internal/api/contract/ or internal/api/spec/, OpenAPI/generated clients, JSON-RPC extension shapes, and handler request/response/status/authentication/error semantics.

  1. Identify the owning contract and compatibility regime. Preserve SD-013: public replacements auto-migrate losslessly where possible; otherwise retain the old shape for one release with warnings and a named removal release. Only documented experimental surfaces may skip that window. Internal consumers change together.
  2. Use applicable sections of references/coship-checklist.md to trace consumers. Record impact once in the owning spec/task/PR using docs/_memory/change-impact.md; reuse existing decisions and group unaffected surfaces instead of producing a no-impact form per item.
  3. Run root make codegen after changing the owning source. It also owns JSON-RPC Go-to-TypeScript generation. Inspect generated output and co-ship it with source; investigate unrelated drift or nondeterminism.
  4. Update affected Web types, adapters, query keys/options, hooks, components, MSW fixtures, and stories. Import generated DTOs rather than maintaining copies. Read only the layers the changed shape reaches.
  5. Update applicable site/protocol/config documentation and run make cli-docs for CLI changes. Document active migrations and deprecations; remove old public docs only when the corresponding surface is eligible for removal under SD-013.
  6. Verify no generator drift with make codegen-check and use the affected root Turbo lint/typecheck/test/build lanes for Web/site changes. Repository-wide gates run only in CI, per root CLAUDE.md.

Complete when source, generated output, affected consumers, fixtures, docs, and required delivery evidence agree. A local task does not acquire a PR-publication requirement merely by loading this skill.

If a consumer typecheck fails, diagnose the actual mismatch; it does not automatically prove a mirrored DTO. For runner-only failures, inspect the failing CI lane and reproduce the relevant environment rather than assuming every failure is Linux race parity.

04 同仓库更多 Skills