IW-707: Small fixes: core #768

Merged
mph merged 18 commits from IW-707 into main 2026-10-10 21:36:52 +00:00
Member

Summary

Collector of small fixes in the core module (IW-707), done in one phase (#766).

Changes

  • Atomic file writes. LiveFileSystem.write and ReviewStateAdapter.writeFile now write through AtomicFile.write (temp file in the same directory, then atomic move). A crash or full disk during a write leaves the old file, never a partial one. The helper is moved out of WorktreeServices, which now uses it too.
  • Warning prefix. Four stderr warnings printed Error: Warning: ...; they now print Warning: ... (ReviewStateWrite, two in CiGate, PhaseIndexSync).
  • Doc comment. The Scaladoc of CiGate.poll was above startOfWait; it is now on poll.
  • Test move. The WorktreeGitDir tests move from ServiceDeclarationTest.scala to WorktreeGitDirTest.scala; the PURPOSE header is corrected.

Testing

  • New AtomicFileTest, plus tests for the warning text in CiGateHarnessTest, PhaseAdvanceHarnessTest and ReviewStateAdapterTest.
  • Pre-push hook on the final commit: core compile with warnings as errors, scalafix, core unit tests, all commands compile — passed.

Follow-ups

  • #767 — consolidate the remaining state-file writers on one atomic helper and state its contract.
  • Comment on #762 — shared assertWarned test helper.

Release notes

See project-management/issues/IW-707/release-notes.md. Review packet: project-management/issues/IW-707/review-packet.md.

🤖 Generated with Claude Code

Closes #707

## Summary Collector of small fixes in the `core` module (IW-707), done in one phase (#766). ## Changes - **Atomic file writes.** `LiveFileSystem.write` and `ReviewStateAdapter.writeFile` now write through `AtomicFile.write` (temp file in the same directory, then atomic move). A crash or full disk during a write leaves the old file, never a partial one. The helper is moved out of `WorktreeServices`, which now uses it too. - **Warning prefix.** Four stderr warnings printed `Error: Warning: ...`; they now print `Warning: ...` (`ReviewStateWrite`, two in `CiGate`, `PhaseIndexSync`). - **Doc comment.** The Scaladoc of `CiGate.poll` was above `startOfWait`; it is now on `poll`. - **Test move.** The `WorktreeGitDir` tests move from `ServiceDeclarationTest.scala` to `WorktreeGitDirTest.scala`; the PURPOSE header is corrected. ## Testing - New `AtomicFileTest`, plus tests for the warning text in `CiGateHarnessTest`, `PhaseAdvanceHarnessTest` and `ReviewStateAdapterTest`. - Pre-push hook on the final commit: core compile with warnings as errors, scalafix, core unit tests, all commands compile — passed. ## Follow-ups - #767 — consolidate the remaining state-file writers on one atomic helper and state its contract. - Comment on #762 — shared `assertWarned` test helper. ## Release notes See `project-management/issues/IW-707/release-notes.md`. Review packet: `project-management/issues/IW-707/review-packet.md`. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Closes #707
Small fixes: core

Artifacts:
- analysis.md
- issue.md

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VuB38s4FzXfyuePZHx32w7
Small fixes: core

Artifacts:
- tasks.md

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VuB38s4FzXfyuePZHx32w7
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VuB38s4FzXfyuePZHx32w7
Issue: IW-707
Phase: 1 - core small fixes (test move, warning prefix, doc comment, atomic writes)

This commit marks the checkpoint for phase 1 context generation.
Use wf-implement IW-707 to return to this point.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
core small fixes (test move, warning prefix, doc comment, atomic writes)

Artifacts:
- phase-01-tasks.md

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
docs(IW-707): add review packet and release notes
All checks were successful
CI / changes (pull_request) Successful in 5s
CI / contract (pull_request) Has been skipped
CI / compile (pull_request) Successful in 1m38s
CI / format (pull_request) Successful in 13s
CI / lint (pull_request) Successful in 15s
CI / dashboard-build (pull_request) Successful in 1m24s
CI / test (pull_request) Successful in 18m31s
f990ffb453
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mph requested changes 2026-10-10 18:37:29 +00:00
mph left a comment

There are conflicts

There are conflicts
docs(IW-707): rework for final PR review 23
Some checks failed
CI / changes (pull_request) Successful in 9s
CI / contract (pull_request) Has been skipped
CI / compile (pull_request) Successful in 1m50s
CI / format (pull_request) Successful in 11s
CI / lint (pull_request) Successful in 15s
CI / dashboard-build (pull_request) Has been cancelled
CI / test (pull_request) Has been cancelled
adf523f0a4
Issue: IW-707
Phase: 2 - Rework for final PR review 23

This commit marks the checkpoint for phase 2 context generation.
Use wf-implement IW-707 to return to this point.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
workflow(wf): Generate Phase 2 tasks for IW-707
All checks were successful
CI / changes (pull_request) Successful in 5s
CI / contract (pull_request) Has been skipped
CI / compile (pull_request) Successful in 1m40s
CI / format (pull_request) Successful in 10s
CI / dashboard-build (pull_request) Successful in 1m24s
CI / lint (pull_request) Successful in 11s
CI / test (pull_request) Successful in 19m21s
14429848e8
Rework for final PR review 23

Artifacts:
- phase-02-tasks.md

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Phase 2: Rework for final PR review 23 (#776)
Some checks failed
CI / changes (pull_request) Successful in 5s
CI / contract (pull_request) Has been skipped
CI / format (pull_request) Successful in 11s
CI / lint (pull_request) Successful in 14s
CI / compile (pull_request) Successful in 1m42s
CI / test (pull_request) Has been cancelled
CI / dashboard-build (pull_request) Has been cancelled
185bec7ca6
chore(IW-707): mark phase 02 complete in tasks.md
Some checks failed
CI / changes (pull_request) Successful in 5s
CI / contract (pull_request) Has been skipped
CI / format (pull_request) Successful in 11s
CI / lint (pull_request) Successful in 12s
CI / compile (pull_request) Successful in 1m37s
CI / dashboard-build (pull_request) Has been cancelled
CI / test (pull_request) Has been cancelled
95ae51721f
mph referenced this pull request from a commit 2026-10-10 19:47:50 +00:00
Restore main as a parent of the branch. The phase 2 sync merge (4baea0bf)
was squashed by the phase PR merge, which kept main's content but dropped
main's history, so PR #768 still reported conflicts. The tree is identical
to the parent 95ae5172: both conflicts take the resolution phase 2 made.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
docs(IW-707): log the merge that restores main ancestry
Some checks failed
CI / changes (pull_request) Successful in 5s
CI / contract (pull_request) Has been skipped
CI / format (pull_request) Successful in 11s
CI / lint (pull_request) Successful in 13s
CI / compile (pull_request) Successful in 1m38s
CI / test (pull_request) Has been cancelled
CI / dashboard-build (pull_request) Has been cancelled
7687cfcc25
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
docs(IW-707): regenerate review packet for the whole branch
All checks were successful
CI / changes (pull_request) Successful in 5s
CI / contract (pull_request) Has been skipped
CI / format (pull_request) Successful in 11s
CI / lint (pull_request) Successful in 13s
CI / compile (pull_request) Successful in 1m37s
CI / dashboard-build (pull_request) Successful in 1m36s
CI / test (pull_request) Successful in 20m15s
9967a47bab
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Author
Member

Implement: rework for review 23
The rework phase merged into IW-707 through #776; this pull request carries it.

Implement: rework for review 23 The rework phase merged into IW-707 through #776; this pull request carries it.
mph merged commit 945792b8ac into main 2026-10-10 21:36:52 +00:00
Sign in to join this conversation.
No description provided.