sdd-cli 0.1.0
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/README.md +566 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +308 -0
- package/dist/commands/ai-exec.d.ts +1 -0
- package/dist/commands/ai-exec.js +18 -0
- package/dist/commands/ai-status.d.ts +1 -0
- package/dist/commands/ai-status.js +12 -0
- package/dist/commands/doctor.d.ts +1 -0
- package/dist/commands/doctor.js +101 -0
- package/dist/commands/gen-architecture.d.ts +1 -0
- package/dist/commands/gen-architecture.js +61 -0
- package/dist/commands/gen-best-practices.d.ts +1 -0
- package/dist/commands/gen-best-practices.js +64 -0
- package/dist/commands/gen-functional-spec.d.ts +1 -0
- package/dist/commands/gen-functional-spec.js +67 -0
- package/dist/commands/gen-project-readme.d.ts +1 -0
- package/dist/commands/gen-project-readme.js +72 -0
- package/dist/commands/gen-requirements.d.ts +1 -0
- package/dist/commands/gen-requirements.js +7 -0
- package/dist/commands/gen-technical-spec.d.ts +1 -0
- package/dist/commands/gen-technical-spec.js +67 -0
- package/dist/commands/gen-utils.d.ts +4 -0
- package/dist/commands/gen-utils.js +44 -0
- package/dist/commands/hello.d.ts +1 -0
- package/dist/commands/hello.js +63 -0
- package/dist/commands/init.d.ts +1 -0
- package/dist/commands/init.js +9 -0
- package/dist/commands/learn-deliver.d.ts +1 -0
- package/dist/commands/learn-deliver.js +55 -0
- package/dist/commands/learn-refine.d.ts +1 -0
- package/dist/commands/learn-refine.js +71 -0
- package/dist/commands/learn-start.d.ts +1 -0
- package/dist/commands/learn-start.js +63 -0
- package/dist/commands/learn-utils.d.ts +22 -0
- package/dist/commands/learn-utils.js +78 -0
- package/dist/commands/list.d.ts +1 -0
- package/dist/commands/list.js +69 -0
- package/dist/commands/pr-audit.d.ts +1 -0
- package/dist/commands/pr-audit.js +59 -0
- package/dist/commands/pr-finish.d.ts +1 -0
- package/dist/commands/pr-finish.js +51 -0
- package/dist/commands/pr-report.d.ts +1 -0
- package/dist/commands/pr-report.js +59 -0
- package/dist/commands/pr-respond.d.ts +1 -0
- package/dist/commands/pr-respond.js +65 -0
- package/dist/commands/pr-start.d.ts +1 -0
- package/dist/commands/pr-start.js +79 -0
- package/dist/commands/pr-utils.d.ts +8 -0
- package/dist/commands/pr-utils.js +54 -0
- package/dist/commands/req-archive.d.ts +1 -0
- package/dist/commands/req-archive.js +33 -0
- package/dist/commands/req-create.d.ts +10 -0
- package/dist/commands/req-create.js +94 -0
- package/dist/commands/req-export.d.ts +1 -0
- package/dist/commands/req-export.js +37 -0
- package/dist/commands/req-finish.d.ts +1 -0
- package/dist/commands/req-finish.js +120 -0
- package/dist/commands/req-lint.d.ts +1 -0
- package/dist/commands/req-lint.js +58 -0
- package/dist/commands/req-list.d.ts +1 -0
- package/dist/commands/req-list.js +36 -0
- package/dist/commands/req-plan.d.ts +1 -0
- package/dist/commands/req-plan.js +200 -0
- package/dist/commands/req-refine.d.ts +1 -0
- package/dist/commands/req-refine.js +108 -0
- package/dist/commands/req-report.d.ts +1 -0
- package/dist/commands/req-report.js +44 -0
- package/dist/commands/req-start.d.ts +1 -0
- package/dist/commands/req-start.js +131 -0
- package/dist/commands/req-status.d.ts +1 -0
- package/dist/commands/req-status.js +29 -0
- package/dist/commands/route.d.ts +1 -0
- package/dist/commands/route.js +30 -0
- package/dist/commands/test-plan.d.ts +1 -0
- package/dist/commands/test-plan.js +81 -0
- package/dist/context/flags.d.ts +7 -0
- package/dist/context/flags.js +17 -0
- package/dist/paths.d.ts +1 -0
- package/dist/paths.js +10 -0
- package/dist/providers/codex.d.ts +7 -0
- package/dist/providers/codex.js +19 -0
- package/dist/router/flow.d.ts +1 -0
- package/dist/router/flow.js +17 -0
- package/dist/router/intent.d.ts +3 -0
- package/dist/router/intent.js +69 -0
- package/dist/router/prompt-map.d.ts +1 -0
- package/dist/router/prompt-map.js +20 -0
- package/dist/router/prompt-packs.d.ts +8 -0
- package/dist/router/prompt-packs.js +20 -0
- package/dist/router/validate-prompt-packs.d.ts +4 -0
- package/dist/router/validate-prompt-packs.js +16 -0
- package/dist/templates/render.d.ts +2 -0
- package/dist/templates/render.js +25 -0
- package/dist/templates/validate.d.ts +4 -0
- package/dist/templates/validate.js +58 -0
- package/dist/types.d.ts +7 -0
- package/dist/types.js +2 -0
- package/dist/ui/prompt.d.ts +2 -0
- package/dist/ui/prompt.js +49 -0
- package/dist/utils/list.d.ts +2 -0
- package/dist/utils/list.js +20 -0
- package/dist/validation/validate.d.ts +4 -0
- package/dist/validation/validate.js +20 -0
- package/dist/workspace/index.d.ts +21 -0
- package/dist/workspace/index.js +103 -0
- package/flows/ADMISSIONS_ADMIN.md +33 -0
- package/flows/ART.md +33 -0
- package/flows/BUG_FIX.md +32 -0
- package/flows/COURT_SYSTEM.md +33 -0
- package/flows/DATA_SCIENTIST.md +33 -0
- package/flows/ECOMMERCE.md +33 -0
- package/flows/ECONOMICS.md +33 -0
- package/flows/GRAPHIC_DESIGN.md +33 -0
- package/flows/HISTORY.md +33 -0
- package/flows/LAWYER.md +34 -0
- package/flows/PROGRAMMER.md +33 -0
- package/flows/PR_REVIEW.md +33 -0
- package/flows/README.md +29 -0
- package/flows/RETAIL_STORE.md +33 -0
- package/flows/SOCIOLOGY.md +33 -0
- package/flows/STATE_ADMIN.md +33 -0
- package/flows/STUDENT_UNIVERSITY.md +33 -0
- package/flows/TAXES_ADMIN.md +33 -0
- package/flows/TEACHER.md +33 -0
- package/package.json +32 -0
- package/router/BUG_FIX.flow.md +63 -0
- package/router/BUSINESS.flow.md +57 -0
- package/router/DATA_SCIENCE.flow.md +58 -0
- package/router/DESIGN.flow.md +58 -0
- package/router/FLOW_TEMPLATE.md +26 -0
- package/router/GENERIC.flow.md +37 -0
- package/router/HUMANITIES.flow.md +58 -0
- package/router/LEARN.flow.md +52 -0
- package/router/LEGAL.flow.md +58 -0
- package/router/PR_REVIEW.flow.md +55 -0
- package/router/README.md +23 -0
- package/router/SOFTWARE_FEATURE.flow.md +59 -0
- package/schemas/architecture.schema.json +13 -0
- package/schemas/decision-log.schema.json +16 -0
- package/schemas/diagram.schema.json +11 -0
- package/schemas/domain.schema.json +20 -0
- package/schemas/functional-spec.schema.json +15 -0
- package/schemas/gate.schema.json +10 -0
- package/schemas/learn-session.schema.json +15 -0
- package/schemas/pr-review.schema.json +20 -0
- package/schemas/progress-log.schema.json +21 -0
- package/schemas/project-readme.schema.json +23 -0
- package/schemas/project.schema.json +16 -0
- package/schemas/prompt-pack.schema.json +12 -0
- package/schemas/quality.schema.json +23 -0
- package/schemas/requirement.schema.json +34 -0
- package/schemas/role.schema.json +17 -0
- package/schemas/router-flow.schema.json +15 -0
- package/schemas/router-intent.schema.json +13 -0
- package/schemas/technical-spec.schema.json +15 -0
- package/schemas/template.schema.json +10 -0
- package/schemas/test-plan.schema.json +13 -0
- package/schemas/workspace.schema.json +12 -0
- package/templates/architecture.md +16 -0
- package/templates/changelog.md +3 -0
- package/templates/ci-checklist.md +14 -0
- package/templates/decision-log.md +16 -0
- package/templates/diagrams/component.mmd +3 -0
- package/templates/diagrams/container.mmd +3 -0
- package/templates/diagrams/context.mmd +3 -0
- package/templates/functional-spec.md +22 -0
- package/templates/gate-index.json +20 -0
- package/templates/implementation-plan.md +13 -0
- package/templates/pr-comment-audit.md +19 -0
- package/templates/pr-comment-lifecycle.md +11 -0
- package/templates/pr-comment-severity.md +13 -0
- package/templates/pr-dispute-resolution.md +16 -0
- package/templates/pr-metrics.md +10 -0
- package/templates/pr-response-generator.md +11 -0
- package/templates/pr-response-style.md +13 -0
- package/templates/pr-review-report.md +22 -0
- package/templates/pr-review-summary.md +16 -0
- package/templates/progress-log.md +6 -0
- package/templates/project-readme.md +19 -0
- package/templates/prompt-pack-index.json +127 -0
- package/templates/quality.yml +17 -0
- package/templates/requirement.md +33 -0
- package/templates/summary.md +10 -0
- package/templates/technical-spec.md +22 -0
- package/templates/template-index.json +212 -0
- package/templates/test-plan.md +16 -0
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Router flow: Legal / civic
|
|
2
|
+
|
|
3
|
+
## Entry signals
|
|
4
|
+
- "law", "court", "policy", "compliance", "contract"
|
|
5
|
+
|
|
6
|
+
## Steps
|
|
7
|
+
1) Interview for jurisdiction, confidentiality, and actors.
|
|
8
|
+
2) Define legal constraints and evidence requirements.
|
|
9
|
+
3) Generate requirements and risk checks.
|
|
10
|
+
4) Ask for approval or `--improve`.
|
|
11
|
+
5) Produce audit and retention guidelines.
|
|
12
|
+
|
|
13
|
+
## Required questions
|
|
14
|
+
- What jurisdiction and regulations apply?
|
|
15
|
+
- What data is privileged or sensitive?
|
|
16
|
+
- Who are the actors and access levels?
|
|
17
|
+
- What retention and audit rules exist?
|
|
18
|
+
- What outcomes or deliverables are required?
|
|
19
|
+
|
|
20
|
+
## Required outputs
|
|
21
|
+
- `requirement.md`
|
|
22
|
+
- `functional-spec.md`
|
|
23
|
+
- `technical-spec.md`
|
|
24
|
+
- `architecture.md`
|
|
25
|
+
- `test-plan.md` (access and audit checks)
|
|
26
|
+
|
|
27
|
+
## Scripted Q/A tree
|
|
28
|
+
|
|
29
|
+
### Q1: Jurisdiction
|
|
30
|
+
Q: "What jurisdiction and regulations apply?"
|
|
31
|
+
A: capture jurisdiction and constraints
|
|
32
|
+
|
|
33
|
+
### Q2: Sensitivity
|
|
34
|
+
Q: "What data is privileged or sensitive?"
|
|
35
|
+
A: capture data sensitivity
|
|
36
|
+
|
|
37
|
+
### Q3: Actors
|
|
38
|
+
Q: "Who are the actors and access levels?"
|
|
39
|
+
A: capture roles and access
|
|
40
|
+
|
|
41
|
+
### Q4: Retention
|
|
42
|
+
Q: "What retention and audit rules exist?"
|
|
43
|
+
A: capture retention rules
|
|
44
|
+
|
|
45
|
+
### Q5: Outcomes
|
|
46
|
+
Q: "What outcomes or deliverables are required?"
|
|
47
|
+
A: capture deliverables
|
|
48
|
+
|
|
49
|
+
### Q6: Approval gate
|
|
50
|
+
Q: "Approve requirements and move to specs?"
|
|
51
|
+
A: Yes -> generate specs
|
|
52
|
+
A: No -> refine
|
|
53
|
+
|
|
54
|
+
## Gates
|
|
55
|
+
- Compliance constraints required before plan
|
|
56
|
+
|
|
57
|
+
## Agents
|
|
58
|
+
- Legal Analyst, Compliance, QA
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# Router flow: PR review
|
|
2
|
+
|
|
3
|
+
## Entry signals
|
|
4
|
+
- "PR", "pull request", "review comments", "code review"
|
|
5
|
+
|
|
6
|
+
## Steps
|
|
7
|
+
1) Ask permission to open PR link.
|
|
8
|
+
2) Fetch PR details and comments (if approved).
|
|
9
|
+
3) Summarize comments and classify by severity.
|
|
10
|
+
4) Ask user to confirm understanding and add context.
|
|
11
|
+
5) Run prework audit: validate if comments are correct or debatable.
|
|
12
|
+
6) Propose fixes and alternatives.
|
|
13
|
+
7) Generate requirements/specs for the changes.
|
|
14
|
+
8) Gate implementation until test plan is defined.
|
|
15
|
+
|
|
16
|
+
## Required questions
|
|
17
|
+
- What is the PR link and target branch?
|
|
18
|
+
- Are there blocking comments?
|
|
19
|
+
- What tests are required?
|
|
20
|
+
- Is there any deadline or release window?
|
|
21
|
+
|
|
22
|
+
## Scripted Q/A tree
|
|
23
|
+
|
|
24
|
+
### Q1: Link access
|
|
25
|
+
Q: "Do you approve opening the PR link?"
|
|
26
|
+
A: Yes -> fetch + summarize
|
|
27
|
+
A: No -> ask for pasted comments
|
|
28
|
+
|
|
29
|
+
### Q2: User perspective
|
|
30
|
+
Q: "Do you agree with the comments? Any context we should know?"
|
|
31
|
+
A: capture user insights
|
|
32
|
+
|
|
33
|
+
### Q3: Prework audit
|
|
34
|
+
Q: "Should we challenge or accept any comment? If so, why?"
|
|
35
|
+
A: capture constraints and rationale
|
|
36
|
+
|
|
37
|
+
### Q4: Approval gate
|
|
38
|
+
Q: "Approve plan to address comments and generate specs?"
|
|
39
|
+
A: Yes -> generate artifacts
|
|
40
|
+
A: No -> refine
|
|
41
|
+
|
|
42
|
+
## Required outputs
|
|
43
|
+
- `requirement.md`
|
|
44
|
+
- `technical-spec.md`
|
|
45
|
+
- `test-plan.md`
|
|
46
|
+
- `progress-log.md`
|
|
47
|
+
- `pr-comment-audit.md`
|
|
48
|
+
- `pr-review-summary.md`
|
|
49
|
+
|
|
50
|
+
## Gates
|
|
51
|
+
- All comments reviewed before proposing fixes
|
|
52
|
+
- Test plan required before implementation
|
|
53
|
+
|
|
54
|
+
## Agents
|
|
55
|
+
- Reviewer, Tech Lead, QA
|
package/router/README.md
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Router scripts
|
|
2
|
+
|
|
3
|
+
These scripts define intent detection and the step-by-step conversation for each flow.
|
|
4
|
+
|
|
5
|
+
Each script includes:
|
|
6
|
+
- Entry signals
|
|
7
|
+
- Required questions
|
|
8
|
+
- Required outputs
|
|
9
|
+
- Gate checks
|
|
10
|
+
- Suggested agent roles
|
|
11
|
+
- Scripted Q/A tree with optional branches
|
|
12
|
+
|
|
13
|
+
Available flows:
|
|
14
|
+
- BUG_FIX
|
|
15
|
+
- LEARN
|
|
16
|
+
- SOFTWARE_FEATURE
|
|
17
|
+
- DATA_SCIENCE
|
|
18
|
+
- DESIGN
|
|
19
|
+
- HUMANITIES
|
|
20
|
+
- BUSINESS
|
|
21
|
+
- LEGAL
|
|
22
|
+
- PR_REVIEW
|
|
23
|
+
- GENERIC
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Router flow: Software feature
|
|
2
|
+
|
|
3
|
+
## Entry signals
|
|
4
|
+
- "feature", "build", "implement", "API", "backend", "frontend"
|
|
5
|
+
|
|
6
|
+
## Steps
|
|
7
|
+
1) Run discovery and acceptance criteria prompts.
|
|
8
|
+
2) Generate requirements and functional spec.
|
|
9
|
+
3) Generate technical spec and architecture.
|
|
10
|
+
4) Ask for approval or `--improve`.
|
|
11
|
+
5) Activate quality profile and test plan.
|
|
12
|
+
|
|
13
|
+
## Required questions
|
|
14
|
+
- What problem is solved and for whom?
|
|
15
|
+
- What is in scope/out of scope?
|
|
16
|
+
- What are acceptance criteria?
|
|
17
|
+
- What performance/security constraints apply?
|
|
18
|
+
- What is the rollout strategy?
|
|
19
|
+
|
|
20
|
+
## Required outputs
|
|
21
|
+
- `requirement.md`
|
|
22
|
+
- `functional-spec.md`
|
|
23
|
+
- `technical-spec.md`
|
|
24
|
+
- `architecture.md`
|
|
25
|
+
- `test-plan.md`
|
|
26
|
+
- `quality.yml`
|
|
27
|
+
|
|
28
|
+
## Scripted Q/A tree
|
|
29
|
+
|
|
30
|
+
### Q1: Problem and users
|
|
31
|
+
Q: "What problem are we solving and for whom?"
|
|
32
|
+
A: capture user/persona and objective
|
|
33
|
+
|
|
34
|
+
### Q2: Scope
|
|
35
|
+
Q: "What is in scope and out of scope?"
|
|
36
|
+
A: capture scope boundaries
|
|
37
|
+
|
|
38
|
+
### Q3: Acceptance criteria
|
|
39
|
+
Q: "What are the acceptance criteria?"
|
|
40
|
+
A: capture verifiable criteria
|
|
41
|
+
|
|
42
|
+
### Q4: Constraints
|
|
43
|
+
Q: "Any performance, security, or compatibility constraints?"
|
|
44
|
+
A: capture NFRs
|
|
45
|
+
|
|
46
|
+
### Q5: Rollout
|
|
47
|
+
Q: "How should we rollout and measure success?"
|
|
48
|
+
A: capture rollout + metrics
|
|
49
|
+
|
|
50
|
+
### Q6: Approval gate
|
|
51
|
+
Q: "Approve requirements and move to specs?"
|
|
52
|
+
A: Yes -> generate specs
|
|
53
|
+
A: No -> refine
|
|
54
|
+
|
|
55
|
+
## Gates
|
|
56
|
+
- No implementation without acceptance criteria and test plan
|
|
57
|
+
|
|
58
|
+
## Agents
|
|
59
|
+
- Req Analyst, Solution Architect, Tech Lead, QA
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Architecture",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["context", "containers", "components"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"context": { "type": "string" },
|
|
8
|
+
"containers": { "type": "array", "items": { "type": "string" } },
|
|
9
|
+
"components": { "type": "array", "items": { "type": "string" } },
|
|
10
|
+
"deployment": { "type": "array", "items": { "type": "string" } },
|
|
11
|
+
"diagrams": { "type": "array", "items": { "type": "string" } }
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Decision Log (ADR)",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["id", "title", "status", "context", "decision", "consequences", "date"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"id": { "type": "string" },
|
|
8
|
+
"title": { "type": "string" },
|
|
9
|
+
"status": { "type": "string", "enum": ["proposed", "accepted", "rejected", "superseded"] },
|
|
10
|
+
"context": { "type": "string" },
|
|
11
|
+
"decision": { "type": "string" },
|
|
12
|
+
"consequences": { "type": "string" },
|
|
13
|
+
"date": { "type": "string" },
|
|
14
|
+
"supersedes": { "type": "string" }
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Diagram",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["type", "path"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"type": { "type": "string", "enum": ["context", "container", "component"] },
|
|
8
|
+
"path": { "type": "string" },
|
|
9
|
+
"format": { "type": "string", "enum": ["mermaid", "plantuml"] }
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Domain",
|
|
4
|
+
"type": "string",
|
|
5
|
+
"enum": [
|
|
6
|
+
"software",
|
|
7
|
+
"bug_fix",
|
|
8
|
+
"pr_review",
|
|
9
|
+
"data_science",
|
|
10
|
+
"design",
|
|
11
|
+
"art",
|
|
12
|
+
"history",
|
|
13
|
+
"sociology",
|
|
14
|
+
"economics",
|
|
15
|
+
"legal",
|
|
16
|
+
"education",
|
|
17
|
+
"business",
|
|
18
|
+
"learning"
|
|
19
|
+
]
|
|
20
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Functional Spec",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["overview", "useCases", "rules", "acceptanceCriteria"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"overview": { "type": "string" },
|
|
8
|
+
"actors": { "type": "array", "items": { "type": "string" } },
|
|
9
|
+
"useCases": { "type": "array", "items": { "type": "string" } },
|
|
10
|
+
"flows": { "type": "array", "items": { "type": "string" } },
|
|
11
|
+
"rules": { "type": "array", "items": { "type": "string" } },
|
|
12
|
+
"errors": { "type": "array", "items": { "type": "string" } },
|
|
13
|
+
"acceptanceCriteria": { "type": "array", "items": { "type": "string" } }
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Learn Session",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["topic", "depth", "format", "focusAreas", "purpose"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"topic": { "type": "string" },
|
|
8
|
+
"depth": { "type": "string", "enum": ["overview", "academic", "expert"] },
|
|
9
|
+
"format": { "type": "string", "enum": ["summary", "syllabus", "report", "qa"] },
|
|
10
|
+
"focusAreas": { "type": "array", "items": { "type": "string" } },
|
|
11
|
+
"constraints": { "type": "array", "items": { "type": "string" } },
|
|
12
|
+
"purpose": { "type": "string" },
|
|
13
|
+
"timeBudget": { "type": "string" }
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "PR Review",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["prLink", "comments", "audit", "responses", "tests"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"prLink": { "type": "string" },
|
|
8
|
+
"comments": { "type": "array", "items": { "type": "string" } },
|
|
9
|
+
"audit": {
|
|
10
|
+
"type": "object",
|
|
11
|
+
"required": ["valid", "debatable"],
|
|
12
|
+
"properties": {
|
|
13
|
+
"valid": { "type": "array", "items": { "type": "string" } },
|
|
14
|
+
"debatable": { "type": "array", "items": { "type": "string" } }
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"responses": { "type": "array", "items": { "type": "string" } },
|
|
18
|
+
"tests": { "type": "array", "items": { "type": "string" } }
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Progress Log",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["entries"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"entries": {
|
|
8
|
+
"type": "array",
|
|
9
|
+
"items": {
|
|
10
|
+
"type": "object",
|
|
11
|
+
"required": ["date", "summary"],
|
|
12
|
+
"properties": {
|
|
13
|
+
"date": { "type": "string" },
|
|
14
|
+
"summary": { "type": "string" },
|
|
15
|
+
"risks": { "type": "array", "items": { "type": "string" } },
|
|
16
|
+
"nextSteps": { "type": "array", "items": { "type": "string" } }
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Project README",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["projectName", "overview", "howToRun", "architectureSummary", "specs", "testingNotes"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"projectName": { "type": "string" },
|
|
8
|
+
"overview": { "type": "string" },
|
|
9
|
+
"howToRun": { "type": "string" },
|
|
10
|
+
"architectureSummary": { "type": "string" },
|
|
11
|
+
"specs": {
|
|
12
|
+
"type": "object",
|
|
13
|
+
"required": ["requirements", "functionalSpec", "technicalSpec", "architecture"],
|
|
14
|
+
"properties": {
|
|
15
|
+
"requirements": { "type": "string" },
|
|
16
|
+
"functionalSpec": { "type": "string" },
|
|
17
|
+
"technicalSpec": { "type": "string" },
|
|
18
|
+
"architecture": { "type": "string" }
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"testingNotes": { "type": "string" }
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Project Metadata",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["id", "name", "domain", "status", "path", "updatedAt"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"id": { "type": "string" },
|
|
8
|
+
"name": { "type": "string" },
|
|
9
|
+
"domain": { "type": "string" },
|
|
10
|
+
"status": { "type": "string", "enum": ["backlog", "wip", "in-progress", "done", "archived"] },
|
|
11
|
+
"path": { "type": "string" },
|
|
12
|
+
"languageProfile": { "type": "string" },
|
|
13
|
+
"qualityProfile": { "type": "string" },
|
|
14
|
+
"updatedAt": { "type": "string" }
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Prompt Pack",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["id", "questions", "gates"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"id": { "type": "string" },
|
|
8
|
+
"questions": { "type": "array", "items": { "type": "string" } },
|
|
9
|
+
"gates": { "type": "array", "items": { "type": "string" } },
|
|
10
|
+
"followUps": { "type": "array", "items": { "type": "string" } }
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Quality Contract",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["rules", "profiles", "thresholds"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"rules": { "type": "array", "items": { "type": "string" } },
|
|
8
|
+
"thresholds": {
|
|
9
|
+
"type": "object",
|
|
10
|
+
"properties": {
|
|
11
|
+
"coverage": { "type": "string" },
|
|
12
|
+
"complexity": { "type": "string" }
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"profiles": {
|
|
16
|
+
"type": "object",
|
|
17
|
+
"additionalProperties": {
|
|
18
|
+
"type": "array",
|
|
19
|
+
"items": { "type": "string" }
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Requirement",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["id", "title", "objective", "scope", "acceptanceCriteria", "nfrs", "status"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"id": { "type": "string" },
|
|
8
|
+
"title": { "type": "string" },
|
|
9
|
+
"objective": { "type": "string" },
|
|
10
|
+
"status": { "type": "string", "enum": ["backlog", "wip", "in-progress", "done", "archived"] },
|
|
11
|
+
"actors": { "type": "array", "items": { "type": "string" } },
|
|
12
|
+
"scope": {
|
|
13
|
+
"type": "object",
|
|
14
|
+
"required": ["in", "out"],
|
|
15
|
+
"properties": {
|
|
16
|
+
"in": { "type": "array", "items": { "type": "string" } },
|
|
17
|
+
"out": { "type": "array", "items": { "type": "string" } }
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"acceptanceCriteria": { "type": "array", "items": { "type": "string" } },
|
|
21
|
+
"nfrs": {
|
|
22
|
+
"type": "object",
|
|
23
|
+
"properties": {
|
|
24
|
+
"security": { "type": "string" },
|
|
25
|
+
"performance": { "type": "string" },
|
|
26
|
+
"availability": { "type": "string" }
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"constraints": { "type": "array", "items": { "type": "string" } },
|
|
30
|
+
"risks": { "type": "array", "items": { "type": "string" } },
|
|
31
|
+
"links": { "type": "array", "items": { "type": "string" } },
|
|
32
|
+
"updatedAt": { "type": "string" }
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Agent Role",
|
|
4
|
+
"type": "string",
|
|
5
|
+
"enum": [
|
|
6
|
+
"req_analyst",
|
|
7
|
+
"solution_architect",
|
|
8
|
+
"tech_lead",
|
|
9
|
+
"qa",
|
|
10
|
+
"docs_scribe",
|
|
11
|
+
"reviewer",
|
|
12
|
+
"researcher",
|
|
13
|
+
"critic",
|
|
14
|
+
"synthesizer",
|
|
15
|
+
"analyst"
|
|
16
|
+
]
|
|
17
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Router Flow",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["id", "entrySignals", "steps", "questions", "outputs", "gates", "agents"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"id": { "type": "string" },
|
|
8
|
+
"entrySignals": { "type": "array", "items": { "type": "string" } },
|
|
9
|
+
"steps": { "type": "array", "items": { "type": "string" } },
|
|
10
|
+
"questions": { "type": "array", "items": { "type": "string" } },
|
|
11
|
+
"outputs": { "type": "array", "items": { "type": "string" } },
|
|
12
|
+
"gates": { "type": "array", "items": { "type": "string" } },
|
|
13
|
+
"agents": { "type": "array", "items": { "type": "string" } }
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Router Intent",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["intent", "confidence", "flow", "domain"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"intent": { "type": "string" },
|
|
8
|
+
"confidence": { "type": "number", "minimum": 0, "maximum": 1 },
|
|
9
|
+
"flow": { "type": "string" },
|
|
10
|
+
"domain": { "$ref": "domain.schema.json" },
|
|
11
|
+
"signals": { "type": "array", "items": { "type": "string" } }
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Technical Spec",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["stack", "interfaces", "dataModel", "security", "errors"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"stack": { "type": "array", "items": { "type": "string" } },
|
|
8
|
+
"interfaces": { "type": "array", "items": { "type": "string" } },
|
|
9
|
+
"dataModel": { "type": "array", "items": { "type": "string" } },
|
|
10
|
+
"security": { "type": "array", "items": { "type": "string" } },
|
|
11
|
+
"errors": { "type": "array", "items": { "type": "string" } },
|
|
12
|
+
"performance": { "type": "array", "items": { "type": "string" } },
|
|
13
|
+
"observability": { "type": "array", "items": { "type": "string" } }
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Template Metadata",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["name", "placeholders"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"name": { "type": "string" },
|
|
8
|
+
"placeholders": { "type": "array", "items": { "type": "string" } }
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Test Plan",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["criticalPaths", "edgeCases", "coverageTarget", "acceptanceTests"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"criticalPaths": { "type": "array", "items": { "type": "string" } },
|
|
8
|
+
"edgeCases": { "type": "array", "items": { "type": "string" } },
|
|
9
|
+
"coverageTarget": { "type": "string" },
|
|
10
|
+
"acceptanceTests": { "type": "array", "items": { "type": "string" } },
|
|
11
|
+
"regressions": { "type": "array", "items": { "type": "string" } }
|
|
12
|
+
}
|
|
13
|
+
}
|