diff --git a/memory/log/2026-08-02.223019.md b/memory/log/2026-08-02.223019.md new file mode 100644 index 0000000..22cb74c --- /dev/null +++ b/memory/log/2026-08-02.223019.md @@ -0,0 +1,38 @@ +# Session Log -- 2026-08-02 + +## Summary +Built the idle-draft writing-pipeline tooling (driven from the writing/oreillyconsulting +session; full narrative log lives there): extended `agent-subscriptions`, ported +`score-paragraphs` from GOES, and created `idle-draft` — a cron dispatcher spending idle +subscription capacity. Six commits, all implementation by Sonnet subagents, every test +suite re-run by the orchestrator before commit. + +## Decisions +- Decision: `elapsed_pct` is null when a window lacks a reset timestamp (MiniMax v1 + fallback); consumers fail closed -- Rationale: never assume pacing data that isn't there. +- Decision: idle-draft replicates claude-profile's provider.env parsing instead of + shelling out to claude-profile -- Rationale: claude-profile has interactive pickers and + WezTerm theming; a headless cron dispatcher needs neither. +- Decision: per-(work type × provider) model/effort config, precedence entry > + work-type > profile -- Rationale: owner wants MiniMax at elevated effort to offset + capability gap. + +## Gotchas Discovered +- **[idle-draft]** Symptom: valid citations like `SPEC.md:1-80` rejected as dead paths -- + Fix: strip trailing `:\d+(-\d+)?` before existence check (pilot #1 catch). +- **[score-paragraphs]** Symptom: hash-skip branch structurally unreachable; scored + paragraphs never re-examined, `--force` ineffective (bug in goes original too) -- Fix: + documented as known limitation in spec; port-not-rewrite mandate. +- **[claude-cli]** Symptom: needed the valid `--effort` set -- Fix: pass a bogus value + with `-p ""`; the CLI errors locally listing low, medium, high, xhigh, max (no API call). +- **[idle-draft]** Symptom: killed dispatcher orphans claude children; deterministic + `.tmp` names collide with the next instance -- Fix: start_new_session + SIGTERM/atexit + process-group kill; per-invocation `.tmp.` names; startup sweep of stale tmp files. + +## Key Context +- New scripts: `idle-draft` (185 test assertions), `score-paragraphs` (57); extended + `agent-subscriptions` (33). All spec-first, all offline-testable, symlinked to ~/sbin. +- Deployment config/state live in `~/dev/claude/writing/oreillyconsulting/` (see that + repo's CONTEXT.md for pipeline operations). +- Pre-existing uncommitted work in this repo (auto-draft, bg-model-call, + wait-for-version, README.md) deliberately untouched — commits were pathspec-limited.