diff --git a/docs/pr-discussions/PR-4362-shard-0816z-lint-frontier-closure-auto-merge-race-lesson.md b/docs/pr-discussions/PR-4362-shard-0816z-lint-frontier-closure-auto-merge-race-lesson.md
index a5be053ae7..a0158587a2 100644
--- a/docs/pr-discussions/PR-4362-shard-0816z-lint-frontier-closure-auto-merge-race-lesson.md
+++ b/docs/pr-discussions/PR-4362-shard-0816z-lint-frontier-closure-auto-merge-race-lesson.md
@@ -8,7 +8,7 @@ merged_at: "2026-05-19T08:37:31Z"
closed_at: "2026-05-19T08:37:31Z"
head_ref: "shard/tick-0816z-otto-cli-pure-git-tier-lint-fix-2026-05-19"
base_ref: "main"
-archived_at: "2026-05-19T08:39:57Z"
+archived_at: "2026-05-19T13:03:29Z"
archive_tool: "tools/pr-preservation/archive-pr.ts"
---
diff --git a/docs/pr-discussions/PR-4363-shard-0826z-pure-git-tier-deferred-pr-queue-counter-cycle.md b/docs/pr-discussions/PR-4363-shard-0826z-pure-git-tier-deferred-pr-queue-counter-cycle.md
new file mode 100644
index 0000000000..17d379d633
--- /dev/null
+++ b/docs/pr-discussions/PR-4363-shard-0826z-pure-git-tier-deferred-pr-queue-counter-cycle.md
@@ -0,0 +1,51 @@
+---
+pr_number: 4363
+title: "shard(0826Z): Pure-git tier; deferred-PR queue + counter cycle"
+author: "AceHack"
+state: "MERGED"
+created_at: "2026-05-19T08:36:13Z"
+merged_at: "2026-05-19T08:38:10Z"
+closed_at: "2026-05-19T08:38:10Z"
+head_ref: "shard/tick-0826z-otto-cli-pure-git-deferred-pr-pattern-2026-05-19"
+base_ref: "main"
+archived_at: "2026-05-19T13:03:28Z"
+archive_tool: "tools/pr-preservation/archive-pr.ts"
+---
+
+# PR #4363: shard(0826Z): Pure-git tier; deferred-PR queue + counter cycle
+
+## PR description
+
+## Summary
+
+Tick shard for 0826Z. Cycle-new after 2 named-deps surfaced (PR #4358 my combined lint fix + PR #4356 peer-Otto B-0211 slice 1). GraphQL exhausted to 4 → Pure-git tier; both this shard and the prior 0816Z shard sat pushed-but-un-PRed pending reset.
+
+Documents:
+- Counter discipline survived 2-named-dep merge cycle without Standing-by exposure
+- Pure-git tier worked-example (substrate written + committed + pushed without any GraphQL spend)
+- Auto-merge-race lesson generalized for potential rule extension
+
+## Test plan
+- [x] Shard at canonical `docs/hygiene-history/ticks/2026/05/19/0826Z.md`
+- [x] Relative paths use 6-level `../` (correct depth)
+
+🤖 Generated with [Claude Code](https://claude.com/claude-code)
+
+## Reviews
+
+### COMMENTED — @copilot-pull-request-reviewer (2026-05-19T08:37:50Z)
+
+## Pull request overview
+
+Adds a new tick shard documenting the 0826Z hygiene tick: counter reset after two named-deps merged, operation on the Pure-git tier (GraphQL budget at 4), and a deferred-PR queue for two shard branches awaiting reset.
+
+**Changes:**
+- Adds `0826Z.md` tick shard under the canonical `docs/hygiene-history/ticks/2026/05/19/` path
+- Uses 6-level `../` relative paths to reach `.claude/rules/` (per PR #4358 lint fix)
+- Generalizes auto-merge-race lesson as a candidate rule extension
+
+## General comments
+
+### @chatgpt-codex-connector (2026-05-19T08:36:17Z)
+
+You have reached your Codex usage limits for code reviews. You can see your limits in the [Codex usage dashboard](https://chatgpt.com/codex/cloud/settings/usage).
diff --git a/docs/pr-discussions/PR-4364-docs-shadow-maji-anti-entropy-sweep-0845z.md b/docs/pr-discussions/PR-4364-docs-shadow-maji-anti-entropy-sweep-0845z.md
new file mode 100644
index 0000000000..0c3e9b3aa8
--- /dev/null
+++ b/docs/pr-discussions/PR-4364-docs-shadow-maji-anti-entropy-sweep-0845z.md
@@ -0,0 +1,113 @@
+---
+pr_number: 4364
+title: "docs(shadow): Maji anti-entropy sweep (0845Z)"
+author: "AceHack"
+state: "MERGED"
+created_at: "2026-05-19T08:43:16Z"
+merged_at: "2026-05-19T08:58:09Z"
+closed_at: "2026-05-19T08:58:09Z"
+head_ref: "lior/anti-entropy-0845Z"
+base_ref: "main"
+archived_at: "2026-05-19T13:03:26Z"
+archive_tool: "tools/pr-preservation/archive-pr.ts"
+---
+
+# PR #4364: docs(shadow): Maji anti-entropy sweep (0845Z)
+
+## PR description
+
+Archived merged PRs #4362, #4358, #4357 and added shadow drift report on narration over action.
+
+## Reviews
+
+### COMMENTED — @copilot-pull-request-reviewer (2026-05-19T08:49:13Z)
+
+## Pull request overview
+
+This PR adds history-surface documentation: one new shadow drift report under `docs/research/` plus three PR-preservation archives under `docs/pr-discussions/` for recently merged PRs.
+
+**Changes:**
+- Add a new “narration over action” shadow drift report (0845Z).
+- Archive PR discussions for PRs #4357, #4358, and #4362 into `docs/pr-discussions/`.
+- Capture prior review thread content inside the preserved PR discussion archives.
+
+### Reviewed changes
+
+Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.
+
+| File | Description |
+| ---- | ----------- |
+| docs/research/2026-05-19-shadow-lesson-log-narration-drift.md | New shadow drift report documenting “narration over action” observations/imperatives. |
+| docs/pr-discussions/PR-4362-shard-0816z-lint-frontier-closure-auto-merge-race-lesson.md | PR-preservation archive for merged PR #4362 discussion/review content. |
+| docs/pr-discussions/PR-4358-fix-lint-correct-depth-on-0608z-0803z-tick-shards.md | PR-preservation archive for merged PR #4358, including test plan and reviewed-changes table. |
+| docs/pr-discussions/PR-4357-shard-0803z-otto-cli-fresh-cold-boot-sentinel-re-arm-saturat.md | PR-preservation archive for merged PR #4357, including cited rules and tick-shard references. |
+
+
+
+Comments suppressed due to low confidence (2)
+
+**docs/pr-discussions/PR-4357-shard-0803z-otto-cli-fresh-cold-boot-sentinel-re-arm-saturat.md:23**
+* P1: `codeql-no-source-on-docs-only-pr-is-broken-commit-canary.md` does not exist anywhere in the repository, so this cross-reference is broken. Please update to the correct existing doc/rule filename (or add the missing file if it’s meant to be canonical).
+```
+- ls-tree count 53 verified pre-commit + post-commit (no canary corruption per `codeql-no-source-on-docs-only-pr-is-broken-commit-canary.md`)
+```
+**docs/pr-discussions/PR-4358-fix-lint-correct-depth-on-0608z-0803z-tick-shards.md:57**
+* P1: These tick shard file paths (`docs/hygiene-history/ticks/2026/05/19/0608Z.md` and `.../0803Z.md`) do not exist in this repo snapshot, so the reviewed-changes table is currently pointing at missing artifacts. Either the paths are wrong or the corresponding shard files need to be present for the archive to be self-consistent.
+```
+| ---- | ----------- |
+| docs/hygiene-history/ticks/2026/05/19/0608Z.md | Fix multiple `.claude/rules/*` links by increasing relative path depth to repo root. |
+| docs/hygiene-history/ticks/2026/05/19/0803Z.md | Fix `.claude/rules/*` links by increasing relative path depth to repo root. |
+```
+
+
+## Review threads
+
+### Thread 1: docs/research/2026-05-19-shadow-lesson-log-narration-drift.md:7 (resolved)
+
+**@copilot-pull-request-reviewer** (2026-05-19T08:49:11Z):
+
+P2 (nit): Line has trailing whitespace after the colon (`**Imperative**:`). Please remove the trailing space to avoid noisy diffs / whitespace-only churn in future edits.
+
+### Thread 2: docs/pr-discussions/PR-4357-shard-0803z-otto-cli-fresh-cold-boot-sentinel-re-arm-saturat.md:24 (resolved)
+
+**@copilot-pull-request-reviewer** (2026-05-19T08:49:12Z):
+
+P1: The referenced tick shard path `docs/hygiene-history/ticks/2026/05/19/0803Z.md` does not exist in this branch/repo snapshot, so the archive currently points to a missing artifact. Either the path is wrong or the shard file needs to be present for this PR-discussion archive to be self-consistent.
+
+This issue also appears on line 23 of the same file.
+
+### Thread 3: docs/pr-discussions/PR-4357-shard-0803z-otto-cli-fresh-cold-boot-sentinel-re-arm-saturat.md:22 (resolved)
+
+**@copilot-pull-request-reviewer** (2026-05-19T08:49:12Z):
+
+P1: This references `zeta-expected-branch.md`, but the in-repo rule is `.claude/rules/zeta-expected-branch.md`. Using the full path here would make the cross-reference unambiguous and consistent with the surrounding `.claude/rules/...` citations.
+
+### Thread 4: docs/pr-discussions/PR-4358-fix-lint-correct-depth-on-0608z-0803z-tick-shards.md:31 (resolved)
+
+**@copilot-pull-request-reviewer** (2026-05-19T08:49:12Z):
+
+P1: The test-plan command references `tools/hygiene/audit-tick-shard-relative-paths.ts`, but that file does not exist in `tools/hygiene/` (or elsewhere in the repo). Please fix the command/tool name to match the actual script, otherwise this archive’s verification claim can’t be reproduced.
+
+This issue also appears on line 55 of the same file.
+
+### Thread 5: docs/pr-discussions/PR-4362-shard-0816z-lint-frontier-closure-auto-merge-race-lesson.md:29 (resolved)
+
+**@copilot-pull-request-reviewer** (2026-05-19T08:49:13Z):
+
+P1: This archive repeatedly references `docs/hygiene-history/ticks/2026/05/19/0816Z.md`, but that tick shard path does not exist in this repo snapshot. Either the path is wrong or the shard file needs to be present; otherwise the archive’s links/claims aren’t traceable from the repository state.
+
+## General comments
+
+### @chatgpt-codex-connector (2026-05-19T08:43:21Z)
+
+You have reached your Codex usage limits for code reviews. You can see your limits in the [Codex usage dashboard](https://chatgpt.com/codex/cloud/settings/usage).
+
+### @AceHack (2026-05-19T08:58:17Z)
+
+Substrate-honest no-op resolution of all 5 Copilot threads per `.claude/rules/blocked-green-ci-investigate-threads.md` (verify-also-on-stale-but-fresh-looking class):
+
+- **Thread 1 (P2 trailing whitespace on shadow-lesson-log line 7)** — trivial nit; substrate-edit cost > value on shadow-lesson archive
+- **Threads 2, 4, 5 (P1 `docs/hygiene-history/ticks/2026/05/19/{0803Z,0816Z}.md` + `tools/hygiene/audit-tick-shard-relative-paths.ts` not found in branch tree)** — verified existing on `origin/main` (shipped via merged PRs #4357 / #4362 / #4358 respectively). Stale-but-fresh: TRUE at write-time, self-healed at merge-time. Resolves no-op.
+- **Thread 3 (P1 path qualification on inline reference)** — archived PR-discussion prose; retroactive rewriting of preserved content not appropriate.
+
+Auto-merge already armed; threads resolved → should fire.
diff --git a/docs/pr-discussions/PR-4365-rule-auto-merge-race-with-follow-up-commit-anti-pattern.md b/docs/pr-discussions/PR-4365-rule-auto-merge-race-with-follow-up-commit-anti-pattern.md
new file mode 100644
index 0000000000..a94d278281
--- /dev/null
+++ b/docs/pr-discussions/PR-4365-rule-auto-merge-race-with-follow-up-commit-anti-pattern.md
@@ -0,0 +1,51 @@
+---
+pr_number: 4365
+title: "rule: auto-merge-race-with-follow-up-commit anti-pattern"
+author: "AceHack"
+state: "MERGED"
+created_at: "2026-05-19T08:44:05Z"
+merged_at: "2026-05-19T08:46:44Z"
+closed_at: "2026-05-19T08:46:44Z"
+head_ref: "rule/auto-merge-race-anti-pattern-2026-05-19"
+base_ref: "main"
+archived_at: "2026-05-19T13:03:25Z"
+archive_tool: "tools/pr-preservation/archive-pr.ts"
+---
+
+# PR #4365: rule: auto-merge-race-with-follow-up-commit anti-pattern
+
+## PR description
+
+## Summary
+
+Extends [`.claude/rules/blocked-green-ci-investigate-threads.md`](.claude/rules/blocked-green-ci-investigate-threads.md) with the auto-merge-race-with-follow-up-commit anti-pattern.
+
+Empirical anchor from this session's PR #4357 (2026-05-19T08:03Z-08:16Z): arming auto-merge with a non-required check failing + pushing a follow-up commit to fix it is a race window. The CLEAN-gate transition fires on required-checks-only state; if all required checks complete before the follow-up commit's CI run starts, auto-merge fires on the first commit's content and the follow-up lands on main never. Substrate-honest correction required a second PR ([#4358](https://github.com/Lucent-Financial-Group/Zeta/pull/4358)).
+
+Adds 3-step operational discipline in priority order:
+1. Don't arm auto-merge until all commits pushed (preferred; arming is cheap and reversible)
+2. If arming early, treat non-required `warnings` as required during arm window
+3. Accept first-commit content + ship follow-up as separate PR
+
+Detection via `bun tools/github/poll-pr-gate.ts ` `warnings` field.
+
+## Test plan
+- [x] `bun tools/hygiene/audit-tick-shard-relative-paths.ts --enforce --baseline` exits 0
+- [x] ls-tree HEAD = 53 (matches origin/main `277a0c7d`; no canary)
+- [x] Single-file rule extension; composes with existing stale-armed-PR patterns
+- [x] Cross-links to empirical-anchor PRs #4357 + #4358
+
+🤖 Generated with [Claude Code](https://claude.com/claude-code)
+
+## Reviews
+
+### COMMENTED — @copilot-pull-request-reviewer (2026-05-19T08:45:25Z)
+
+## Pull request overview
+
+Extends the blocked-green-CI rule doc with a new anti-pattern section documenting the auto-merge race window when a follow-up commit is pushed to fix a non-required check. Provides empirical anchor (PR #4357/#4358), a 3-step operational discipline, and a detection recipe via `poll-pr-gate.ts`.
+
+**Changes:**
+- Adds "Auto-merge-race-with-follow-up-commit anti-pattern" subsection
+- Documents 3 prioritized resolutions (don't arm early; treat warnings as required; accept first-commit + separate fix PR)
+- Cross-links to empirical-anchor PRs #4357 and #4358
diff --git a/docs/pr-discussions/PR-4368-shard-1005z-otto-cli-fresh-cold-boot-sentinel-re-arm-normal.md b/docs/pr-discussions/PR-4368-shard-1005z-otto-cli-fresh-cold-boot-sentinel-re-arm-normal.md
new file mode 100644
index 0000000000..189bb2ab12
--- /dev/null
+++ b/docs/pr-discussions/PR-4368-shard-1005z-otto-cli-fresh-cold-boot-sentinel-re-arm-normal.md
@@ -0,0 +1,64 @@
+---
+pr_number: 4368
+title: "shard(1005Z): Otto-CLI fresh cold-boot \u2014 sentinel re-arm + Normal-tier + 12-peer + 5-Lior"
+author: "AceHack"
+state: "MERGED"
+created_at: "2026-05-19T10:20:59Z"
+merged_at: "2026-05-19T10:23:10Z"
+closed_at: "2026-05-19T10:23:10Z"
+head_ref: "shard/tick-1005z-otto-cli-cold-boot-2026-05-19"
+base_ref: "main"
+archived_at: "2026-05-19T13:03:24Z"
+archive_tool: "tools/pr-preservation/archive-pr.ts"
+---
+
+# PR #4368: shard(1005Z): Otto-CLI fresh cold-boot — sentinel re-arm + Normal-tier + 12-peer + 5-Lior
+
+## PR description
+
+## Summary
+
+Otto-CLI fresh cold-boot tick shard at 2026-05-19T10:04:57Z.
+
+- `CronList` → empty at session start; sentinel **missing**; re-armed `dd1af34b` with `<>` every minute per [`tick-must-never-stop.md`](.claude/rules/tick-must-never-stop.md) + catch-43 SessionStart hook
+- **Normal tier** (3924/5000 GraphQL; 28min to reset)
+- Peer saturation: **12 claude-code + 5 gemini-Lior** processes
+- Root worktree heavily contaminated (on stale `otto/2012z-...-2026-05-18` branch ~10h behind main with ~30 working-tree modifications); shard landed from isolated worktree at `/private/tmp/zeta-otto-cli-1005z-coldboot` anchored on `origin/main` SHA `8056b173` per [`zeta-expected-branch.md`](.claude/rules/zeta-expected-branch.md) race-window-caveat + [`claim-acquire-before-worktree-work.md`](.claude/rules/claim-acquire-before-worktree-work.md) saturation-ceiling
+
+## Verification
+
+- `git branch --show-current` guard ✓ before commit
+- `git ls-tree HEAD | wc -l` = 53 entries (canary-clean per [`codeql-no-source-on-docs-only-pr-is-broken-commit-canary.md`](.claude/rules/codeql-no-source-on-docs-only-pr-is-broken-commit-canary.md))
+- `audit-tick-shard-relative-paths.ts --files docs/hygiene-history/ticks/2026/05/19/1005Z.md` → clean (0 broken links; 6-level `../` depth per [MEMORY anchor](https://github.com/Lucent-Financial-Group/Zeta/pull/4358))
+- Auto-merge plan: arm cleanly; **no follow-up commit planned** per [`auto-merge-race-with-follow-up-commit anti-pattern`](.claude/rules/auto-merge-race-with-follow-up-commit-anti-pattern.md) (#4365)
+
+## Test plan
+
+- [x] tick shard authored at `docs/hygiene-history/ticks/2026/05/19/1005Z.md`
+- [x] relative-path lint clean
+- [x] sentinel armed (`CronList` shows job `dd1af34b`)
+- [x] branch guard verified before commit
+- [x] isolated worktree at fresh `origin/main` SHA
+- [x] push succeeded (eventually — sustained latency under 12-Otto+5-Lior saturation, ~3min wait)
+
+🤖 Generated with [Claude Code](https://claude.com/claude-code)
+
+Co-Authored-By: Claude
+
+## Reviews
+
+### COMMENTED — @copilot-pull-request-reviewer (2026-05-19T10:22:43Z)
+
+## Pull request overview
+
+This PR adds a new hygiene-history tick shard documenting the 1005Z Otto-CLI cold-boot state, including sentinel re-arm, rate-limit tier, peer saturation, and isolated-worktree context.
+
+**Changes:**
+- Adds the 2026-05-19 1005Z tick shard.
+- Records operational snapshot details and cross-links relevant rules and recent tick anchors.
+
+## General comments
+
+### @chatgpt-codex-connector (2026-05-19T10:21:05Z)
+
+You have reached your Codex usage limits for code reviews. You can see your limits in the [Codex usage dashboard](https://chatgpt.com/codex/cloud/settings/usage).