@walwal-harness/cli 7.1.6 → 7.1.7

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.
@@ -31,3 +31,6 @@ Required output sections:
31
31
  2. Worker Evidence Manifest — worker name, report path, status.
32
32
  3. CDO Decision — only decisions accepted from worker evidence.
33
33
  4. Next Handoff — CTO-ready design constraints, inputs, blockers.
34
+ 5. Implementation Notes — in English, with `Design Decisions`, `Deviations`, `Tradeoffs`, and `Open Questions`.
35
+
36
+ Every CDO worker brief must require the worker to append the same English `## Implementation Notes` block to the bottom of `.harness/documents/{mission_name}/cdo/workers/{worker-name}.md`, covering risks, self-corrections, chosen direction, and unresolved questions. Use `None` for empty subsections.
@@ -34,6 +34,31 @@ You are the only direct conversation channel with the Owner.
34
34
  - Before CTO/CDO/OPS allocate runnable services, agree with the Owner on a `{xx}000` base port and write it to project `.env` as `HARNESS_BASE_PORT={xx}000`. Mentioning the value in `ceo.md` is not sufficient.
35
35
  - After writing `.env`, verify with `grep '^HARNESS_BASE_PORT=' .env` before routing service work.
36
36
  - For service monitoring, collect the Owner's server mapping first: local PC, Docker, VM, AWS/cloud, host, port, health path, log path, and contact/source.
37
+ - Every CEO and CXX mission document must include an English `## Implementation Notes` section with the required subsections below. CEO must reject CXX reports that omit it.
38
+
39
+ ## Required Mission Note Format
40
+
41
+ Every `ceo.md` and CXX document (`coo.md`, `cdo.md`, `cto.md`, `cqo.md`, `ops.md`) must end with this English section:
42
+
43
+ ```
44
+ ## Implementation Notes
45
+
46
+ ### Design Decisions
47
+ - ...
48
+
49
+ ### Deviations
50
+ - ...
51
+
52
+ ### Tradeoffs
53
+ - ...
54
+
55
+ ### Open Questions
56
+ - ...
57
+ ```
58
+
59
+ Use `None` when a subsection has no entries. These notes are mandatory even for small or emergency work. They must summarize how the role interpreted the Owner request, where the role intentionally diverged from the request, what alternatives were considered, and what still needs Owner confirmation.
60
+
61
+ When briefing a CXX, CEO must explicitly require the CXX to append this section to its own `{cxx}.md` and to require every worker it manages to append the same section to the bottom of that worker's report.
37
62
 
38
63
  ## Routing Gate — CEO Must Never Bypass CXX
39
64
 
@@ -34,3 +34,6 @@ Required output sections:
34
34
  2. Worker Evidence Manifest — worker name, report path, status.
35
35
  3. COO Decision — only decisions accepted from worker evidence.
36
36
  4. Next Handoff — next CXX, inputs, blockers.
37
+ 5. Implementation Notes — in English, with `Design Decisions`, `Deviations`, `Tradeoffs`, and `Open Questions`.
38
+
39
+ Every COO worker brief must require the worker to append the same English `## Implementation Notes` block to the bottom of `.harness/documents/{mission_name}/coo/workers/{worker-name}.md`, covering risks, self-corrections, chosen direction, and unresolved questions. Use `None` for empty subsections.
@@ -36,3 +36,26 @@ Required output sections in `cqo.md`:
36
36
  2. Worker Evidence Manifest — worker name, report path, command or artifact evidence, status.
37
37
  3. CQO Verdict — PASS, FAIL, or BLOCKED based only on worker evidence. Must reference Worker Evidence Manifest entries.
38
38
  4. Recurrence Notes — accepted gotchas, conventions, memories, or none.
39
+ 5. Implementation Notes — in English, with `Design Decisions`, `Deviations`, `Tradeoffs`, and `Open Questions`.
40
+
41
+ ## Worker Report Note Requirement
42
+
43
+ Every CQO evaluator/tester brief must require the worker to append this English block to the bottom of `.harness/documents/{mission_name}/cqo/workers/{worker-name}.md`:
44
+
45
+ ```
46
+ ## Implementation Notes
47
+
48
+ ### Design Decisions
49
+ - ...
50
+
51
+ ### Deviations
52
+ - ...
53
+
54
+ ### Tradeoffs
55
+ - ...
56
+
57
+ ### Open Questions
58
+ - ...
59
+ ```
60
+
61
+ The worker notes must cover risks, self-corrections, and chosen direction. Use `None` when a subsection has no entries. CQO must not accept evaluator output that omits this block.
@@ -37,3 +37,26 @@ Required output sections in `cto.md`:
37
37
  3. Worker Evidence Manifest — worker name, report path, changed files or artifact paths, status.
38
38
  4. CTO Decision — only decisions accepted from worker evidence.
39
39
  5. CQO Handoff — validation scope, commands, risk areas, blockers.
40
+ 6. Implementation Notes — in English, with `Design Decisions`, `Deviations`, `Tradeoffs`, and `Open Questions`.
41
+
42
+ ## Worker Report Note Requirement
43
+
44
+ Every CTO worker brief must require the worker to append this English block to the bottom of `.harness/documents/{mission_name}/cto/workers/{worker-name}.md`:
45
+
46
+ ```
47
+ ## Implementation Notes
48
+
49
+ ### Design Decisions
50
+ - ...
51
+
52
+ ### Deviations
53
+ - ...
54
+
55
+ ### Tradeoffs
56
+ - ...
57
+
58
+ ### Open Questions
59
+ - ...
60
+ ```
61
+
62
+ The worker notes must cover risks, self-corrections, and chosen direction. Use `None` when a subsection has no entries. CTO must not accept worker output that omits this block.
@@ -26,6 +26,28 @@ Hire workers from `.harness/shared/HR-Resource/`.
26
26
  5. Update `.harness/shared/hr-roster.json` without deleting existing hired entries. Record `owner` as the owning CXX, `skillPath` as `.harness/shared/HR-Resource/{name}/SKILL.md`, and `skillPaths.claude` / `skillPaths.codex` as tool-specific hierarchical installed paths.
27
27
  6. The owning CXX must write worker reports under `.harness/documents/{mission}/{owning-cxx}/workers/{name}.md`. Do not write flat `.harness/documents/{mission}/workers/{name}.md` except when migrating legacy missions.
28
28
  7. Ask the `harness-resource-manager` skill to update trigger wording.
29
- 8. Return worker name, owner, source skill path, installed paths, mission report path, and invocation wording.
29
+ 8. Return worker name, owner, source skill path, installed paths, mission report path, invocation wording, and the mandatory report appendix below.
30
+
31
+ ## Mandatory Worker Report Appendix
32
+
33
+ Every hired worker must append this English section to the bottom of its existing report:
34
+
35
+ ```
36
+ ## Implementation Notes
37
+
38
+ ### Design Decisions
39
+ - ...
40
+
41
+ ### Deviations
42
+ - ...
43
+
44
+ ### Tradeoffs
45
+ - ...
46
+
47
+ ### Open Questions
48
+ - ...
49
+ ```
50
+
51
+ The appendix must summarize risks, self-corrections, and chosen direction. Use `None` when a subsection has no entries.
30
52
 
31
53
  Never mark a missing worker as available.
@@ -44,3 +44,6 @@ OPS must not directly perform DevOps implementation, service fixes, config rewri
44
44
  2. Environment Evidence — config path, command/service checked, observed status.
45
45
  3. Worker Evidence Manifest — worker name, report path, status for delegated monitoring or recovery tasks.
46
46
  4. OPS Event Decision — good-case silence, warning, incident, or emergency escalation.
47
+ 5. Implementation Notes — in English, with `Design Decisions`, `Deviations`, `Tradeoffs`, and `Open Questions`.
48
+
49
+ Every OPS worker brief must require the worker to append the same English `## Implementation Notes` block to the bottom of `.harness/documents/{mission_name}/ops/workers/{worker-name}.md`, covering risks, self-corrections, chosen direction, and unresolved questions. Use `None` for empty subsections.
@@ -21,6 +21,10 @@ Manage worker availability and invocation wording.
21
21
 
22
22
  1. Check whether the requester is a CXX. CEO cannot request specialist worker assignment directly.
23
23
  2. Check whether a suitable worker is already hired for that owning CXX.
24
- 3. If hired, return the exact skill name, owning CXX, hierarchical installed paths, and mission report path.
24
+ 3. If hired, return the exact skill name, owning CXX, hierarchical installed paths, mission report path, and the mandatory `## Implementation Notes` report appendix requirement.
25
25
  4. If not hired, suggest `.harness/shared/HR-Resource/` candidates and recommend the `harness-hiring` skill with `owning CXX` filled in.
26
26
  5. Keep aliases narrow enough to avoid accidental generic invocation.
27
+
28
+ ## Mandatory Worker Report Appendix
29
+
30
+ Every worker assignment must require the worker to append an English `## Implementation Notes` section with these subsections: `Design Decisions`, `Deviations`, `Tradeoffs`, and `Open Questions`. The appendix must cover risks, self-corrections, chosen direction, and unresolved questions. Use `None` for empty subsections.
package/README.md CHANGED
@@ -93,6 +93,30 @@ Owner /hot-fix → CEO → CTO → [dev workers] → CQO → [evaluator workers]
93
93
  | 6 | CEO routes only to CXX — never directly to workers |
94
94
  | 7 | No CXX self-execution — deliverables without matching worker records are rejected |
95
95
  | 8 | No verdict without worker evidence — CQO self-inspection is not valid |
96
+ | 9 | Hierarchical worker ownership — worker reports live under `.harness/documents/{mission}/{owning-cxx}/workers/` |
97
+ | 10 | Implementation Notes required — `ceo.md`, every `{cxx}.md`, and every worker report must end with an English `## Implementation Notes` section |
98
+
99
+ ### Implementation Notes Format
100
+
101
+ Every `ceo.md`, `{cxx}.md`, and worker report must end with:
102
+
103
+ ```markdown
104
+ ## Implementation Notes
105
+
106
+ ### Design Decisions
107
+ - How the role interpreted the Owner request
108
+
109
+ ### Deviations
110
+ - Where the role intentionally diverged from the request
111
+
112
+ ### Tradeoffs
113
+ - Alternatives considered and why they were rejected
114
+
115
+ ### Open Questions
116
+ - What still needs Owner or CXX confirmation
117
+ ```
118
+
119
+ Use `None` when a subsection has no entries. This section is mandatory even for small or emergency work. CEO must reject any CXX report that omits it. CTO and CQO must not accept worker output that omits it.
96
120
 
97
121
  ---
98
122
 
@@ -145,6 +169,7 @@ harness-hiring → register and onboard worker
145
169
 
146
170
  | Version | Summary |
147
171
  |---|---|
172
+ | 7.1.7 | Implementation Notes mandatory in all CXX docs and worker reports; harness-worker-evidence-validate.sh |
148
173
  | 7.1.6 | CXX hierarchy enforcement: CEO→CXX-only gate, CTO prerequisite gate, CQO worker-evidence mandate; dashboard gotchas tab, mission-specific history tab, worker file list in flow |
149
174
  | 7.1.5 | Dashboard: mission flow timeline, markdown viewer, 50vw drawer |
150
175
  | 7.1.4 | Dashboard: org-tree redesign with real `.harness/documents/` data |
@@ -108,6 +108,7 @@ Note: A docmeta skip decision on harness documents (ceo.md, cto.md, cqo.md, work
108
108
  8. **No CXX self-execution** — CXX agents coordinate and manage only. A CXX that produces deliverables without matching worker records has violated its scope. CEO must reject such reports.
109
109
  9. **No verdict without worker evidence** — CQO cannot issue ACCEPTED/REJECTED without a Worker Evidence Manifest referencing at least one evaluator worker. Self-inspection by CQO is not valid evidence.
110
110
  10. **Hierarchical worker ownership** — Hired workers are installed under `.claude/skills/{owning-cxx}/{worker}/` and `.codex/skills/{owning-cxx}/{worker}/`; mission worker reports live under `.harness/documents/{mission}/{owning-cxx}/workers/`. Flat `{mission}/workers/` reports are legacy and signal an ownership violation unless explicitly migrated.
111
+ 11. **Implementation Notes required** — `ceo.md`, every `{cxx}.md`, and every worker report must end with an English `## Implementation Notes` section containing `Design Decisions`, `Deviations`, `Tradeoffs`, and `Open Questions`. Use `None` for empty subsections.
111
112
 
112
113
  ---
113
114
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@walwal-harness/cli",
3
- "version": "7.1.6",
3
+ "version": "7.1.7",
4
4
  "description": "Company-style AI agent harness for Claude and Codex. Installs commands, CXX agents, skills, HR-Resource hiring pool, and project-local .harness runtime state.",
5
5
  "bin": {
6
6
  "walwal-harness": "bin/init.js"
@@ -10,6 +10,16 @@ DOC_ROOT="$PROJECT_ROOT/.harness/documents"
10
10
  mode="${2:-text}"
11
11
  violations=()
12
12
 
13
+ has_implementation_notes() {
14
+ local file="$1"
15
+ [ -s "$file" ] || return 1
16
+ grep -Eq '^##[[:space:]]+Implementation Notes[[:space:]]*$' "$file" &&
17
+ grep -Eq '^###[[:space:]]+Design Decisions[[:space:]]*$' "$file" &&
18
+ grep -Eq '^###[[:space:]]+Deviations[[:space:]]*$' "$file" &&
19
+ grep -Eq '^###[[:space:]]+Tradeoffs[[:space:]]*$' "$file" &&
20
+ grep -Eq '^###[[:space:]]+Open Questions[[:space:]]*$' "$file"
21
+ }
22
+
13
23
  has_worker_report() {
14
24
  local mission_dir="$1"
15
25
  local owner="${2:-}"
@@ -29,6 +39,11 @@ for mission_dir in "$DOC_ROOT"/*; do
29
39
  [ -d "$mission_dir" ] || continue
30
40
  mission_name="$(basename "$mission_dir")"
31
41
 
42
+ ceo_path="$mission_dir/ceo.md"
43
+ if [ -s "$ceo_path" ] && ! has_implementation_notes "$ceo_path"; then
44
+ violations+=("$mission_name:ceo.md-missing-implementation-notes")
45
+ fi
46
+
32
47
  if has_legacy_flat_worker_report "$mission_dir"; then
33
48
  violations+=("$mission_name:legacy-flat-workers")
34
49
  fi
@@ -36,9 +51,20 @@ for mission_dir in "$DOC_ROOT"/*; do
36
51
  for cxx in coo cdo cto cqo ops; do
37
52
  cxx_path="$mission_dir/$cxx.md"
38
53
  [ -s "$cxx_path" ] || continue
54
+ if ! has_implementation_notes "$cxx_path"; then
55
+ violations+=("$mission_name:$cxx.md-missing-implementation-notes")
56
+ fi
39
57
  if ! has_worker_report "$mission_dir" "$cxx"; then
40
58
  violations+=("$mission_name:$cxx.md")
41
59
  fi
60
+ workers_dir="$mission_dir/$cxx/workers"
61
+ [ -d "$workers_dir" ] || continue
62
+ for worker_report in "$workers_dir"/*.md; do
63
+ [ -e "$worker_report" ] || continue
64
+ if ! has_implementation_notes "$worker_report"; then
65
+ violations+=("$mission_name:$cxx/workers/$(basename "$worker_report")-missing-implementation-notes")
66
+ fi
67
+ done
42
68
  done
43
69
 
44
70
  cqo_path="$mission_dir/cqo.md"