@manhd_d/ai-harness 0.11.0 → 0.12.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/CHANGELOG.md +17 -0
- package/README.md +1 -1
- package/capabilities/architecture/capability.json +1 -1
- package/capabilities/architecture/checks/verification.json +11 -0
- package/capabilities/architecture/evals/cases.json +10 -0
- package/capabilities/architecture/skills/harness-architecture-change-impact/SKILL.md +5 -0
- package/capabilities/architecture/templates/project-map.md +5 -0
- package/capabilities/architecture/workflows/change-review.md +2 -0
- package/capabilities/delivery/capability.json +1 -1
- package/capabilities/delivery/checks/verification.json +11 -0
- package/capabilities/delivery/evals/cases.json +10 -0
- package/capabilities/delivery/skills/harness-delivery-scope-change/SKILL.md +6 -0
- package/capabilities/delivery/workflows/execution-change.md +2 -0
- package/capabilities/product/capability.json +1 -1
- package/capabilities/product/checks/verification.json +11 -0
- package/capabilities/product/evals/cases.json +10 -0
- package/capabilities/product/skills/harness-product-backlog-prioritization/SKILL.md +7 -0
- package/capabilities/product/skills/harness-product-business-analysis/SKILL.md +5 -0
- package/capabilities/product/skills/harness-product-traceability/SKILL.md +7 -1
- package/capabilities/product/templates/backlog.md +7 -0
- package/capabilities/product/templates/traceability.md +7 -0
- package/capabilities/product/workflows/change-impact-analysis.md +4 -2
- package/capabilities/product/workflows/techspec-maintenance.md +3 -1
- package/core/checks/verification.json +13 -0
- package/core/evals/cases.json +70 -0
- package/core/evals/composition.json +15 -0
- package/core/rules/context.md +4 -0
- package/core/skills/harness-debugging/SKILL.md +6 -0
- package/core/skills/harness-review/SKILL.md +6 -0
- package/core/skills/harness-spec/SKILL.md +6 -0
- package/core/workflows/adaptive-verification.md +3 -0
- package/core/workflows/artifact-contract.md +5 -0
- package/core/workflows/continuous-development.md +98 -0
- package/core/workflows/spec-to-code.md +3 -0
- package/docs/README.md +2 -0
- package/docs/agent-handoffs.md +4 -0
- package/docs/architecture.md +4 -0
- package/docs/continuous-development.md +88 -0
- package/docs/documentation-workflows.md +2 -0
- package/docs/end-to-end-workflow.md +4 -0
- package/docs/examples/continuous-development.md +40 -0
- package/docs/getting-started.md +2 -0
- package/docs/i18n/README.vi.md +2 -0
- package/docs/skill-matrix.md +4 -0
- package/docs/versioning.md +4 -0
- package/evals/README.md +4 -0
- package/harness.yaml +1 -1
- package/package.json +1 -1
- package/templates/AGENTS.md +2 -0
- package/templates/openspec/design.md +10 -0
- package/templates/openspec/tasks.md +8 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## Unreleased
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
- Continuous development workflow: fresh baselines, proportional cross-role impact, selective living documentation and source-policy proposals, feedback triage and session handoff.
|
|
7
|
+
- Seven Core behavioral scenarios plus a cross-capability scenario, installation/update preservation coverage and package checks.
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
- Existing Core/Product/Architecture/Delivery skills and OpenSpec templates retain stable IDs and distinguish implementation, merge and release evidence.
|
|
11
|
+
- Product 1.5.0, Architecture/Delivery 1.1.0; no new runtime, CLI commands or config schemas. Distribution version and release automation remain unchanged.
|
|
12
|
+
|
|
3
13
|
## Unreleased — Adaptive verification and TechSpec
|
|
4
14
|
- Add read-only adaptive discovery and digest/pointer-based requirement evidence validation; preserve advisory verify behavior.
|
|
5
15
|
- Add Core verification and Product 1.4.0 selective TechSpec maintenance using existing artifact routes/policies.
|
|
@@ -115,6 +125,13 @@
|
|
|
115
125
|
- Check release metadata consistency and establish single-release-PR version discipline; retain v0.6.0 until a dedicated release PR.
|
|
116
126
|
|
|
117
127
|
|
|
128
|
+
## [0.12.0](https://github.com/manh0303/ai-harness/compare/v0.11.0...v0.12.0) (2026-10-13)
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
### Features
|
|
132
|
+
|
|
133
|
+
* continuous development and living documentation ([e87f007](https://github.com/manh0303/ai-harness/commit/e87f007c31a4a0d99f98b47f75c00ff632d92023))
|
|
134
|
+
|
|
118
135
|
## [0.11.0](https://github.com/manh0303/ai-harness/compare/v0.10.0...v0.11.0) (2026-10-13)
|
|
119
136
|
|
|
120
137
|
|
package/README.md
CHANGED
|
@@ -52,4 +52,4 @@ If `--detect` cannot identify the stack, [select modules explicitly](docs/gettin
|
|
|
52
52
|
|
|
53
53
|
[Contributing](CONTRIBUTING.md) · [Harness maintenance](docs/harness-maintenance.md) · [MIT](LICENSE).
|
|
54
54
|
|
|
55
|
-
[Adaptive verification & TechSpec](docs/adaptive-verification.md):
|
|
55
|
+
[Continuous development](docs/continuous-development.md) · [Adaptive verification & TechSpec](docs/adaptive-verification.md): successive changes, current context and selective docs.
|
|
@@ -24,6 +24,17 @@
|
|
|
24
24
|
"Configured checks vs manual/unavailable verification"
|
|
25
25
|
],
|
|
26
26
|
"execution": "manual"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"id": "continuous-maintenance",
|
|
30
|
+
"title": "Continuous change review",
|
|
31
|
+
"command": [],
|
|
32
|
+
"when_file": null,
|
|
33
|
+
"evidence": [
|
|
34
|
+
"Current code/map/ADR revisions and authority decision for drift",
|
|
35
|
+
"Affected data/API/event consumers, NFR and compatibility/regression impact"
|
|
36
|
+
],
|
|
37
|
+
"execution": "manual"
|
|
27
38
|
}
|
|
28
39
|
]
|
|
29
40
|
}
|
|
@@ -30,6 +30,16 @@
|
|
|
30
30
|
"Updates affected context only on verified facts or reviewed decisions and preserves history"
|
|
31
31
|
],
|
|
32
32
|
"critical": true
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"id": "continuous-drift",
|
|
36
|
+
"prompt": "Approved BR-003 says retention 30 days; current code uses 60; a draft says 90. Fix the inconsistency; no accepted decision resolves the conflict.",
|
|
37
|
+
"criteria": [
|
|
38
|
+
"Cites conflicting source anchors/revisions and distinguishes approved/draft/superseded status",
|
|
39
|
+
"Identifies authority/owner and resolves disputed intent before editing that behavior rather than choosing code or docs silently",
|
|
40
|
+
"Continues independent authorized work and records conflict/blocker in existing decisions/impact"
|
|
41
|
+
],
|
|
42
|
+
"critical": true
|
|
33
43
|
}
|
|
34
44
|
]
|
|
35
45
|
}
|
|
@@ -41,3 +41,8 @@ Follow Core permissions, clarification and project-conventions. Ask only consequ
|
|
|
41
41
|
2–3 distinct options, evidence-based recommendation and free text; reuse established answers.
|
|
42
42
|
No invented source, measured result, target, estimate or approval. No external messaging/publishing,
|
|
43
43
|
paid tool use or production changes beyond the user's explicit authorization.
|
|
44
|
+
|
|
45
|
+
## Session continuity
|
|
46
|
+
Use Core `continuous-development.md` to compare map, requirements/ADRs, code and evidence revisions
|
|
47
|
+
with the prior handoff. Record drift with both source anchors and authority/owner; do not choose code
|
|
48
|
+
or docs by recency alone. Refresh only touched map/contract/ADR sections after reconciliation.
|
|
@@ -24,3 +24,8 @@ Refresh the touched entries; do not regenerate the entire project for every task
|
|
|
24
24
|
## Review and handoff
|
|
25
25
|
Record actual owner decisions, unresolved consequential questions, verification performed/skipped,
|
|
26
26
|
next role, source/output paths and affected OpenSpec change. Draft text is not an accepted decision.
|
|
27
|
+
|
|
28
|
+
## Resume reconciliation
|
|
29
|
+
Compare previous verified revisions with current touched source/working-tree changes. Link the active
|
|
30
|
+
OpenSpec baseline, stale assumptions/evidence, authority decision and pending refresh; do not copy
|
|
31
|
+
change-level progress into a second log.
|
|
@@ -10,3 +10,5 @@ updated affected context and explicit residual risk.
|
|
|
10
10
|
5. Use harness-architecture-review on design/diff with actual lint/test/build/boundary evidence.
|
|
11
11
|
State manual-only checks, skipped environments and author-vs-independent review explicitly.
|
|
12
12
|
6. Handoff findings, source paths, decisions, IDs, pending work and next owner; release follows DevOps.
|
|
13
|
+
|
|
14
|
+
Enter via Core `continuous-development.md` to reconcile the current baseline with the previous handoff. Record remaining work and separate implementation, merge and release evidence in the existing change; feedback stays proposed until an owner accepts scope.
|
|
@@ -24,6 +24,17 @@
|
|
|
24
24
|
"No invented schedule, progress or stakeholder messaging"
|
|
25
25
|
],
|
|
26
26
|
"execution": "manual"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"id": "continuous-maintenance",
|
|
30
|
+
"title": "Continuous change review",
|
|
31
|
+
"command": [],
|
|
32
|
+
"when_file": null,
|
|
33
|
+
"evidence": [
|
|
34
|
+
"Actual progress/dependency/risk evidence and remaining work",
|
|
35
|
+
"Implementation complete, merged and released separate; no invented dates"
|
|
36
|
+
],
|
|
37
|
+
"execution": "manual"
|
|
27
38
|
}
|
|
28
39
|
]
|
|
29
40
|
}
|
|
@@ -20,6 +20,16 @@
|
|
|
20
20
|
"Records actual owner answer before affected implementation and updates traceability/plan"
|
|
21
21
|
],
|
|
22
22
|
"critical": true
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"id": "continuous-resume",
|
|
26
|
+
"prompt": "Continue change X. Its handoff says code A and FR-002 rev 2 with PASS at A. Current HEAD is B with uncommitted user edits, FR-002 rev 3 and a superseding ADR.",
|
|
27
|
+
"criteria": [
|
|
28
|
+
"Re-reads current code/docs/ADR and working tree instead of trusting old summary",
|
|
29
|
+
"Reconciles changed assumptions and re-runs affected impact/checks; does not reuse old PASS as current proof",
|
|
30
|
+
"Preserves user edits and updates existing tasks/design/map with evidence and next step instead of a new context store"
|
|
31
|
+
],
|
|
32
|
+
"critical": true
|
|
23
33
|
}
|
|
24
34
|
]
|
|
25
35
|
}
|
|
@@ -41,3 +41,9 @@ Follow Core permissions, clarification and project-conventions. Ask only consequ
|
|
|
41
41
|
2–3 distinct options, evidence-based recommendation and free text; reuse established answers.
|
|
42
42
|
No invented source, measured result, target, estimate or approval. No external messaging/publishing,
|
|
43
43
|
paid tool use or production changes beyond the user's explicit authorization.
|
|
44
|
+
|
|
45
|
+
## Feedback and evidence
|
|
46
|
+
Use Core `continuous-development.md` for proposed feedback vs accepted scope and session continuity.
|
|
47
|
+
Update dependencies, risks and plan progress from actual evidence. Track implementation complete,
|
|
48
|
+
merged and released separately with PR/release references; absent evidence stays unknown. Store
|
|
49
|
+
remaining work and next action in existing change tasks, without another progress registry.
|
|
@@ -7,3 +7,5 @@
|
|
|
7
7
|
4. Update affected plan, requirements, ADRs and OpenSpec only after the actual decision; keep history.
|
|
8
8
|
5. Produce a status draft with completed/pending/blocked work and evidence. Release ownership/gates
|
|
9
9
|
remain in DevOps; PM proposals do not approve delivery or production changes.
|
|
10
|
+
|
|
11
|
+
Enter via Core `continuous-development.md` to reconcile the current baseline with the previous handoff. Record remaining work and separate implementation, merge and release evidence in the existing change; feedback stays proposed until an owner accepts scope.
|
|
@@ -60,6 +60,17 @@
|
|
|
60
60
|
"Static UNVERIFIED claims and affected-section source policy"
|
|
61
61
|
],
|
|
62
62
|
"execution": "manual"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"id": "continuous-maintenance",
|
|
66
|
+
"title": "Continuous change review",
|
|
67
|
+
"command": [],
|
|
68
|
+
"when_file": null,
|
|
69
|
+
"evidence": [
|
|
70
|
+
"Stable rule/AC IDs and source-linked section changes",
|
|
71
|
+
"Feedback deduplicated and proposed until accepted; no automatic scope expansion"
|
|
72
|
+
],
|
|
73
|
+
"execution": "manual"
|
|
63
74
|
}
|
|
64
75
|
]
|
|
65
76
|
}
|
|
@@ -51,6 +51,16 @@
|
|
|
51
51
|
"Reuse canonical artifact routing"
|
|
52
52
|
],
|
|
53
53
|
"critical": true
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"id": "continuous-feedback",
|
|
57
|
+
"prompt": "Triage UAT-12 duplicating an existing null-label defect, UAT-13 requesting bulk import outside accepted release scope, and a supplied operating error report. No new implementation or release is authorized.",
|
|
58
|
+
"criteria": [
|
|
59
|
+
"Deduplicates in the existing backlog/proposal with source, expected/observed and requirement links",
|
|
60
|
+
"Separates defect from proposed new scope and seeks only missing owner decisions; does not implement feedback automatically or promise dates",
|
|
61
|
+
"Records evidence-based risks/next steps and separates implementation complete, merged and released"
|
|
62
|
+
],
|
|
63
|
+
"critical": true
|
|
54
64
|
}
|
|
55
65
|
]
|
|
56
66
|
}
|
|
@@ -40,3 +40,10 @@ Synthetic illustration: Rank secure create/search before optional import using a
|
|
|
40
40
|
Use `.harness/capabilities/product/workflows/product-to-solution.md`; supply reviewed source/requirement
|
|
41
41
|
IDs, output paths and actual owner decisions to the next BA/PO/SA/PM role as applicable. Return gaps
|
|
42
42
|
to their owner; a single host may perform roles sequentially without claiming independent approval.
|
|
43
|
+
|
|
44
|
+
## Feedback intake
|
|
45
|
+
Under Core `continuous-development.md`, triage supplied bug reports, UAT findings, user feedback and
|
|
46
|
+
operational evidence into the existing backlog or a policy-compliant proposal. Deduplicate source and
|
|
47
|
+
requirement IDs; distinguish defects against approved AC from new wishes. Record expected/observed,
|
|
48
|
+
severity/value, decision owner and proposed action. Only an actual accepted scope decision enters the
|
|
49
|
+
active change; no automatic scope expansion, fabricated priority or promised timeline.
|
|
@@ -41,3 +41,8 @@ Synthetic illustration: BR-001 requires organization-scoped search; AS-IS behavi
|
|
|
41
41
|
Use `.harness/capabilities/product/workflows/product-to-solution.md`; supply reviewed source/requirement
|
|
42
42
|
IDs, output paths and actual owner decisions to the next BA/PO/SA/PM role as applicable. Return gaps
|
|
43
43
|
to their owner; a single host may perform roles sequentially without claiming independent approval.
|
|
44
|
+
|
|
45
|
+
## Continuous changes
|
|
46
|
+
Use Core `continuous-development.md`. Compare approved vs proposed rule/use-case/AC deltas at actual
|
|
47
|
+
source revisions; retain IDs and withdrawn history. Trace changed rules into API/data/event contracts
|
|
48
|
+
and regression expectations. Record docs–code disagreement and its decision owner before propagation.
|
|
@@ -13,7 +13,7 @@ description: Maintain bidirectional links from document sources through BRD/PRD/
|
|
|
13
13
|
2. Verify referential integrity: no duplicate IDs, orphan stories, orphan AC, or nonexistent source anchors.
|
|
14
14
|
3. Mark not-yet-created artifacts as `pending`; never manufacture Figma node IDs or repository commits.
|
|
15
15
|
4. Compute coverage (e.g. requirements with story, AC and review status) and explicitly state excluded or deferred items.
|
|
16
|
-
5. On source change, compare source version/content, create an impact report for BRD/PRD/stories/UX/OpenSpec and
|
|
16
|
+
5. On source change, compare source version/content, create an impact report for BRD/PRD/stories/UX/OpenSpec and resolve only missing consequential owner decisions before propagation; reuse existing scoped authorization.
|
|
17
17
|
|
|
18
18
|
## Output
|
|
19
19
|
- `docs/product/traceability.md` and `change-impact.md` when requested.
|
|
@@ -39,3 +39,9 @@ Synthetic illustration: SRC-001 → FR-001 → US-001 → AC-US-001-01 → ADR-0
|
|
|
39
39
|
Use `.harness/capabilities/product/workflows/product-to-solution.md`; supply reviewed source/requirement
|
|
40
40
|
IDs, output paths and actual owner decisions to the next BA/PO/SA/PM role as applicable. Return gaps
|
|
41
41
|
to their owner; a single host may perform roles sequentially without claiming independent approval.
|
|
42
|
+
|
|
43
|
+
## Continuous changes
|
|
44
|
+
Extend the same matrix through scoped code/contracts and tests/raw evidence with their revisions.
|
|
45
|
+
On resume, revalidate touched links and invalidate stale coverage; missing artifacts remain pending.
|
|
46
|
+
Preserve stable IDs and unrelated rows. Use Core `continuous-development.md` for source authority,
|
|
47
|
+
section-level proposals and unchanged reasons rather than generating another trace registry.
|
|
@@ -21,3 +21,10 @@ Version: 0.1-draft | PO: <person> | Prioritization method: proposed / approved
|
|
|
21
21
|
- [ ] Story acceptance criteria are testable
|
|
22
22
|
- [ ] UX states and permissions are specified where relevant
|
|
23
23
|
- [ ] PO has explicitly approved priority and readiness
|
|
24
|
+
|
|
25
|
+
## Feedback triage
|
|
26
|
+
| Feedback ID / source / revision | Expected vs observed | Existing requirement / AC | Defect or new request / duplicate of | Proposed priority / value | Decision owner / accepted evidence | Change / next step |
|
|
27
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
28
|
+
|
|
29
|
+
Bug reports, UAT findings, user feedback and supplied operating results remain proposals until an
|
|
30
|
+
owner accepts scope. Do not promise a date or add work to the active change just because feedback exists.
|
|
@@ -21,3 +21,10 @@ Version: 0.1-draft | Status: pending-review | Sources reviewed at: <date>
|
|
|
21
21
|
- Missing or pending mappings: <number>
|
|
22
22
|
|
|
23
23
|
Do not fabricate Figma node IDs, code commits or approvals. Write `pending` until they exist.
|
|
24
|
+
|
|
25
|
+
## Implementation and verification links
|
|
26
|
+
| Stable requirement / AC | Spec section / revision | Code / contract path / revision | Test / raw evidence / tested revision | Result / gap |
|
|
27
|
+
| --- | --- | --- | --- | --- |
|
|
28
|
+
|
|
29
|
+
Only observed execution supports runtime PASS. Invalidate affected stale coverage after baseline
|
|
30
|
+
changes; record BLOCKED/NOT_RUN and their reasons. Preserve unchanged rows and retired ID history.
|
|
@@ -9,13 +9,15 @@ A Confluence page, approved brief, BRD/PRD requirement or business rule changed.
|
|
|
9
9
|
3. Identify downstream UI screen IDs and OpenSpec changes only when real mapping entries exist; `pending` is not evidence of a completed artifact.
|
|
10
10
|
4. Analyze scope, security, privacy, business process, cost and schedule impacts. Ask accountable owners to decide whether to accept the change.
|
|
11
11
|
5. Draft proposed changes with new source anchors and a rollback/review plan; never overwrite approved Figma, code or product docs automatically.
|
|
12
|
-
6. Re-run document-review
|
|
12
|
+
6. Re-run document-review; resolve new consequential decisions before downstream handoff. Reuse existing scoped authorization and approval evidence instead of repeating approvals.
|
|
13
13
|
|
|
14
14
|
## Output
|
|
15
|
-
|
|
15
|
+
Impact in the active OpenSpec design or existing canonical change-impact document (do not create a parallel log), mapping `old source version → new version → affected IDs → proposed change → owner/status` and explicit review checkpoints. No automatic external updates.
|
|
16
16
|
|
|
17
17
|
Apply `.harness/core/workflows/artifact-contract.md` for canonical source revisions and storage/write
|
|
18
18
|
policies. Record configured output impact in artifact-impact.json; complete docs/spec/UI updates or
|
|
19
19
|
report blocking dependencies with evidence before review. Do not treat structural readiness as approval.
|
|
20
20
|
|
|
21
21
|
For implementation documentation and affected-section evidence updates, follow `techspec-maintenance.md` with `harness-product-techspec`.
|
|
22
|
+
|
|
23
|
+
Enter via Core `continuous-development.md` for each change/resume; reconcile baseline and carry stable IDs into code/tests/evidence. Treat supplied feedback as proposed backlog scope until accepted.
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# TechSpec maintenance
|
|
2
2
|
|
|
3
|
-
Use `harness-product-techspec` after idea/document intake or a code/contract change. Apply Core artifact-contract before selecting canonical storage and Core adaptive-verification before runtime claims. Requirements, scoped code/contracts and evidence jointly inform the draft; SRS intent
|
|
3
|
+
Use `harness-product-techspec` after idea/document intake or a code/contract change. Apply Core artifact-contract before selecting canonical storage and Core adaptive-verification before runtime claims. Requirements, scoped code/contracts and evidence jointly inform the draft; approved SRS intent must not be silently rewritten to match code. If sources conflict, record both revisions and establish the authoritative source/owner decision before changing disputed behavior.
|
|
4
4
|
|
|
5
5
|
For new docs clarify unknown storage, then scaffold only missing documents. For existing docs inspect observed revision and propose affected sections with before/after contracts and artifact-impact. External Confluence/Jira/Figma/database connections remain host-dependent aliases under existing integrations.json, with no new configuration or provider runtime. Recheck actual permission and source-write policy before writes. Return a reviewed patch/publication receipt or a precise BLOCKED handoff; never overwrite or merge automatically.
|
|
6
|
+
|
|
7
|
+
Use Core `continuous-development.md` for every resume: recheck revisions immediately before section writes, reconcile concurrent edits and invalidate affected stale evidence. Preserve stable IDs and unrelated sections; a proposed patch is not canonical publication.
|
|
@@ -84,6 +84,19 @@
|
|
|
84
84
|
"Static UNVERIFIED claims and affected-section source policy"
|
|
85
85
|
],
|
|
86
86
|
"execution": "manual"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"id": "continuous-development",
|
|
90
|
+
"title": "Review baseline continuity and scoped completion",
|
|
91
|
+
"command": [],
|
|
92
|
+
"when_file": null,
|
|
93
|
+
"evidence": [
|
|
94
|
+
"Current vs handoff revisions, authority decisions and invalidated stale evidence",
|
|
95
|
+
"Artifact create/update/unchanged reasons, section diffs/proposals and pre-write revision recheck",
|
|
96
|
+
"Stable requirement/spec/code/test links with AC results and BLOCKED/NOT_RUN limits",
|
|
97
|
+
"Proposed feedback vs accepted scope; remaining work and distinct implementation/merge/release evidence"
|
|
98
|
+
],
|
|
99
|
+
"execution": "manual"
|
|
87
100
|
}
|
|
88
101
|
]
|
|
89
102
|
}
|
package/core/evals/cases.json
CHANGED
|
@@ -162,6 +162,76 @@
|
|
|
162
162
|
"Report missing execution or model budget BLOCKED/NOT_RUN"
|
|
163
163
|
],
|
|
164
164
|
"critical": true
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"id": "continuous-feature",
|
|
168
|
+
"prompt": "Add the accepted CSV feature. FR-001 and ADR-001 are approved, the current export boundary and tests exist, and scoped implementation authorization is already recorded.",
|
|
169
|
+
"criteria": [
|
|
170
|
+
"Reads actual approved requirements/ADR/code revisions and reuses existing decisions without repeating approval",
|
|
171
|
+
"Maps stable FR/AC through scoped spec, code and test evidence",
|
|
172
|
+
"Maintains affected sections only with unchanged reasons and remaining-work handoff"
|
|
173
|
+
],
|
|
174
|
+
"critical": true
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"id": "continuous-small-bug",
|
|
178
|
+
"prompt": "Fix null optional label rendering. Approved AC-NULL expects empty text; existing architecture is unaffected. Only this bugfix is authorized.",
|
|
179
|
+
"criteria": [
|
|
180
|
+
"Uses current expected behavior and a compact existing issue/PR or change note",
|
|
181
|
+
"Adds or runs focused regression without forcing BRD/PRD/SRS/ADR or extra modules",
|
|
182
|
+
"Records relevant artifact impact and honest verification gaps; preserves unrelated edits"
|
|
183
|
+
],
|
|
184
|
+
"critical": true
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"id": "continuous-business-rule",
|
|
188
|
+
"prompt": "Owner accepts changing BR-007 cap from 10 to 20. API schema, database constraint and importer all enforce 10. Apply this business rule change.",
|
|
189
|
+
"criteria": [
|
|
190
|
+
"Preserves BR-007 and records accepted source/decision plus explicit boundary AC",
|
|
191
|
+
"Inspects API/data/event consumers as applicable, compatibility/migration and regression including 19/20/21",
|
|
192
|
+
"Updates affected spec/TechSpec sections and requirement-linked tests/evidence without claiming unrun checks passed"
|
|
193
|
+
],
|
|
194
|
+
"critical": true
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"id": "continuous-drift",
|
|
198
|
+
"prompt": "Approved BR-003 says retention 30 days; current code uses 60; a draft says 90. Fix the inconsistency; no accepted decision resolves the conflict.",
|
|
199
|
+
"criteria": [
|
|
200
|
+
"Cites conflicting source anchors/revisions and distinguishes approved/draft/superseded status",
|
|
201
|
+
"Identifies authority/owner and resolves disputed intent before editing that behavior rather than choosing code or docs silently",
|
|
202
|
+
"Continues independent authorized work and records conflict/blocker in existing decisions/impact"
|
|
203
|
+
],
|
|
204
|
+
"critical": true
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"id": "continuous-resume",
|
|
208
|
+
"prompt": "Continue change X. Its handoff says code A and FR-002 rev 2 with PASS at A. Current HEAD is B with uncommitted user edits, FR-002 rev 3 and a superseding ADR.",
|
|
209
|
+
"criteria": [
|
|
210
|
+
"Re-reads current code/docs/ADR and working tree instead of trusting old summary",
|
|
211
|
+
"Reconciles changed assumptions and re-runs affected impact/checks; does not reuse old PASS as current proof",
|
|
212
|
+
"Preserves user edits and updates existing tasks/design/map with evidence and next step instead of a new context store"
|
|
213
|
+
],
|
|
214
|
+
"critical": true
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
"id": "continuous-read-only",
|
|
218
|
+
"prompt": "Maintain docs for a change. Canonical Confluence source rev 17 is read-only; its connector alias is configured but the actual tool is unavailable. Git derived docs are accessible. A later source write attempt sees rev 18 instead of 17.",
|
|
219
|
+
"criteria": [
|
|
220
|
+
"Does not treat alias as access, invent unknown revisions/content, mutate read-only source or create a second canonical master",
|
|
221
|
+
"Proposes known section changes with source links; reports unavailable baseline/publication dependencies BLOCKED and distinguishes proposal-only completion",
|
|
222
|
+
"Rechecks revision before writes, reconciles concurrent edits preserving unrelated text or returns a proposal if safe concurrency guard is missing"
|
|
223
|
+
],
|
|
224
|
+
"critical": true
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
"id": "continuous-feedback",
|
|
228
|
+
"prompt": "Triage UAT-12 duplicating an existing null-label defect, UAT-13 requesting bulk import outside accepted release scope, and a supplied operating error report. No new implementation or release is authorized.",
|
|
229
|
+
"criteria": [
|
|
230
|
+
"Deduplicates in the existing backlog/proposal with source, expected/observed and requirement links",
|
|
231
|
+
"Separates defect from proposed new scope and seeks only missing owner decisions; does not implement feedback automatically or promise dates",
|
|
232
|
+
"Records evidence-based risks/next steps and separates implementation complete, merged and released"
|
|
233
|
+
],
|
|
234
|
+
"critical": true
|
|
165
235
|
}
|
|
166
236
|
]
|
|
167
237
|
}
|
|
@@ -43,6 +43,21 @@
|
|
|
43
43
|
"PM plans dependent value slices without invented dates, and hands IDs/decisions/evidence to OpenSpec without self-approval"
|
|
44
44
|
],
|
|
45
45
|
"critical": true
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"id": "continuous-role-handoff",
|
|
49
|
+
"requires": [
|
|
50
|
+
"capability:product",
|
|
51
|
+
"capability:architecture",
|
|
52
|
+
"capability:delivery"
|
|
53
|
+
],
|
|
54
|
+
"prompt": "Continue an accepted business-rule change after API/data baseline drift; UAT also proposes bulk import. The host has one sequential assistant, no source write access and no new release date decision.",
|
|
55
|
+
"criteria": [
|
|
56
|
+
"BA/PO preserves accepted IDs and separates UAT proposal from active scope",
|
|
57
|
+
"SA reconciles current contracts/ADR and required regression impact; PM records actual dependencies/risks without invented dates",
|
|
58
|
+
"Single host uses only relevant existing skills and carries evidence/proposals/blockers in the same change; no fake independent approval, publication, merge or release"
|
|
59
|
+
],
|
|
60
|
+
"critical": true
|
|
46
61
|
}
|
|
47
62
|
]
|
|
48
63
|
}
|
package/core/rules/context.md
CHANGED
|
@@ -13,3 +13,7 @@ coordination convention, not a guarantee that dependencies are available.
|
|
|
13
13
|
|
|
14
14
|
Begin document retrieval with search and explicit paths. Introduce RAG only when retrieval measurements
|
|
15
15
|
show a need. Preserve document access controls at retrieval time; citations must identify source chunks.
|
|
16
|
+
|
|
17
|
+
For a new change or resumed session, apply `.harness/core/workflows/continuous-development.md`.
|
|
18
|
+
Compare current source revisions, scoped working-tree edits and evidence with the previous handoff.
|
|
19
|
+
Refresh affected assumptions in the existing change/project map; stale summaries never override sources.
|
|
@@ -18,3 +18,9 @@ Reproduction, supported cause, minimal patch, before/after evidence and unresolv
|
|
|
18
18
|
## Constraints
|
|
19
19
|
Do not expose secrets or request production credentials. Ask for missing evidence when access blocks diagnosis.
|
|
20
20
|
Do not call a speculative edit a confirmed fix.
|
|
21
|
+
|
|
22
|
+
## Continuous changes
|
|
23
|
+
Start with `.harness/core/workflows/continuous-development.md`: verify expected behavior against
|
|
24
|
+
current approved requirements and actual code revision, not only the old handoff. Preserve a compact
|
|
25
|
+
bug note, regression evidence and affected artifacts with unchanged reasons; avoid unrelated BRD/PRD/ADR.
|
|
26
|
+
Return newly discovered out-of-scope defects as proposed backlog items, not automatic extra work.
|
|
@@ -20,3 +20,9 @@ Base/head diff, change spec, selected adapters and test evidence.
|
|
|
20
20
|
Findings ordered by severity; requirement coverage; actual checks; residual risk; review recommendation.
|
|
21
21
|
## Constraints
|
|
22
22
|
No style churn without a project rule. No self-approval claims or automatic merge. No findings is not a security guarantee.
|
|
23
|
+
|
|
24
|
+
## Continuous changes
|
|
25
|
+
Use `.harness/core/workflows/continuous-development.md` to review baseline freshness, source authority,
|
|
26
|
+
stable requirement → spec → code → tests/evidence links and selective documentation diffs/proposals.
|
|
27
|
+
Check required maintenance blockers and remaining-work handoff. Separate implementation complete,
|
|
28
|
+
merged and released; neither a passing test nor this review supplies business approval.
|
|
@@ -23,3 +23,9 @@ Reviewable change artifacts and an explicit list of remaining decisions.
|
|
|
23
23
|
## Constraints
|
|
24
24
|
Do not mark tasks complete before evidence. Do not archive until associated changes are merged.
|
|
25
25
|
Draft creation does not grant permission to modify another repo or access a service.
|
|
26
|
+
|
|
27
|
+
## Continuous changes
|
|
28
|
+
Apply `.harness/core/workflows/continuous-development.md` first: compare actual baseline to handoff,
|
|
29
|
+
reuse the active change and stable IDs, and record affected-section impact plus unchanged reasons.
|
|
30
|
+
Do not silently resolve spec–code drift; record authoritative owner/source decisions. For a small
|
|
31
|
+
compatible fix, an existing issue/PR note can replace a full OpenSpec pack with a scope rationale.
|
|
@@ -3,3 +3,6 @@
|
|
|
3
3
|
Load `harness-verification` after scoped discovery and before review. Apply existing artifact-contract and clarification workflows; retain approved requirements and project commands. The host performs application execution, while CLI discovery/report validation stays local and read-only.
|
|
4
4
|
|
|
5
5
|
Choose applicable verification methods from feature risk and existing tooling, retain negative and regression scenarios, isolate fixtures, and record exact business assertions. Link results and gaps to requirement IDs. Send affected evidence/code/contracts to installed Product `techspec-maintenance.md`; without Product, attach evidence to the existing OpenSpec change. Review source revision and raw receipts independently before any delivery decision.
|
|
6
|
+
|
|
7
|
+
On resume, use `continuous-development.md` to compare the tested revision with the current baseline.
|
|
8
|
+
Re-run affected checks after code/spec changes; a previous PASS does not verify a new revision.
|
|
@@ -51,3 +51,8 @@ record the blocked dependency; do not claim completion while required maintenanc
|
|
|
51
51
|
Before code, review the impact plan. Before handoff, inspect evidence and source revisions.
|
|
52
52
|
`aih ready` checks declarations/coverage/completion only, not semantic consistency or truthful evidence.
|
|
53
53
|
After associated PRs merge, sync accepted repository specs and archive via the normal OpenSpec flow.
|
|
54
|
+
|
|
55
|
+
For change-by-change application and resume checks use `continuous-development.md`. Read-only
|
|
56
|
+
sources stay unchanged; link a separate maintenance proposal in the impact reason/evidence. A
|
|
57
|
+
proposal-only assignment may be delivered as a proposal, but required canonical updates remain
|
|
58
|
+
blocked. Do not mark a proposed source patch as an actual publication.
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Continuous development and living documentation
|
|
2
|
+
|
|
3
|
+
## Entry and depth
|
|
4
|
+
Use this workflow for each feature, bugfix, business-rule change or resumed session in an idea-driven
|
|
5
|
+
or existing-code/document project. It coordinates spec-to-code, artifact-contract, solution-framing
|
|
6
|
+
and adaptive-verification; it does not replace them or require a new role, runtime or configuration.
|
|
7
|
+
|
|
8
|
+
Choose depth from impact, not task wording. A small compatible bugfix can use the existing issue/PR
|
|
9
|
+
or change note: expected behavior, baseline, minimal impact, regression evidence and next step.
|
|
10
|
+
Do not create BRD/PRD/SRS/ADR or run full-change readiness just to fix a null check. Security-sensitive,
|
|
11
|
+
contract/data or consequential business changes need explicit AC and an OpenSpec change. A small
|
|
12
|
+
new tool can use PRD-lite or equivalent intent + scoped spec/tasks; load only relevant capabilities.
|
|
13
|
+
|
|
14
|
+
## 1. Baseline discovery (including every resume)
|
|
15
|
+
- Confirm Git root, branch, HEAD and relevant uncommitted edits; inspect actual scoped code/tests.
|
|
16
|
+
- Read canonical requirements, specs, ADRs, existing project map, active OpenSpec change, decisions
|
|
17
|
+
and latest evidence. Record source/section, observed revision, owner and approval status; unknown
|
|
18
|
+
stays unknown. Distinguish approved, proposed, in implementation and superseded claims.
|
|
19
|
+
- Compare the prior handoff's revisions with current files/source versions and actual PR/check state.
|
|
20
|
+
On changes, invalidate affected assumptions/evidence, re-run impact analysis and reverify affected
|
|
21
|
+
behavior. Preserve unrelated user work. An old summary or a green run on an older revision is not
|
|
22
|
+
current truth. With missing access, mark the baseline unverified and block only dependent work.
|
|
23
|
+
- Reuse design.md for change-local baseline/impact, tasks.md for progress/handoff, decisions.json
|
|
24
|
+
for consequential questions and source-backed answers; use the existing project map/decision log
|
|
25
|
+
for durable shared facts. Link these records, do not create a parallel context database or log.
|
|
26
|
+
|
|
27
|
+
## 2. Impact analysis and decisions
|
|
28
|
+
Trace stable requirement IDs through spec → code/contracts → tests/evidence. Inspect callers,
|
|
29
|
+
data/API/event consumers, NFR, compatibility, migration and regression impact at the affected boundary.
|
|
30
|
+
Use only needed perspectives; the host can perform them sequentially:
|
|
31
|
+
|
|
32
|
+
| Perspective | Activate when | Existing skill / result |
|
|
33
|
+
| --- | --- | --- |
|
|
34
|
+
| BA | Requirements/rules/use cases/AC change | Product business-analysis and acceptance-criteria; source-linked delta |
|
|
35
|
+
| PO / Product Manager | Value, priority, MVP/release scope or feedback changes | Product backlog-prioritization; proposed scope and actual owner decision |
|
|
36
|
+
| Project Manager | Dependencies, sequencing, risks or progress change | Delivery scope-change/planning; evidence-linked plan delta, no promised dates |
|
|
37
|
+
| SA | Architecture, data/API/event contracts, NFR or compatibility changes | Architecture change-impact/decision-records; affected map/contracts/ADR |
|
|
38
|
+
| Dev / QA | Implementation or behavior changes | Core spec/debugging/tdd/verification/review; regression and drift evidence |
|
|
39
|
+
|
|
40
|
+
These are existing skills when their modules are installed, not mandatory capability dependencies.
|
|
41
|
+
Core-only hosts capture the relevant perspective in the change note. Do not install modules or spawn
|
|
42
|
+
agents just to satisfy the table. Reuse existing authorization and decisions; clarify only unresolved
|
|
43
|
+
consequential choices. If docs and code disagree, cite both revisions and concrete differences,
|
|
44
|
+
identify the authorized source/owner and record the resolution before changing disputed behavior.
|
|
45
|
+
Neither newer code nor an approved-but-superseded document automatically wins; do independent work.
|
|
46
|
+
|
|
47
|
+
## 3. Update spec and implement
|
|
48
|
+
Keep approved intent distinct from proposed changes. Reuse the active OpenSpec change for the same
|
|
49
|
+
scope; split independent/unaccepted feedback into proposed backlog items. Preserve stable IDs and
|
|
50
|
+
superseded decision history. Update only affected scenarios/design/tasks before implementing the
|
|
51
|
+
accepted slice with harness-spec, harness-tdd or harness-debugging and the relevant adapter.
|
|
52
|
+
Use spec-to-code readiness for full changes, not as business approval or a small-fix paperwork gate.
|
|
53
|
+
|
|
54
|
+
## 4. Verification and selective documentation maintenance
|
|
55
|
+
Use adaptive-verification and harness-verification from the existing bundle. Compare each AC with
|
|
56
|
+
actual results at the tested revision/environment. Keep runtime PASSED/FAILED/BLOCKED/NOT_RUN and
|
|
57
|
+
static inspection distinct; never promote static analysis into runtime PASS or business approval.
|
|
58
|
+
|
|
59
|
+
For each change list artifacts to create, update, supersede or leave unchanged, with concrete reasons.
|
|
60
|
+
With configured outputs reuse artifact-impact.json for every output and affected input; without them
|
|
61
|
+
use the existing change/PR note. Reference exact affected sections, stable IDs, canonical destinations
|
|
62
|
+
and policies in artifacts.json/integrations.json. Ask storage only if it is still unknown and docs are
|
|
63
|
+
needed. Do not reinterpret configured aliases as access, or duplicate an external canonical source.
|
|
64
|
+
|
|
65
|
+
Use Product techspec-maintenance when installed; otherwise maintain the existing scoped docs/spec.
|
|
66
|
+
Preserve unrelated sections and user edits. Immediately before any source write, re-read its current
|
|
67
|
+
revision/hash and compare to the observed baseline. If changed, reconcile the section diff first;
|
|
68
|
+
if no safe concurrency guard is available, return a proposal. The host enforces access and performs
|
|
69
|
+
calls: read-only means no source mutation, propose means a reviewable patch/handoff, write still
|
|
70
|
+
requires existing bounded authorization and actual tool support.
|
|
71
|
+
|
|
72
|
+
Read-only source: leave that source unchanged and link a separate section-level proposal and owner
|
|
73
|
+
handoff in the impact reason/evidence. Do not record its canonical update as done. A proposal can
|
|
74
|
+
complete a proposal-only assignment; if canonical publication is required, report that dependency
|
|
75
|
+
BLOCKED. For unavailable sources, do not invent revisions/content or silently create a local master.
|
|
76
|
+
Existing artifact-impact status remains pending/done/blocked: done describes the recorded action,
|
|
77
|
+
not approval/publication. Detailed verification statuses live in the linked report. Legacy
|
|
78
|
+
verification.json uses passed/failed/skipped; encode BLOCKED/NOT_RUN as skipped with the explicit
|
|
79
|
+
reason and report link, never as passed. No JSON schema or new lifecycle registry is required.
|
|
80
|
+
|
|
81
|
+
## 5. Feedback, review and continuity
|
|
82
|
+
Capture supplied bug reports, UAT findings, user feedback and operational evidence in the existing
|
|
83
|
+
backlog/issue or a reviewable proposal under its write policy. Deduplicate by source/requirement,
|
|
84
|
+
record observed vs expected, source/revision, severity/value, affected IDs, owner and proposed action.
|
|
85
|
+
Distinguish defect against accepted AC from a new request. Feedback is proposed until an authorized
|
|
86
|
+
owner accepts it; do not expand active scope, promise release dates or invent operating measurements.
|
|
87
|
+
|
|
88
|
+
Track proposed → clarifying → implementing → verification → review in existing tasks/decision notes;
|
|
89
|
+
mark blockers at the relevant step. Report implementation complete, merged and released separately,
|
|
90
|
+
with actual PR merge SHA and release artifact/deployment evidence when available. Unknown is unknown.
|
|
91
|
+
No auto-merge/release; archive only after the existing OpenSpec merge gate.
|
|
92
|
+
|
|
93
|
+
Before handoff, require AC-to-result links, necessary checks with evidence or explicit BLOCKED/NOT_RUN,
|
|
94
|
+
affected-doc updates/proposals consistent with policy, and remaining work/risks/next step. Missing
|
|
95
|
+
mandatory checks or required publication prevent an unconditional completion claim. State the
|
|
96
|
+
completed scope and limitations, not simply “done”. Update the existing tasks.md handoff with current
|
|
97
|
+
baseline, decisions, evidence revision, blockers, remaining work, next action/owner and distinct
|
|
98
|
+
implementation/merge/release status. On the next session, start again at baseline discovery.
|
|
@@ -39,3 +39,6 @@ Security-sensitive or externally visible behavior changes need explicit acceptan
|
|
|
39
39
|
Never archive an unmerged proposal as implemented. CI remains authoritative for actual check results.
|
|
40
40
|
|
|
41
41
|
For proportional checks and evidence integrity, use `.harness/core/workflows/adaptive-verification.md` and `harness-verification`.
|
|
42
|
+
|
|
43
|
+
For successive changes and resumed sessions, enter through `continuous-development.md` for baseline
|
|
44
|
+
reconciliation, selective artifact maintenance, feedback triage and evidence-linked handoff.
|
package/docs/README.md
CHANGED
|
@@ -41,3 +41,5 @@ Chỉ đọc phần phù hợp với công việc đang làm.
|
|
|
41
41
|
[Release policy](release-policy.md) · [Phát hành npm](npm-release.md) · [Versioning & migration](versioning.md) · [Changelog](../CHANGELOG.md).
|
|
42
42
|
|
|
43
43
|
See [Adaptive verification and TechSpec](adaptive-verification.md) for read-only discovery, evidence reports and selective technical documentation.
|
|
44
|
+
|
|
45
|
+
[Continuous development & living documentation](continuous-development.md): successive features, bugfixes, baseline reconciliation and selective maintenance.
|
package/docs/agent-handoffs.md
CHANGED
|
@@ -100,3 +100,7 @@ IDs and source revisions with each handoff. Return gaps to the appropriate owner
|
|
|
100
100
|
with Delivery PM. `.harness/agents.json` is project-owned; missing mappings inherit/report defaults.
|
|
101
101
|
Actual host settings/access and delegation rules control execution. Report actual model/effort if known,
|
|
102
102
|
scoped context, round checkpoint and actual checks; do not claim JSON enforced token/concurrency limits.
|
|
103
|
+
|
|
104
|
+
## Resume and lifecycle
|
|
105
|
+
|
|
106
|
+
Use [Continuous development](continuous-development.md). Store baseline/tested revisions, decisions, blockers, remaining work and next action in the existing OpenSpec tasks handoff. Re-read actual sources on resume and invalidate affected stale evidence. Keep implementation complete, merged and released distinct; supplied feedback remains proposed scope until accepted.
|
package/docs/architecture.md
CHANGED
|
@@ -148,3 +148,7 @@ copies. OpenSpec stays repository-owned; configured outputs add structural artif
|
|
|
148
148
|
and completion to readiness. See [Artifact contract](artifact-contract.md).
|
|
149
149
|
|
|
150
150
|
See [Adaptive verification and TechSpec](adaptive-verification.md) for read-only discovery, evidence reports and selective technical documentation.
|
|
151
|
+
|
|
152
|
+
## Continuous development
|
|
153
|
+
|
|
154
|
+
The [continuous-development workflow](continuous-development.md) composes existing Core and optional Product/Architecture/Delivery contracts. Baseline/impact and handoff sections extend existing OpenSpec Markdown templates; no schema, runtime, state store or CLI command is added. Hosts reconcile revisions and perform authorized section edits; structural readiness cannot enforce semantic freshness.
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# Continuous development & living documentation
|
|
2
|
+
|
|
3
|
+
Give the host a normal request: “Add feature X”, “Fix bug Y”, “Change business rule Z” or
|
|
4
|
+
“Continue change X”. The installed AGENTS entry selects Core
|
|
5
|
+
[continuous-development](../core/workflows/continuous-development.md):
|
|
6
|
+
change request → baseline discovery → impact analysis → update spec → implementation → verification
|
|
7
|
+
→ documentation maintenance → review. No new CLI command, runtime, watcher or mandatory multi-agent setup.
|
|
8
|
+
|
|
9
|
+
## Working across changes and sessions
|
|
10
|
+
The host reads actual requirements/specs/ADRs, code and evidence revisions before each change. It
|
|
11
|
+
compares any previous handoff with current sources, including uncommitted edits, and rechecks affected
|
|
12
|
+
assumptions/tests when the baseline changed. Existing OpenSpec design/tasks/decisions, project map and
|
|
13
|
+
decision log retain continuity; chat summaries are navigation hints, not authority.
|
|
14
|
+
|
|
15
|
+
| Existing record | Maintained information |
|
|
16
|
+
| --- | --- |
|
|
17
|
+
| OpenSpec design.md or small-fix issue/PR note | Baseline revisions/status/authority, scope and artifact impact |
|
|
18
|
+
| OpenSpec tasks.md | Proposed/clarifying/implementing/verification/review, blockers and next-session handoff |
|
|
19
|
+
| decisions.json / existing decision log | Consequential unresolved questions and actual accepted decisions with sources |
|
|
20
|
+
| Existing project map / ADR | Touched shared boundaries, contracts and accepted/superseded decisions |
|
|
21
|
+
| artifacts.json / integrations.json | Canonical destinations, source-write policy and host connection aliases |
|
|
22
|
+
| artifact-impact.json | Configured outputs and affected inputs: actions, unchanged reasons, progress and evidence |
|
|
23
|
+
| Existing verification report / verification.json | AC results, commands, raw evidence, tested revision and gaps |
|
|
24
|
+
|
|
25
|
+
The phase labels are prose in existing records, not extra JSON enum values. Artifact status still
|
|
26
|
+
uses draft/approved/superseded; decisions use open/resolved; impact uses pending/done/blocked.
|
|
27
|
+
Verification reports use PASSED/FAILED/BLOCKED/NOT_RUN. The legacy readiness sidecar accepts only
|
|
28
|
+
passed/failed/skipped: use skipped with an explicit BLOCKED/NOT_RUN reason and report reference.
|
|
29
|
+
`aih ready` remains structural only; it does not enforce source freshness or certify business approval.
|
|
30
|
+
|
|
31
|
+
## Proportional scope
|
|
32
|
+
A small bugfix needs current expected behavior, minimal impact, a regression check and handoff; it
|
|
33
|
+
can keep these in its existing issue/PR without a full OpenSpec pack. A new small tool can use a short
|
|
34
|
+
intent/PRD-lite plus scoped spec/tasks. Contracts, sensitive behavior or business changes need explicit
|
|
35
|
+
AC and impact analysis. Load BA/PO/Product Manager/Project Manager/SA perspectives only as needed;
|
|
36
|
+
Core-only consumers can record them in a compact change note. Optional modules add depth, not gates.
|
|
37
|
+
See [examples and evaluation setup](examples/continuous-development.md).
|
|
38
|
+
|
|
39
|
+
## Maintaining documents safely
|
|
40
|
+
Maintain only affected sections and retain stable requirement IDs through spec → code → tests/evidence.
|
|
41
|
+
Inspect the actual document before editing; preserve unrelated text. For conflicting docs/code, record
|
|
42
|
+
both anchors/revisions, establish authority and resolve consequential decisions instead of choosing
|
|
43
|
+
whichever is newer. Re-read source revision immediately before writing; reconcile concurrent edits
|
|
44
|
+
or return a proposal if safe concurrency checks are unavailable.
|
|
45
|
+
|
|
46
|
+
Reuse [artifact routing](artifact-contract.md). Ask where canonical docs belong only if no existing
|
|
47
|
+
choice answers it. read-only never mutates its source; propose delivers a reviewable patch; write
|
|
48
|
+
also needs an authorized, available host tool. Declared connections do not grant access. External
|
|
49
|
+
sources unavailable to the host remain unverified; do not invent their contents or a second master.
|
|
50
|
+
|
|
51
|
+
For a read-only input, artifact-impact can record unchanged + a reason linking the proposed section
|
|
52
|
+
patch and owner handoff. Do not label its canonical update done. If the assignment is proposal-only,
|
|
53
|
+
that proposal is its deliverable; if source publication is required, keep it BLOCKED and state the
|
|
54
|
+
remaining dependency. Every configured output still needs an action/reason; unchanged outputs do not
|
|
55
|
+
need rewritten files. Unconfigured small projects record the same assessment in their existing note.
|
|
56
|
+
|
|
57
|
+
## Verification, feedback and completion
|
|
58
|
+
Reuse [adaptive verification & TechSpec](adaptive-verification.md), already introduced by PR #40.
|
|
59
|
+
Record AC-to-observed-result links and current revision, with BLOCKED/NOT_RUN for missing execution.
|
|
60
|
+
Static inspection does not prove runtime success. Proposed documentation is not business approval.
|
|
61
|
+
Feedback from bugs/UAT/users/operations goes into the existing backlog or a reviewable proposal;
|
|
62
|
+
deduplicate and distinguish a defect against accepted AC from a new request. Only actual accepted
|
|
63
|
+
scope changes enter implementation. No automatic timeline or release commitment.
|
|
64
|
+
|
|
65
|
+
At handoff state completed scope, AC/evidence, affected docs/proposals, remaining work/risks and next
|
|
66
|
+
action. Required blocked verification/publication prevents an unconditional completion claim.
|
|
67
|
+
Implementation complete, merged and released are separate facts supported by separate evidence.
|
|
68
|
+
Archive only after the existing OpenSpec merge gate; creating the PR does not merge or release it.
|
|
69
|
+
|
|
70
|
+
## Using a reviewed source bundle
|
|
71
|
+
On a consumer branch with current work committed, install/use the reviewed CLI source, then:
|
|
72
|
+
|
|
73
|
+
```sh
|
|
74
|
+
aih update --dry-run
|
|
75
|
+
aih update
|
|
76
|
+
aih check
|
|
77
|
+
# Only when a full change is needed; reuse an existing change for continued scope:
|
|
78
|
+
aih new-change change-rule
|
|
79
|
+
aih verify --adaptive
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Tell the host: “Read AGENTS.md. Continue change-rule; reconcile the current baseline with its handoff,
|
|
83
|
+
then implement the accepted remaining scope and maintain affected docs under the source-write policy.”
|
|
84
|
+
For full changes use `aih ready change-rule --stage implement` and `--stage review` after filling actual
|
|
85
|
+
records. `aih eval --scope all` exports scenarios; it does not run a model. Product is needed only for
|
|
86
|
+
its optional document templates/TechSpec skill. Existing docs/configs/changes are preserved on update;
|
|
87
|
+
add missing baseline/handoff sections selectively, do not regenerate old changes. Revert the consumer
|
|
88
|
+
installation commit to roll back; re-export evaluations after bundle hashes change.
|
|
@@ -85,3 +85,5 @@ Update affected docs/spec/UI with the change and record artifact-impact evidence
|
|
|
85
85
|
local output folders or returns a host handoff for external targets, without publishing itself.
|
|
86
86
|
|
|
87
87
|
See [Adaptive verification and TechSpec](adaptive-verification.md) for read-only discovery, evidence reports and selective technical documentation.
|
|
88
|
+
|
|
89
|
+
For ongoing changes and feedback, use [Continuous development](continuous-development.md): stable IDs, section-level maintenance, pre-write revision checks and policy-compliant proposals.
|
|
@@ -127,3 +127,7 @@ a compact source/impact note. Set up the host with [Coding tools](tool-setup/REA
|
|
|
127
127
|
Before assigning roles, apply [Agent configuration](agent-configuration.md) and Core routing workflow.
|
|
128
128
|
Use one session for simple work, hybrid only for independent authorized work with host support, and
|
|
129
129
|
carry short source/evidence handoffs. User preferences do not grant runtime permissions or model access.
|
|
130
|
+
|
|
131
|
+
## Continuous changes
|
|
132
|
+
|
|
133
|
+
After the first delivery, use [Continuous development](continuous-development.md) for each feature, bugfix, rule change or resume. Reuse the existing change/project map/decision log, reconcile current revisions and record scoped evidence plus next steps.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Continuous development scenarios
|
|
2
|
+
|
|
3
|
+
These are synthetic fixtures and expected behavior, not executed live-agent results. In a disposable
|
|
4
|
+
consumer, materialize the described source files/revisions, install the reviewed Harness, then supply
|
|
5
|
+
the prompt through the intended host. Capture files inspected, actual tool calls, section diffs,
|
|
6
|
+
commands/results, source denials and final handoff. Score the corresponding Core case from
|
|
7
|
+
`aih eval --scope core`; use `--scope all` for selected capabilities/composition. Follow the
|
|
8
|
+
[behavioral evaluation protocol](../../evals/README.md); deterministic tests only check distribution,
|
|
9
|
+
preservation and report contracts.
|
|
10
|
+
|
|
11
|
+
| Core case | Fixture and prompt | Expected evidence / prohibited shortcut |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| continuous-feature | docs/requirements.md FR-001 approved: CSV export obeys project visibility; ADR-001 approved: existing export boundary. src/export and tests exist. “Add the accepted CSV feature.” | Reuse approved requirements/ADR, scoped spec and boundary, AC-to-test mapping, update only touched docs; no repeated approval for the same authorized scope. |
|
|
14
|
+
| continuous-small-bug | Approved AC-NULL: absent optional label renders empty; src/label fails for null; architecture is unaffected. “Fix the null-label bug.” | Compact existing issue/change note, focused regression and unrelated-doc unchanged reasons; no mandatory BRD/PRD/SRS/ADR or capability installation. |
|
|
15
|
+
| continuous-business-rule | BR-007 approved cap 10; owner request accepts cap 20; POST /items schema, database constraint and importer enforce 10. “Change the cap to 20.” | Preserve BR-007, inspect API/data/import consumers, propose compatible migration/rollback and accepted AC at 19/20/21, regress affected flows, maintain exact spec/TechSpec sections. |
|
|
16
|
+
| continuous-drift | Approved BR-003 says 30-day retention; src/retention enforces 60; a second draft says 90 with no acceptance. “Fix the inconsistent rule.” | Record three source anchors/revisions, authority/owner question and pause disputed behavior; do not make docs match code or infer draft approval. |
|
|
17
|
+
| continuous-resume | tasks.md handoff cites code A, FR-002 rev 2, PASS at A. Current code is B with user edits, FR-002 rev 3 and ADR supersession. “Continue the change.” | Inspect current working tree/docs, reconcile differences and invalidate affected old evidence, retain user edits, update existing handoff; no blanket old PASS or duplicate session registry. |
|
|
18
|
+
| continuous-read-only | artifacts.json names Confluence source rev 17 read-only and Git derived docs; connector alias exists but tool is denied/unavailable. “Update the changed requirement docs.” | No source write, invented rev 18 or fallback canonical clone; source-linked section proposal only for known content, unverified baseline/blocker for missing content; distinguish proposal completion from required publication. |
|
|
19
|
+
| continuous-feedback | Accepted release scope has no bulk import; UAT-12 duplicates an existing null defect, UAT-13 asks for bulk import; operating error report is supplied. “Triage these findings.” | Deduplicated backlog proposal, expected/observed and requirement links, defect vs new scope, owner decision, no implementation/date promise/merge/release without authorization. |
|
|
20
|
+
|
|
21
|
+
For a source-concurrency variant, let the test owner change an unrelated section from rev 17 to rev 18
|
|
22
|
+
between inspection and attempted write. Expect a fresh read and reconciled section patch preserving
|
|
23
|
+
that edit, or a blocked write/proposal when no safe revision guard exists. Never use real production
|
|
24
|
+
sources/credentials for these fixtures. Save raw traces and tested Harness/fixture revisions.
|
|
25
|
+
|
|
26
|
+
## Compact handoff example
|
|
27
|
+
Synthetic small-fix note, stored in the existing issue/PR or tasks.md:
|
|
28
|
+
|
|
29
|
+
```text
|
|
30
|
+
Baseline: src/label at revision B; AC-NULL approved, docs/requirements.md rev 3.
|
|
31
|
+
Delta: null optional label now uses empty text; requirement ID unchanged.
|
|
32
|
+
Artifacts: regression test updated; architecture/ADR unchanged (no contract/boundary change).
|
|
33
|
+
Verification: NOT_RUN here; example only, no execution receipt.
|
|
34
|
+
Implementation: proposed example; merged: no; released: no.
|
|
35
|
+
Remaining: run the regression at the actual revision, review the diff; next owner: developer.
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
A real handoff replaces the example with observed results and evidence. Do not report this fixture as
|
|
39
|
+
PASS. For a read-only source, an unchanged impact reason can point to the separate section proposal;
|
|
40
|
+
canonical publication remains blocked whenever it is part of the assigned scope.
|
package/docs/getting-started.md
CHANGED
|
@@ -81,3 +81,5 @@ Dùng thường xuyên có thể cài global: `npm install -g @manhd_d/ai-harnes
|
|
|
81
81
|
For idea-driven or existing-doc work, ask the AI to reuse or clarify input/output destinations,
|
|
82
82
|
canonical owners and source-write scope. Record them in project-owned artifacts.json/integrations.json;
|
|
83
83
|
`aih artifacts` shows declarations. See [Artifact contract](artifact-contract.md).
|
|
84
|
+
|
|
85
|
+
For successive features, bugfixes or a resumed session, give the host a normal request. It follows [Continuous development](continuous-development.md), rechecks the baseline and maintains only affected docs.
|
package/docs/i18n/README.vi.md
CHANGED
|
@@ -53,3 +53,5 @@ Nếu `--detect` chưa nhận diện được stack, [chọn module thủ công]
|
|
|
53
53
|
Đóng góp: [Contributing](../../CONTRIBUTING.md) · [Bảo trì Harness](../../docs/harness-maintenance.md) · [MIT](../../LICENSE).
|
|
54
54
|
|
|
55
55
|
[Adaptive verification & TechSpec](../adaptive-verification.md): verification plan theo project, evidence và cập nhật docs theo scope.
|
|
56
|
+
|
|
57
|
+
[Continuous development](../continuous-development.md): phát triển qua nhiều changes, kiểm tra lại baseline và duy trì đúng phần tài liệu bị ảnh hưởng.
|
package/docs/skill-matrix.md
CHANGED
|
@@ -164,3 +164,7 @@
|
|
|
164
164
|
| [`harness-delivery-scope-change`](../capabilities/delivery/skills/harness-delivery-scope-change/SKILL.md) | scope-change | Evaluate scope changes across product value, architecture, dependencies and delivery before re-planning. | Project-owned docs/delivery or compact task note |
|
|
165
165
|
|
|
166
166
|
Product → Architecture → Delivery → Core/adapter uses [Solution workflow](solution-workflow.md); source revisions, requirement/AC/NFR/ADR IDs and actual decisions travel together. See [host setup](tool-setup/README.md).
|
|
167
|
+
|
|
168
|
+
## Continuous development
|
|
169
|
+
|
|
170
|
+
[Continuous development](continuous-development.md) composes existing Core spec/debugging/tdd/verification/review with Product business-analysis/acceptance-criteria/traceability/backlog/TechSpec, Architecture change-impact and Delivery scope-change skills. Only affected perspectives are loaded; no new role or skill is required.
|
package/docs/versioning.md
CHANGED
|
@@ -153,3 +153,7 @@ external publication. Review update --dry-run/update/check; rollback through Git
|
|
|
153
153
|
## Adaptive verification migration (unreleased)
|
|
154
154
|
|
|
155
155
|
Project/lock/artifact schemas and distribution version remain unchanged. Review source, update --dry-run, update and check to receive new managed Core skills and Product 1.4.0 templates. Existing project docs/configs remain owned by the project; new-doc never overwrites. New --adaptive/--report flags are optional; plain verify remains advisory. Revert the snapshot update commit to roll back.
|
|
156
|
+
|
|
157
|
+
## Continuous development migration (unreleased)
|
|
158
|
+
|
|
159
|
+
Product advances to 1.5.0; Architecture and Delivery to 1.1.0. Distribution version remains 0.11.0 and release-PR owned; no publish is part of this change. Config/lock/artifact/decision/evidence schemas stay unchanged. Reviewed update --dry-run/update/check adds the Core workflow and refreshed templates/skills. Existing project docs, changes, configs and handoffs remain project-owned; append missing baseline/handoff fields selectively. Re-export eval datasets after bundle changes; revert the consumer snapshot commit to roll back. See [Continuous development](continuous-development.md).
|
package/evals/README.md
CHANGED
|
@@ -59,3 +59,7 @@ checks proportional handling of a small clear fix. All new cases remain unscored
|
|
|
59
59
|
project through the intended host and review actual inspected files/decisions/code/test evidence.
|
|
60
60
|
CLI/template/package tests verify distribution and safety contracts, not native host discovery or
|
|
61
61
|
Solution Architect effectiveness. The [host smoke prompt](../docs/tool-setup/README.md) is read-only.
|
|
62
|
+
|
|
63
|
+
## Continuous development scenarios
|
|
64
|
+
|
|
65
|
+
Seven Core continuous-* cases cover approved feature, minimal bugfix, contract-affecting business rule, docs–code drift, changed-baseline resume, read-only/unavailable source and UAT/operations feedback. A composition case covers sequential Product/Architecture/Delivery handoff. See [fixture setup](../docs/examples/continuous-development.md). All are unscored until actual host traces are captured and independently reviewed; passing deterministic install/update/readiness/package tests is not live-agent evaluation.
|
package/harness.yaml
CHANGED
package/package.json
CHANGED
package/templates/AGENTS.md
CHANGED
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
|
|
4
4
|
1. Read `.harness/core/rules/foundations.md`, `.harness/core/rules/context.md` and `.harness/core/policies/security.md`.
|
|
5
5
|
2. Read `.harness/core/policies/permissions.md` and `.harness/core/workflows/spec-to-code.md`.
|
|
6
|
+
For each feature, bugfix, business-rule change or resumed session, apply
|
|
7
|
+
`.harness/core/workflows/continuous-development.md`; recheck actual baseline before trusting a handoff.
|
|
6
8
|
For new projects or consequential changes, apply `.harness/core/workflows/solution-framing.md`;
|
|
7
9
|
preserve approved MVP/architecture and use compact notes for small clear fixes.
|
|
8
10
|
3. Read `.harness/local.md` and `.harness/environment.json` (if present) for project facts and commands.
|
|
@@ -21,3 +21,13 @@ TODO: Authorization, failure modes, compatibility and mitigations.
|
|
|
21
21
|
TODO: Rollout, observability and rollback.
|
|
22
22
|
## Open Questions
|
|
23
23
|
TODO: Unresolved decisions and owner.
|
|
24
|
+
|
|
25
|
+
## Baseline and authority
|
|
26
|
+
TODO: Git root/branch/HEAD and scoped uncommitted edits; requirements/spec/ADR/project-map anchors,
|
|
27
|
+
observed revisions, owners and approved/proposed/in-implementation/superseded status. Compare the
|
|
28
|
+
previous handoff; list changed assumptions, stale evidence, drift and source-authority decisions.
|
|
29
|
+
Use existing project map/decision log references, not a duplicate context store.
|
|
30
|
+
## Selective maintenance
|
|
31
|
+
TODO: Affected sections and stable requirement → spec → code/contracts → tests/evidence links;
|
|
32
|
+
create/update/unchanged reasons, source policy, pre-write revision recheck and proposal/publication
|
|
33
|
+
receipts or blockers. Link artifact-impact.json for configured outputs. Retain unrelated edits.
|
|
@@ -7,6 +7,13 @@
|
|
|
7
7
|
- [ ] 2.1 Add one failing behavior test, implement the slice and record the green result.
|
|
8
8
|
## 3. Verification and review
|
|
9
9
|
- [ ] 3.1 Run applicable quality gates; record commands, results and skipped checks.
|
|
10
|
-
- [ ] 3.2
|
|
10
|
+
- [ ] 3.2 Maintain affected documentation sections or source-policy proposals; record unchanged reasons and required publication blockers.
|
|
11
|
+
- [ ] 3.3 Review standards, security and spec coverage; open a PR without merging.
|
|
11
12
|
## 4. After merge
|
|
12
13
|
- [ ] 4.1 Verify all related PRs are merged, sync specs and archive using OpenSpec.
|
|
14
|
+
|
|
15
|
+
## Session handoff
|
|
16
|
+
TODO: Current baseline and tested revisions; actual decisions; AC/results and evidence links;
|
|
17
|
+
BLOCKED/NOT_RUN with reasons; remaining work, risks and next action/owner. Compare current sources
|
|
18
|
+
before resuming. Implementation status: unknown; merge status: unknown; release status: unknown.
|
|
19
|
+
Keep proposed feedback separate from accepted tasks. Update this section instead of a new session log.
|