@lifeaitools/rdc-skills 0.24.42 → 0.25.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.json +15 -15
- package/.claude-plugin/marketplace.json +21 -21
- package/.claude-plugin/plugin.json +1560 -1371
- package/.github/workflows/publish.yml +34 -34
- package/.github/workflows/self-test.yml +58 -58
- package/CHANGELOG.md +322 -310
- package/LICENSE +21 -21
- package/MANIFEST.md +224 -221
- package/README.md +377 -376
- package/README.sandbox.md +3 -3
- package/assets/watcher/viewer.html +164 -164
- package/bin/rdc-skills-mcp.mjs +316 -316
- package/commands/build.md +183 -183
- package/commands/collab.md +180 -180
- package/commands/deploy.md +152 -152
- package/commands/design.md +31 -31
- package/commands/edit.md +28 -28
- package/commands/fixit.md +150 -124
- package/commands/handoff.md +173 -173
- package/commands/help.md +95 -95
- package/commands/overnight.md +220 -220
- package/commands/plan.md +158 -158
- package/commands/preplan.md +131 -131
- package/commands/prototype.md +145 -145
- package/commands/release.md +49 -49
- package/commands/report.md +99 -99
- package/commands/review.md +120 -120
- package/commands/self-test.md +113 -113
- package/commands/status.md +86 -86
- package/commands/watch.md +98 -98
- package/commands/workitems.md +137 -137
- package/git-sha.json +1 -1
- package/guides/agent-bootstrap.md +295 -295
- package/guides/agents/backend.md +104 -104
- package/guides/agents/content.md +94 -94
- package/guides/agents/cs2.md +56 -56
- package/guides/agents/data.md +87 -87
- package/guides/agents/design.md +77 -77
- package/guides/agents/frontend.md +92 -92
- package/guides/agents/infrastructure.md +81 -81
- package/guides/agents/setup.md +281 -281
- package/guides/agents/verify.md +151 -151
- package/guides/agents/viz.md +106 -106
- package/guides/backend.md +146 -146
- package/guides/content.md +147 -147
- package/guides/cs2.md +190 -190
- package/guides/data.md +123 -123
- package/guides/design.md +116 -116
- package/guides/engineering-behavior.md +43 -43
- package/guides/escalation-protocol.md +125 -125
- package/guides/frontend.md +151 -151
- package/guides/history-md-spec.md +297 -297
- package/guides/infrastructure.md +179 -179
- package/guides/lessons-learned-spec.md +145 -151
- package/guides/output-contract.md +108 -108
- package/guides/publish-md-spec.md +289 -289
- package/guides/rdc-skills-startup.md +30 -30
- package/guides/verify.md +11 -11
- package/hooks/check-cwd.js +31 -31
- package/hooks/check-rdc-environment.js +164 -164
- package/hooks/check-services.js +6 -6
- package/hooks/check-stale-work-items.js +19 -19
- package/hooks/foreground-process-gate.js +128 -128
- package/hooks/gate-watchdog-selfcheck.js +257 -257
- package/hooks/hook-logger.js +25 -25
- package/hooks/lib/run-evidence-gate.mjs +241 -241
- package/hooks/no-stop-open-epics.js +127 -127
- package/hooks/post-tool-batch-gate.js +203 -203
- package/hooks/post-work-check.js +21 -21
- package/hooks/postcompact-log.js +13 -13
- package/hooks/precompact-log.js +13 -13
- package/hooks/rate-limit-retry.js +46 -46
- package/hooks/rdc-invocation-marker.js +157 -157
- package/hooks/rdc-output-contract-gate.js +94 -94
- package/hooks/require-work-item-on-commit.js +294 -294
- package/hooks/restart-brief.js +19 -19
- package/hooks/run-hidden-hook.ps1 +47 -47
- package/hooks/task-completed-gate.js +274 -274
- package/hooks/work-item-exit-gate.js +944 -944
- package/lib/catalog.mjs +236 -236
- package/lib/cloud-rewrite.mjs +155 -155
- package/package.json +57 -57
- package/rules/work-items-rpc.md +520 -520
- package/scaffold/templates/HISTORY.md.template +39 -39
- package/scaffold/templates/PUBLISH.md.template +21 -21
- package/scaffold/templates/brochure-studio-default.html +70 -70
- package/scripts/acceptance.mjs +502 -502
- package/scripts/fixtures/guides/bad-guide.md +15 -15
- package/scripts/fixtures/guides-clean/good-guide.md +16 -16
- package/scripts/install-rdc-skills.js +1401 -1289
- package/scripts/install.ps1 +202 -202
- package/scripts/install.sh +132 -132
- package/scripts/lib/assertions.mjs +287 -287
- package/scripts/lib/manifest-schema.mjs +754 -754
- package/scripts/lib/runner.mjs +465 -465
- package/scripts/lib/sandbox.mjs +435 -435
- package/scripts/prepack.mjs +32 -32
- package/scripts/rdc-brochure.mjs +482 -482
- package/scripts/rdc-design-cli.mjs +134 -134
- package/scripts/rebuild-mcp.mjs +107 -107
- package/scripts/self-test.mjs +1460 -1460
- package/scripts/stamp-git-sha.mjs +29 -29
- package/scripts/test-guide-validator.mjs +196 -196
- package/scripts/test-rdc-hooks.mjs +145 -145
- package/scripts/uninstall.ps1 +77 -77
- package/scripts/uninstall.sh +69 -69
- package/scripts/update.ps1 +43 -43
- package/scripts/update.sh +43 -43
- package/scripts/validate-place-histories.js +461 -461
- package/scripts/validate-publish-manifests.js +502 -424
- package/scripts/watch-init.mjs +100 -100
- package/skills/brochure/SKILL.md +107 -107
- package/skills/build/SKILL.md +578 -563
- package/skills/channel-formatter/SKILL.md +538 -533
- package/skills/co-develop/SKILL.md +196 -196
- package/skills/collab/SKILL.md +239 -239
- package/skills/convert/SKILL.md +167 -140
- package/skills/deploy/SKILL.md +541 -541
- package/skills/design/SKILL.md +211 -211
- package/skills/design/reference/ownership.md +16 -16
- package/skills/design/reference/rampa.md +92 -92
- package/skills/design/reference/studio-model.md +153 -153
- package/skills/edit/SKILL.md +98 -98
- package/skills/env/SKILL.md +141 -0
- package/skills/fixit/SKILL.md +203 -165
- package/skills/fs-mcp/SKILL.md +183 -148
- package/skills/handoff/SKILL.md +236 -236
- package/skills/help/SKILL.md +143 -143
- package/skills/housekeeping/SKILL.md +160 -219
- package/skills/lifeai-brochure-author/SKILL.md +340 -340
- package/skills/new-model/SKILL.md +49 -0
- package/skills/onramp/SKILL.md +1459 -0
- package/skills/overnight/SKILL.md +251 -251
- package/skills/plan/SKILL.md +345 -345
- package/skills/preplan/SKILL.md +90 -90
- package/skills/prototype/SKILL.md +150 -150
- package/skills/rdc-brochurify/SKILL.md +245 -245
- package/skills/rdc-extract-verifier-rules/SKILL.md +191 -191
- package/skills/regen-media/SKILL.md +94 -0
- package/skills/release/SKILL.md +140 -140
- package/skills/report/SKILL.md +100 -100
- package/skills/review/SKILL.md +160 -152
- package/skills/rpms-filemap/SKILL.cloud.md +111 -111
- package/skills/rpms-filemap/SKILL.md +111 -111
- package/skills/self-test/SKILL.md +132 -132
- package/skills/status/SKILL.md +99 -99
- package/skills/terminal-config/SKILL.md +62 -62
- package/skills/tests/MATRIX.md +55 -54
- package/skills/tests/README.md +47 -47
- package/skills/tests/onramp.test.json +87 -0
- package/skills/tests/rdc-brochure.test.json +34 -34
- package/skills/tests/rdc-build.test.json +36 -36
- package/skills/tests/rdc-channel-formatter.test.json +45 -45
- package/skills/tests/rdc-co-develop.test.json +29 -29
- package/skills/tests/rdc-collab.test.json +29 -29
- package/skills/tests/rdc-convert.test.json +35 -35
- package/skills/tests/rdc-deploy.test.json +30 -30
- package/skills/tests/rdc-design.test.json +27 -27
- package/skills/tests/rdc-edit.test.json +29 -29
- package/skills/tests/rdc-fixit.test.json +36 -36
- package/skills/tests/rdc-fs-mcp.test.json +36 -36
- package/skills/tests/rdc-handoff.test.json +28 -28
- package/skills/tests/rdc-help.test.json +29 -29
- package/skills/tests/rdc-housekeeping.test.json +28 -32
- package/skills/tests/rdc-lifeai-brochure-author.test.json +35 -35
- package/skills/tests/rdc-overnight.test.json +37 -37
- package/skills/tests/rdc-plan.test.json +27 -27
- package/skills/tests/rdc-preplan.test.json +31 -31
- package/skills/tests/rdc-prototype.test.json +28 -28
- package/skills/tests/rdc-rdc-brochurify.test.json +23 -23
- package/skills/tests/rdc-rdc-extract-verifier-rules.test.json +34 -34
- package/skills/tests/rdc-regen-media.test.json +29 -0
- package/skills/tests/rdc-release.test.json +29 -29
- package/skills/tests/rdc-report.test.json +28 -28
- package/skills/tests/rdc-review.test.json +29 -29
- package/skills/tests/rdc-rpms-filemap.test.json +28 -28
- package/skills/tests/rdc-self-test.test.json +24 -24
- package/skills/tests/rdc-status.test.json +29 -29
- package/skills/tests/rdc-terminal-config.test.json +29 -29
- package/skills/tests/rdc-watch.test.json +24 -24
- package/skills/tests/rdc-workitems.test.json +27 -27
- package/skills/watch/SKILL.md +97 -97
- package/skills/workitems/SKILL.md +151 -151
- package/tests/acceptance.test.mjs +59 -59
- package/tests/channel-formatter.contract.test.mjs +251 -251
- package/tests/curl-surface.test.mjs +289 -289
- package/tests/harness-gates.test.mjs +325 -325
- package/tests/help-surface.test.mjs +61 -61
- package/tests/install-rdc-skills.test.mjs +49 -49
- package/tests/manifest-contract-fields.test.mjs +78 -78
- package/tests/mcp.test.mjs +271 -271
- package/tests/rdc-brochure.test.mjs +125 -125
- package/tests/require-work-item-on-commit.test.mjs +162 -162
- package/tests/run-evidence-gate.test.mjs +82 -82
- package/tests/skill-test-matrix.test.mjs +66 -66
- package/tests/validate-skills.js +27 -27
- package/tests/work-item-exit-gate-l2.test.mjs +368 -368
- package/tests/work-item-exit-gate-l3.test.mjs +197 -197
- package/RELEASE.md +0 -42
- package/tests/housekeeping-lessons-triage.test.mjs +0 -49
- package/tests/lessons-pipeline-contract.test.mjs +0 -27
- package/tests/release-contract.test.mjs +0 -16
package/guides/design.md
CHANGED
|
@@ -1,116 +1,116 @@
|
|
|
1
|
-
# Design Agent Guide — Base
|
|
2
|
-
> Role-based context for design system, branding, and visual agents. Generic patterns across projects.
|
|
3
|
-
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
## Design Principles
|
|
7
|
-
|
|
8
|
-
Projects typically define core design principles. Check the overlay for:
|
|
9
|
-
- Philosophy guiding all visual decisions
|
|
10
|
-
- Accessibility standards
|
|
11
|
-
- Motion/animation philosophy
|
|
12
|
-
- Dark/light mode strategy
|
|
13
|
-
- Tone and voice guidelines
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
## Brand Palettes
|
|
18
|
-
|
|
19
|
-
The project specifies:
|
|
20
|
-
- Primary colors per brand
|
|
21
|
-
- Accent/secondary colors
|
|
22
|
-
- Neutrals and grays
|
|
23
|
-
- Dark mode vs light mode variations
|
|
24
|
-
- Color semantics (error, success, warning, etc.)
|
|
25
|
-
|
|
26
|
-
Check the overlay for exact hex values and CSS variable names.
|
|
27
|
-
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
## Token Inheritance / Design Tokens
|
|
31
|
-
|
|
32
|
-
Some projects use design token systems. The overlay specifies:
|
|
33
|
-
- Whether tokens are centralized or distributed
|
|
34
|
-
- How tokens are versioned
|
|
35
|
-
- Export formats (JSON, CSS, Figma, etc.)
|
|
36
|
-
- Token hierarchy and relationships
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## Typography
|
|
41
|
-
|
|
42
|
-
The project specifies:
|
|
43
|
-
- Primary UI font(s)
|
|
44
|
-
- Display/heading font
|
|
45
|
-
- Mono font for code
|
|
46
|
-
- Type scale (sizes and weights)
|
|
47
|
-
- Line heights and letter spacing
|
|
48
|
-
|
|
49
|
-
Never hardcode `font-family` — always use tokens or CSS variables.
|
|
50
|
-
|
|
51
|
-
---
|
|
52
|
-
|
|
53
|
-
## Component Variant Axes
|
|
54
|
-
|
|
55
|
-
Most design systems define variant axes. Check overlay for which axes apply:
|
|
56
|
-
- Brand / product line
|
|
57
|
-
- Visual style (default, minimal, heritage, etc.)
|
|
58
|
-
- Size and density
|
|
59
|
-
- Shape (rounded, sharp, pill, etc.)
|
|
60
|
-
- Motion (static, subtle, rich)
|
|
61
|
-
- State (default, hover, disabled, etc.)
|
|
62
|
-
|
|
63
|
-
Every component should support relevant axes on day one.
|
|
64
|
-
|
|
65
|
-
---
|
|
66
|
-
|
|
67
|
-
## OG Images / Social Cards
|
|
68
|
-
|
|
69
|
-
The project specifies:
|
|
70
|
-
- Dimensions (1200×630 is standard)
|
|
71
|
-
- Format (PNG, JPG)
|
|
72
|
-
- Design spec (fonts, colors, layout)
|
|
73
|
-
- Generation process (Python/Pillow, Node, etc.)
|
|
74
|
-
- File location and naming convention
|
|
75
|
-
|
|
76
|
-
---
|
|
77
|
-
|
|
78
|
-
## Asset Organization
|
|
79
|
-
|
|
80
|
-
The project specifies:
|
|
81
|
-
- Where to store images (folder structure)
|
|
82
|
-
- Naming convention (kebab-case patterns)
|
|
83
|
-
- File formats (WebP for photos, SVG for icons, etc.)
|
|
84
|
-
- Optimization requirements
|
|
85
|
-
|
|
86
|
-
---
|
|
87
|
-
|
|
88
|
-
## Animation and Motion
|
|
89
|
-
|
|
90
|
-
The project specifies:
|
|
91
|
-
- Whether animations are used (CRUD vs public pages)
|
|
92
|
-
- Motion library (Framer, Aceternity, custom, etc.)
|
|
93
|
-
- Easing and duration tokens
|
|
94
|
-
- `prefers-reduced-motion` compliance
|
|
95
|
-
|
|
96
|
-
---
|
|
97
|
-
|
|
98
|
-
## Accessibility
|
|
99
|
-
|
|
100
|
-
The project specifies:
|
|
101
|
-
- WCAG compliance level (A, AA, AAA)
|
|
102
|
-
- Color contrast requirements
|
|
103
|
-
- Focus indicators
|
|
104
|
-
- Keyboard navigation patterns
|
|
105
|
-
- Screen reader expectations
|
|
106
|
-
|
|
107
|
-
---
|
|
108
|
-
|
|
109
|
-
## Specialist Context — Read Project Overlay
|
|
110
|
-
|
|
111
|
-
Your task may require reading additional project-specific guides for:
|
|
112
|
-
- Brand system architecture (token inheritance, export)
|
|
113
|
-
- OG image generation scripts
|
|
114
|
-
- Design token tools and workflows
|
|
115
|
-
- Specific app brand palettes
|
|
116
|
-
- Component inventory and patterns
|
|
1
|
+
# Design Agent Guide — Base
|
|
2
|
+
> Role-based context for design system, branding, and visual agents. Generic patterns across projects.
|
|
3
|
+
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Design Principles
|
|
7
|
+
|
|
8
|
+
Projects typically define core design principles. Check the overlay for:
|
|
9
|
+
- Philosophy guiding all visual decisions
|
|
10
|
+
- Accessibility standards
|
|
11
|
+
- Motion/animation philosophy
|
|
12
|
+
- Dark/light mode strategy
|
|
13
|
+
- Tone and voice guidelines
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Brand Palettes
|
|
18
|
+
|
|
19
|
+
The project specifies:
|
|
20
|
+
- Primary colors per brand
|
|
21
|
+
- Accent/secondary colors
|
|
22
|
+
- Neutrals and grays
|
|
23
|
+
- Dark mode vs light mode variations
|
|
24
|
+
- Color semantics (error, success, warning, etc.)
|
|
25
|
+
|
|
26
|
+
Check the overlay for exact hex values and CSS variable names.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Token Inheritance / Design Tokens
|
|
31
|
+
|
|
32
|
+
Some projects use design token systems. The overlay specifies:
|
|
33
|
+
- Whether tokens are centralized or distributed
|
|
34
|
+
- How tokens are versioned
|
|
35
|
+
- Export formats (JSON, CSS, Figma, etc.)
|
|
36
|
+
- Token hierarchy and relationships
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Typography
|
|
41
|
+
|
|
42
|
+
The project specifies:
|
|
43
|
+
- Primary UI font(s)
|
|
44
|
+
- Display/heading font
|
|
45
|
+
- Mono font for code
|
|
46
|
+
- Type scale (sizes and weights)
|
|
47
|
+
- Line heights and letter spacing
|
|
48
|
+
|
|
49
|
+
Never hardcode `font-family` — always use tokens or CSS variables.
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Component Variant Axes
|
|
54
|
+
|
|
55
|
+
Most design systems define variant axes. Check overlay for which axes apply:
|
|
56
|
+
- Brand / product line
|
|
57
|
+
- Visual style (default, minimal, heritage, etc.)
|
|
58
|
+
- Size and density
|
|
59
|
+
- Shape (rounded, sharp, pill, etc.)
|
|
60
|
+
- Motion (static, subtle, rich)
|
|
61
|
+
- State (default, hover, disabled, etc.)
|
|
62
|
+
|
|
63
|
+
Every component should support relevant axes on day one.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## OG Images / Social Cards
|
|
68
|
+
|
|
69
|
+
The project specifies:
|
|
70
|
+
- Dimensions (1200×630 is standard)
|
|
71
|
+
- Format (PNG, JPG)
|
|
72
|
+
- Design spec (fonts, colors, layout)
|
|
73
|
+
- Generation process (Python/Pillow, Node, etc.)
|
|
74
|
+
- File location and naming convention
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Asset Organization
|
|
79
|
+
|
|
80
|
+
The project specifies:
|
|
81
|
+
- Where to store images (folder structure)
|
|
82
|
+
- Naming convention (kebab-case patterns)
|
|
83
|
+
- File formats (WebP for photos, SVG for icons, etc.)
|
|
84
|
+
- Optimization requirements
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## Animation and Motion
|
|
89
|
+
|
|
90
|
+
The project specifies:
|
|
91
|
+
- Whether animations are used (CRUD vs public pages)
|
|
92
|
+
- Motion library (Framer, Aceternity, custom, etc.)
|
|
93
|
+
- Easing and duration tokens
|
|
94
|
+
- `prefers-reduced-motion` compliance
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Accessibility
|
|
99
|
+
|
|
100
|
+
The project specifies:
|
|
101
|
+
- WCAG compliance level (A, AA, AAA)
|
|
102
|
+
- Color contrast requirements
|
|
103
|
+
- Focus indicators
|
|
104
|
+
- Keyboard navigation patterns
|
|
105
|
+
- Screen reader expectations
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Specialist Context — Read Project Overlay
|
|
110
|
+
|
|
111
|
+
Your task may require reading additional project-specific guides for:
|
|
112
|
+
- Brand system architecture (token inheritance, export)
|
|
113
|
+
- OG image generation scripts
|
|
114
|
+
- Design token tools and workflows
|
|
115
|
+
- Specific app brand palettes
|
|
116
|
+
- Component inventory and patterns
|
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
# Engineering Behavior
|
|
2
|
-
|
|
3
|
-
Use this with `agent-bootstrap.md` for implementation and review work. These
|
|
4
|
-
rules adapt general coding-agent hygiene into the RDC work-item contract.
|
|
5
|
-
|
|
6
|
-
## Before Editing
|
|
7
|
-
|
|
8
|
-
- State material assumptions in the work-item report; ask or block when the
|
|
9
|
-
ambiguity changes architecture, data shape, security, or user-visible scope.
|
|
10
|
-
- Prefer the smallest change that satisfies the assigned checklist rows.
|
|
11
|
-
- Do not add features, abstractions, configurability, or fallback behavior that
|
|
12
|
-
is not required by the work item.
|
|
13
|
-
- If a simpler path exists than the apparent request, report the tradeoff before
|
|
14
|
-
widening the implementation.
|
|
15
|
-
|
|
16
|
-
## While Editing
|
|
17
|
-
|
|
18
|
-
- Stay inside the assigned files, package, route, or work-item boundary.
|
|
19
|
-
- Match the local style and contracts already in the touched files.
|
|
20
|
-
- Do not reformat, rename, or refactor adjacent code unless the checklist row
|
|
21
|
-
explicitly requires it.
|
|
22
|
-
- Clean up only the unused imports, variables, files, or branches created by
|
|
23
|
-
your own change.
|
|
24
|
-
- If existing code looks dead or wrong but is outside scope, list it as a
|
|
25
|
-
blocker or follow-up. Do not remove it.
|
|
26
|
-
|
|
27
|
-
## Verification
|
|
28
|
-
|
|
29
|
-
- Every completed row needs evidence: test output, route probe, SQL result,
|
|
30
|
-
screenshot artifact, type-check output, CLI transcript, or reviewer citation.
|
|
31
|
-
- Finding an existing file is not evidence. Verify the required behavior.
|
|
32
|
-
- Tick each `decomp-*` and `test-*` checklist item immediately after proving
|
|
33
|
-
that exact behavior. Do not batch ticks at the end.
|
|
34
|
-
- Record assumptions, deviations, uncertainty, blockers, files changed, and
|
|
35
|
-
verification in `submit_implementation_report()` before moving to `review`.
|
|
36
|
-
|
|
37
|
-
## Escalation
|
|
38
|
-
|
|
39
|
-
- Stop and report `BLOCKED` when the fix requires files outside scope, a broader
|
|
40
|
-
architectural choice, a missing credential, or a second repeated failure.
|
|
41
|
-
- In unattended mode, choose the most conservative valid path only when the
|
|
42
|
-
acceptance criteria remain unchanged; otherwise escalate through the advisor
|
|
43
|
-
path required by the active skill.
|
|
1
|
+
# Engineering Behavior
|
|
2
|
+
|
|
3
|
+
Use this with `agent-bootstrap.md` for implementation and review work. These
|
|
4
|
+
rules adapt general coding-agent hygiene into the RDC work-item contract.
|
|
5
|
+
|
|
6
|
+
## Before Editing
|
|
7
|
+
|
|
8
|
+
- State material assumptions in the work-item report; ask or block when the
|
|
9
|
+
ambiguity changes architecture, data shape, security, or user-visible scope.
|
|
10
|
+
- Prefer the smallest change that satisfies the assigned checklist rows.
|
|
11
|
+
- Do not add features, abstractions, configurability, or fallback behavior that
|
|
12
|
+
is not required by the work item.
|
|
13
|
+
- If a simpler path exists than the apparent request, report the tradeoff before
|
|
14
|
+
widening the implementation.
|
|
15
|
+
|
|
16
|
+
## While Editing
|
|
17
|
+
|
|
18
|
+
- Stay inside the assigned files, package, route, or work-item boundary.
|
|
19
|
+
- Match the local style and contracts already in the touched files.
|
|
20
|
+
- Do not reformat, rename, or refactor adjacent code unless the checklist row
|
|
21
|
+
explicitly requires it.
|
|
22
|
+
- Clean up only the unused imports, variables, files, or branches created by
|
|
23
|
+
your own change.
|
|
24
|
+
- If existing code looks dead or wrong but is outside scope, list it as a
|
|
25
|
+
blocker or follow-up. Do not remove it.
|
|
26
|
+
|
|
27
|
+
## Verification
|
|
28
|
+
|
|
29
|
+
- Every completed row needs evidence: test output, route probe, SQL result,
|
|
30
|
+
screenshot artifact, type-check output, CLI transcript, or reviewer citation.
|
|
31
|
+
- Finding an existing file is not evidence. Verify the required behavior.
|
|
32
|
+
- Tick each `decomp-*` and `test-*` checklist item immediately after proving
|
|
33
|
+
that exact behavior. Do not batch ticks at the end.
|
|
34
|
+
- Record assumptions, deviations, uncertainty, blockers, files changed, and
|
|
35
|
+
verification in `submit_implementation_report()` before moving to `review`.
|
|
36
|
+
|
|
37
|
+
## Escalation
|
|
38
|
+
|
|
39
|
+
- Stop and report `BLOCKED` when the fix requires files outside scope, a broader
|
|
40
|
+
architectural choice, a missing credential, or a second repeated failure.
|
|
41
|
+
- In unattended mode, choose the most conservative valid path only when the
|
|
42
|
+
acceptance criteria remain unchanged; otherwise escalate through the advisor
|
|
43
|
+
path required by the active skill.
|
|
@@ -1,125 +1,125 @@
|
|
|
1
|
-
# Truth-Gain Escalation Protocol — Claude ↔ Codex
|
|
2
|
-
|
|
3
|
-
> Shared governance protocol for peer agent collaboration. Referenced by
|
|
4
|
-
> `rdc:co-develop` and (when built) `rdc:ccandme`.
|
|
5
|
-
> Approved: option-1 — shared guide + ref from both skills; trigger = two
|
|
6
|
-
> consecutive sub-threshold rounds. Interview: 2026-06-07 in this session.
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## Purpose
|
|
11
|
-
|
|
12
|
-
Two capable agents debating a question can spend unbounded rounds for shrinking
|
|
13
|
-
returns. This protocol bounds the debate: when an exchange stops materially
|
|
14
|
-
moving the answer, the agents **stop arguing and decide** — via a scored rubric
|
|
15
|
-
for ordinary decisions, or by escalating to the human for critical ones. Every
|
|
16
|
-
decision leaves an auditable record (bridge-mode Rule 4: deterministic,
|
|
17
|
-
replayable, human-in-the-loop).
|
|
18
|
-
|
|
19
|
-
It governs any governed co-development or deep-planning exchange:
|
|
20
|
-
|
|
21
|
-
- `rdc:co-develop` — headless clauth/HTTP JSON-envelope transport
|
|
22
|
-
- `rdc:ccandme` — visible WezTerm routing (proposed)
|
|
23
|
-
|
|
24
|
-
---
|
|
25
|
-
|
|
26
|
-
## 1. Truth-gain (Δ) per round
|
|
27
|
-
|
|
28
|
-
After each peer round, the **receiving** agent rates the round's marginal
|
|
29
|
-
truth-gain:
|
|
30
|
-
|
|
31
|
-
> **Δ = the fraction of remaining decision-relevant uncertainty that this
|
|
32
|
-
> exchange actually closed** — through new evidence, a corrected error, a
|
|
33
|
-
> resolved disagreement, or a narrowed option set.
|
|
34
|
-
|
|
35
|
-
Δ measures whether the **answer moved**, not whether the agents talked.
|
|
36
|
-
Restating a position, agreeing without adding, or circling = Δ ≈ 0.
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## 2. Stop trigger — two consecutive sub-5% rounds
|
|
41
|
-
|
|
42
|
-
A round is **sub-threshold** only when **both** agents independently rate
|
|
43
|
-
Δ < 5%. If either agent still sees ≥ 5% gain, the dialogue continues — this
|
|
44
|
-
resolves "who owns Δ?": neither agent owns it unilaterally; the debate stops
|
|
45
|
-
only when both agree it is thin.
|
|
46
|
-
|
|
47
|
-
The trigger fires after **two consecutive sub-threshold rounds**. One thin round
|
|
48
|
-
can be rescued by a strong follow-up; two in a row means the dialogue has
|
|
49
|
-
converged or stalled.
|
|
50
|
-
|
|
51
|
-
Convergence counts: mutual agreement at Δ < 5% is a valid stop (the answer is
|
|
52
|
-
settled, not stalled). Record it as a decision and proceed — no rubric needed.
|
|
53
|
-
|
|
54
|
-
---
|
|
55
|
-
|
|
56
|
-
## 3. On trigger → scored rubric (stop debating)
|
|
57
|
-
|
|
58
|
-
When the trigger fires on an *unresolved* question, do **not** keep debating.
|
|
59
|
-
Jointly construct a rubric:
|
|
60
|
-
|
|
61
|
-
1. **Enumerate live options**, including the status quo / do-nothing.
|
|
62
|
-
2. **Define 3–6 weighted criteria.** Default set: correctness, reversibility,
|
|
63
|
-
bridge-mode fit, cost, risk, time. Weights sum to 1.0.
|
|
64
|
-
3. **Each agent scores every option independently** (no peeking at the peer's
|
|
65
|
-
sheet) on each criterion.
|
|
66
|
-
4. **Combine** by weighted sum; the higher combined score wins.
|
|
67
|
-
5. **Record both scoresheets** verbatim as evidence — they are the audit trail.
|
|
68
|
-
|
|
69
|
-
---
|
|
70
|
-
|
|
71
|
-
## 4. Criticality gate
|
|
72
|
-
|
|
73
|
-
Classify the pending decision:
|
|
74
|
-
|
|
75
|
-
- **Non-critical** → adopt the rubric winner. Record the decision plus both
|
|
76
|
-
scoresheets. Proceed.
|
|
77
|
-
- **Critical** → do **not** auto-adopt. Escalate **HITL** (human-in-the-loop):
|
|
78
|
-
emit a human decision item containing the rubric, both scoresheets,
|
|
79
|
-
agreements, disagreements, and a single recommendation. Then **wait** for the
|
|
80
|
-
human's decision.
|
|
81
|
-
|
|
82
|
-
### Critical = any of:
|
|
83
|
-
|
|
84
|
-
- a trigger in `.claude/rules/architectural-change-approval.md`
|
|
85
|
-
- production / deploy-facing change
|
|
86
|
-
- security / credentials
|
|
87
|
-
- destructive schema (DROP / RENAME / reshape)
|
|
88
|
-
- money, credits, valuations
|
|
89
|
-
- governance or source-of-truth definition
|
|
90
|
-
- **rubric tie**, or agents still diverge past a one-rank margin after scoring
|
|
91
|
-
- high irreversibility (hard or impossible to undo)
|
|
92
|
-
|
|
93
|
-
When in doubt, treat it as critical.
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
## 5. HITL sink — interim reality
|
|
98
|
-
|
|
99
|
-
The intended sink is the `human_items` **decision table** described in
|
|
100
|
-
`docs/systems/claude-workflow/HUMAN-INBOX.md`.
|
|
101
|
-
|
|
102
|
-
**As of 2026-06-07 that table is not built** (verified: no `human_items`
|
|
103
|
-
relation exists; only `codeflow_policy_decisions`). Until it ships:
|
|
104
|
-
|
|
105
|
-
- HITL = surface the rubric + both scoresheets + recommendation to Dave
|
|
106
|
-
in-session, and record it as a `work_item` note and/or CodeFlow memory.
|
|
107
|
-
- Migrate these records to `human_items` decision rows once that surface exists.
|
|
108
|
-
|
|
109
|
-
Do **not** treat the missing table as a reason to auto-adopt a critical
|
|
110
|
-
decision (bridge-mode: absence of an artifact is not licence for drift —
|
|
111
|
-
build/route around it, keep the human in the loop).
|
|
112
|
-
|
|
113
|
-
---
|
|
114
|
-
|
|
115
|
-
## Acceptance criteria
|
|
116
|
-
|
|
117
|
-
A session that uses this protocol must, in its report, show:
|
|
118
|
-
|
|
119
|
-
1. Δ ratings per round from both agents (or a note that convergence was reached).
|
|
120
|
-
2. If the trigger fired: the rubric — options, weighted criteria, both
|
|
121
|
-
scoresheets, combined result.
|
|
122
|
-
3. The criticality classification and which trigger(s) matched.
|
|
123
|
-
4. For critical decisions: the HITL record (human item / interim note) and the
|
|
124
|
-
human's decision, or `status: awaiting_human`.
|
|
125
|
-
5. No critical decision auto-adopted without a human decision on record.
|
|
1
|
+
# Truth-Gain Escalation Protocol — Claude ↔ Codex
|
|
2
|
+
|
|
3
|
+
> Shared governance protocol for peer agent collaboration. Referenced by
|
|
4
|
+
> `rdc:co-develop` and (when built) `rdc:ccandme`.
|
|
5
|
+
> Approved: option-1 — shared guide + ref from both skills; trigger = two
|
|
6
|
+
> consecutive sub-threshold rounds. Interview: 2026-06-07 in this session.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Purpose
|
|
11
|
+
|
|
12
|
+
Two capable agents debating a question can spend unbounded rounds for shrinking
|
|
13
|
+
returns. This protocol bounds the debate: when an exchange stops materially
|
|
14
|
+
moving the answer, the agents **stop arguing and decide** — via a scored rubric
|
|
15
|
+
for ordinary decisions, or by escalating to the human for critical ones. Every
|
|
16
|
+
decision leaves an auditable record (bridge-mode Rule 4: deterministic,
|
|
17
|
+
replayable, human-in-the-loop).
|
|
18
|
+
|
|
19
|
+
It governs any governed co-development or deep-planning exchange:
|
|
20
|
+
|
|
21
|
+
- `rdc:co-develop` — headless clauth/HTTP JSON-envelope transport
|
|
22
|
+
- `rdc:ccandme` — visible WezTerm routing (proposed)
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## 1. Truth-gain (Δ) per round
|
|
27
|
+
|
|
28
|
+
After each peer round, the **receiving** agent rates the round's marginal
|
|
29
|
+
truth-gain:
|
|
30
|
+
|
|
31
|
+
> **Δ = the fraction of remaining decision-relevant uncertainty that this
|
|
32
|
+
> exchange actually closed** — through new evidence, a corrected error, a
|
|
33
|
+
> resolved disagreement, or a narrowed option set.
|
|
34
|
+
|
|
35
|
+
Δ measures whether the **answer moved**, not whether the agents talked.
|
|
36
|
+
Restating a position, agreeing without adding, or circling = Δ ≈ 0.
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 2. Stop trigger — two consecutive sub-5% rounds
|
|
41
|
+
|
|
42
|
+
A round is **sub-threshold** only when **both** agents independently rate
|
|
43
|
+
Δ < 5%. If either agent still sees ≥ 5% gain, the dialogue continues — this
|
|
44
|
+
resolves "who owns Δ?": neither agent owns it unilaterally; the debate stops
|
|
45
|
+
only when both agree it is thin.
|
|
46
|
+
|
|
47
|
+
The trigger fires after **two consecutive sub-threshold rounds**. One thin round
|
|
48
|
+
can be rescued by a strong follow-up; two in a row means the dialogue has
|
|
49
|
+
converged or stalled.
|
|
50
|
+
|
|
51
|
+
Convergence counts: mutual agreement at Δ < 5% is a valid stop (the answer is
|
|
52
|
+
settled, not stalled). Record it as a decision and proceed — no rubric needed.
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## 3. On trigger → scored rubric (stop debating)
|
|
57
|
+
|
|
58
|
+
When the trigger fires on an *unresolved* question, do **not** keep debating.
|
|
59
|
+
Jointly construct a rubric:
|
|
60
|
+
|
|
61
|
+
1. **Enumerate live options**, including the status quo / do-nothing.
|
|
62
|
+
2. **Define 3–6 weighted criteria.** Default set: correctness, reversibility,
|
|
63
|
+
bridge-mode fit, cost, risk, time. Weights sum to 1.0.
|
|
64
|
+
3. **Each agent scores every option independently** (no peeking at the peer's
|
|
65
|
+
sheet) on each criterion.
|
|
66
|
+
4. **Combine** by weighted sum; the higher combined score wins.
|
|
67
|
+
5. **Record both scoresheets** verbatim as evidence — they are the audit trail.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## 4. Criticality gate
|
|
72
|
+
|
|
73
|
+
Classify the pending decision:
|
|
74
|
+
|
|
75
|
+
- **Non-critical** → adopt the rubric winner. Record the decision plus both
|
|
76
|
+
scoresheets. Proceed.
|
|
77
|
+
- **Critical** → do **not** auto-adopt. Escalate **HITL** (human-in-the-loop):
|
|
78
|
+
emit a human decision item containing the rubric, both scoresheets,
|
|
79
|
+
agreements, disagreements, and a single recommendation. Then **wait** for the
|
|
80
|
+
human's decision.
|
|
81
|
+
|
|
82
|
+
### Critical = any of:
|
|
83
|
+
|
|
84
|
+
- a trigger in `.claude/rules/architectural-change-approval.md`
|
|
85
|
+
- production / deploy-facing change
|
|
86
|
+
- security / credentials
|
|
87
|
+
- destructive schema (DROP / RENAME / reshape)
|
|
88
|
+
- money, credits, valuations
|
|
89
|
+
- governance or source-of-truth definition
|
|
90
|
+
- **rubric tie**, or agents still diverge past a one-rank margin after scoring
|
|
91
|
+
- high irreversibility (hard or impossible to undo)
|
|
92
|
+
|
|
93
|
+
When in doubt, treat it as critical.
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## 5. HITL sink — interim reality
|
|
98
|
+
|
|
99
|
+
The intended sink is the `human_items` **decision table** described in
|
|
100
|
+
`docs/systems/claude-workflow/HUMAN-INBOX.md`.
|
|
101
|
+
|
|
102
|
+
**As of 2026-06-07 that table is not built** (verified: no `human_items`
|
|
103
|
+
relation exists; only `codeflow_policy_decisions`). Until it ships:
|
|
104
|
+
|
|
105
|
+
- HITL = surface the rubric + both scoresheets + recommendation to Dave
|
|
106
|
+
in-session, and record it as a `work_item` note and/or CodeFlow memory.
|
|
107
|
+
- Migrate these records to `human_items` decision rows once that surface exists.
|
|
108
|
+
|
|
109
|
+
Do **not** treat the missing table as a reason to auto-adopt a critical
|
|
110
|
+
decision (bridge-mode: absence of an artifact is not licence for drift —
|
|
111
|
+
build/route around it, keep the human in the loop).
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Acceptance criteria
|
|
116
|
+
|
|
117
|
+
A session that uses this protocol must, in its report, show:
|
|
118
|
+
|
|
119
|
+
1. Δ ratings per round from both agents (or a note that convergence was reached).
|
|
120
|
+
2. If the trigger fired: the rubric — options, weighted criteria, both
|
|
121
|
+
scoresheets, combined result.
|
|
122
|
+
3. The criticality classification and which trigger(s) matched.
|
|
123
|
+
4. For critical decisions: the HITL record (human item / interim note) and the
|
|
124
|
+
human's decision, or `status: awaiting_human`.
|
|
125
|
+
5. No critical decision auto-adopted without a human decision on record.
|