Skip to content

Compile every dream cycle from one engine: ruflo, metaharness, ruvector, ruClip configs + mirrors - #196

Merged
ruvnet merged 2 commits into
mainfrom
feat/compile-all-dream-cycles
Oct 19, 2026
Merged

ruvnet merged 2 commits into
mainfrom
feat/compile-all-dream-cycles

Conversation

@ruvnet

@ruvnet ruvnet commented Oct 18, 2026

Copy link
Copy Markdown
Owner

Stacked on #195 (base feat/dream-cycle-v2). Merge #195 first.

Why

Five nightly cycles ran on three different prompt generations: Ruflo v3.1, MetaHarness v2, and RuVector's 49-step harness. Only dream-machine and RuClip came from this compiler. Every improvement had to be hand-ported into each task, and they drifted.

What

  • targets/*.dream.json holds configs for ruflo, metaharness, ruvector and ruClip. Each is grounded in its repo at today's HEAD:

    Repo HEAD ADR dir Branches / ledger
    ruflo b931448 v3/docs/adr (3-digit, max 491) 122 dream/* branches
    metaharness e0dfd44 docs/adrs (3-digit, max 318) —
    ruvector 46d816d docs/adr 93 research/nightly/* branches, ledger at docs/research/nightly/LEDGER.md

    Build and test commands come from each repo's real package.json. All npx tooling is pinned: [email protected], [email protected].

  • scheduleContract: true compiles the core-memory build(deps): bump actions/upload-artifact from 7.0.1 to 7.0.2 #187 contract into every prompt: receipts, duplicate-firing skip, pinned tooling. Pasting a mirror no longer drops it.

  • selfReview.configSource handles external targets, whose config lives here and not in their own checkout. Their self-review night ships a proposed config diff as a draft PR in the target repo for a human to apply.

  • Mode selection falls back to manual gh counts when the dream-machine CLI isn't installed. The published 0.1.2 predates ledger outcomes.

  • docs/dream-cycle/compiled/*.md holds committed mirrors, i.e. what gets pasted into each scheduled task. scripts/compile-targets.mjs --check and targets.test.ts fail on drift.

  • docs/dream-cycle/compiled/README.md has paste instructions and an explicit table of what the hand-written prompts had that the compiled ones lack. The biggest loss is RuVector's long report format and 12-candidate search; the README says to keep its hand-written prompt if that format matters more.

Evidence

  • npx vitest run: 851 → 886 passed. Typecheck and lint are clean.
  • 5 new snapshots: one per cycle, all through the same engine.
  • No supply-chain warning in any compiled prompt.
  • test:governance is unchanged: 3 preexisting benchmark-ticket-codec failures.

Deployment (manual, by design)

Paste each mirror into its existing scheduled task. Do not recreate the tasks: the scheduling API available to agents cannot attach the repo checkout and push credentials the current tasks were created with, and recreating also resets run history.

Risks

  • RuVector moves from free topic choice to a 5-slot rotation, with a shorter report.
  • An external self-review cannot apply its own change; a human must port it here. This is intentional, but it is slower.

Merge policy

Human review required. Do not self-merge.


Generated by Claude Code

…ruvector, ruClip)

- targets/*.dream.json for the four hand-written or out-of-repo cycles,
  grounded in each repo's real ADR dirs, ledgers, branch prefixes and scripts
- scheduleContract option renders core-memory #187 (receipts, duplicate-firing
  skip, pinned tooling) into the compiled prompt
- selfReview.configSource: external targets deliver self-review as a proposed
  config diff PR instead of editing a config they cannot reach
- mode selection falls back to manual gh counts when the CLI is absent
- docs/dream-cycle/compiled/: committed mirrors + paste instructions + an
  explicit table of what the hand-written prompts had that these do not
- scripts/compile-targets.mjs (--check) and targets.test.ts: one snapshot
  suite, invariant coverage, pin check and mirror-drift check for all five

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01UKmTEoXaW1UV6Rj7ym5MsY
@ruvnet
ruvnet changed the base branch from feat/dream-cycle-v2 to main October 19, 2026 00:38
@ruvnet
ruvnet merged commit 3fc3222 into main Oct 19, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants