idle-draft: stop committing state file with machine commits
idle-draft.state.json is now gitignored in the target repo; explicitly git add-ing an ignored path errors, which broke every success commit. The state file is still written atomically — just no longer tracked. Claude-Session: https://claude.ai/code/session_01Lgv4Qn82boNFC1jn8QXSNw
This commit is contained in:
@@ -1420,7 +1420,7 @@ def run_dispatch(args, config: dict, repo: Path, state_path: Path) -> int:
|
||||
f"(7d {before_pct}%→{after_pct}%)"
|
||||
)
|
||||
rel_canonical = str(Path(canonical).relative_to(repo))
|
||||
ok, reason = git_commit(repo, [rel_canonical, "idle-draft.state.json"], msg)
|
||||
ok, reason = git_commit(repo, [rel_canonical], msg)
|
||||
log_event(repo, f"success: {cand['item_key']} -> {rel_canonical}; commit={ok} ({reason})")
|
||||
elif outcome == "content_failure":
|
||||
blocked_reason = apply_failure_state(state, cand, defaults["max_attempts"])
|
||||
|
||||
@@ -305,10 +305,13 @@ For the selected `(item_or_dossier, work_type, provider)`:
|
||||
11. On success: write `idle-draft.state.json` atomically (temp file + `os.replace()` in
|
||||
the same directory), then:
|
||||
```
|
||||
git -C <repo> add -- <produced-file> idle-draft.state.json
|
||||
git -C <repo> commit -m "<message>" -- <produced-file> idle-draft.state.json
|
||||
git -C <repo> add -- <produced-file>
|
||||
git -C <repo> commit -m "<message>" -- <produced-file>
|
||||
```
|
||||
Never `git add -A`, never `git commit -a`. Commit message:
|
||||
Never `git add -A`, never `git commit -a`. `idle-draft.state.json` is
|
||||
machine-managed churn and is gitignored in the target repo — it is written
|
||||
atomically but never staged or committed (explicitly `git add`-ing an ignored
|
||||
path fails, which would break every machine commit). Commit message:
|
||||
`idle-draft: <work_type> <item> via <provider> (7d <before>%→<after>%)`, where
|
||||
before/after are that provider's `seven_day.utilization_pct` immediately before
|
||||
dispatch and immediately after re-probe on completion. No push.
|
||||
|
||||
Reference in New Issue
Block a user