Skip to content

docs(openproject): two-arm pattern + nexgen convergence + knowable_from pin#16

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/openproject-companion-spo-arm-nexgen
Jun 4, 2026
Merged

docs(openproject): two-arm pattern + nexgen convergence + knowable_from pin#16
AdaWorldAPI merged 1 commit into
mainfrom
claude/openproject-companion-spo-arm-nexgen

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

OpenProject companion — two-arm pattern + nexgen convergence + knowable_from pin

Three durable additions to the OpenProject transcoding doc (merged in #14) following discovery of substantial in-flight work elsewhere in the AdaWorldAPI ecosystem. Pure docs, no IR change.

What lands

  • §10.1 — two-arm pattern. Names the narrow SPO arm (ruff_spo_triplet core + ruff_ruby_spo scaffold) and the wide OGAR arm (this doc / future ogar-from-ruby) as complementary. One AST parse fills both; SPO answers "what depends on what" (data-dep DAG, feeds Rubicon's KausalSpec::Depends), OGAR answers "when fires, guards, commits" (lifecycle FSM). Producer pairs per domain.
  • §10.2 — nexgen convergence. openproject-nexgen-rs ships op-surreal-ast (C16a, mirror of catalog::*), op-codegen-projection (C15, DDL renderer), op-codegen-pipeline/-bucket. Special cases of OGAR Classsurrealdb-core::catalog::TableDefinition via Sprint C16b new_for_ddl + with_* builders. No collision.
  • §10.3 — knowable_from meet-point pin. The substrate's four interlaced frames (lance/surrealql/ractor/thinking) deinterlace through lance-graph-planner::temporal::classify. The SurrealQL frame's knowable_from is sourced by ogar-adapter-surrealql (queue Sprint 3: Action vocab (ActionDef + ActionInvocation) + ogar-adapter + SPO+TeKaMoLo emission #3) and consumed by temporal::classify. Authoritative OGAR-side pin — should mirror to bardioc/CROSS_SESSION_COORDINATION.md.
  • §10.4 — producer queue ordering: this PR → ogar-from-elixir scaffold → ogar-adapter-surrealqllance-bind.
  • §11 (renumbered from §10) — Cross-references extended with ruff fork, nexgen, surrealdb fork, temporal-deinterlacing pointers.

Why now

Prevents three collisions:

  1. Naming: ogar-from-ruby vs ruff_ruby_spo reading as duplication when they're complementary.
  2. Scope: nexgen's op-surreal-ast reading as "already did SurrealQL" when it's OP-specific that OGAR generalizes.
  3. Ownership: nothing previously pinned who sources knowable_from — without the pin, two consumers could dual-source it.

Out of scope

No IR changes; no new crate scaffolds (those are queue items #2 and #3); no changes to bardioc's coord doc (runtime-session-owned; §10.3 documents what to mirror, the mirror is theirs to apply).

https://claude.ai/code/session_01PBTGaPCSnnt6u3pjXpbLwY

…om pin

Three additions to the OpenProject transcoding doc following discovery
of in-flight work in AdaWorldAPI/ruff and AdaWorldAPI/openproject-nexgen-rs:

- §10.1: name the two complementary arms (narrow SPO via
  ruff_spo_triplet + ruff_ruby_spo scaffold; wide OGAR via this doc /
  ogar-from-ruby). One AST parse fills both; complementary, not competing.
- §10.2: nexgen op-surreal-ast (C16a) / op-codegen-projection (C15)
  convergence as special cases of OGAR Class -> catalog::TableDefinition
  via Sprint C16b new_for_ddl + with_* builders. No collision.
- §10.3: durable interface pin for knowable_from meet-point between
  ogar-adapter-surrealql (OGAR, queued) and lance-graph-planner::
  temporal::classify (runtime session, in flight). Authoritative
  OGAR-side source until bardioc/CROSS_SESSION_COORDINATION.md mirrors.
- §10.4: producer queue ordering (this PR -> ogar-from-elixir scaffold
  -> ogar-adapter-surrealql -> lance-bind boundary).
- §11: cross-references extended with ruff fork, nexgen, surrealdb
  fork, and temporal-deinterlacing links.

Renumbered old §10 Cross-references to §11. Pure docs; no IR change.

https://claude.ai/code/session_01PBTGaPCSnnt6u3pjXpbLwY
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.

1 participant