Skip to content

docs(od-ontology): file the EnterEffect/state-transition producer ask (P2)#11

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/odoo-entereffect-wishlist
Jun 22, 2026
Merged

docs(od-ontology): file the EnterEffect/state-transition producer ask (P2)#11
AdaWorldAPI merged 1 commit into
mainfrom
claude/odoo-entereffect-wishlist

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

What

Closes a loose end from #9: ogar_actions.rs's module doc says the deferred
action_* state-crossing arm is "filed in specs/UPSTREAM_WISHLIST.md" — but it
wasn't actually there. This files it, making the reference honest.

The ask (P2)

corpus_to_actions (#9) lowers two of three behavioral arms from facts the
corpus carries (Compute→Depends, guard→LifecycleTrigger). The third arm —
the action_* state crossing
(action_post sets state := "posted") — has
no corpus source: the extractor emits has_function/reads_field/
emitted_by/depends_on/raises, but nothing that says a method writes a
state field to a value
. So OGAR's EnterEffect Rubicon crossing can't be
lowered.

The ask is a state-write fact — same sibling-triple shape ruff#18 ratified:

(odoo:account_move.action_post, transitions_to, "account_move.state:posted")

With it, corpus_to_actions lowers action_* → ActionDef{ on_enter: EnterEffect::transition(field, value) }, completing the behavioral arm so the
full Odoo lifecycle (draft→posted→cancelled) maps onto OGAR's Rubicon FSM.

Honest framing

A producer-side fact gap, NOT a Core gap — the Core vocabulary
(EnterEffect, OGAR #97) already exists and od-ontology already pins it; only
the corpus predicate is missing. Same no-synthesis-from-a-missing-fact
discipline as the P1 FK-target ask.

Doc-only. Builds on merged #9/#10.

… (P2)

Closes a loose end: ogar_actions.rs's module doc says the deferred action_*
state-crossing arm is "filed in specs/UPSTREAM_WISHLIST.md" — but it wasn't.
This files it, making the reference honest.

The ask: the odoo-spo extractor should emit a state-write fact for action_*
methods —
  (odoo:account_move.action_post, transitions_to, "account_move.state:posted")
— so corpus_to_actions (#9) can lower the third behavioral arm
(ActionDef.on_enter = EnterEffect::transition, the Rubicon crossing). The Core
vocabulary (EnterEffect, OGAR #97) already exists + is pinned; only the corpus
predicate is missing. A producer-side fact gap, NOT a Core gap — same
no-synthesis-from-a-missing-fact discipline as the P1 FK-target ask, same
sibling-triple shape ruff#18 ratified.

Doc-only.

Co-Authored-By: Claude Opus 4.8 <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.

@AdaWorldAPI AdaWorldAPI merged commit dc66cd5 into main Jun 22, 2026
AdaWorldAPI pushed a commit that referenced this pull request Jul 7, 2026
All five lenses reported; 3-meta synthesis consolidated:
R1 HOLD->RESOLVED (5b45170) · R2 CATCH-LATENT x2 (queued) · R3 TARGETS-CORE
+ triple.rs VIOLATION (Q1, THE next refactor) · R4 3 OPPORTUNITY / 3
WORTH-EXPLORING / 0 DROP · R5 OVERCLAIMED -> core gap RESOLVED same-hour
(real 55-file account addon compiled + verbatim account_move.py fused).

One reviewer premise corrected by synthesis: L6 SPOG IS ruled (operator
2026-07-06); what is missing is the lance-graph ledger paperwork + the
attribute->byte-position assignor, not the ruling.

Queue Q1-Q9 with sizes + owners recorded in docs/COUNCIL-5+3-2026-07-07.md:
triple.rs upstream migration, group_functions EmittedBy arm (smallest
highest-leverage ruff diff), ledger appends x3 repos, od-posting
re-architecture off SurrealQL vocabulary, mint relocation + odoo_actions
authority table, guard-classifier convergence, 5.1%-tail ownership,
carrier asks (#11/#15/#17 + stored verify).
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