Why: Generative UI U2 host side - owner-isolated surface storage (revision CAS), default-off activation ledger with epoch semantics, single-choke-point validation service with event recovery, optional SurfaceHost extension capability (EXT-17, SurfaceVersion 2.8.0-experimental), and direct API sharing the same guard.
Evidence: go build/vet clean; full go test ./... (SQLite) passes; surface store tests pass under AGENT_PG_TEST_DSN (PG); surface.txt regenerated via AST snapshot test; pins agent-system-core to 452daf3 (Core PR #25).
Impact: Additive migration v22; existing endpoints and plugin_grants untouched. U3+ out of scope.
Why: Generative UI U2 host side - owner-isolated surface storage (revision CAS), default-off activation ledger with epoch semantics, single-choke-point validation service with event recovery, optional SurfaceHost extension capability (EXT-17, SurfaceVersion 2.8.0-experimental), and direct API sharing the same guard.
Evidence: go build/vet clean; full go test ./... (SQLite) passes; surface store tests pass under AGENT_PG_TEST_DSN (PG); surface.txt regenerated via AST snapshot test; pins agent-system-core to 452daf3 (Core PR #25).
Impact: Additive migration v22; existing endpoints and plugin_grants untouched. U3+ out of scope.
Refs: Documents proposal r2 U2; Core PR #25; UI #40; Frontend #51; Dev task feature/generative-ui-u2
Why: Generative UI proposal U2 needs the host side of the contract:
owner-isolated surface storage with revision CAS, an execution-level
enable/disable ledger (default-off, epoch bumped on every transition so
in-flight submits after a disable are rejected), a single-choke-point
service that validates specs (strict decode + catalog rules) before
saving, event publish with pending recovery, the optional SurfaceHost
extension capability, and direct API endpoints that share the same
guard (no bypass by entrance).
Evidence: go build/vet clean; full go test ./... passes (SQLite);
surface store tests also pass under AGENT_PG_TEST_DSN (PostgreSQL);
surface.txt regenerated via the AST snapshot test.
Impact: Additive migration v22 (new tables only); existing endpoints and
plugin_grants semantics untouched; old consumers unaffected. U3+ (data
binding, actions, frontend) deliberately out of scope.
Refs: Documents proposal 2026-10-10-generative-ui-plugin.md (r2 U2);
Core PR #25; Dev task feature/generative-ui-u2
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Why: Generative UI U2 host side - owner-isolated surface storage (revision CAS), default-off activation ledger with epoch semantics, single-choke-point validation service with event recovery, optional SurfaceHost extension capability (EXT-17, SurfaceVersion 2.8.0-experimental), and direct API sharing the same guard.
Evidence: go build/vet clean; full go test ./... (SQLite) passes; surface store tests pass under AGENT_PG_TEST_DSN (PG); surface.txt regenerated via AST snapshot test; pins agent-system-core to 452daf3 (Core PR #25).
Impact: Additive migration v22; existing endpoints and plugin_grants untouched. U3+ out of scope.
Refs: Documents proposal r2 U2; Core PR #25; UI #40; Frontend #51; Dev task feature/generative-ui-u2