Skip to content

HIGH findings that do not block a merge (7) #21

Description

@slowernet

Grouped because each is a one-line fix. Full reasoning in docs/notes/2026-08-20-plan-3a-review-triage.md under "HIGH findings that do not block". Split out any one that turns out to be bigger.

  • A stale Status write that lands late is stamped unrecoverable — board.rb:78
  • The running? guard does not stop two walkers — poller.rb:108. (Partly addressed 2026-08-21: running? now also answers true while a run is being started, which is what that guard's own comment always claimed. Re-check whether anything remains.)
  • A refused launch destroys the stage's session id — runner.rb:129. The @sessions assignment runs before the case. Tests miss it because scripted hardcodes session: 'sess-1'.
  • reload restores sessions the runner deliberately discarded, and discards an interrupted stage's — runner.rb:67
  • A slow git worktree add inside claim's transaction fails healthy concurrent runs — supervisor.rb:59, runner.rb:94. Measured: second write RAISED after 6.2s: BusyException
  • A chmod-drifted secrets file raises out of Repo.prepare and stops the whole poller — repo.rb:81. prepare rescues Mill::Git::Error; check_mode! raises its parent Mill::Error. The method's own comment claims this cannot happen.
  • .mill.yml falls back to a local ref a stage can move — repo.rb:102

The two comment-cursor HIGHs are tracked with the cursor-scoping issue instead, since one change likely fixes all three.

Activity

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions