feat(workspaces): connectWorkspace use case with audit
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
This commit is contained in:
@@ -13,8 +13,15 @@ import { defineFeature } from "@repo/core-shared/conformance";
|
||||
*/
|
||||
export const workspacesManifest = defineFeature({
|
||||
name: "workspaces",
|
||||
requiredCores: [],
|
||||
requiredCores: ["audit"],
|
||||
useCases: {
|
||||
connectWorkspace: {
|
||||
mutates: true,
|
||||
audits: ["workspace-connected"],
|
||||
publishes: [],
|
||||
consumes: [],
|
||||
analyticsEvents: [],
|
||||
},
|
||||
getWorkspace: {
|
||||
mutates: false,
|
||||
audits: [],
|
||||
|
||||
Reference in New Issue
Block a user