v0.2: rewrite skill with discipline protocol, doctor, and archive

This commit is contained in:
dtzp555-max
2026-03-11 22:21:31 +00:00
commit 46db8ab0b9
7 changed files with 672 additions and 0 deletions
+64
View File
@@ -0,0 +1,64 @@
# Continuity Doctor — Specification
## Purpose
The continuity doctor is a diagnostic tool that checks whether the
memory-continuity protocol is being followed correctly in a workspace.
It reports problems but does **not** auto-fix them.
## Design philosophy
- **Diagnose, don't repair.** Automated repair of state files is dangerous
because incorrect "fixes" can overwrite valid state. The doctor flags
issues for human or agent review.
- **Fast and offline.** No API calls, no database queries. Reads files only.
- **Exit codes matter.** 0 = healthy, 1 = warnings found, 2 = critical issues.
## Checks performed
### 1. Existence check
- Does `memory/CURRENT_STATE.md` exist?
- Severity: CRITICAL if missing (no recovery possible)
### 2. Staleness check
- When was `CURRENT_STATE.md` last modified?
- If older than the most recent session transcript, it is stale.
- Severity: WARNING
### 3. Template compliance
- Does the file contain all mandatory sections?
(Objective, Current Step, Key Decisions, Next Action, Blockers, Unsurfaced Results)
- Are any sections still showing placeholder text like `[One sentence: ...]`?
- Severity: WARNING for missing sections, INFO for placeholder text
### 4. Unsurfaced results
- Is the `Unsurfaced Results` section non-empty?
- If yes, someone needs to review those results.
- Severity: WARNING
### 5. Archive consistency
- Are there files in `memory/session_archive/` ?
- Does the newest archive have a different Objective than CURRENT_STATE.md?
(This is expected if the user switched tasks, but worth flagging.)
- Severity: INFO
### 6. Conflict detection (optional, if tasks file exists)
- If a `tasks.md` or `openspec/` directory exists, does the Objective in
CURRENT_STATE.md align with any active task?
- Severity: INFO (alignment is nice-to-have, not mandatory)
## Output format
```
[CRITICAL] memory/CURRENT_STATE.md does not exist
[WARNING] CURRENT_STATE.md is stale (last modified 2h ago, session ran 30m ago)
[WARNING] Unsurfaced Results section is not empty — review needed
[INFO] Archive objective differs from current objective (task switch?)
[OK] Template compliance: all sections present
```
## Future extensions (not yet implemented)
- Multi-workspace scan (check all sub-agent workspaces)
- JSON output mode for programmatic consumption
- Integration with OpenClaw cron for scheduled health checks
+20
View File
@@ -0,0 +1,20 @@
# Current State
> Last updated: [ISO timestamp]
## Objective
[One sentence: what are we trying to accomplish]
## Current Step
[What step are we on, what was the last thing completed]
## Key Decisions
- None yet
## Next Action
[Exactly what should happen next]
## Blockers
None
## Unsurfaced Results
None