Manifest-first: connectWorkspace declared mutates:true with the workspace-connected audit event, requiredCores gains audit. Workspace entity gains gitUrl + persisted status enum (created/connecting/ready/ error). Input takes name + git URL + PAT; the output schema is the credential-free workspace entity, so the PAT can never round-trip. Audit emission asserted with RecordingAuditLog; binders wire the use case through wireUseCase with the __audited brand, and web-next bindAll now binds core-audit (payload+stdout sinks in production, stdout in dev-seed) so boot conformance passes in both modes. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016j8z4VHjedXDTjEDNg7qHK
15 lines
564 B
TypeScript
15 lines
564 B
TypeScript
export const WORKSPACES_SYMBOLS = {
|
|
IWorkspaceRepository: Symbol.for("workspaces:IWorkspaceRepository"),
|
|
// Use cases
|
|
IConnectWorkspaceUseCase: Symbol.for("workspaces:IConnectWorkspaceUseCase"),
|
|
IGetWorkspaceUseCase: Symbol.for("workspaces:IGetWorkspaceUseCase"),
|
|
// Controllers
|
|
IConnectWorkspaceController: Symbol.for(
|
|
"workspaces:IConnectWorkspaceController",
|
|
),
|
|
IGetWorkspaceController: Symbol.for("workspaces:IGetWorkspaceController"),
|
|
// <gen:event-handler-symbols>
|
|
// <gen:job-symbols>
|
|
// <gen:realtime-handler-symbols>
|
|
} as const;
|