/** * @cocottetech/surface-adapter-contracts * * The canonical, framework-free contract every surface specialist (bookings-*, * content-*) and every adapter action conforms to. Defines: * - the action contract (`SurfaceAdapterAction`, `PrecheckResult`, gates), * - the per-invocation `AdapterContext` (userId/orgId, surface session, * platform.api client, blocklist accessor, audit writer, logger), * - the closed `ActionVerb` set + `SurfaceKind` mirror, * - the data-driven action registry (`ActionDescriptor` + `ActionRegistry`), * - the `agent_actions` audit-write contract, and * - the deterministic K-gate safety functions. * * See `_engineering-surface-adapter-container.md` (Layer 6) and * `K-safety-blocklist.brief.md` for the design authority behind these types. */ // Surfaces + verbs export { type SurfaceKind, SURFACE_KINDS, isSurfaceKind, } from './surface-kind.js'; export { type ActionVerb, ACTION_VERBS, isActionVerb, } from './action-verb.js'; // Action contract export { type SurfaceAdapterAction, type PrecheckResult, type GateRejection, precheckResult, } from './action.js'; // Execution context + the abstractions it carries export { type AdapterContext, type PrecheckContext, type SurfaceSession, } from './context.js'; export { type PlatformApiClient, type AdapterLogger, } from './platform-api.js'; export { type BlocklistAccessor, type BlocklistEntry, type BlocklistKind, } from './blocklist.js'; export { type AgentActionsClient, type AgentActionWrite, type AgentActionRef, type ActionStakes, } from './audit.js'; // Data-driven registry export { type ActionDescriptor, type ActionModule, ActionRegistry, DuplicateActionError, isActionModule, } from './registry.js'; // Deterministic safety gates (brief K) export { type BumpLocation, gateK1ProspectBlocklist, gateK3cGovtName, gateK3fAccommodationName, gateK3fBumpPrecision, } from './safety/k-gate.js';