oh-my-customcode 0.88.0 → 0.88.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/dist/cli/index.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/templates/.claude/rules/MUST-completion-verification.md +34 -1
- package/templates/.claude/rules/MUST-intent-transparency.md +28 -0
- package/templates/.claude/rules/SHOULD-memory-integration.md +24 -0
- package/templates/manifest.json +1 -1
package/dist/cli/index.js
CHANGED
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -10,7 +10,7 @@ Before declaring any task `[Done]`, verify completion against task-type-specific
|
|
|
10
10
|
|
|
11
11
|
| Task Type | REQUIRED Verification Before [Done] |
|
|
12
12
|
|-----------|-------------------------------------|
|
|
13
|
-
| Release | All issues closed, version bumped, PR merged, GitHub Release created |
|
|
13
|
+
| Release | All issues closed, version bumped, PR merged, GitHub Release created; **External automation verified**: `.github/workflows/` listed AND `gh run list --limit 10` checked for auto-publish workflows |
|
|
14
14
|
| Implementation | Code compiles/passes lint, tests pass (if exist), no TODO markers left |
|
|
15
15
|
| Documentation | Links valid, counts accurate, cross-references updated |
|
|
16
16
|
| Git Operations | Operation succeeded (check exit code), working tree clean |
|
|
@@ -28,6 +28,19 @@ Before [Done]: (1) Verify ACTUAL outcome not just attempt — "ran command" ≠
|
|
|
28
28
|
4. Would I bet $100 this is truly complete? YES: Declare [Done] / NO: Identify uncertain and verify
|
|
29
29
|
-->
|
|
30
30
|
|
|
31
|
+
## Subagent Self-Report Verification
|
|
32
|
+
|
|
33
|
+
Subagents often report failures as "pre-existing", "baseline", or "unchanged". These claims MUST be verified against the base branch before acceptance.
|
|
34
|
+
|
|
35
|
+
| Subagent Claim | Required Verification |
|
|
36
|
+
|----------------|----------------------|
|
|
37
|
+
| "X test already failing on base" | `git stash && git checkout {base} && run test X && compare` |
|
|
38
|
+
| "This warning is pre-existing" | `git log -S "warning-text" {base}` or run on clean checkout |
|
|
39
|
+
| "File was unchanged" | `git diff {base}..HEAD -- {file}` |
|
|
40
|
+
| "Dependency issue not from this PR" | `git show {base}:package.json` compare |
|
|
41
|
+
|
|
42
|
+
Never accept "pre-existing" without direct base-branch evidence. A false "pre-existing" claim can mask a regression introduced by the current change.
|
|
43
|
+
|
|
31
44
|
## Common False Completion Patterns
|
|
32
45
|
|
|
33
46
|
| Pattern | Reality | Fix |
|
|
@@ -37,6 +50,8 @@ Before [Done]: (1) Verify ACTUAL outcome not just attempt — "ran command" ≠
|
|
|
37
50
|
| "PR created" | CI not checked | Wait for CI, verify green |
|
|
38
51
|
| "Issue closed" | Related issues not updated | Check parent epic, cross-refs |
|
|
39
52
|
| "Tests pass" | Only ran subset | Run full test suite |
|
|
53
|
+
| "Waiting for manual publish" | External CI/CD auto-publishes on merge | Check `.github/workflows/` BEFORE assuming manual step |
|
|
54
|
+
| "Subagent said pre-existing" | Claim not verified against base branch | Run test on base branch, compare directly |
|
|
40
55
|
|
|
41
56
|
## Completion Contract Format
|
|
42
57
|
|
|
@@ -58,6 +73,24 @@ Then at completion:
|
|
|
58
73
|
└── ✓ Criterion N: {evidence}
|
|
59
74
|
```
|
|
60
75
|
|
|
76
|
+
## Autonomous Mode Entry Checklist
|
|
77
|
+
|
|
78
|
+
When entering autonomous mode (user grants extended execution without per-step confirmation), perform this inventory BEFORE first action:
|
|
79
|
+
|
|
80
|
+
1. **Workflow inventory**: `ls .github/workflows/` — identify auto-publish, auto-tag, release, docs-sync, CI workflows
|
|
81
|
+
2. **Recent runs**: `gh run list --limit 10` — check success/failure patterns of automated workflows
|
|
82
|
+
3. **External publish targets**: Check if npm/PyPI/Docker Hub/GitHub Releases are auto-triggered on merge
|
|
83
|
+
4. **Manual intervention points**: Identify which steps require human approval vs. fully automated
|
|
84
|
+
5. **Cross-reference with task**: Which workflows will the planned work trigger?
|
|
85
|
+
|
|
86
|
+
Record findings in session context. Failure to inventory automation is a R020 violation (unknown external state = unverifiable completion).
|
|
87
|
+
|
|
88
|
+
### Cross-reference
|
|
89
|
+
|
|
90
|
+
Related memory records:
|
|
91
|
+
- `feedback_github_workflows_inventory.md` — original incident (v0.87.2~v0.88.0 session)
|
|
92
|
+
- `feedback_subagent_pre_existing_claims.md` — subagent false-positive pattern
|
|
93
|
+
|
|
61
94
|
## Integration
|
|
62
95
|
|
|
63
96
|
| Rule | Interaction |
|
|
@@ -37,6 +37,34 @@ Display reasoning when routing to agents. Users must always know which agent was
|
|
|
37
37
|
|
|
38
38
|
Users can specify agent directly with `@{agent-name} {command}`. Override bypasses detection.
|
|
39
39
|
|
|
40
|
+
## User Directive Persistence
|
|
41
|
+
|
|
42
|
+
When a user explicitly names a tool, skill, or workflow (e.g., "use /pipeline auto-dev", "always run tests with bun test"), this preference persists for the entire session — including after autonomous mode transitions.
|
|
43
|
+
|
|
44
|
+
### Persistence Triggers
|
|
45
|
+
|
|
46
|
+
| User Statement Pattern | Persistence Scope |
|
|
47
|
+
|------------------------|-------------------|
|
|
48
|
+
| "use X for development" | Entire session |
|
|
49
|
+
| "always / every time" | Entire session |
|
|
50
|
+
| "from now on" | Entire session + memory save candidate |
|
|
51
|
+
| "for this task" | Current task only |
|
|
52
|
+
| Named slash command | Subsequent similar invocations |
|
|
53
|
+
|
|
54
|
+
### Cycle Start Self-Check
|
|
55
|
+
|
|
56
|
+
At the start of every work cycle (issue, task, release, or autonomous sub-loop):
|
|
57
|
+
1. Review recent user messages in the conversation
|
|
58
|
+
2. Identify any named tool/skill/workflow directives
|
|
59
|
+
3. Apply those directives unless explicitly rescinded
|
|
60
|
+
4. If unsure whether a directive applies, default to the stated preference
|
|
61
|
+
|
|
62
|
+
**Anti-pattern**: Treating autonomous mode as a clean slate that discards earlier user preferences. Autonomous mode means "continue without per-step confirmation" — NOT "reset user directives".
|
|
63
|
+
|
|
64
|
+
### Cross-reference
|
|
65
|
+
|
|
66
|
+
- Related memory: session v0.87.2~v0.88.0 (issue #869) — `/pipeline auto-dev` preference was lost after autonomous mode transition
|
|
67
|
+
|
|
40
68
|
## Agent Triggers
|
|
41
69
|
|
|
42
70
|
Defined in `.claude/skills/intent-detection/patterns/agent-triggers.yaml`. Each agent has keywords, file patterns, actions, and base confidence.
|
|
@@ -277,6 +277,30 @@ User Model data feeds into intent-detection (R015) and routing skill confidence
|
|
|
277
277
|
|
|
278
278
|
-->
|
|
279
279
|
|
|
280
|
+
## Mid-Session Immediate Save
|
|
281
|
+
|
|
282
|
+
Save memory IMMEDIATELY upon surprising discovery — do not defer to session end.
|
|
283
|
+
|
|
284
|
+
| Trigger | Action | Rationale |
|
|
285
|
+
|---------|--------|-----------|
|
|
286
|
+
| Repeated pattern observed (2nd time) | Save `feedback_*.md` now | Pattern will recur within session |
|
|
287
|
+
| Unexpected tool behavior / workaround | Save `feedback_*.md` now | Session state defense |
|
|
288
|
+
| Subagent false-positive detected | Save `feedback_*.md` now | Prevent repeat in same session |
|
|
289
|
+
| User correction / feedback | Save `feedback_*.md` now | Honor correction immediately |
|
|
290
|
+
|
|
291
|
+
### Why Immediate?
|
|
292
|
+
|
|
293
|
+
Session-end saves lose context: by the time the session ends, multiple discoveries have compounded and nuance is lost. Immediate saves preserve the exact trigger context that makes the memory actionable.
|
|
294
|
+
|
|
295
|
+
**Anti-pattern**: "I'll batch all learnings at session end" — by then you'll have forgotten WHY each one mattered, and further violations may have occurred using the un-saved pattern.
|
|
296
|
+
|
|
297
|
+
### Cross-reference
|
|
298
|
+
|
|
299
|
+
Related records from session v0.87.2~v0.88.0 (issue #869):
|
|
300
|
+
- `feedback_subagent_pre_existing_claims.md`
|
|
301
|
+
- `feedback_github_workflows_inventory.md`
|
|
302
|
+
- `feedback_bun_mock_module.md`
|
|
303
|
+
|
|
280
304
|
## Session-End Auto-Save
|
|
281
305
|
|
|
282
306
|
### Trigger
|
package/templates/manifest.json
CHANGED