Skip to content

Klickwege live-edge landing: a2ui KlickwegEdge → the active-record graph (V3 substrate seam, design pass needed) #208

Description

@AdaWorldAPI

⚠ Council correction (2026-07-14 — added on top; the body below is left for the trail)

A 5+3 falsification council audited this issue. Two things in the original body were WRONG and are corrected here; readers should trust THIS section over the body below:

  1. The specific field mapping was invented. "from_key → object_instance, ordinal → action_def, subject = User" does not hold: ordinal is a u32 array index while ActionInvocation.action_def is a String identity (type mismatch), and the only real constructor (submit_to_invocation, ogar-from-schema/src/action_ws.rs:308) hardcodes subject = ActionSubject::System. What IS true: ogar_vocab::ActionInvocation (lib.rs:508, object_instance field) is the landing TYPE, with live SPO emission (ogar-emitter::emit_action_invocation, lib.rs:774). The lowering from a UI KlickwegEdge to it is undesigned — that is the work.
  2. action_ws is NOT the UI-click path. It is the arago/HIRO automation surface (SubmitActionCapabilityExecutor impls NativeCommandExecutor/SshExecutor, shell/SSH capability execution). Do not route a2ui action-fires through it by assumption.

Authoritative design pointer (was missing): OGAR docs/ACTIONDEF-VALUE-DISPATCH-PROPOSAL.md already specifies where ActionDef value dispatch lives (a value-reproducing interpreter over a populated ActionDef behind a consumer seam). Any live-edge → invocation design must reconcile with that doc, not re-invent it.

The real, reframed gap (what this issue should track):

  • (a) the lowering: a UI KlickwegEdgeActionInvocation (the correct subject reading for a human click; ordinalaction_def identity resolution, not a raw index);
  • (b) the navigates_to relationship: screen-jump edges vs. the existing nav_witnessed Klickwege plane (ogar-emitter/src/do_adapter.rs:38) and the action-fire landing — navigates_to is not a wholly unhomed concept, only an unwired relationship;
  • (c) the ownership gate (still open): which mailbox owns a desktop session's edge stream; how an out-of-tree producer (a2ui-server) crosses the membrane (V3 write-on-behalf, no free-standing sink).

Full receipts: MedCare-rs E-MEDCARE-30 + AGENT_LOG (council run); the contract::action shape-parity-fuse hazard is tracked separately (linked issue).


(original body, retained for the correction trail — read through the section above)

The seam

The a2ui-rs arc produces live navigation/action events: DesktopSession emits KlickwegEdge { from_key, class_id, ordinal, predicate }, drains via take_klickwege(). A click IS a navigates_to/ActionInvocation edge — zero new vocabulary. Nothing receives them yet. This is the a2ui arc's last unbuilt plateau.

Correction trail

Supersedes lance-graph #691 (mis-homed at the storage/query layer — OGAR is the V3 substrate; Lance persistence is calcification, not an ingest API). The mapping/action_ws specifics in the first draft of THIS issue were then themselves falsified by the council above — the durable content is the reframed gap (a)/(b)/(c) and the ACTIONDEF-VALUE-DISPATCH-PROPOSAL.md pointer.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions