Skip to content

lance-graph-ogar: PROBE-RECIPE-EXECUTION-1 — the 34 recipes' effects, measured - #995

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/probe-recipe-execution-1
Aug 23, 2026
Merged

lance-graph-ogar: PROBE-RECIPE-EXECUTION-1 — the 34 recipes' effects, measured#995
AdaWorldAPI merged 1 commit into
mainfrom
claude/probe-recipe-execution-1

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

Follow-up to #992 — the reframed KC1 from PROBE-LOCO-INTERPRETER-1 (§F1: "the 34 lance-graph-ogar recipes have separable executable effects" — explicitly untested there).

The reframe (from session discussion)

KC1 was never "can the 34 recipes execute via ogar_loco::Call bytes" — that's ABI plumbing. The actual question is behavioural: given the same starting context, do different recipe ids produce state transitions an observer could tell apart?

A correction this surfaces

§F1's "the recipes' semantics live in ThoughtCtx/recipe_dispatch wiring, out of scope" read as "not built yet." It isn't — lance-graph-contract::recipe_kernels.rs already carries all 34 as real, tested impl Tactic blocks (apply(&mut ThoughtCtx) -> Outcome), dispatchable through a working kernel(id: u8) -> Option<&'static dyn Tactic> / all_kernels() registry, id space 1..=34 — the SAME id space lance-graph-ogar::recipe_vocab::op_of/recipe_of uses for the FnIndex mapping (FnIndex(0x90 + id - 1)). Verified by a round-trip assertion in the probe, not assumed.

What the probe measures

crates/lance-graph-ogar/examples/recipe_execution_probe.rs calls kernel(id).run_with(&mut ctx, MaturityPolicy::Any) for all 34 ids against a 4-context battery (hot/cold/empty/neutral), comparing a deliberately coarse effect signature (fired / Δconfidence sign / which ThoughtCtx fields changed / candidate-count-delta sign) — coarse on purpose, so raw float noise can't manufacture false separability.

Result: 23/34 recipes are distinguishable across the whole battery; 11 collapse into 15 pairwise collisions (e.g. ARE/ZCF/HKF/MCP all "fire" but change nothing observable on any tested context; RCR==IRS==TCA). Measured, not quoted: 31/34 kernels are Operational, 14/34 can move confidence at all — restricting to Operational-only barely moves the rate (23/31).

What this does NOT establish: the ogar_loco::Call/FunctionBodykernel(id) dispatch bridge. No FnIndex in RECIPE_OP_BASE..RECIPE_OP_END is invoked by any interpreter today. That bridge is now a small, well-scoped wiring task (id mapping already verified consistent) — not a missing-semantics question.

This PR

  • crates/lance-graph-ogar/examples/recipe_execution_probe.rs (new)
  • .claude/board/EPIPHANIES.md: E-RECIPE-EXECUTION-SEPARABILITY-1

lance-graph-ogar is workspace-EXCLUDED by design (own [workspace], BBB firewall) — run via cargo run --manifest-path crates/lance-graph-ogar/Cargo.toml --example recipe_execution_probe.


Generated by Claude Code

… measured

Adds crates/lance-graph-ogar/examples/recipe_execution_probe.rs: the
reframed KC1 from PROBE-LOCO-INTERPRETER-1 (AdaWorldAPI/lance-graph #992
§F1) — not "can the 34 recipes execute via ogar_loco::Call bytes" (ABI
plumbing) but "given the same starting context, do different recipe ids
produce state transitions an observer could tell apart."

Correction this surfaces: lance-graph-contract::recipe_kernels.rs already
carries all 34 as real, tested `impl Tactic` blocks with a working
kernel(id) registry (id space 1..=34), the SAME id space
recipe_vocab::op_of/recipe_of uses for the FnIndex mapping — verified by
a round-trip assertion in the probe, not assumed. KC1 was never blocked
on missing semantics; it was untested because nobody had measured it.

Result: 23/34 recipes are distinguishable across a 4-context battery
(hot/cold/empty/neutral), by a deliberately coarse effect signature
(fired / delta-confidence sign / which fields changed / candidate-count-
delta sign) chosen so raw float noise cannot manufacture false
separability. 11 collapse into 15 pairwise collisions. Measured, not
quoted: 31/34 kernels are Operational, 14/34 can move confidence at all;
restricting to Operational-only kernels barely moves the separability
rate (23/31).

What this does not do: build the ogar_loco::Call/FunctionBody ->
kernel(id) dispatch bridge — no FnIndex in RECIPE_OP_BASE..RECIPE_OP_END
is invoked by any interpreter today. That bridge is now a small, well-
scoped wiring task, not a missing-semantics question.

Board: EPIPHANIES E-RECIPE-EXECUTION-SEPARABILITY-1.

Co-Authored-By: Claude <noreply@anthropic.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@cursor

cursor Bot commented Aug 23, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_096c4351-115a-46a5-beb3-ad1470eec8ac)

@coderabbitai

coderabbitai Bot commented Aug 23, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 469ec77f-fab3-4649-87d0-8018f6408389


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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