Skip to content

bug(goal-loop): one loop with an unknown phase moves goal-loop.json aside and loses every loop #1248

Closed

Description

@Juliusolsson05

Found by the read-only C5 hunt (quality loop, 2026-09-25, temp/quality-loop/hunt-c5.md). The failure sequence is from the code; the loop has not yet verified it end to end. Verify before fixing.

GoalLoopStore (:61-81) throws when !Object.values(loops).every(validLoop), and renames the file to .corrupt. GoalLoopService.start() then starts empty (:232), and the next write makes the loss permanent. This is reachable by a newer build's phase or reason followed by a downgrade.

Expected: keep valid loops, and set only the unknown ones aside.

Activity

  1. added a commit that references this issue on Sep 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    class:C5-fail-allOne bad record takes everything downsev:P2Real bug with a workaroundtype:bugSomething works wrong

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions