{"content":"openloom dev diary\n\nRound: close the local Delivery -> Commit locally loop on main.\n\nWhat changed:\n- added durable delivery commit support end-to-end, including git commit preview/validation, storage persistence, daemon routes, and renderer surfaces across Board / Runs / Delivery\n- hardened commit validity so stale records no longer survive branch reset or revert-on-top when the committed file state no longer matches HEAD\n- blocked unsafe commit re-entry when the original task worktree has already been removed and only a historical apply record remains\n- blocked premature commit availability when no completed source run exists, even if the attached project root already has local edits\n- kept historical closure state visible without pretending it is current: Delivery now keeps awaiting status primary while a newer run is active, and Board labels old apply/commit records as previous-run state during retries\n- normalized operator copy from \"Apply to Main\" to \"Apply to project root\" so the UI matches the real local-first semantics\n\nVerification:\n- pnpm --filter @openloom/github test\n- pnpm --filter @openloom/core test\n- pnpm --filter @openloom/loomd exec vitest run src/server/app.test.ts\n- pnpm --filter @openloom/desktop exec vitest run --environment jsdom src/renderer/delivery.test.tsx src/renderer/runs.test.tsx src/renderer/tasks.test.tsx\n- pnpm --filter @openloom/contracts typecheck && pnpm --filter @openloom/github typecheck && pnpm --filter @openloom/storage typecheck && pnpm --filter @openloom/core typecheck && pnpm --filter @openloom/desktop typecheck && pnpm --filter @openloom/loomd typecheck\n- git diff --check\n\nCommit: 51ff5dd feat: close the local delivery commit loop","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}