diff --git a/.claude/knowledge/fuzzy-recipe-codebook-POINTER.md b/.claude/knowledge/fuzzy-recipe-codebook-POINTER.md new file mode 100644 index 00000000..b7dfc880 --- /dev/null +++ b/.claude/knowledge/fuzzy-recipe-codebook-POINTER.md @@ -0,0 +1,33 @@ +# POINTER — the fuzzy recipe codebook lives in ruff + +> The **method** for cooking a `(verb, criteria)` recipe codebook from +> imperative method-body facts — and correlating fuzzy bodies to the +> declarative recipes OGAR's DO arm (`ActionDef`) lowers — is calcified in the +> producer repo: +> +> **`ruff/.claude/knowledge/fuzzy-recipe-codebook.md`** (+ the `fuzzy-proposer` +> agent in `ruff/.claude/agents/`). + +## Why it lives there, not here + +The fingerprint is the ruff `Function` body-fact arm (`writes_field` / +`reads_field` / `raises` / `calls` / `writes_if_blank`) — a producer-frontend +concern. OGAR CONSUMES the result: the recipe centroids decide, per method, +whether a body lowers to a declarative `ActionDef` recipe (the 85%: +normalize/default/compute/cascade/guard) or stays a hand-ported imperative core +(the 15%: compensate/write-raise). This is the measured foundation of the 85/15 +transpile split (`OGAR-TRANSPILE-SUBSTRATE.md`). + +## OGAR-side hooks the doc references + +- **F17 body-triage** (`docs/INTEGRATION-MAP.md` + `E-BODY-TRIAGE-ODOO-CONTROL-1`): + the recipe codebook IS the refinement that rolled the F17 coarse triage + (93.5%) to the recipe-recoverable band (93.8–98.4%), Redmine leg. +- **SoC families** (reserved, mint-on-emit, `E-RECIPE-FAMILIES-MINT-ON-EMIT`): + the codebook's §8b SoC proposer feeds them — god-object bucket overflow → + Concern (`0x06`); duplicate-routes dedup → Scope (`0x05`). +- **J1 `writes_if_blank`** (shipped in ruff): splits the `SelfMap` recipe into + schema-default vs `normalizes` — the emit-target disambiguation OGAR needs. +- **Config-as-data** (§8c): a detected `config.json`/schema/resolver map is + ingested as codebook priors, never transcribed — the same rule as the + `.claude/harvest/` resolver config. diff --git a/Cargo.lock b/Cargo.lock index 896b9086..d649d546 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4932,7 +4932,7 @@ dependencies = [ [[package]] name = "lance-graph-contract" version = "0.1.0" -source = "git+https://github.com/AdaWorldAPI/lance-graph?branch=main#7b48abd973f53bbc172b6b0b5dd4dae5d7d6d84b" +source = "git+https://github.com/AdaWorldAPI/lance-graph?branch=main#1c44ea5c21e48c9e756d0cc4c77a0a81bd90c79e" dependencies = [ "glob", "serde", @@ -6043,7 +6043,7 @@ dependencies = [ [[package]] name = "ogar-adapter-surrealql" version = "0.1.0" -source = "git+https://github.com/AdaWorldAPI/OGAR?branch=main#76dcb27fec14aa5416c26ea48814f43394b7f053" +source = "git+https://github.com/AdaWorldAPI/OGAR?branch=main#46d2d2ef0144c3a7e86dbad688893d611cd1171c" dependencies = [ "ogar-vocab", ] @@ -6051,7 +6051,7 @@ dependencies = [ [[package]] name = "ogar-class-view" version = "0.1.0" -source = "git+https://github.com/AdaWorldAPI/OGAR?branch=main#76dcb27fec14aa5416c26ea48814f43394b7f053" +source = "git+https://github.com/AdaWorldAPI/OGAR?branch=main#46d2d2ef0144c3a7e86dbad688893d611cd1171c" dependencies = [ "lance-graph-contract 0.1.0 (git+https://github.com/AdaWorldAPI/lance-graph?branch=main)", "ogar-vocab", @@ -6060,12 +6060,12 @@ dependencies = [ [[package]] name = "ogar-ontology" version = "0.1.0" -source = "git+https://github.com/AdaWorldAPI/OGAR?branch=main#76dcb27fec14aa5416c26ea48814f43394b7f053" +source = "git+https://github.com/AdaWorldAPI/OGAR?branch=main#46d2d2ef0144c3a7e86dbad688893d611cd1171c" [[package]] name = "ogar-vocab" version = "0.1.0" -source = "git+https://github.com/AdaWorldAPI/OGAR?branch=main#76dcb27fec14aa5416c26ea48814f43394b7f053" +source = "git+https://github.com/AdaWorldAPI/OGAR?branch=main#46d2d2ef0144c3a7e86dbad688893d611cd1171c" [[package]] name = "once_cell"