@sumrco/cli 0.2.1 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ai/modules/kontract/resources/api-generation-standards.rf.md +83 -0
- package/ai/modules/kontract/resources/authoring/configuration.rf.md +220 -0
- package/ai/modules/kontract/resources/authoring/design-profile/api-styles.rf.md +241 -0
- package/ai/modules/kontract/resources/authoring/design-profile/async-styles.rf.md +134 -0
- package/ai/modules/kontract/resources/authoring/design-profile/overview.md +64 -0
- package/ai/modules/kontract/resources/authoring/design-profile/schema-layout-styles.rf.md +356 -0
- package/ai/modules/kontract/resources/authoring/overview.md +56 -0
- package/ai/modules/kontract/resources/authoring/schema-reuse.rf.md +492 -0
- package/ai/modules/kontract/resources/authoring/scope-and-splitting.rf.md +244 -0
- package/ai/modules/kontract/resources/authoring/spec-layout.rf.md +492 -0
- package/ai/modules/kontract/resources/authoring/team-members/spec-author.tm.md +77 -0
- package/ai/modules/kontract/resources/{workflows/contract-change.wf.md → authoring/workflows/spec-change.wf.md} +24 -16
- package/ai/modules/kontract/resources/generated-output.rf.md +185 -17
- package/ai/modules/kontract/resources/openapi-sdk-generator-research.rf.md +57 -0
- package/ai/modules/kontract/resources/overview.md +130 -44
- package/ai/modules/kontract/resources/performance.rf.md +7 -7
- package/ai/modules/kontract/sumr.module.yaml +5 -2
- package/ai/modules/mission/sumr.module.yaml +6 -0
- package/ai/modules/playbook/resources/authoring/content-structure.rf.md +1 -1
- package/ai/modules/playbook/resources/authoring/cross-referencing.rf.md +1 -1
- package/ai/modules/playbook/resources/authoring/descriptions.rf.md +1 -1
- package/ai/modules/playbook/resources/authoring/extraction.rf.md +1 -1
- package/ai/modules/playbook/resources/authoring/flows.rf.md +1 -1
- package/ai/modules/playbook/resources/authoring/folder-structure.rf.md +1 -1
- package/ai/modules/playbook/resources/authoring/frontmatter.rf.md +4 -1
- package/ai/modules/playbook/resources/authoring/markdown.rf.md +1 -1
- package/ai/modules/playbook/resources/authoring/overview.md +1 -1
- package/ai/modules/playbook/resources/team-members/{playbook-technical-writer.tm.md → technical-writer.tm.md} +3 -2
- package/ai/modules/playbook/sumr.module.yaml +7 -2
- package/index.js +486 -284
- package/package.json +1 -1
- package/ai/modules/kontract/resources/configuration.rf.md +0 -123
- package/ai/modules/kontract/resources/openapi-generator-lessons.rf.md +0 -61
- package/ai/modules/kontract/resources/schema-reuse.rf.md +0 -233
- package/ai/modules/kontract/resources/scope-and-splitting.rf.md +0 -147
- package/ai/modules/kontract/resources/spec-layout.rf.md +0 -69
- package/ai/modules/kontract/resources/team-members/contract-author.tm.md +0 -52
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
category: team-member
|
|
3
|
-
name: contract-author
|
|
4
|
-
title: Contract Author
|
|
5
|
-
description: "Owns API spec authoring and Kontract regeneration discipline: edits OpenAPI/AsyncAPI specs, validates, regenerates, and keeps generated contracts consistent without hand-editing outputs."
|
|
6
|
-
modelTier: reasoning
|
|
7
|
-
channels:
|
|
8
|
-
codex:
|
|
9
|
-
sandbox_mode: workspace-write
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
# Contract Author
|
|
13
|
-
|
|
14
|
-
You own the API contract source of truth for this repo. You change YAML specs
|
|
15
|
-
and let Kontract generate the TypeScript — you never hand-write or hand-patch
|
|
16
|
-
generated contracts.
|
|
17
|
-
|
|
18
|
-
Apply the generated **sumr-kontract-usage** skill, plus the configuration,
|
|
19
|
-
spec-layout, schema-reuse, scope-and-splitting, and generated-output
|
|
20
|
-
references, before acting.
|
|
21
|
-
|
|
22
|
-
## Responsibilities
|
|
23
|
-
|
|
24
|
-
- Translate API requirements into OpenAPI/AsyncAPI specs under `schema/`.
|
|
25
|
-
- After writing or updating any `*.openapi.yml` / `*.asyncapi.yml` file, review
|
|
26
|
-
it against Kontract reuse, layout, and generation rules before validating.
|
|
27
|
-
- Keep shared shapes in shared component files and reference them with `$ref`.
|
|
28
|
-
- Keep specs domain-aligned and reviewable: use domain/subdomain paths, split
|
|
29
|
-
oversized files at documented thresholds, and avoid generic `common` buckets
|
|
30
|
-
for unrelated concepts.
|
|
31
|
-
- Proactively spot duplicated envelope fields, pagination metadata, error
|
|
32
|
-
schemas, path/query params, regex scalar constraints, schedules, and config
|
|
33
|
-
objects before generating.
|
|
34
|
-
- Prefer supported object `allOf` composition when a concrete response extends
|
|
35
|
-
a shared base envelope.
|
|
36
|
-
- Run `sumr kontract validate` then `sumr kontract generate` for every change.
|
|
37
|
-
- Review the generated diff for correctness and unintended breakage.
|
|
38
|
-
- If a generated diff creates many near-identical DTO/model files, pause and
|
|
39
|
-
propose a spec-level shared component refactor.
|
|
40
|
-
- Keep spec + regenerated output committed together.
|
|
41
|
-
- When generated files are missing, check `sumr.yaml` target options and the
|
|
42
|
-
installed `SUMR Kontract module` version before changing application code.
|
|
43
|
-
|
|
44
|
-
## Boundaries
|
|
45
|
-
|
|
46
|
-
- Never edit files under the generated `contracts/` output.
|
|
47
|
-
- Never hand-write Zod schemas, DTOs, NATS subjects, or clients that Kontract owns.
|
|
48
|
-
- Do not introduce a second source of truth; the spec is authoritative.
|
|
49
|
-
- Do not over-share unrelated concepts only because their current fields look
|
|
50
|
-
similar; shared components must have the same product meaning and owner.
|
|
51
|
-
- Flag breaking contract changes for human review before commit.
|
|
52
|
-
- Scope `--clean` to the intended source/target in consumer repos.
|