Skip to content
Closed
Show file tree
Hide file tree
Changes from 16 commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
b37353d
research: AutoDream extension + cadence policy (Anthropic Q1 2026 ove…
AceHack Apr 23, 2026
7ab0ab9
research: autodream-fire-history — first row-#53 fire ledger entry
AceHack Apr 23, 2026
e8b0d2d
auto-loop-47: tick-history row — AutoDream policy + multi-project fra…
AceHack Apr 23, 2026
96f612c
lint: markdownlint MD032 on fire-history — blank line before list
AceHack Apr 23, 2026
4b479a4
fire-history: log Overlay A first execution (opportunistic-on-touch)
AceHack Apr 23, 2026
a09886e
auto-loop-51: tick-history — fire-history row for Overlay A first exe…
AceHack Apr 23, 2026
b1ce29e
auto-loop-52: fire-history + tick-history — second Overlay A migratio…
AceHack Apr 23, 2026
ec1787b
auto-loop-53: tick-history — Amara courier-protocol (PR #160) + Overl…
AceHack Apr 23, 2026
34dc24f
auto-loop-54: tick-history — Amara deep-research absorb + funding-pri…
AceHack Apr 23, 2026
a388857
auto-loop-55: tick-history — scheduling-authority sharpening + PR #14…
AceHack Apr 23, 2026
c209005
auto-loop-56: tick-history — demo-cluster CI triage, bounded scope-back
AceHack Apr 23, 2026
322e533
auto-loop-57: tick-history — Overlay A migration #4 (PR #162)
AceHack Apr 23, 2026
ab931f0
auto-loop-58: tick-history — fresh-session quality BACKLOG (PR #163) …
AceHack Apr 23, 2026
8a05738
auto-loop-59: tick-history — Overlay A queue closed at #5 (PR #164)
AceHack Apr 23, 2026
5a9eec1
backlog: P1 row — factory technology inventory + OpenAI web UI addition
AceHack Apr 23, 2026
5538537
Merge remote-tracking branch 'origin/main' into backlog/factory-techn…
AceHack Apr 23, 2026
d1c30e6
tick-history: Otto-1 — loop agent named, Cowork fact-check, NSA direc…
AceHack Apr 23, 2026
6bea1bd
backlog + tick-history: Otto-2 — Frontier readiness P0 row + GitHub-s…
AceHack Apr 23, 2026
e7d90cd
tick-history: Otto-3 — NSA test history bootstrap (Frontier readiness…
AceHack Apr 23, 2026
0d9179c
backlog + tick-history: Otto-4 — gap #8 closed + 4 directive absorpti…
AceHack Apr 23, 2026
2b9c522
tick-history: Otto-5 — MD012 fix on PR #165 + universal-welcome clari…
AceHack Apr 23, 2026
9bc26af
tick-history: Otto-6 — first cadenced NSA test (NSA-002 PASS); PR #17…
AceHack Apr 23, 2026
464b4a5
tick-history: Otto-7 — gap #5 seeded (factory-vs-Zeta separation audit)
AceHack Apr 23, 2026
c7093c3
Merge remote-tracking branch 'origin/main' into backlog/factory-techn…
AceHack Apr 23, 2026
f850d0e
tick-history: Otto-8 — PR #165 merge-forward to main (rebase aborted;…
AceHack Apr 23, 2026
f0217ea
tick-history: Otto-9 — gap #5 audit AGENTS.md (both-coupled; PR #180)
AceHack Apr 23, 2026
9b7f814
tick-history: Otto-10 — gap #5 audit GOVERNANCE.md (factory-generic)
AceHack Apr 23, 2026
de61e68
tick-history: Otto-11 — NSA-003 cadenced test PASS (Otto findable, PM…
AceHack Apr 23, 2026
224623a
tick-history: Otto-12 — gap #5 audit CONFLICT-RESOLUTION.md (both-cou…
AceHack Apr 23, 2026
eabfa10
tick-history: Otto-13 — gap #5 audit AGENT-BEST-PRACTICES.md (factory…
AceHack Apr 23, 2026
30ad9aa
tick-history: Otto-14 — gap #5 audit ALIGNMENT.md (factory-generic); …
AceHack Apr 23, 2026
472152b
tick-history: Otto-15 — gap #5 two-file batch (AUTONOMOUS-LOOP + WONT…
AceHack Apr 23, 2026
2de7b5f
tick-history: Otto-16 — NSA-004 + gap #5 batch + samples audience dir…
AceHack Apr 23, 2026
b6ec3f5
tick-history: Otto-17 — Schoolhouse learning-repo proposal + samples …
AceHack Apr 23, 2026
978a785
tick-history: Otto-18 — gap #5 5-file planning-docs batch (15 of ~16 …
AceHack Apr 23, 2026
f875deb
tick-history: Otto-19 — gap #5 3-directory batch (agents + openspec +…
AceHack Apr 23, 2026
c689aa4
tick-history + backlog: Otto-20 — gap #5 SUBSTANTIALLY COMPLETE (20 a…
AceHack Apr 23, 2026
e008ac0
tick-history + backlog: Otto-21 — NSA-005 PASS + gap #6 closed on re-…
AceHack Apr 23, 2026
a48a87a
tick-history: Otto-22 — Schoolhouse → Craft renamed + tool-use pedago…
AceHack Apr 23, 2026
137351d
backlog: gap #7 closed on re-inspection (tick-history scope-mix — sam…
AceHack Apr 23, 2026
e3018c3
tick-history: Otto-23 — gap #7 closed + gap #2 SKELETON + code-abstra…
AceHack Apr 23, 2026
375768a
tick-history: Otto-24 — monumental tick (4 directives + gap #4 skelet…
AceHack Apr 23, 2026
ef221fb
tick-history: Otto-25/26 — submit-nuget diagnosis + Amara memory-acce…
AceHack Apr 23, 2026
aa3cf33
tick-history: Otto-27 — CURRENT files migrated + scrubber + nuget rer…
AceHack Apr 23, 2026
718253c
tick-history: Otto-28 — Phase 1 closure acceleration (4 Amara PRs upd…
AceHack Apr 23, 2026
f81c97b
tick-history: Otto-29 — #198 merged; #149 threads resolved; thread-sw…
AceHack Apr 23, 2026
54fb96d
tick-history: Otto-30 — batch-resolve tool built + applied; 13 thread…
AceHack Apr 23, 2026
c101f50
tick-history: Otto-31 — honest reframe; tool plateau; 135-thread back…
AceHack Apr 23, 2026
56742b7
tick-history: Otto-32 — #170 content fixes (13 of 15 P1 findings addr…
AceHack Apr 23, 2026
1146b00
tick-history: Otto-33 — #199 shellcheck fixed; Phase 1 PR state diagn…
AceHack Apr 23, 2026
589b749
tick-history: Otto-34 — Craft first module + Amara-length calibration…
AceHack Apr 23, 2026
d29474d
tick-history: Otto-35 — #200 MD032 fixed; #196 fully unblocked; #199 …
AceHack Apr 23, 2026
6d42913
tick-history: Otto-36 — #196 MERGED + tool hardened (9 Copilot findin…
AceHack Apr 23, 2026
c0674f9
tick-history: Otto-37 — hardened tool drained 4 threads; #154 at 0 un…
AceHack Apr 23, 2026
00ac0ce
tick-history: Otto-38 — #154 MERGED; #200 MD032 regression fixed; 46 …
AceHack Apr 23, 2026
340f475
tick-history: Otto-39 — Craft module 2 landed (retraction-intuition; …
AceHack Apr 23, 2026
de35d5c
tick-history: Otto-40 — linguistic-seed first term landed (truth; Tar…
AceHack Apr 23, 2026
1968ef3
tick-history: Otto-41 — Craft module #3 (operator-composition; LEGO-b…
AceHack Apr 23, 2026
1c4522a
tick-history: Otto-42 — MD032 '+'-at-line-start preflight audit (FACT…
AceHack Apr 23, 2026
48e884e
backlog + tick-history: Otto-43 — Zora-UX directive absorbed + MD038/…
AceHack Apr 23, 2026
9632c25
tick-history: Otto-44 — Zora-UX research doc v0 landed (Otto-43 direc…
AceHack Apr 23, 2026
79c6d6b
tick-history: Otto-45 — 9 threads drained mechanically across 5 PRs; …
AceHack Apr 23, 2026
09e1808
tick-history: Otto-46 — Craft module #4 (semiring-basics) + Aaron val…
AceHack Apr 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions docs/BACKLOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3239,6 +3239,53 @@ within each priority tier.

**Effort:** M (1-3 days of agent research + write-up).

Comment on lines 3324 to 3330

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: The PR description/title focus on adding a P1 tech-inventory backlog row, but this PR also adds a large new P0 Frontier-readiness BACKLOG item plus substantial AutoDream/tick-history documentation. Please either update the PR description/title to reflect the broader scope or split these additional changes into separate PRs to keep review/rollback boundaries clear.

Copilot uses AI. Check for mistakes.
- [ ] **Factory technology inventory — first-class
support for every tech we use.**
Aaron 2026-04-23: *"don't forget to map out all our
technology so the factory has first class support for
Comment on lines +3331 to +3334

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR title/description focuses on adding the “factory technology inventory” backlog item, but this PR also adds a new AutoDream research policy doc and new hygiene-history surfaces (including a large loop-tick-history.md update). Consider either updating the PR title/description to reflect the broader scope, or splitting these unrelated doc additions into separate PRs to keep review/rollback bounded.

Copilot uses AI. Check for mistakes.
everything ... i think i saw you ad docker and postgres
and now we may be adding the openai website/ui i think
Comment on lines +3331 to +3336

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR description frames this as a BACKLOG capture for a future docs/FACTORY-TECHNOLOGY-INVENTORY.md deliverable, but this PR also introduces several other doc surfaces (e.g., AutoDream research + hygiene history updates) and does not add the inventory doc itself. Consider either (a) narrowing the PR to the described scope, or (b) updating the PR title/description to reflect the additional changes and clarify that the inventory doc is intentionally deferred.

Copilot uses AI. Check for mistakes.
we already have codex cli mapped"*.
Comment on lines +3331 to +3337

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: The PR description/title focus on the “Factory technology inventory” BACKLOG row, but this PR also adds substantial AutoDream-related research and hygiene-history artifacts (e.g., the AutoDream cadence/overlay research doc and fire-history entries). Please either update the PR description/title to reflect these additional changes or split the AutoDream work into a separate PR to keep scope coherent for reviewers.

Copilot uses AI. Check for mistakes.

**Observed gap:** the factory uses many technologies
(Docker, Postgres, F#, .NET 10, TypeScript, bun,
Claude Code, Codex CLI, Gemini CLI, OpenAI web UI,
Playwright, Apache Arrow, Lean 4, Z3, TLA+, FsCheck,
Alloy, Semgrep, CodeQL, BenchmarkDotNet, GitHub
Actions, NuGet, and more) but no single doc
inventories them with install path, version pin,
authoritative doc URL, expert-skill cross-reference,
and TECH-RADAR ring. `docs/HARNESS-SURFACES.md`
covers agent harnesses; `docs/TECH-RADAR.md` covers
ring adoption; per-tech expert skills cover usage
depth. The missing surface is an inventory that ties
all three together per-tech.

**Deliverable:** `docs/FACTORY-TECHNOLOGY-INVENTORY.md`
(name TBD) with columns: Technology / Role / Install
path / Version pin / Auth-doc URL / Expert skill /
TECH-RADAR ring / Notes.

Comment on lines +3331 to +3357

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR scope mismatch: this change (and other files in the PR) introduces substantial AutoDream/loop-hygiene policy and history content, but the PR title/description is framed as a P1 backlog entry about a technology inventory + OpenAI web UI. Consider splitting the AutoDream/loop-hygiene additions into a separate PR, or update the PR title/description so it accurately reflects the included changes.

Copilot uses AI. Check for mistakes.
Comment on lines +3331 to +3357

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR description focuses on adding a BACKLOG row for the technology inventory, but this PR also adds a large new research doc and substantial hygiene-history log updates. Either update the PR description to reflect the full scope or split the unrelated changes into separate PRs to keep review and rollback risk manageable.

Copilot uses AI. Check for mistakes.
**Growth cadence:** living inventory updated with
each new tech adoption. Should surface cross-platform
parity status (row #48) per tech.

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: BACKLOG references cross-platform parity as “row #48”, but in docs/FACTORY-HYGIENE.md row #48 is GitHub surface triage; cross-platform parity audit is row #51. Update the row number so the cross-reference is correct.

Suggested change
parity status (row #48) per tech.
parity status (row #51) per tech.

Copilot uses AI. Check for mistakes.

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This item says the technology inventory should surface cross-platform parity status “(row #48)”, but in docs/FACTORY-HYGIENE.md the cross-platform parity audit is row #51 (row #48 is GitHub surface triage cadence). Please update the referenced row number so it points to the correct hygiene entry.

Suggested change
parity status (row #48) per tech.
parity status (row #51) per tech.

Copilot uses AI. Check for mistakes.
Comment on lines +3359 to +3360

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cross-reference looks incorrect: FACTORY-HYGIENE row #48 is “GitHub surface triage cadence”, not the cross-platform parity audit. If the intent is to reference the cross-platform parity status, update this to the correct row number (currently row #51) or cite the row by name/link instead of number to avoid drift.

Suggested change
each new tech adoption. Should surface cross-platform
parity status (row #48) per tech.
each new tech adoption. Should surface the
FACTORY-HYGIENE cross-platform parity status per tech.

Copilot uses AI. Check for mistakes.

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

docs/FACTORY-HYGIENE.md’s cross-platform parity audit is row #51, not row #48 (row #48 is the GitHub surface triage cadence). Update this reference so the inventory row points at the correct hygiene row.

Suggested change
parity status (row #48) per tech.
parity status (row #51) per tech.

Copilot uses AI. Check for mistakes.

**OpenAI web UI as a new entry.** Aaron 2026-04-23
explicitly named adding OpenAI web UI + Playwright as
a new technology row. Includes any OpenAI mode/model
(deep research, agent mode, others) authorized within
Aaron's already-paid subscription, plus Playwright
caveats (long-conversation rendering, async loading,
UI-change-ongoing maintenance — per the per-user
memory at
`project_factory_technology_inventory_first_class_support_openai_playwright_hard_2026_04_23.md`).

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: This cites a “per-user memory” file by bare filename, but there’s no resolvable path in-repo. Consider using the explicit per-user location (~/.claude/projects/<slug>/memory/<file>.md) or an in-repo mirror so readers can actually find it.

Suggested change
`project_factory_technology_inventory_first_class_support_openai_playwright_hard_2026_04_23.md`).
`~/.claude/projects/<slug>/memory/project_factory_technology_inventory_first_class_support_openai_playwright_hard_2026_04_23.md`).

Copilot uses AI. Check for mistakes.
Comment on lines +3367 to +3370

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 (pointer integrity): This row points to a “per-user memory” file by bare filename, but that file isn’t present in-repo (and the path isn’t specified), so readers can’t follow it. Suggest either (a) capturing the essential Playwright/OpenAI UI caveats in an in-repo doc and linking that, or (b) formatting the reference with the explicit per-user location (~/.claude/projects/<slug>/memory/...) and keeping the BACKLOG row self-contained enough to stand without the private file.

Suggested change
caveats (long-conversation rendering, async loading,
UI-change-ongoing maintenance — per the per-user
memory at
`project_factory_technology_inventory_first_class_support_openai_playwright_hard_2026_04_23.md`).
caveats: long-conversation rendering can degrade,
async UI loading can make automation timing-sensitive,
and ongoing UI changes mean the integration needs
maintenance. Private supporting notes live at
`~/.claude/projects/<slug>/memory/project_factory_technology_inventory_first_class_support_openai_playwright_hard_2026_04_23.md`,
but this backlog row should stand without that file.

Copilot uses AI. Check for mistakes.

**Self-scheduled:** free work under the 2026-04-23
scheduling-authority rule.

**Effort:** M (inventory doc + per-tech row population;
living, not one-shot).
Comment on lines +3331 to +3376

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: The PR title/description focus on the factory technology-inventory BACKLOG row + OpenAI web UI, but this PR also introduces a full AutoDream cadence policy, a new FACTORY-HYGIENE row, and a new hygiene-history ledger. Consider updating the PR title/description to reflect the full scope, or splitting into separate PRs (inventory vs AutoDream hygiene) for easier review/traceability.

Copilot uses AI. Check for mistakes.

- [ ] **Claude-harness cadenced audit — first full sweep.**
Aaron 2026-04-20 late, verbatim: *"part of our stay up to
date on everything we should always research claude and
Expand Down
21 changes: 21 additions & 0 deletions docs/hygiene-history/autodream-fire-history.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# AutoDream fire history

Per-fire ledger for FACTORY-HYGIENE row #53 (AutoDream cadenced

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Point AutoDream history to an existing hygiene row

This new history file declares itself as the ledger for FACTORY-HYGIENE row #53, but in this commit docs/FACTORY-HYGIENE.md does not define a row 53 (the table jumps from 52 to 54). That leaves the new cadence/process record without a resolvable source policy and breaks traceability for future runs that are supposed to follow a numbered hygiene control. Please either add the missing row in FACTORY-HYGIENE.md or update these references to an existing row.

Useful? React with 👍 / 👎.

consolidation — upstream Anthropic Q1 2026 + factory overlays
Comment on lines +3 to +4

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: This file references docs/FACTORY-HYGIENE.md row #53, but docs/FACTORY-HYGIENE.md currently has no row 53 (it jumps from #52 to #54). Either add row #53 in the same PR, or update the reference here to the correct existing row number so the link is not dangling.

Copilot uses AI. Check for mistakes.
A/B/C/D). Schema per row #44 (date / agent / output / link /

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Reference the correct cadence-history schema row

This line points fire-history schema consumers to FACTORY-HYGIENE row #44, but in this repo state row 44 is the supply-chain audit, while the (date, agent, output/link, next-expected) fire-history schema is defined under the cadence-history row (row 47). Leaving the wrong row number breaks traceability and sends readers/automation to an unrelated control.

Useful? React with 👍 / 👎.

next-expected).
Comment on lines +3 to +6

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: This header says the fire-log schema includes an explicit “link” field (per row #44), but the table has no Link column and the rows don’t provide a consistent link entry. Either add a dedicated Link column (or a structured link format inside Findings), and make sure it matches the schema described in FACTORY-HYGIENE row #53 (which also mentions promotion-candidates/findings-count).

Copilot uses AI. Check for mistakes.
Comment on lines +3 to +6

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file references docs/FACTORY-HYGIENE.md row #53, but docs/FACTORY-HYGIENE.md currently has no row 53 (searching for "| 53 |" yields nothing). Update the row number/reference (or land the missing hygiene row in the same PR) so the fire-history points at a real governing row.

Copilot uses AI. Check for mistakes.
Comment on lines +3 to +6

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P0: docs/FACTORY-HYGIENE.md does not currently contain a row #53, and row #44 is not the cadence-history schema. This file therefore points at non-existent / wrong hygiene-row numbers; either add the missing AutoDream hygiene row to docs/FACTORY-HYGIENE.md in this PR and reference the correct schema row, or update these references to the actual row IDs.

Suggested change
Per-fire ledger for FACTORY-HYGIENE row #53 (AutoDream cadenced
consolidation — upstream Anthropic Q1 2026 + factory overlays
A/B/C/D). Schema per row #44 (date / agent / output / link /
next-expected).
Per-fire ledger for the AutoDream cadenced consolidation entry in
`docs/FACTORY-HYGIENE.md` (upstream Anthropic Q1 2026 + factory
overlays A/B/C/D). Schema: date / agent / output / link /
next-expected.

Copilot uses AI. Check for mistakes.

Authoritative policy:
`docs/research/autodream-extension-and-cadence-2026-04-23.md`.

Upstream feature references:

- `~/.claude/projects/<slug>/memory/reference_autodream_feature.md`
- `~/.claude/projects/<slug>/memory/reference_automemory_anthropic_feature.md`

| Date | Agent | Gate | Overlays fired | Findings | Next expected |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Add durable-output link column to fire-history ledger

The file says it follows row #44 schema (date / agent / output / link / next-expected), but the table omits a link field entirely. Without a per-fire durable-output link, this ledger cannot provide the traceability required for cadence-history audits.

Useful? React with 👍 / 👎.

|---|---|---|---|---|---|
| 2026-04-20 | Claude (manual approximation pre-row-#53) | No marker — first known fire | Pre-overlay era | MEMORY.md bootstrap — no overlay framework yet | Superseded by the 2026-04-23 policy doc |
| 2026-04-23 | Claude (first row-#53 fire) | 3 days + ≥5 sessions since 2026-04-20 marker — both gates pass | Light pass: Orientation + Gather Signal (findings-only); Overlays A/B/C/D scheduled for follow-up tick | Per-user MEMORY.md is 345 lines (well over the 200-line cap); 14+ new 2026-04-23 memories not yet indexed cleanly; generic rules in per-user worth candidate migration to in-repo. Full consolidation deferred to a dedicated tick — this fire records the cadence observance and the findings. | Next fire gate-open at ≥24h AND ≥5 sessions from 2026-04-23 (likely 2026-04-26 or later). Overlay A migration candidates land on that fire or earlier opportunistic-on-touch. |
| 2026-04-23 (later, same-day) | Claude (auto-loop-50 opportunistic-on-touch Overlay A) | Same session — not cadence-gated; opportunistic-on-touch per row #53 | Overlay A — first execution | Migrated `feedback_signal_in_signal_out_clean_or_better_dsp_discipline.md` from per-user to in-repo `memory/` (PR #157). Dangling citations from `docs/FACTORY-HYGIENE.md` + `docs/research/autodream-extension-and-cadence-2026-04-23.md` resolved. Per-user source retained with "Migrated to" marker (provenance preserved). Candidate next migrations identified: `feedback_outcomes_over_vanity_metrics_goodhart_resistance.md`, `feedback_deletions_over_insertions_complexity_reduction_cyclomatic_proxy.md`, `feedback_external_signal_confirms_internal_insight_second_occurrence_discipline_2026_04_22.md`, `project_semiring_parameterized_zeta_regime_change_one_algebra_to_map_others_2026_04_22.md` — all generic factory-shape, all cited from the just-migrated file. | Next full-cadence fire at ≥24h AND ≥5 sessions from 2026-04-23. Opportunistic-on-touch continues for the 4 identified candidates as future ticks have budget. |
| 2026-04-23 (later ×2, same-day) | Claude (auto-loop-52 opportunistic-on-touch Overlay A) | Same session — opportunistic-on-touch | Overlay A — second execution (working the identified queue from the prior fire) | Migrated `feedback_outcomes_over_vanity_metrics_goodhart_resistance.md` from per-user to in-repo `memory/` (PR #158). Sibling to signal-in-signal-out (same 2026-04-22 tick pair — Goodhart resistance + DSP preservation as paired disciplines). Resolves one composes-with dangling citation from the just-migrated signal-in-signal-out memory. Queue now 3 candidates (deletions-over-insertions / external-signal-confirms-internal-insight / semiring-parameterized-zeta). | Opportunistic-on-touch continues; cadenced fire still gate-open ≥2026-04-26. |
Comment on lines +18 to +21

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This fire-history table uses direct contributor/agent names (e.g., "Claude") in the Agent column, but docs are required to use role references instead (names only allowed in memory/persona/** and optionally docs/BACKLOG.md). Consider changing the Agent column to role labels (e.g., "loop agent", "manual run") and, if needed, link to an allowed persona-memory entry.

Suggested change
| 2026-04-20 | Claude (manual approximation pre-row-#53) | No marker — first known fire | Pre-overlay era | MEMORY.md bootstrap — no overlay framework yet | Superseded by the 2026-04-23 policy doc |
| 2026-04-23 | Claude (first row-#53 fire) | 3 days + ≥5 sessions since 2026-04-20 marker — both gates pass | Light pass: Orientation + Gather Signal (findings-only); Overlays A/B/C/D scheduled for follow-up tick | Per-user MEMORY.md is 345 lines (well over the 200-line cap); 14+ new 2026-04-23 memories not yet indexed cleanly; generic rules in per-user worth candidate migration to in-repo. Full consolidation deferred to a dedicated tick — this fire records the cadence observance and the findings. | Next fire gate-open at ≥24h AND ≥5 sessions from 2026-04-23 (likely 2026-04-26 or later). Overlay A migration candidates land on that fire or earlier opportunistic-on-touch. |
| 2026-04-23 (later, same-day) | Claude (auto-loop-50 opportunistic-on-touch Overlay A) | Same session — not cadence-gated; opportunistic-on-touch per row #53 | Overlay A — first execution | Migrated `feedback_signal_in_signal_out_clean_or_better_dsp_discipline.md` from per-user to in-repo `memory/` (PR #157). Dangling citations from `docs/FACTORY-HYGIENE.md` + `docs/research/autodream-extension-and-cadence-2026-04-23.md` resolved. Per-user source retained with "Migrated to" marker (provenance preserved). Candidate next migrations identified: `feedback_outcomes_over_vanity_metrics_goodhart_resistance.md`, `feedback_deletions_over_insertions_complexity_reduction_cyclomatic_proxy.md`, `feedback_external_signal_confirms_internal_insight_second_occurrence_discipline_2026_04_22.md`, `project_semiring_parameterized_zeta_regime_change_one_algebra_to_map_others_2026_04_22.md` — all generic factory-shape, all cited from the just-migrated file. | Next full-cadence fire at ≥24h AND ≥5 sessions from 2026-04-23. Opportunistic-on-touch continues for the 4 identified candidates as future ticks have budget. |
| 2026-04-23 (later ×2, same-day) | Claude (auto-loop-52 opportunistic-on-touch Overlay A) | Same session — opportunistic-on-touch | Overlay A — second execution (working the identified queue from the prior fire) | Migrated `feedback_outcomes_over_vanity_metrics_goodhart_resistance.md` from per-user to in-repo `memory/` (PR #158). Sibling to signal-in-signal-out (same 2026-04-22 tick pair — Goodhart resistance + DSP preservation as paired disciplines). Resolves one composes-with dangling citation from the just-migrated signal-in-signal-out memory. Queue now 3 candidates (deletions-over-insertions / external-signal-confirms-internal-insight / semiring-parameterized-zeta). | Opportunistic-on-touch continues; cadenced fire still gate-open ≥2026-04-26. |
| 2026-04-20 | manual run (approximation pre-row-#53) | No marker — first known fire | Pre-overlay era | MEMORY.md bootstrap — no overlay framework yet | Superseded by the 2026-04-23 policy doc |
| 2026-04-23 | manual run (first row-#53 fire) | 3 days + ≥5 sessions since 2026-04-20 marker — both gates pass | Light pass: Orientation + Gather Signal (findings-only); Overlays A/B/C/D scheduled for follow-up tick | Per-user MEMORY.md is 345 lines (well over the 200-line cap); 14+ new 2026-04-23 memories not yet indexed cleanly; generic rules in per-user worth candidate migration to in-repo. Full consolidation deferred to a dedicated tick — this fire records the cadence observance and the findings. | Next fire gate-open at ≥24h AND ≥5 sessions from 2026-04-23 (likely 2026-04-26 or later). Overlay A migration candidates land on that fire or earlier opportunistic-on-touch. |
| 2026-04-23 (later, same-day) | loop agent (auto-loop-50 opportunistic-on-touch Overlay A) | Same session — not cadence-gated; opportunistic-on-touch per row #53 | Overlay A — first execution | Migrated `feedback_signal_in_signal_out_clean_or_better_dsp_discipline.md` from per-user to in-repo `memory/` (PR #157). Dangling citations from `docs/FACTORY-HYGIENE.md` + `docs/research/autodream-extension-and-cadence-2026-04-23.md` resolved. Per-user source retained with "Migrated to" marker (provenance preserved). Candidate next migrations identified: `feedback_outcomes_over_vanity_metrics_goodhart_resistance.md`, `feedback_deletions_over_insertions_complexity_reduction_cyclomatic_proxy.md`, `feedback_external_signal_confirms_internal_insight_second_occurrence_discipline_2026_04_22.md`, `project_semiring_parameterized_zeta_regime_change_one_algebra_to_map_others_2026_04_22.md` — all generic factory-shape, all cited from the just-migrated file. | Next full-cadence fire at ≥24h AND ≥5 sessions from 2026-04-23. Opportunistic-on-touch continues for the 4 identified candidates as future ticks have budget. |
| 2026-04-23 (later ×2, same-day) | loop agent (auto-loop-52 opportunistic-on-touch Overlay A) | Same session — opportunistic-on-touch | Overlay A — second execution (working the identified queue from the prior fire) | Migrated `feedback_outcomes_over_vanity_metrics_goodhart_resistance.md` from per-user to in-repo `memory/` (PR #158). Sibling to signal-in-signal-out (same 2026-04-22 tick pair — Goodhart resistance + DSP preservation as paired disciplines). Resolves one composes-with dangling citation from the just-migrated signal-in-signal-out memory. Queue now 3 candidates (deletions-over-insertions / external-signal-confirms-internal-insight / semiring-parameterized-zeta). | Opportunistic-on-touch continues; cadenced fire still gate-open ≥2026-04-26. |

Copilot uses AI. Check for mistakes.
303 changes: 303 additions & 0 deletions docs/research/autodream-extension-and-cadence-2026-04-23.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,303 @@
# AutoDream extension + cadence — factory overlay on Anthropic's Q1 2026 feature

**Date:** 2026-04-23
**Status:** Research doc — preparing the factory-overlay policy
that plugs tightly into Anthropic's AutoMemory / AutoDream
Q1 2026 features so the factory inherits upgrades rather than
forking its own memory-hygiene stack.
Comment on lines +1 to +7

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: PR title/description focus on the “factory technology inventory” BACKLOG row, but this PR also adds a substantial AutoDream cadence/policy research doc and new hygiene-history fire-ledger content. Consider updating the PR description to include these additional deliverables (or split into separate PRs) so reviewers and release notes match what actually changed.

Copilot uses AI. Check for mistakes.
**Triggered by:** The human maintainer 2026-04-23: *"continue
our AutoDream reserach to make sure we are running it on a
cadence and we plug in tightly with the existing claude Q1 2026
feature for AutoDream and AutoMemory, we should by defintion be
an extension of theirs as it will get upgrades we want over
time. Also they have a cadence we shuld prbably respect and
adaopt for this in our hygene."*
**Scope:** Factory policy — generic, reusable by any factory
adopter on Claude Code; not project-specific to Zeta.

## Why this matters

Anthropic shipped two load-bearing features in Q1 2026:

1. **AutoMemory** — the persistent cross-session memory
system itself (`MEMORY.md` index + per-fact files under
`~/.claude/projects/<slug>/memory/`). Additive by design;
daytime logger.
2. **AutoDream** — the REM-sleep-style consolidation pass
that runs on top of AutoMemory. Subtractive / curative by
design; nighttime hygiene. Flag-gated server-side as of
2026-04-19 (`tengu_onyx_plover`); the UI at `/memory`
exposes it but the backend is off for most users.

Anthropic's documentation establishes: AutoMemory without
AutoDream degrades after 10-15 sessions because the daytime
log accumulates duplicates, contradictions, and stale
relative-date references. The consolidation pass is not
optional — it is the thing that prevents the degradation
cliff.

The factory has been running **manual approximations** of
AutoDream since the feature was surfaced, but without a
documented cadence policy or a formal extension contract.
This doc closes that gap.

## The two rules from the directive

### Rule 1 — extend, don't replace

The factory is **by definition** an extension of Anthropic's
memory substrate, not a parallel stack. When Anthropic ships
an improvement to AutoMemory or AutoDream, the factory
inherits it for free *only if* the factory has not forked the
underlying mechanism.

Concretely:

- **Frontmatter schema stays upstream-compatible.** The
factory may add optional keys (e.g., a future `scope:` key
per `docs/research/memory-scope-frontmatter-schema.md`) but
must not rename or remove the Anthropic-required keys
(`name`, `description`, `type`, `originSessionId`) and must
keep the type taxonomy (`user`, `feedback`, `project`,
`reference`).
- **Storage location stays upstream.** Per-user memory lives
at `~/.claude/projects/<slug>/memory/`, not at a
factory-custom path. The factory's in-repo `memory/` tree
is a **mirror** for cross-substrate readability — it does
not replace the per-user location; it adds a second home
for generic content.
- **AutoDream's four phases stay upstream.** Orientation →
Gather Signal → Consolidation → Prune & Index. The factory
extends by adding overlay steps *between* or *after* these
phases, never by replacing them.
- **When Anthropic ships automatic AutoDream** (backend un-gated),
the factory's manual approximation retires in favour of
the automatic run. Factory-overlay steps continue on top.

### Rule 2 — adopt upstream cadence

Anthropic's AutoDream cadence is **both**:

- **≥24 hours** since the last cycle, **and**
- **≥5 sessions** since the last cycle.

The factory adopts this cadence verbatim. Running more
frequently churns fresh memories before their
duplicate / contradiction / staleness patterns have
surfaced; running less frequently lets the daytime log
degrade.

The cadence gate lives in a single cross-session marker at
the top of `MEMORY.md`:

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

MEMORY.md is ambiguous here because the repo also has an in-repo memory/MEMORY.md. Since this cadence marker is meant to live in the per-user AutoMemory index, it would help to spell out the intended path explicitly (e.g., ~/.claude/projects/<slug>/memory/MEMORY.md) and/or note that the in-repo memory/MEMORY.md is not the cadence gate.

Suggested change
the top of `MEMORY.md`:
the top of the per-user AutoMemory index file
`~/.claude/projects/<slug>/memory/MEMORY.md` (not the
in-repo `memory/MEMORY.md`):

Copilot uses AI. Check for mistakes.

```
[AutoDream last run: YYYY-MM-DD]

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Store last-run marker with time, not date-only

The policy claims a strict >=24 hours gate, but the marker format is date-only (YYYY-MM-DD), which cannot represent elapsed hours accurately. A run at 23:59 and another at 00:05 next day would appear as different dates despite only minutes passing, so the cadence check can fire too early and violate the intended upstream rule.

Useful? React with 👍 / 👎.

```

On every would-be run the factory checks this marker:

- **Absent → treat as "never."** Run on first invocation.
- **Date within 24h AND session-count-since-last < 5 →
skip.** Report "cadence gate: N hours since last run,
M sessions; skipping."
- **Date ≥ 24h AND sessions ≥ 5 → run.** Update marker
after successful consolidation.

Session-count is hard to track precisely without harness
instrumentation; approximate it by checking the count of
new per-fact files added since the marker date (≥5 new
files ≈ ≥5 active sessions).
Comment on lines +106 to +109

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Count unique sessions, not per-fact files, for cadence gate

The policy says the AutoDream run gate is >=24h and >=5 sessions, but this implementation substitutes >=5 new per-fact files as the session counter. Because memory files are fact-scoped, one busy session can emit multiple files and satisfy the gate early, while several sessions that produce few/no new files may never satisfy it; both cases violate the stated upstream cadence and can schedule consolidations at the wrong times.

Useful? React with 👍 / 👎.


## The factory-overlay extension points

The factory adds four overlays on top of Anthropic's four
phases. Each overlay composes — it does not replace.

### Overlay A — Cross-substrate mirror check (before Orientation)

Before Anthropic's Orientation phase surveys the per-user
memory tree, the factory overlay checks whether the in-repo
`memory/` tree has drifted from the per-user tree.

Signal:

- Per-user memory contains a generic factory-shaped rule
that should be in-repo per
`memory/feedback_in_repo_preferred_over_per_user_memory_where_possible_2026_04_23.md`

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P0: This doc cites memory/feedback_in_repo_preferred_over_per_user_memory_where_possible_2026_04_23.md but also says it is “per-user until this doc migrates it”. Since the file is not present in the in-repo memory/ directory, this reference is currently non-resolvable/misleading; use an explicit per-user path (~/.claude/projects/<slug>/memory/...) or add an in-repo mirror.

Suggested change
`memory/feedback_in_repo_preferred_over_per_user_memory_where_possible_2026_04_23.md`
`~/.claude/projects/<slug>/memory/feedback_in_repo_preferred_over_per_user_memory_where_possible_2026_04_23.md`

Copilot uses AI. Check for mistakes.
(per-user until this doc migrates it).
Comment on lines +125 to +127

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doc references memory/feedback_in_repo_preferred_over_per_user_memory_where_possible_2026_04_23.md as an in-repo file, but that file does not exist under memory/ in this branch (only other files refer to it). Either add the referenced memory file to memory/, or change the reference to the per-user location (~/.claude/projects/<slug>/memory/...) and adjust the surrounding text accordingly so the citation is not dangling.

Suggested change
that should be in-repo per
`memory/feedback_in_repo_preferred_over_per_user_memory_where_possible_2026_04_23.md`
(per-user until this doc migrates it).
that should be in-repo; today it still lives at
`~/.claude/projects/<slug>/memory/feedback_in_repo_preferred_over_per_user_memory_where_possible_2026_04_23.md`
until this doc migrates it into the repo `memory/` tree.

Copilot uses AI. Check for mistakes.
- In-repo memory contains a stale reference to per-user
content that has since moved or changed.

Action: migrate generic rules per-user → in-repo, update
cross-references. Do not migrate maintainer-specific or
company-specific content (see the in-repo-preferred feedback
memory's pushback-on-bloat criterion).

### Overlay B — Cadenced harness-surface sync (during Gather Signal)

Anthropic's Gather Signal phase searches for user
corrections, key decisions, and recurring patterns. The
factory extends this step with a check against
`docs/HARNESS-SURFACES.md`: has the factory's per-surface
adoption status (adopted / watched / untested / rejected /
stub) drifted since the last cadence?

If a surface has moved from *watched* to *adopted* because
Anthropic un-gated it, or cut a feature the factory was
relying on, surface the drift for the next
`harness-surface cadenced audit` (FACTORY-HYGIENE row 38).

### Overlay C — Governance-promotion pass (during Consolidation)

Anthropic's Consolidation phase merges duplicates, resolves
contradictions, and converts relative dates to absolute. The
factory extends with a governance-promotion check: does a
memory rule observed repeatedly (the same rule re-cited
across ≥3 memories) belong in a governance doc or ADR
rather than in memory?

Signal: the rule has matured from observation-in-memory to
durable-structural-rule. The right home is
`docs/AGENT-BEST-PRACTICES.md` (BP-NN promotion),
`GOVERNANCE.md` (numbered rule), `docs/WONT-DO.md` (declined
directions), or a `docs/DECISIONS/YYYY-MM-DD-*.md` ADR.

Action: propose the promotion in the round-close summary.
Kenji (Architect) decides whether the promotion lands this

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doc introduces direct contributor/agent names (e.g., "Kenji") in the body. docs/AGENT-BEST-PRACTICES.md forbids name attribution in docs outside memory/persona/** (and docs/BACKLOG.md as the only doc exception). Replace names with role references (e.g., "the architect") and, if needed, point to a persona-memory file instead.

Suggested change
Kenji (Architect) decides whether the promotion lands this
The architect decides whether the promotion lands this

Copilot uses AI. Check for mistakes.
round or a future one. The memory stays where it is until
the promotion lands; after promotion it may be pruned or
left as provenance.

### Overlay D — Alignment-observability sync (during Prune & Index)

Anthropic's Prune & Index phase rebuilds `MEMORY.md`, keeping
it under ~200 lines for fast session startup. The factory
extends with an alignment-observability sync: any memory
entries that shifted a clause in `docs/ALIGNMENT.md` (HC-1..HC-7,
SD-1..SD-8, DIR-1..DIR-5) since the last pass get flagged to
the alignment-auditor role for per-commit signal review.

This overlay keeps the alignment time-series coherent across
consolidations. Without it, a consolidation that merges two
memories could silently re-shape an alignment clause
interpretation without the alignment-auditor noticing.

## Invariants the consolidation must preserve

Anthropic's AutoDream reference memory enumerates
consolidation invariants; the factory adds three more:

1. **Load-bearing memories stay unconditionally** (upstream
rule). The factory's load-bearing list includes sister
Elisabeth memory, faith memory, Harmonious Division name,
Rodney persona placement, Dora persona — plus factory-scale
anchors like the bootstrap-is-complete memory, the
Comment on lines +191 to +194

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: This section names specific individuals (“sister Elisabeth”, etc.) inside an in-repo policy doc. docs/AGENT-BEST-PRACTICES.md explicitly restricts direct contributor names in docs/skills and prefers role references (with docs/BACKLOG.md as the carve-out). Please replace these with role-based references or move the specifics to per-user memory so the repo stays compliant with the stated convention.

Suggested change
rule). The factory's load-bearing list includes sister
Elisabeth memory, faith memory, Harmonious Division name,
Rodney persona placement, Dora persona — plus factory-scale
anchors like the bootstrap-is-complete memory, the
rule). The factory's load-bearing list includes core
identity-anchor memory, faith-anchor memory, the
Harmonious Division project-name anchor, and persona
placement/roster anchors — plus factory-scale anchors
like the bootstrap-is-complete memory, the

Copilot uses AI. Check for mistakes.
free-will-paramount memory, and the alignment-floor
references.
2. **Distinct query axes stay distinct** (upstream rule).
3. **Cross-references stay bidirectional** (upstream rule).
4. **Corrections are recorded, not silently deleted**
(upstream rule).
5. **Verbatim quotes stay verbatim** (factory addition —
composes with
`feedback_signal_in_signal_out_clean_or_better_dsp_discipline.md`).
Comment on lines +202 to +203

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: feedback_signal_in_signal_out_clean_or_better_dsp_discipline.md is referenced without a resolvable in-repo path and does not exist under memory/ in this branch. Please either add the in-repo memory file, or change this to an explicit per-user path so the “composes with” reference is actionable.

Suggested change
composes with
`feedback_signal_in_signal_out_clean_or_better_dsp_discipline.md`).
composes with the signal-in / signal-out clean-or-better
DSP discipline rule).

Copilot uses AI. Check for mistakes.
Consolidation must not paraphrase a verbatim-preserved
quote, even when merging two memories.
6. **Migration supersedes, does not delete** (factory
addition — per-user memory files migrated in-repo leave
a "Migrated to in-repo memory/: <path>" line at the top
of the per-user source; the source itself stays for
originSessionId provenance).
7. **Supersede markers over silent retirement** (factory
addition — a rule that is no longer in force becomes an
entry in the "Retired rules" section of a
`CURRENT-<maintainer>.md` file, never deleted; composes
with `feedback_current_memory_per_maintainer_distillation_pattern_prefer_progress_2026_04_23.md`).

## Cadence policy summary

| Trigger | Check | Action |
|---|---|---|
| Session wake | `[AutoDream last run: ...]` marker | If absent: run cadence gate. If within 24h AND sessions < 5: skip. Otherwise: queue AutoDream for next hygiene tick. |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Require both cadence gates before scheduling a run

This rule queues AutoDream whenever the skip case is false, which means a run is scheduled when only one gate passes (e.g., >=24h but <5 sessions, or <24h but >=5 sessions). Earlier in the same doc the cadence is defined as >=24h AND >=5 sessions, so this condition weakens the gate and will trigger out-of-cadence consolidations in normal use.

Useful? React with 👍 / 👎.

| Manual invocation ("dream" / "consolidate memory") | Cadence gate | If fresh, ask before proceeding; user may override. |
| Round-close | Was this round a cadence tick? | If yes, include "AutoDream ran" in round-close summary; note the overlay findings. |
| Governance-promotion candidate | ≥3 memories cite the same rule | Surface to Kenji as promotion candidate; do not auto-promote. |
| Cross-substrate drift | In-repo vs per-user mismatch | Run Overlay A migration on next cadence tick. |
Comment on lines +224 to +225

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doc uses direct contributor/agent names (e.g., "Kenji") in normative policy text. Repo convention is to use role references in docs/skills and keep personal names only under memory/persona/<name>/ and (narrowly) docs/BACKLOG.md (see docs/AGENT-BEST-PRACTICES.md "No name attribution in code, docs, or skills"). Consider rewriting these references as roles (e.g., "the architect") or moving name-specific attribution into the appropriate persona memory/notebook.

Copilot uses AI. Check for mistakes.

## Composition with existing factory surfaces

- **`docs/HARNESS-SURFACES.md`** — the AutoMemory / AutoDream
rows are already present (rows visible in the Claude
surface inventory). This doc adds the cadenced-consolidation
policy those rows currently only reference as "watched."
- **`docs/FACTORY-HYGIENE.md` row 38** — harness-surface
cadenced audit runs every 5-10 rounds; AutoDream's 24h+5
sessions cadence is coarser-grained and fires on its own
clock. A new FACTORY-HYGIENE row for AutoDream-specific
consolidation tracks the cadence independently.
Comment on lines +236 to +237

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This section claims a new AutoDream-specific FACTORY-HYGIENE row is added by the same PR, but this PR does not update docs/FACTORY-HYGIENE.md and there is currently no row #53 there. Either add the referenced hygiene row in this PR, or change this text (and any downstream references) to match the current row numbering/status (e.g., mark it proposed with a TBD row number).

Suggested change
clock. A new FACTORY-HYGIENE row for AutoDream-specific
consolidation tracks the cadence independently.
clock. A follow-up should add an AutoDream-specific
FACTORY-HYGIENE row (TBD row number) so consolidation
cadence is tracked independently.

Copilot uses AI. Check for mistakes.
- **`docs/AGENT-BEST-PRACTICES.md` BP-NN rules** — Overlay
C feeds this list with governance-promotion candidates.
- **`docs/ALIGNMENT.md`** — Overlay D keeps alignment clauses
coherent across consolidations.
- **`CLAUDE.md` auto-memory section** — this doc does not
change the auto-memory section itself; CLAUDE.md remains
the loading surface, this research doc is the policy
layer Kenji can cite in future edits.
- **`.claude/skills/round-open-checklist/SKILL.md`** —
natural home for the cadence-gate check on session wake;
a follow-up tick may add an `autodream-cadence-check`
step to the round-open checklist.
- **`.claude/skills/long-term-rescheduler/SKILL.md`** —
could queue the next AutoDream run based on cadence
calculation.

## Deferred (not this round)

1. **Dedicated `autodream-hygiene` skill.** A skill that
wraps the four Anthropic phases + four factory overlays
as a single invocable procedure. Deferred because the
skill-creator workflow is the canonical authoring path
(GOVERNANCE §4) and this round is the research-doc
landing, not the skill-authoring.
2. **Automated cadence-gate check on `MEMORY.md` write.**
Would require a hook or a pre-commit step that inspects
the marker. Deferred until the manual cadence is
validated over several cycles.
3. **Migration tooling for per-user → in-repo.** Currently
manual per
`feedback_in_repo_preferred_over_per_user_memory_where_possible_2026_04_23.md`.
A small script that validates the generalisation step
(no maintainer-specific content leaks) could help but
is not load-bearing yet.
4. **Alignment-auditor Overlay D integration.** Requires
coordination with the alignment-auditor role's time-series
machinery. Flag for a joint tick with that role.

## Open questions for the human maintainer

None blocking. The policy is fully specified by the
Anthropic docs plus the two directive rules in this doc. If
the human maintainer wants to adjust the cadence (e.g.,
24h+3 sessions instead of 24h+5), the single marker and the
rule in this doc are the only edits needed — the four-phase
structure and the four overlays stay the same.

## Composes with

- `docs/HARNESS-SURFACES.md` (AutoMemory / AutoDream
adoption rows)
- `docs/FACTORY-HYGIENE.md` (row 38 harness-surface audit;
a new AutoDream-specific row is added by the same PR
that lands this research doc)
Comment on lines +289 to +291

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Remove unresolved claim about AutoDream hygiene row

The composition section says this same PR adds a new AutoDream-specific FACTORY-HYGIENE row, but this commit does not modify docs/FACTORY-HYGIENE.md, so the referenced policy surface is not actually present here. That creates an unresolvable dependency for anyone trying to follow the policy from this document.

Useful? React with 👍 / 👎.

Comment on lines +290 to +291

Copilot AI Apr 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doc claims “a new AutoDream-specific [FACTORY-HYGIENE] row is added by the same PR that lands this research doc”, but this PR doesn’t modify docs/FACTORY-HYGIENE.md to add such a row. Either add the referenced hygiene row in this PR or remove/adjust this statement so it matches what actually lands.

Suggested change
a new AutoDream-specific row is added by the same PR
that lands this research doc)
follow-up home for any AutoDream-specific hygiene row if
one is added in a later change)

Copilot uses AI. Check for mistakes.
- `docs/AGENT-BEST-PRACTICES.md` (governance-promotion
target)
- `docs/ALIGNMENT.md` (Overlay D's sync target)
- `CLAUDE.md` auto-memory section (loading-surface
documentation)
- The per-user memory reference memories
`reference_autodream_feature.md` and
`reference_automemory_anthropic_feature.md` (the
upstream feature descriptions this doc extends)
- The per-user in-repo-preferred feedback memory
`feedback_in_repo_preferred_over_per_user_memory_where_possible_2026_04_23.md`
(the migration discipline Overlay A executes)
Loading