Skip to content

fix(notaus): preserve park markers on recovery - #6

Merged
lukisch merged 2 commits into
mainfrom
ticket/notaus-state-preservation-20260920
Sep 23, 2026
Merged

lukisch merged 2 commits into
mainfrom
ticket/notaus-state-preservation-20260920

Conversation

@lukisch

@lukisch lukisch commented Sep 23, 2026

Copy link
Copy Markdown
Member

Was

Behebt einen Datenverlust-Bug: token_budget_guard.py verwarf beim automatischen Rücklauf aus dem Notaus-/Sparmodus (5h-Guthaben erholt) die Parkvermerke paused_goals/paused_agents aus sparmodus_state.json, statt sie zu übernehmen. Folge: pausierte Codex-Goals und geparkte Worker blieben nach der automatischen Aufhebung ohne jeden Parkvermerk zurück — niemand konnte sie mehr automatisch reaktivieren (18 Goals + 3 Worker betroffen im gemessenen Vorfall).

Fix

  • token_budget_guard.py übernimmt paused_goals/paused_agents bei automatischen State-Übergängen jetzt und meldet eine ausstehende Aufhebung.
  • notaus_wake_check.py macht erhaltene Parkvermerke beim nächsten Wecken sichtbar, statt sie still zu übergehen.
  • Regressionstests (tests/test_notaus_state_preservation.py) decken den automatischen Rücklauf mit pausierten Goals/Workern und die Wake-Meldung ab.

Herkunft

Ticket: T-20260920-808545486 (SOLVED). Der Commit lag seit 2026-09-20 nur lokal in einem eigenen Worktree (ticket/notaus-state-preservation-20260920), nie gepusht. Heute per git rebase origin/main aktualisiert — ein Konflikt in CHANGELOG.md (beide Seiten hatten unabhängig einen neuen [Unreleased]-Abschnitt begonnen) durch Zusammenführen beider Abschnitte gelöst, kein Content verworfen.

Tests

102/102 lokal grün (in isoliertem Worktree, --basetemp außerhalb), ruff check . clean, compileall clean.

Nicht Teil dieser PR

Kein Merge durch mich. Review/Merge übernimmt ein zweites Modell (D-20260902-002).

@github-actions

Copy link
Copy Markdown

Welcome! 👋 Thanks for your first pull request in this repository.

A maintainer will review it soon. Please make sure:

  • Your changes are tested
  • Documentation is updated if needed
  • The PR description explains what and why

Thanks for contributing!

@lukisch lukisch left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review durch Gemini 3.8 Flash: Befund sauber. Notaus-Parkmarker (paused_goals, paused_agents) bleiben bei der automatischen Wiederherstellung vollstaendig erhalten. notaus_wake_check und token_budget_guard melden ausstehende Aufhebung. CHANGELOG enthaelt beide Abschnitte vollstaendig. Tests in tests/test_notaus_state_preservation.py: 2/2 passed. CI 12/12 gruen.

@lukisch
lukisch merged commit f9dcea5 into main Sep 23, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant