Skip to content

guard: simulate, analyzers, policy, identity checkpoint #139

Description

@mfw78

Problem. Doc 09 step 4 / ADR-0011 (PR #132): one egress guard for intent submissions, EIP-712 signing, and transaction signing. None of it exists, and the identity backend it checkpoints is still a stub.

Scope. The simulate host primitive with a pluggable backend seam (local revm over provider-pool state first; a remote backend is explicit and consent-surfaced). Fact assembly producing typed bundles over nexum:value-flow (decoded payload, balance diffs, approvals, context). The analyzer component kind (query-module lineage; a pure fact-fed default tier, granted chain and scoped-http extras behind hard consent copy, deadline via epoch). The policy engine (binding verdicts with per-event override; authorisation-class routing, host-signed full pipeline versus pre-authorised audit-plus-advisory; fail-open/closed per profile). The identity-boundary checkpoint decoding EIP-712 and transactions. The audit log. The guard reasons over the portable intent and value-flow vocabulary only; it has no venue knowledge.

Dependencies. Intent core (#137) for the vocabulary. #52 (real identity backend, homed here; nothing to checkpoint until it is real). M0 #91/#92/#93 (the embedding builder, add-on, and handle surface is where verdicts and consent hooks reach a wallet embedder). Absorbs #55: the analyzer world is the query-module world's shipping consumer.

Notes. Guard sequenced after the intent core by owner decision (wallet embedding is design-ahead, not near-term). GitHub files this under milestone M5.


Next-train plan

Current state. None of the guard exists; the identity backend it checkpoints (#52) is a stub, and the query-module world (the analyzer's lineage) is authored but not bindgen'd. Children below are to be filed as native sub-issues once #137 lands the vocabulary.

Children (ordered):

Blocked by: #137. Gated by: #52.

Metadata

Metadata

Assignees

No one assigned

    Labels

    blockedCan't proceed. Waiting on something.component/identitykeystore-backed signing backendcomponent/lifecyclemodule FSM: restart policy, poison-pill, resource enforcementepicTracks a larger initiative.

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions