The manifest

Every review is recorded in a manifest in your main checkout, not the worktree, which is removed afterwards. It's written on every decision, so nothing is lost if the tab crashes, and it's shaped for a follow-up agent to act on: /deltaview:fix reads it to fix the rejected and commented items, and the next review of the branch reads it to carry decisions over.

What .deltaview/ holds

In file names, the ref has every run of characters outside A-Za-z0-9._- replaced by -, so feat/demo becomes feat-demo. .deltaview/ is added to .git/info/exclude, so it never shows in git status and no tracked file changes.

Shape

{
  "version": 1,
  "ref": "feat/checkout",
  "target": "main",
  "baseSha": "…", "headSha": "…",
  "repo": "acme/shop",
  "pr": { "number": 7, "url": "https://github.com/acme/shop/pull/7", "isAuthor": false },
  "tests": { "command": "npm test", "passed": true, "summary": "42 passed" },
  "newEnvVars": ["STRIPE_WEBHOOK_SECRET"],
  "hunks": { "h1": { "id": "h1", "file": "src/api.ts", "status": "modified", "lines": [ … ] } },
  "items": [{
    "id": "i1", "tier": "indirect", "title": "Save button",
    "route": "/orders/new", "selector": "[data-testid=\"save\"]",
    "chain": ["Save button", "useSaveOrder()", "POST /api/orders", "orders.handler.ts"],
    "affects": [], "hunkIds": ["h1"], "summary": "…",
    "howToReach": null, "appearsUnused": false, "visuallyVerified": true,
    "decision": "rejected", "comment": "Missing error state", "decidedAt": "2026-10-22T12:00:00.000Z",
    "line": { "hunkId": "h1", "index": 4 }
  }],
  "previousReview": ".deltaview/reviews/feat-checkout-20261021-093000.json",
  "status": "finished",
  "reviewUrl": "https://github.com/acme/shop/pull/7#pullrequestreview-…",
  "error": null,
  "createdAt": "2026-10-22T11:40:00.000Z"
}

Top level

Items