Session log: idle-draft pipeline tooling build
Claude-Session: https://claude.ai/code/session_01YQDoWNM7XPPii28khFWoMc
This commit is contained in:
38
memory/log/2026-08-02.223019.md
Normal file
38
memory/log/2026-08-02.223019.md
Normal file
@@ -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.<pid>` 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.
|
||||
Reference in New Issue
Block a user