@lucern/contracts 0.3.0-alpha.12 → 0.3.0-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/auth-context.contract.js +13 -1
- package/dist/auth-context.contract.js.map +1 -1
- package/dist/auth-session.contract.js +13 -1
- package/dist/auth-session.contract.js.map +1 -1
- package/dist/auth.contract.d.ts +1 -1
- package/dist/auth.contract.js +13 -1
- package/dist/auth.contract.js.map +1 -1
- package/dist/component-boundary.contract.js +1 -0
- package/dist/component-boundary.contract.js.map +1 -1
- package/dist/function-registry/beliefs.d.ts +10 -10
- package/dist/function-registry/beliefs.js +53 -2
- package/dist/function-registry/beliefs.js.map +1 -1
- package/dist/function-registry/coding.d.ts +6 -6
- package/dist/function-registry/coding.js +53 -2
- package/dist/function-registry/coding.js.map +1 -1
- package/dist/function-registry/context.d.ts +3 -3
- package/dist/function-registry/context.js +53 -2
- package/dist/function-registry/context.js.map +1 -1
- package/dist/function-registry/contracts.d.ts +3 -3
- package/dist/function-registry/contracts.js +53 -2
- package/dist/function-registry/contracts.js.map +1 -1
- package/dist/function-registry/coordination.d.ts +9 -9
- package/dist/function-registry/coordination.js +53 -2
- package/dist/function-registry/coordination.js.map +1 -1
- package/dist/function-registry/edges.d.ts +6 -6
- package/dist/function-registry/edges.js +53 -2
- package/dist/function-registry/edges.js.map +1 -1
- package/dist/function-registry/evidence.d.ts +8 -8
- package/dist/function-registry/evidence.js +53 -2
- package/dist/function-registry/evidence.js.map +1 -1
- package/dist/function-registry/graph.d.ts +15 -15
- package/dist/function-registry/graph.js +53 -2
- package/dist/function-registry/graph.js.map +1 -1
- package/dist/function-registry/helpers.d.ts +2 -2
- package/dist/function-registry/helpers.js +53 -2
- package/dist/function-registry/helpers.js.map +1 -1
- package/dist/function-registry/identity.d.ts +56 -16
- package/dist/function-registry/identity.js +75 -4
- package/dist/function-registry/identity.js.map +1 -1
- package/dist/function-registry/index.d.ts +1 -1
- package/dist/function-registry/index.js +53 -2
- package/dist/function-registry/index.js.map +1 -1
- package/dist/function-registry/judgments.d.ts +2 -2
- package/dist/function-registry/judgments.js +53 -2
- package/dist/function-registry/judgments.js.map +1 -1
- package/dist/function-registry/legacy.d.ts +1 -1
- package/dist/function-registry/legacy.js +53 -2
- package/dist/function-registry/legacy.js.map +1 -1
- package/dist/function-registry/lenses.d.ts +4 -4
- package/dist/function-registry/lenses.js +53 -2
- package/dist/function-registry/lenses.js.map +1 -1
- package/dist/function-registry/manifest.d.ts +3 -3
- package/dist/function-registry/manifest.js +1 -0
- package/dist/function-registry/manifest.js.map +1 -1
- package/dist/function-registry/nodes.d.ts +8 -8
- package/dist/function-registry/nodes.js +53 -2
- package/dist/function-registry/nodes.js.map +1 -1
- package/dist/function-registry/ontologies.d.ts +11 -11
- package/dist/function-registry/ontologies.js +53 -2
- package/dist/function-registry/ontologies.js.map +1 -1
- package/dist/function-registry/pipeline.d.ts +3 -3
- package/dist/function-registry/pipeline.js +53 -2
- package/dist/function-registry/pipeline.js.map +1 -1
- package/dist/function-registry/questions.d.ts +12 -12
- package/dist/function-registry/questions.js +53 -2
- package/dist/function-registry/questions.js.map +1 -1
- package/dist/function-registry/tasks.d.ts +4 -4
- package/dist/function-registry/tasks.js +53 -2
- package/dist/function-registry/tasks.js.map +1 -1
- package/dist/function-registry/topics.d.ts +7 -7
- package/dist/function-registry/topics.js +53 -2
- package/dist/function-registry/topics.js.map +1 -1
- package/dist/function-registry/types.d.ts +2 -2
- package/dist/function-registry/worktrees.d.ts +11 -11
- package/dist/function-registry/worktrees.js +53 -2
- package/dist/function-registry/worktrees.js.map +1 -1
- package/dist/generated/convexSchemas.js +2 -1
- package/dist/generated/convexSchemas.js.map +1 -1
- package/dist/generated/infisicalRuntimeEnv.js +111 -0
- package/dist/generated/infisicalRuntimeEnv.js.map +1 -1
- package/dist/generated/schema-manifest.json +88 -3
- package/dist/generated/tableOwnership.d.ts +2 -1
- package/dist/generated/tableOwnership.js +2 -0
- package/dist/generated/tableOwnership.js.map +1 -1
- package/dist/generated/tier-expectations.json +6 -3
- package/dist/index.d.ts +2 -2
- package/dist/index.js +290 -20
- package/dist/index.js.map +1 -1
- package/dist/infisical-runtime.contract.d.ts +18 -0
- package/dist/infisical-runtime.contract.js +21 -0
- package/dist/infisical-runtime.contract.js.map +1 -1
- package/dist/manifests/infisical-runtime-manifest.d.ts +18 -0
- package/dist/manifests/infisical-runtime-manifest.js +21 -0
- package/dist/manifests/infisical-runtime-manifest.js.map +1 -1
- package/dist/manifests/tenant-client-manifest.d.ts +8 -3
- package/dist/manifests/tenant-client-manifest.js +18 -1
- package/dist/manifests/tenant-client-manifest.js.map +1 -1
- package/dist/permit-principal-projection.contract.js +2 -3
- package/dist/permit-principal-projection.contract.js.map +1 -1
- package/dist/proof-attestation.json +1 -1
- package/dist/schemas/index.js +33 -0
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/manifest.d.ts +75 -0
- package/dist/schemas/manifest.js +33 -0
- package/dist/schemas/manifest.js.map +1 -1
- package/dist/schemas/tables/controlPlane/accessControl.js +3 -0
- package/dist/schemas/tables/controlPlane/accessControl.js.map +1 -1
- package/dist/schemas/tables/kernel/events.d.ts +21 -0
- package/dist/schemas/tables/kernel/events.js +43 -0
- package/dist/schemas/tables/kernel/events.js.map +1 -0
- package/dist/{sdk-tools.contract-BNklQDfB.d.ts → sdk-tools.contract-CKmSsrZ2.d.ts} +1 -1
- package/dist/sdk-tools.contract.d.ts +2 -2
- package/dist/sdk-tools.contract.js +45 -1
- package/dist/sdk-tools.contract.js.map +1 -1
- package/dist/tenant-bootstrap-seed.contract.d.ts +22 -2
- package/dist/tenant-bootstrap-seed.contract.js +15 -2
- package/dist/tenant-bootstrap-seed.contract.js.map +1 -1
- package/dist/tenant-bootstrap-seed.defaults.d.ts +1 -1
- package/dist/tenant-bootstrap-seed.defaults.js +30 -12
- package/dist/tenant-bootstrap-seed.defaults.js.map +1 -1
- package/dist/tenant-client.contract.d.ts +8 -3
- package/dist/tenant-client.contract.js +18 -1
- package/dist/tenant-client.contract.js.map +1 -1
- package/dist/{tool-contracts-BevD9Ho2.d.ts → tool-contracts-C_xvM9q2.d.ts} +4 -2
- package/dist/tool-contracts.d.ts +1 -1
- package/dist/tool-contracts.js +46 -2
- package/dist/tool-contracts.js.map +1 -1
- package/package.json +1 -1
|
@@ -168,7 +168,10 @@ var permitPrincipalAliases = defineTable({
|
|
|
168
168
|
}),
|
|
169
169
|
indices: [
|
|
170
170
|
{ kind: "index", name: "by_principalId", columns: ["principalId"] },
|
|
171
|
+
{ kind: "index", name: "by_provider_subject", columns: ["provider", "providerSubjectId"] },
|
|
172
|
+
{ kind: "index", name: "by_provider_project_subject", columns: ["provider", "providerProjectId", "providerSubjectId"] },
|
|
171
173
|
{ kind: "index", name: "by_tenant_provider_subject", columns: ["tenantId", "provider", "providerSubjectId"] },
|
|
174
|
+
{ kind: "index", name: "by_tenant_provider_project_subject", columns: ["tenantId", "provider", "providerProjectId", "providerSubjectId"] },
|
|
172
175
|
{
|
|
173
176
|
kind: "index",
|
|
174
177
|
name: "by_tenant_provider_alias",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/dsl/defineTable.ts","../../../../src/schemas/tables/controlPlane/accessControl.ts"],"names":["z"],"mappings":"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","file":"accessControl.js","sourcesContent":["import type { ZodObject, ZodRawShape } from \"zod\";\n\nexport type TableComponent = \"mc\" | \"kernel\" | \"control-plane\" | \"developer-pack\";\n\nexport type TableIndex =\n | {\n kind: \"index\";\n name: string;\n columns: readonly string[];\n }\n | {\n kind: \"search\";\n name: string;\n searchField: string;\n filterFields?: readonly string[];\n }\n | {\n kind: \"vector\";\n name: string;\n vectorField: string;\n dimensions: number;\n filterFields?: readonly string[];\n };\n\nexport type TableDeprecation = {\n since: string;\n reason: string;\n replacement?: string;\n};\n\nexport type TableContract<S extends ZodRawShape = ZodRawShape> = {\n name: string;\n component: TableComponent;\n category: string;\n shape: ZodObject<S>;\n indices: readonly TableIndex[];\n deprecated?: TableDeprecation;\n invariants?: readonly string[];\n};\n\nexport function defineTable<S extends ZodRawShape>(\n spec: TableContract<S>\n): TableContract<S> {\n return spec;\n}\n","/**\n * Schema contracts for controlPlane/accessControl.\n *\n * Mirrors:\n * - modules/control-plane/src/component/schema/domains/accessControl.ts\n */\n\nimport { z } from \"zod\";\nimport { defineTable } from \"../../../dsl.js\";\n\nconst permitActorType = z.enum([\n \"human\",\n \"agent\",\n \"service_principal\",\n \"external_stakeholder\",\n \"system\",\n]);\n\nconst permitMembershipStatus = z.enum([\n \"active\",\n \"invited\",\n \"revoked\",\n \"suspended\",\n \"disabled\",\n]);\n\nconst permitDecision = z.enum([\"allow\", \"deny\"]);\n\nconst permitAccessReviewStatus = z.enum([\n \"open\",\n \"in_progress\",\n \"approved\",\n \"denied\",\n \"expired\",\n \"cancelled\",\n]);\n\nconst permitReviewScope = z.enum([\n \"tenant\",\n \"workspace\",\n \"resource_instance\",\n \"group\",\n \"principal\",\n \"api_key\",\n \"admin_action\",\n]);\n\nconst permitRecordStatus = z.enum([\n \"queued\",\n \"inflight\",\n \"completed\",\n \"failed\",\n \"skipped\",\n \"stale\",\n]);\n\nconst permitObjectType = z.enum([\n \"resource\",\n \"role\",\n \"resource_role\",\n \"resource_relation\",\n \"tenant\",\n \"workspace\",\n \"principal\",\n \"membership\",\n \"group\",\n \"resource_instance\",\n \"relationship_tuple\",\n \"role_assignment\",\n \"attribute_binding\",\n \"policy_bundle\",\n]);\n\nconst permitOutboxOperation = z.enum([\n \"upsert\",\n \"delete\",\n \"sync\",\n \"resync\",\n \"delete_sync\",\n \"noop\",\n]);\n\nconst permitPolicyBundleStatus = z.enum([\n \"draft\",\n \"validated\",\n \"enforced\",\n \"archived\",\n]);\n\nconst permitSyncStatus = z.enum([\n \"pending\",\n \"synced\",\n \"error\",\n \"skipped\",\n]);\n\nconst permitAccessReviewSubjectType = z.enum([\n \"principal\",\n \"group\",\n \"role_assignment\",\n \"resource_instance\",\n]);\n\nconst permitAttributeType = z.enum([\n \"string\",\n \"number\",\n \"bool\",\n \"json\",\n \"time\",\n]);\n\nconst permitAttributeOperator = z.enum([\n \"eq\",\n \"neq\",\n \"in\",\n \"not_in\",\n \"gt\",\n \"gte\",\n \"lt\",\n \"lte\",\n \"contains\",\n \"not_contains\",\n \"matches\",\n]);\n\nconst permitRoleBindingTarget = z.enum([\n \"principal\",\n \"group\",\n]);\n\nexport const permitPrincipals = defineTable({\n name: \"permitPrincipals\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n principalId: z.string(),\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n principalType: permitActorType,\n status: permitMembershipStatus,\n displayName: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n updatedBy: z.string().optional(),\n lastSeenAt: z.number().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: \"index\", name: \"by_workspaceId\", columns: [\"workspaceId\"] },\n { kind: \"index\", name: \"by_tenant_principalId\", columns: [\"tenantId\", \"principalId\"] },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n {\n kind: \"index\",\n name: \"by_tenant_principalType_status\",\n columns: [\"tenantId\", \"principalType\", \"status\"],\n },\n ],\n});\n\nexport const permitPrincipalAliases = defineTable({\n name: \"permitPrincipalAliases\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n principalId: z.string(),\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n provider: z.string(),\n providerSubjectId: z.string(),\n providerProjectId: z.string().optional(),\n alias: z.string(),\n aliasKind: z.string(),\n status: permitMembershipStatus,\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n revokedBy: z.string().optional(),\n revokedAt: z.number().optional(),\n updatedBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_principalId\", columns: [\"principalId\"] },\n { kind: \"index\", name: \"by_tenant_provider_subject\", columns: [\"tenantId\", \"provider\", \"providerSubjectId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_provider_alias\",\n columns: [\"tenantId\", \"provider\", \"alias\"],\n },\n { kind: \"index\", name: \"by_tenant_alias\", columns: [\"tenantId\", \"alias\"] },\n {\n kind: \"index\",\n name: \"by_tenant_provider_status\",\n columns: [\"tenantId\", \"provider\", \"status\"],\n },\n ],\n});\n\nexport const permitGroups = defineTable({\n name: \"permitGroups\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n groupId: z.string(),\n groupKey: z.string(),\n groupName: z.string(),\n groupType: z.enum([\"tenant\", \"workspace\", \"external\", \"system\", \"dynamic\"]),\n status: permitMembershipStatus,\n description: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n updatedBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: \"index\", name: \"by_workspaceId\", columns: [\"workspaceId\"] },\n { kind: \"index\", name: \"by_tenant_groupId\", columns: [\"tenantId\", \"groupId\"] },\n { kind: \"index\", name: \"by_tenant_groupKey\", columns: [\"tenantId\", \"groupKey\"] },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n ],\n});\n\nexport const permitGroupMemberships = defineTable({\n name: \"permitGroupMemberships\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n groupId: z.string(),\n memberType: z.enum([\"principal\", \"group\"]),\n memberId: z.string(),\n principalId: z.string().optional(),\n childGroupId: z.string().optional(),\n status: permitMembershipStatus,\n addedBy: z.string().optional(),\n revokedBy: z.string().optional(),\n expiresAt: z.number().optional(),\n revocationReason: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n updatedBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenant_principal\", columns: [\"tenantId\", \"principalId\"] },\n { kind: \"index\", name: \"by_tenant_member\", columns: [\"tenantId\", \"memberType\", \"memberId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_member_group\",\n columns: [\"tenantId\", \"memberType\", \"memberId\", \"groupId\"],\n },\n { kind: \"index\", name: \"by_tenant_group\", columns: [\"tenantId\", \"groupId\"] },\n { kind: \"index\", name: \"by_member_group\", columns: [\"memberType\", \"memberId\", \"groupId\"] },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n {\n kind: \"index\",\n name: \"by_workspace_principal\",\n columns: [\"workspaceId\", \"principalId\"],\n },\n ],\n});\n\nexport const permitResourceInstances = defineTable({\n name: \"permitResourceInstances\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n resourceType: z.string(),\n resourceKey: z.string(),\n resourceId: z.string(),\n status: z.enum([\"active\", \"deleted\", \"archived\"]),\n attributes: z.record(z.any()).optional(),\n ownerPrincipalId: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n updatedBy: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n {\n kind: \"index\",\n name: \"by_tenant_resource_type\",\n columns: [\"tenantId\", \"resourceType\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_resource_key\",\n columns: [\"tenantId\", \"resourceType\", \"resourceKey\"],\n },\n { kind: \"index\", name: \"by_workspaceId\", columns: [\"workspaceId\"] },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n {\n kind: \"index\",\n name: \"by_tenant_status\",\n columns: [\"tenantId\", \"status\"],\n },\n {\n kind: \"index\",\n name: \"by_ownerPrincipalId\",\n columns: [\"ownerPrincipalId\"],\n },\n ],\n});\n\nexport const permitRoleAssignments = defineTable({\n name: \"permitRoleAssignments\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n role: z.string(),\n targetType: permitRoleBindingTarget,\n targetId: z.string(),\n resourceType: z.string(),\n resourceKey: z.string(),\n resourceInstanceId: z.string().optional(),\n status: permitMembershipStatus,\n expiresAt: z.number().optional(),\n attributes: z.record(z.any()).optional(),\n grantedBy: z.string().optional(),\n updatedBy: z.string().optional(),\n revokedBy: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n {\n kind: \"index\",\n name: \"by_tenant_target\",\n columns: [\"tenantId\", \"targetType\", \"targetId\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_resource\",\n columns: [\"tenantId\", \"resourceType\", \"resourceKey\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_role\",\n columns: [\"tenantId\", \"role\", \"status\"],\n },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n {\n kind: \"index\",\n name: \"by_workspace_resource\",\n columns: [\"workspaceId\", \"resourceType\", \"resourceKey\"],\n },\n ],\n});\n\nexport const permitRelationshipTuples = defineTable({\n name: \"permitRelationshipTuples\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n relation: z.string(),\n subject: z.string(),\n object: z.string(),\n resourceType: z.string().optional(),\n resourceKey: z.string().optional(),\n status: permitRecordStatus,\n attributes: z.record(z.any()).optional(),\n createdBy: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n lastSeenAt: z.number().optional(),\n updatedBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenant_subject\", columns: [\"tenantId\", \"subject\"] },\n { kind: \"index\", name: \"by_tenant_object\", columns: [\"tenantId\", \"object\"] },\n { kind: \"index\", name: \"by_tenant_relation\", columns: [\"tenantId\", \"relation\"] },\n {\n kind: \"index\",\n name: \"by_tenant_relation_subject\",\n columns: [\"tenantId\", \"relation\", \"subject\"],\n },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n ],\n});\n\nexport const permitAttributeBindings = defineTable({\n name: \"permitAttributeBindings\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n targetType: permitRoleBindingTarget,\n targetId: z.string(),\n attributeName: z.string(),\n attributeType: permitAttributeType,\n attributeOperator: permitAttributeOperator,\n attributeValue: z.any(),\n status: permitRecordStatus,\n source: z.string().optional(),\n sourceRef: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n createdBy: z.string(),\n updatedBy: z.string().optional(),\n expiresAt: z.number().optional(),\n }),\n indices: [\n {\n kind: \"index\",\n name: \"by_tenant_target\",\n columns: [\"tenantId\", \"targetType\", \"targetId\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_target_attribute\",\n columns: [\"tenantId\", \"targetType\", \"targetId\", \"attributeName\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_name\",\n columns: [\"tenantId\", \"attributeName\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_status\",\n columns: [\"tenantId\", \"status\"],\n },\n ],\n});\n\nexport const permitPolicyBundles = defineTable({\n name: \"permitPolicyBundles\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n bundleKey: z.string(),\n version: z.number(),\n status: permitPolicyBundleStatus,\n policyHash: z.string().optional(),\n policyPayload: z.record(z.any()),\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n reviewedBy: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n retiredAt: z.number().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: \"index\", name: \"by_workspaceId\", columns: [\"workspaceId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_bundleKey\",\n columns: [\"tenantId\", \"bundleKey\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_bundle_version\",\n columns: [\"tenantId\", \"bundleKey\", \"version\"],\n },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n ],\n});\n\nexport const permitProjectionOutbox = defineTable({\n name: \"permitProjectionOutbox\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n syncKey: z.string(),\n objectType: permitObjectType,\n objectId: z.string(),\n operation: permitOutboxOperation,\n payload: z.record(z.any()),\n status: permitRecordStatus,\n attemptCount: z.number(),\n nextAttemptAt: z.number().optional(),\n lastError: z.string().optional(),\n tenantId: z.string().optional(),\n workspaceId: z.optional(z.string()),\n principalId: z.string().optional(),\n permitTenantKey: z.string().optional(),\n permitResourceType: z.string().optional(),\n permitResourceKey: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n lastHandledAt: z.number().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_syncKey\", columns: [\"syncKey\"] },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n { kind: \"index\", name: \"by_tenantId\", columns: [\"tenantId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_status\",\n columns: [\"tenantId\", \"status\"],\n },\n {\n kind: \"index\",\n name: \"by_objectType\",\n columns: [\"objectType\", \"status\"],\n },\n ],\n});\n\nexport const tenantPermitSyncStates = defineTable({\n name: \"tenantPermitSyncStates\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n syncKey: z.string(),\n objectType: permitObjectType,\n objectId: z.string(),\n tenantId: z.string().optional(),\n workspaceId: z.string().optional(),\n principalId: z.string().optional(),\n permitTenantKey: z.string().optional(),\n permitResourceType: z.string().optional(),\n permitResourceKey: z.string().optional(),\n desiredPayload: z.record(z.any()),\n lastAppliedPayloadHash: z.string().optional(),\n status: permitSyncStatus,\n attemptCount: z.number(),\n lastError: z.string().optional(),\n nextAttemptAt: z.number().optional(),\n lastSyncedAt: z.number().optional(),\n createdBy: z.string(),\n updatedBy: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n { kind: \"index\", name: \"by_syncKey\", columns: [\"syncKey\"] },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n {\n kind: \"index\",\n name: \"by_tenant_status\",\n columns: [\"tenantId\", \"status\"],\n },\n {\n kind: \"index\",\n name: \"by_workspace_status\",\n columns: [\"workspaceId\", \"status\"],\n },\n {\n kind: \"index\",\n name: \"by_principal_status\",\n columns: [\"principalId\", \"status\"],\n },\n ],\n});\n\nexport const permitPolicyDecisionReceipts = defineTable({\n name: \"permitPolicyDecisionReceipts\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string().optional(),\n workspaceId: z.string().optional(),\n principalId: z.string(),\n subjectType: permitAccessReviewSubjectType.optional(),\n subjectId: z.string().optional(),\n resourceType: z.string(),\n resourceId: z.string(),\n action: z.string(),\n decision: permitDecision,\n reasonCode: z.string(),\n policyBundleId: z.string().optional(),\n policyVersion: z.string(),\n traceId: z.string().optional(),\n requestId: z.string().optional(),\n audienceMode: z.string().optional(),\n audienceKey: z.string().optional(),\n audienceClass: z.enum([\"internal\", \"restricted_external\", \"public\"]).optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n expiresAt: z.number().optional(),\n createdBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_principal_createdAt\", columns: [\"principalId\", \"createdAt\"] },\n { kind: \"index\", name: \"by_tenant_createdAt\", columns: [\"tenantId\", \"createdAt\"] },\n { kind: \"index\", name: \"by_resource\", columns: [\"resourceType\", \"resourceId\"] },\n { kind: \"index\", name: \"by_decision_createdAt\", columns: [\"decision\", \"createdAt\"] },\n { kind: \"index\", name: \"by_traceId\", columns: [\"traceId\"] },\n { kind: \"index\", name: \"by_action\", columns: [\"action\"] },\n ],\n});\n\nexport const permitAccessReviews = defineTable({\n name: \"permitAccessReviews\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n reviewKey: z.string(),\n scope: permitReviewScope,\n status: permitAccessReviewStatus,\n subjectType: permitAccessReviewSubjectType,\n subjectId: z.string(),\n resourceType: z.string().optional(),\n resourceKey: z.string().optional(),\n outcome: z.enum([\"allow\", \"deny\"]).optional(),\n requestedBy: z.string(),\n reviewedBy: z.string().optional(),\n requestedAt: z.number(),\n reviewedAt: z.number().optional(),\n dueAt: z.number().optional(),\n justification: z.string().optional(),\n rationale: z.string().optional(),\n policyBundleId: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n { kind: \"index\", name: \"by_tenant_reviewKey\", columns: [\"tenantId\", \"reviewKey\"] },\n { kind: \"index\", name: \"by_subject\", columns: [\"subjectType\", \"subjectId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_subject\",\n columns: [\"tenantId\", \"subjectType\", \"subjectId\"],\n },\n { kind: \"index\", name: \"by_outcome\", columns: [\"outcome\"] },\n {\n kind: \"index\",\n name: \"by_workspace_status\",\n columns: [\"workspaceId\", \"status\"],\n },\n ],\n});\n\nexport const permitAccessReviewItems = defineTable({\n name: \"permitAccessReviewItems\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n reviewKey: z.string(),\n itemKey: z.string(),\n tenantId: z.string(),\n workspaceId: z.string().optional(),\n subjectType: permitAccessReviewSubjectType,\n subjectId: z.string(),\n resourceType: z.string().optional(),\n resourceKey: z.string().optional(),\n role: z.string().optional(),\n relation: z.string().optional(),\n status: z.enum([\"open\", \"approved\", \"revoked\", \"changed\", \"deferred\"]),\n reviewerId: z.string().optional(),\n decisionAt: z.number().optional(),\n rationale: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n { kind: \"index\", name: \"by_reviewKey\", columns: [\"reviewKey\"] },\n { kind: \"index\", name: \"by_tenant_reviewKey\", columns: [\"tenantId\", \"reviewKey\"] },\n { kind: \"index\", name: \"by_tenant_itemKey\", columns: [\"tenantId\", \"itemKey\"] },\n { kind: \"index\", name: \"by_subject\", columns: [\"subjectType\", \"subjectId\"] },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n ],\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/dsl/defineTable.ts","../../../../src/schemas/tables/controlPlane/accessControl.ts"],"names":["z"],"mappings":"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","file":"accessControl.js","sourcesContent":["import type { ZodObject, ZodRawShape } from \"zod\";\n\nexport type TableComponent = \"mc\" | \"kernel\" | \"control-plane\" | \"developer-pack\";\n\nexport type TableIndex =\n | {\n kind: \"index\";\n name: string;\n columns: readonly string[];\n }\n | {\n kind: \"search\";\n name: string;\n searchField: string;\n filterFields?: readonly string[];\n }\n | {\n kind: \"vector\";\n name: string;\n vectorField: string;\n dimensions: number;\n filterFields?: readonly string[];\n };\n\nexport type TableDeprecation = {\n since: string;\n reason: string;\n replacement?: string;\n};\n\nexport type TableContract<S extends ZodRawShape = ZodRawShape> = {\n name: string;\n component: TableComponent;\n category: string;\n shape: ZodObject<S>;\n indices: readonly TableIndex[];\n deprecated?: TableDeprecation;\n invariants?: readonly string[];\n};\n\nexport function defineTable<S extends ZodRawShape>(\n spec: TableContract<S>\n): TableContract<S> {\n return spec;\n}\n","/**\n * Schema contracts for controlPlane/accessControl.\n *\n * Mirrors:\n * - modules/control-plane/src/component/schema/domains/accessControl.ts\n */\n\nimport { z } from \"zod\";\nimport { defineTable } from \"../../../dsl.js\";\n\nconst permitActorType = z.enum([\n \"human\",\n \"agent\",\n \"service_principal\",\n \"external_stakeholder\",\n \"system\",\n]);\n\nconst permitMembershipStatus = z.enum([\n \"active\",\n \"invited\",\n \"revoked\",\n \"suspended\",\n \"disabled\",\n]);\n\nconst permitDecision = z.enum([\"allow\", \"deny\"]);\n\nconst permitAccessReviewStatus = z.enum([\n \"open\",\n \"in_progress\",\n \"approved\",\n \"denied\",\n \"expired\",\n \"cancelled\",\n]);\n\nconst permitReviewScope = z.enum([\n \"tenant\",\n \"workspace\",\n \"resource_instance\",\n \"group\",\n \"principal\",\n \"api_key\",\n \"admin_action\",\n]);\n\nconst permitRecordStatus = z.enum([\n \"queued\",\n \"inflight\",\n \"completed\",\n \"failed\",\n \"skipped\",\n \"stale\",\n]);\n\nconst permitObjectType = z.enum([\n \"resource\",\n \"role\",\n \"resource_role\",\n \"resource_relation\",\n \"tenant\",\n \"workspace\",\n \"principal\",\n \"membership\",\n \"group\",\n \"resource_instance\",\n \"relationship_tuple\",\n \"role_assignment\",\n \"attribute_binding\",\n \"policy_bundle\",\n]);\n\nconst permitOutboxOperation = z.enum([\n \"upsert\",\n \"delete\",\n \"sync\",\n \"resync\",\n \"delete_sync\",\n \"noop\",\n]);\n\nconst permitPolicyBundleStatus = z.enum([\n \"draft\",\n \"validated\",\n \"enforced\",\n \"archived\",\n]);\n\nconst permitSyncStatus = z.enum([\n \"pending\",\n \"synced\",\n \"error\",\n \"skipped\",\n]);\n\nconst permitAccessReviewSubjectType = z.enum([\n \"principal\",\n \"group\",\n \"role_assignment\",\n \"resource_instance\",\n]);\n\nconst permitAttributeType = z.enum([\n \"string\",\n \"number\",\n \"bool\",\n \"json\",\n \"time\",\n]);\n\nconst permitAttributeOperator = z.enum([\n \"eq\",\n \"neq\",\n \"in\",\n \"not_in\",\n \"gt\",\n \"gte\",\n \"lt\",\n \"lte\",\n \"contains\",\n \"not_contains\",\n \"matches\",\n]);\n\nconst permitRoleBindingTarget = z.enum([\n \"principal\",\n \"group\",\n]);\n\nexport const permitPrincipals = defineTable({\n name: \"permitPrincipals\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n principalId: z.string(),\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n principalType: permitActorType,\n status: permitMembershipStatus,\n displayName: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n updatedBy: z.string().optional(),\n lastSeenAt: z.number().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: \"index\", name: \"by_workspaceId\", columns: [\"workspaceId\"] },\n { kind: \"index\", name: \"by_tenant_principalId\", columns: [\"tenantId\", \"principalId\"] },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n {\n kind: \"index\",\n name: \"by_tenant_principalType_status\",\n columns: [\"tenantId\", \"principalType\", \"status\"],\n },\n ],\n});\n\nexport const permitPrincipalAliases = defineTable({\n name: \"permitPrincipalAliases\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n principalId: z.string(),\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n provider: z.string(),\n providerSubjectId: z.string(),\n providerProjectId: z.string().optional(),\n alias: z.string(),\n aliasKind: z.string(),\n status: permitMembershipStatus,\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n revokedBy: z.string().optional(),\n revokedAt: z.number().optional(),\n updatedBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_principalId\", columns: [\"principalId\"] },\n { kind: \"index\", name: \"by_provider_subject\", columns: [\"provider\", \"providerSubjectId\"] },\n { kind: \"index\", name: \"by_provider_project_subject\", columns: [\"provider\", \"providerProjectId\", \"providerSubjectId\"] },\n { kind: \"index\", name: \"by_tenant_provider_subject\", columns: [\"tenantId\", \"provider\", \"providerSubjectId\"] },\n { kind: \"index\", name: \"by_tenant_provider_project_subject\", columns: [\"tenantId\", \"provider\", \"providerProjectId\", \"providerSubjectId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_provider_alias\",\n columns: [\"tenantId\", \"provider\", \"alias\"],\n },\n { kind: \"index\", name: \"by_tenant_alias\", columns: [\"tenantId\", \"alias\"] },\n {\n kind: \"index\",\n name: \"by_tenant_provider_status\",\n columns: [\"tenantId\", \"provider\", \"status\"],\n },\n ],\n});\n\nexport const permitGroups = defineTable({\n name: \"permitGroups\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n groupId: z.string(),\n groupKey: z.string(),\n groupName: z.string(),\n groupType: z.enum([\"tenant\", \"workspace\", \"external\", \"system\", \"dynamic\"]),\n status: permitMembershipStatus,\n description: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n updatedBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: \"index\", name: \"by_workspaceId\", columns: [\"workspaceId\"] },\n { kind: \"index\", name: \"by_tenant_groupId\", columns: [\"tenantId\", \"groupId\"] },\n { kind: \"index\", name: \"by_tenant_groupKey\", columns: [\"tenantId\", \"groupKey\"] },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n ],\n});\n\nexport const permitGroupMemberships = defineTable({\n name: \"permitGroupMemberships\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n groupId: z.string(),\n memberType: z.enum([\"principal\", \"group\"]),\n memberId: z.string(),\n principalId: z.string().optional(),\n childGroupId: z.string().optional(),\n status: permitMembershipStatus,\n addedBy: z.string().optional(),\n revokedBy: z.string().optional(),\n expiresAt: z.number().optional(),\n revocationReason: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n updatedBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenant_principal\", columns: [\"tenantId\", \"principalId\"] },\n { kind: \"index\", name: \"by_tenant_member\", columns: [\"tenantId\", \"memberType\", \"memberId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_member_group\",\n columns: [\"tenantId\", \"memberType\", \"memberId\", \"groupId\"],\n },\n { kind: \"index\", name: \"by_tenant_group\", columns: [\"tenantId\", \"groupId\"] },\n { kind: \"index\", name: \"by_member_group\", columns: [\"memberType\", \"memberId\", \"groupId\"] },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n {\n kind: \"index\",\n name: \"by_workspace_principal\",\n columns: [\"workspaceId\", \"principalId\"],\n },\n ],\n});\n\nexport const permitResourceInstances = defineTable({\n name: \"permitResourceInstances\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n resourceType: z.string(),\n resourceKey: z.string(),\n resourceId: z.string(),\n status: z.enum([\"active\", \"deleted\", \"archived\"]),\n attributes: z.record(z.any()).optional(),\n ownerPrincipalId: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n updatedBy: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n {\n kind: \"index\",\n name: \"by_tenant_resource_type\",\n columns: [\"tenantId\", \"resourceType\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_resource_key\",\n columns: [\"tenantId\", \"resourceType\", \"resourceKey\"],\n },\n { kind: \"index\", name: \"by_workspaceId\", columns: [\"workspaceId\"] },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n {\n kind: \"index\",\n name: \"by_tenant_status\",\n columns: [\"tenantId\", \"status\"],\n },\n {\n kind: \"index\",\n name: \"by_ownerPrincipalId\",\n columns: [\"ownerPrincipalId\"],\n },\n ],\n});\n\nexport const permitRoleAssignments = defineTable({\n name: \"permitRoleAssignments\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n role: z.string(),\n targetType: permitRoleBindingTarget,\n targetId: z.string(),\n resourceType: z.string(),\n resourceKey: z.string(),\n resourceInstanceId: z.string().optional(),\n status: permitMembershipStatus,\n expiresAt: z.number().optional(),\n attributes: z.record(z.any()).optional(),\n grantedBy: z.string().optional(),\n updatedBy: z.string().optional(),\n revokedBy: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n {\n kind: \"index\",\n name: \"by_tenant_target\",\n columns: [\"tenantId\", \"targetType\", \"targetId\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_resource\",\n columns: [\"tenantId\", \"resourceType\", \"resourceKey\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_role\",\n columns: [\"tenantId\", \"role\", \"status\"],\n },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n {\n kind: \"index\",\n name: \"by_workspace_resource\",\n columns: [\"workspaceId\", \"resourceType\", \"resourceKey\"],\n },\n ],\n});\n\nexport const permitRelationshipTuples = defineTable({\n name: \"permitRelationshipTuples\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n relation: z.string(),\n subject: z.string(),\n object: z.string(),\n resourceType: z.string().optional(),\n resourceKey: z.string().optional(),\n status: permitRecordStatus,\n attributes: z.record(z.any()).optional(),\n createdBy: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n lastSeenAt: z.number().optional(),\n updatedBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenant_subject\", columns: [\"tenantId\", \"subject\"] },\n { kind: \"index\", name: \"by_tenant_object\", columns: [\"tenantId\", \"object\"] },\n { kind: \"index\", name: \"by_tenant_relation\", columns: [\"tenantId\", \"relation\"] },\n {\n kind: \"index\",\n name: \"by_tenant_relation_subject\",\n columns: [\"tenantId\", \"relation\", \"subject\"],\n },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n ],\n});\n\nexport const permitAttributeBindings = defineTable({\n name: \"permitAttributeBindings\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n targetType: permitRoleBindingTarget,\n targetId: z.string(),\n attributeName: z.string(),\n attributeType: permitAttributeType,\n attributeOperator: permitAttributeOperator,\n attributeValue: z.any(),\n status: permitRecordStatus,\n source: z.string().optional(),\n sourceRef: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n createdBy: z.string(),\n updatedBy: z.string().optional(),\n expiresAt: z.number().optional(),\n }),\n indices: [\n {\n kind: \"index\",\n name: \"by_tenant_target\",\n columns: [\"tenantId\", \"targetType\", \"targetId\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_target_attribute\",\n columns: [\"tenantId\", \"targetType\", \"targetId\", \"attributeName\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_name\",\n columns: [\"tenantId\", \"attributeName\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_status\",\n columns: [\"tenantId\", \"status\"],\n },\n ],\n});\n\nexport const permitPolicyBundles = defineTable({\n name: \"permitPolicyBundles\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n bundleKey: z.string(),\n version: z.number(),\n status: permitPolicyBundleStatus,\n policyHash: z.string().optional(),\n policyPayload: z.record(z.any()),\n metadata: z.record(z.any()).optional(),\n createdBy: z.string(),\n reviewedBy: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n retiredAt: z.number().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: \"index\", name: \"by_workspaceId\", columns: [\"workspaceId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_bundleKey\",\n columns: [\"tenantId\", \"bundleKey\"],\n },\n {\n kind: \"index\",\n name: \"by_tenant_bundle_version\",\n columns: [\"tenantId\", \"bundleKey\", \"version\"],\n },\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n ],\n});\n\nexport const permitProjectionOutbox = defineTable({\n name: \"permitProjectionOutbox\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n syncKey: z.string(),\n objectType: permitObjectType,\n objectId: z.string(),\n operation: permitOutboxOperation,\n payload: z.record(z.any()),\n status: permitRecordStatus,\n attemptCount: z.number(),\n nextAttemptAt: z.number().optional(),\n lastError: z.string().optional(),\n tenantId: z.string().optional(),\n workspaceId: z.optional(z.string()),\n principalId: z.string().optional(),\n permitTenantKey: z.string().optional(),\n permitResourceType: z.string().optional(),\n permitResourceKey: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n lastHandledAt: z.number().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_syncKey\", columns: [\"syncKey\"] },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n { kind: \"index\", name: \"by_tenantId\", columns: [\"tenantId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_status\",\n columns: [\"tenantId\", \"status\"],\n },\n {\n kind: \"index\",\n name: \"by_objectType\",\n columns: [\"objectType\", \"status\"],\n },\n ],\n});\n\nexport const tenantPermitSyncStates = defineTable({\n name: \"tenantPermitSyncStates\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n syncKey: z.string(),\n objectType: permitObjectType,\n objectId: z.string(),\n tenantId: z.string().optional(),\n workspaceId: z.string().optional(),\n principalId: z.string().optional(),\n permitTenantKey: z.string().optional(),\n permitResourceType: z.string().optional(),\n permitResourceKey: z.string().optional(),\n desiredPayload: z.record(z.any()),\n lastAppliedPayloadHash: z.string().optional(),\n status: permitSyncStatus,\n attemptCount: z.number(),\n lastError: z.string().optional(),\n nextAttemptAt: z.number().optional(),\n lastSyncedAt: z.number().optional(),\n createdBy: z.string(),\n updatedBy: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n { kind: \"index\", name: \"by_syncKey\", columns: [\"syncKey\"] },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n {\n kind: \"index\",\n name: \"by_tenant_status\",\n columns: [\"tenantId\", \"status\"],\n },\n {\n kind: \"index\",\n name: \"by_workspace_status\",\n columns: [\"workspaceId\", \"status\"],\n },\n {\n kind: \"index\",\n name: \"by_principal_status\",\n columns: [\"principalId\", \"status\"],\n },\n ],\n});\n\nexport const permitPolicyDecisionReceipts = defineTable({\n name: \"permitPolicyDecisionReceipts\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string().optional(),\n workspaceId: z.string().optional(),\n principalId: z.string(),\n subjectType: permitAccessReviewSubjectType.optional(),\n subjectId: z.string().optional(),\n resourceType: z.string(),\n resourceId: z.string(),\n action: z.string(),\n decision: permitDecision,\n reasonCode: z.string(),\n policyBundleId: z.string().optional(),\n policyVersion: z.string(),\n traceId: z.string().optional(),\n requestId: z.string().optional(),\n audienceMode: z.string().optional(),\n audienceKey: z.string().optional(),\n audienceClass: z.enum([\"internal\", \"restricted_external\", \"public\"]).optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n expiresAt: z.number().optional(),\n createdBy: z.string().optional(),\n }),\n indices: [\n { kind: \"index\", name: \"by_principal_createdAt\", columns: [\"principalId\", \"createdAt\"] },\n { kind: \"index\", name: \"by_tenant_createdAt\", columns: [\"tenantId\", \"createdAt\"] },\n { kind: \"index\", name: \"by_resource\", columns: [\"resourceType\", \"resourceId\"] },\n { kind: \"index\", name: \"by_decision_createdAt\", columns: [\"decision\", \"createdAt\"] },\n { kind: \"index\", name: \"by_traceId\", columns: [\"traceId\"] },\n { kind: \"index\", name: \"by_action\", columns: [\"action\"] },\n ],\n});\n\nexport const permitAccessReviews = defineTable({\n name: \"permitAccessReviews\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n tenantId: z.string(),\n workspaceId: z.optional(z.string()),\n reviewKey: z.string(),\n scope: permitReviewScope,\n status: permitAccessReviewStatus,\n subjectType: permitAccessReviewSubjectType,\n subjectId: z.string(),\n resourceType: z.string().optional(),\n resourceKey: z.string().optional(),\n outcome: z.enum([\"allow\", \"deny\"]).optional(),\n requestedBy: z.string(),\n reviewedBy: z.string().optional(),\n requestedAt: z.number(),\n reviewedAt: z.number().optional(),\n dueAt: z.number().optional(),\n justification: z.string().optional(),\n rationale: z.string().optional(),\n policyBundleId: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n { kind: \"index\", name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] },\n { kind: \"index\", name: \"by_tenant_reviewKey\", columns: [\"tenantId\", \"reviewKey\"] },\n { kind: \"index\", name: \"by_subject\", columns: [\"subjectType\", \"subjectId\"] },\n {\n kind: \"index\",\n name: \"by_tenant_subject\",\n columns: [\"tenantId\", \"subjectType\", \"subjectId\"],\n },\n { kind: \"index\", name: \"by_outcome\", columns: [\"outcome\"] },\n {\n kind: \"index\",\n name: \"by_workspace_status\",\n columns: [\"workspaceId\", \"status\"],\n },\n ],\n});\n\nexport const permitAccessReviewItems = defineTable({\n name: \"permitAccessReviewItems\",\n component: \"control-plane\",\n category: \"access-control\",\n shape: z.object({\n reviewKey: z.string(),\n itemKey: z.string(),\n tenantId: z.string(),\n workspaceId: z.string().optional(),\n subjectType: permitAccessReviewSubjectType,\n subjectId: z.string(),\n resourceType: z.string().optional(),\n resourceKey: z.string().optional(),\n role: z.string().optional(),\n relation: z.string().optional(),\n status: z.enum([\"open\", \"approved\", \"revoked\", \"changed\", \"deferred\"]),\n reviewerId: z.string().optional(),\n decisionAt: z.number().optional(),\n rationale: z.string().optional(),\n metadata: z.record(z.any()).optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n }),\n indices: [\n { kind: \"index\", name: \"by_reviewKey\", columns: [\"reviewKey\"] },\n { kind: \"index\", name: \"by_tenant_reviewKey\", columns: [\"tenantId\", \"reviewKey\"] },\n { kind: \"index\", name: \"by_tenant_itemKey\", columns: [\"tenantId\", \"itemKey\"] },\n { kind: \"index\", name: \"by_subject\", columns: [\"subjectType\", \"subjectId\"] },\n { kind: \"index\", name: \"by_status\", columns: [\"status\"] },\n ],\n});\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { T as TableContract } from '../../../defineTable-t1wr5wgn.js';
|
|
3
|
+
|
|
4
|
+
declare const domainEvents: TableContract<{
|
|
5
|
+
eventId: z.ZodString;
|
|
6
|
+
type: z.ZodString;
|
|
7
|
+
version: z.ZodString;
|
|
8
|
+
timestamp: z.ZodNumber;
|
|
9
|
+
tenantId: z.ZodOptional<z.ZodString>;
|
|
10
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
11
|
+
topicId: z.ZodString;
|
|
12
|
+
resourceId: z.ZodString;
|
|
13
|
+
resourceType: z.ZodString;
|
|
14
|
+
actorId: z.ZodString;
|
|
15
|
+
actorType: z.ZodEnum<["human", "agent", "service"]>;
|
|
16
|
+
data: z.ZodRecord<z.ZodString, z.ZodAny>;
|
|
17
|
+
correlationId: z.ZodOptional<z.ZodString>;
|
|
18
|
+
expiresAt: z.ZodNumber;
|
|
19
|
+
}>;
|
|
20
|
+
|
|
21
|
+
export { domainEvents };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
// src/schemas/tables/kernel/events.ts
|
|
4
|
+
|
|
5
|
+
// src/dsl/defineTable.ts
|
|
6
|
+
function defineTable(spec) {
|
|
7
|
+
return spec;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// src/schemas/tables/kernel/events.ts
|
|
11
|
+
var domainEvents = defineTable({
|
|
12
|
+
name: "domainEvents",
|
|
13
|
+
component: "kernel",
|
|
14
|
+
category: "events",
|
|
15
|
+
shape: z.object({
|
|
16
|
+
"eventId": z.string(),
|
|
17
|
+
"type": z.string(),
|
|
18
|
+
"version": z.string(),
|
|
19
|
+
"timestamp": z.number(),
|
|
20
|
+
"tenantId": z.string().optional(),
|
|
21
|
+
"workspaceId": z.string().optional(),
|
|
22
|
+
"topicId": z.string(),
|
|
23
|
+
"resourceId": z.string(),
|
|
24
|
+
"resourceType": z.string(),
|
|
25
|
+
"actorId": z.string(),
|
|
26
|
+
"actorType": z.enum(["human", "agent", "service"]),
|
|
27
|
+
"data": z.record(z.any()),
|
|
28
|
+
"correlationId": z.string().optional(),
|
|
29
|
+
"expiresAt": z.number()
|
|
30
|
+
}),
|
|
31
|
+
indices: [
|
|
32
|
+
{ kind: "index", name: "by_eventId", columns: ["eventId"] },
|
|
33
|
+
{ kind: "index", name: "by_topic_timestamp", columns: ["topicId", "timestamp"] },
|
|
34
|
+
{ kind: "index", name: "by_tenant_workspace_timestamp", columns: ["tenantId", "workspaceId", "timestamp"] },
|
|
35
|
+
{ kind: "index", name: "by_type_timestamp", columns: ["type", "timestamp"] },
|
|
36
|
+
{ kind: "index", name: "by_resource", columns: ["resourceType", "resourceId", "timestamp"] },
|
|
37
|
+
{ kind: "index", name: "by_expiresAt", columns: ["expiresAt"] }
|
|
38
|
+
]
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
export { domainEvents };
|
|
42
|
+
//# sourceMappingURL=events.js.map
|
|
43
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/dsl/defineTable.ts","../../../../src/schemas/tables/kernel/events.ts"],"names":["z"],"mappings":";;;;;AAwCO,SAAS,YACd,IAAA,EACkB;AAClB,EAAA,OAAO,IAAA;AACT;;;ACjCO,IAAM,eAAe,WAAA,CAAY;AAAA,EACtC,IAAA,EAAM,cAAA;AAAA,EACN,SAAA,EAAW,QAAA;AAAA,EACX,QAAA,EAAU,QAAA;AAAA,EACV,KAAA,EAAOA,EAAE,MAAA,CAAO;AAAA,IACd,SAAA,EAAWA,EAAE,MAAA,EAAO;AAAA,IACpB,MAAA,EAAQA,EAAE,MAAA,EAAO;AAAA,IACjB,SAAA,EAAWA,EAAE,MAAA,EAAO;AAAA,IACpB,WAAA,EAAaA,EAAE,MAAA,EAAO;AAAA,IACtB,UAAA,EAAYA,CAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,IAChC,aAAA,EAAeA,CAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,IACnC,SAAA,EAAWA,EAAE,MAAA,EAAO;AAAA,IACpB,YAAA,EAAcA,EAAE,MAAA,EAAO;AAAA,IACvB,cAAA,EAAgBA,EAAE,MAAA,EAAO;AAAA,IACzB,SAAA,EAAWA,EAAE,MAAA,EAAO;AAAA,IACpB,aAAaA,CAAAA,CAAE,IAAA,CAAK,CAAC,OAAA,EAAS,OAAA,EAAS,SAAS,CAAC,CAAA;AAAA,IACjD,MAAA,EAAQA,CAAAA,CAAE,MAAA,CAAOA,CAAAA,CAAE,KAAK,CAAA;AAAA,IACxB,eAAA,EAAiBA,CAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,IACrC,WAAA,EAAaA,EAAE,MAAA;AAAO,GACvB,CAAA;AAAA,EACD,OAAA,EAAS;AAAA,IACP,EAAE,MAAM,OAAA,EAAS,IAAA,EAAM,cAAc,OAAA,EAAS,CAAC,SAAS,CAAA,EAAE;AAAA,IAC1D,EAAE,MAAM,OAAA,EAAS,IAAA,EAAM,sBAAsB,OAAA,EAAS,CAAC,SAAA,EAAW,WAAW,CAAA,EAAE;AAAA,IAC/E,EAAE,IAAA,EAAM,OAAA,EAAS,IAAA,EAAM,+BAAA,EAAiC,SAAS,CAAC,UAAA,EAAY,aAAA,EAAe,WAAW,CAAA,EAAE;AAAA,IAC1G,EAAE,MAAM,OAAA,EAAS,IAAA,EAAM,qBAAqB,OAAA,EAAS,CAAC,MAAA,EAAQ,WAAW,CAAA,EAAE;AAAA,IAC3E,EAAE,IAAA,EAAM,OAAA,EAAS,IAAA,EAAM,aAAA,EAAe,SAAS,CAAC,cAAA,EAAgB,YAAA,EAAc,WAAW,CAAA,EAAE;AAAA,IAC3F,EAAE,MAAM,OAAA,EAAS,IAAA,EAAM,gBAAgB,OAAA,EAAS,CAAC,WAAW,CAAA;AAAE;AAElE,CAAC","file":"events.js","sourcesContent":["import type { ZodObject, ZodRawShape } from \"zod\";\n\nexport type TableComponent = \"mc\" | \"kernel\" | \"control-plane\" | \"developer-pack\";\n\nexport type TableIndex =\n | {\n kind: \"index\";\n name: string;\n columns: readonly string[];\n }\n | {\n kind: \"search\";\n name: string;\n searchField: string;\n filterFields?: readonly string[];\n }\n | {\n kind: \"vector\";\n name: string;\n vectorField: string;\n dimensions: number;\n filterFields?: readonly string[];\n };\n\nexport type TableDeprecation = {\n since: string;\n reason: string;\n replacement?: string;\n};\n\nexport type TableContract<S extends ZodRawShape = ZodRawShape> = {\n name: string;\n component: TableComponent;\n category: string;\n shape: ZodObject<S>;\n indices: readonly TableIndex[];\n deprecated?: TableDeprecation;\n invariants?: readonly string[];\n};\n\nexport function defineTable<S extends ZodRawShape>(\n spec: TableContract<S>\n): TableContract<S> {\n return spec;\n}\n","/**\n * Schema contracts for kernel/domain events.\n *\n * Domain events are kernel audit exhaust. They let the gateway, SDK, CLI, and\n * MCP prove write activity without making task/belief writes depend on a\n * tenant-specific host table.\n */\n\nimport { z } from 'zod';\nimport { defineTable } from '../../../dsl.js';\n\nexport const domainEvents = defineTable({\n name: \"domainEvents\",\n component: \"kernel\",\n category: \"events\",\n shape: z.object({\n \"eventId\": z.string(),\n \"type\": z.string(),\n \"version\": z.string(),\n \"timestamp\": z.number(),\n \"tenantId\": z.string().optional(),\n \"workspaceId\": z.string().optional(),\n \"topicId\": z.string(),\n \"resourceId\": z.string(),\n \"resourceType\": z.string(),\n \"actorId\": z.string(),\n \"actorType\": z.enum([\"human\", \"agent\", \"service\"]),\n \"data\": z.record(z.any()),\n \"correlationId\": z.string().optional(),\n \"expiresAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_eventId\", columns: [\"eventId\"] },\n { kind: 'index', name: \"by_topic_timestamp\", columns: [\"topicId\", \"timestamp\"] },\n { kind: 'index', name: \"by_tenant_workspace_timestamp\", columns: [\"tenantId\", \"workspaceId\", \"timestamp\"] },\n { kind: 'index', name: \"by_type_timestamp\", columns: [\"type\", \"timestamp\"] },\n { kind: 'index', name: \"by_resource\", columns: [\"resourceType\", \"resourceId\", \"timestamp\"] },\n { kind: 'index', name: \"by_expiresAt\", columns: [\"expiresAt\"] }\n ],\n});\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import './tool-contracts-
|
|
2
|
-
export { A as ADD_NOTE_TO_WORKTREE, a as ADD_RESEARCH_ACTION, b as ADVANCE_WORKTREE_PHASE, c as ALL_SDK_TOOL_CONTRACTS, d as ALL_SDK_TOOL_NAMES, e as ANALYZE_BELIEF_CLUSTER_CANDIDATES, f as ANALYZE_BELIEF_CRITICALITY, g as ANALYZE_REASONING_DEPTH, C as COMPLETE_EVIDENCE_REVIEW, h as COMPLETE_HYPOTHESIS_FORMATION, i as CREATE_BELIEF_CONDITIONAL, j as CREATE_EVIDENCE_TASK, k as CREATE_SYNTHESIZED_BELIEF, D as DETECT_ANCHORING_BIAS, l as DETECT_SOURCE_CONCENTRATION, E as EXPLORE_CONNECTIONS, F as FIND_SEMANTIC_BRIDGES, m as FIND_SEMANTIC_ORPHANS, n as FIND_SOFT_CONTRADICTIONS, G as GET_BELIEFS_BY_EPISTEMIC_STATUS, o as GET_BELIEF_RELATIONSHIPS, p as GET_BELIEF_SUPPORT_CHAIN, q as GET_CAUSAL_CHAINS, r as GET_CHALLENGED_BELIEFS, t as GET_COLLECTION_CONVICTION, u as GET_CONVICTION_TREND, v as GET_DEEP_LINEAGE, w as GET_EVIDENCE_BY_METHODOLOGY, x as GET_NECESSARY_EVIDENCE, y as GET_NON_CONSENSUS_BELIEFS, z as GET_PREDICTIONS, B as GET_SURPRISE_DETECTION, H as GET_TASK_COUNTS, I as GRAPH_AWARE_SEARCH, L as LINK_BELIEF_TO_WORKTREE, J as LINK_DOCUMENT_TO_WORKTREE, K as LINK_EVIDENCE_TO_WORKTREE, M as LINK_QUESTION_TO_WORKTREE, N as LIST_TASKS, R as REFINE_WORKTREE_BELIEF, S as SDK_ONLY_TOOL_CONTRACTS, O as SDK_ONLY_TOOL_NAMES, P as START_WORKTREE, Q as SdkToolContract, T as TRACE_PROVENANCE, U as UPDATE_TASK, V as UPDATE_WORKTREE_PHASE, W as validateSdkGitSemantics } from './sdk-tools.contract-
|
|
1
|
+
import './tool-contracts-C_xvM9q2.js';
|
|
2
|
+
export { A as ADD_NOTE_TO_WORKTREE, a as ADD_RESEARCH_ACTION, b as ADVANCE_WORKTREE_PHASE, c as ALL_SDK_TOOL_CONTRACTS, d as ALL_SDK_TOOL_NAMES, e as ANALYZE_BELIEF_CLUSTER_CANDIDATES, f as ANALYZE_BELIEF_CRITICALITY, g as ANALYZE_REASONING_DEPTH, C as COMPLETE_EVIDENCE_REVIEW, h as COMPLETE_HYPOTHESIS_FORMATION, i as CREATE_BELIEF_CONDITIONAL, j as CREATE_EVIDENCE_TASK, k as CREATE_SYNTHESIZED_BELIEF, D as DETECT_ANCHORING_BIAS, l as DETECT_SOURCE_CONCENTRATION, E as EXPLORE_CONNECTIONS, F as FIND_SEMANTIC_BRIDGES, m as FIND_SEMANTIC_ORPHANS, n as FIND_SOFT_CONTRADICTIONS, G as GET_BELIEFS_BY_EPISTEMIC_STATUS, o as GET_BELIEF_RELATIONSHIPS, p as GET_BELIEF_SUPPORT_CHAIN, q as GET_CAUSAL_CHAINS, r as GET_CHALLENGED_BELIEFS, t as GET_COLLECTION_CONVICTION, u as GET_CONVICTION_TREND, v as GET_DEEP_LINEAGE, w as GET_EVIDENCE_BY_METHODOLOGY, x as GET_NECESSARY_EVIDENCE, y as GET_NON_CONSENSUS_BELIEFS, z as GET_PREDICTIONS, B as GET_SURPRISE_DETECTION, H as GET_TASK_COUNTS, I as GRAPH_AWARE_SEARCH, L as LINK_BELIEF_TO_WORKTREE, J as LINK_DOCUMENT_TO_WORKTREE, K as LINK_EVIDENCE_TO_WORKTREE, M as LINK_QUESTION_TO_WORKTREE, N as LIST_TASKS, R as REFINE_WORKTREE_BELIEF, S as SDK_ONLY_TOOL_CONTRACTS, O as SDK_ONLY_TOOL_NAMES, P as START_WORKTREE, Q as SdkToolContract, T as TRACE_PROVENANCE, U as UPDATE_TASK, V as UPDATE_WORKTREE_PHASE, W as validateSdkGitSemantics } from './sdk-tools.contract-CKmSsrZ2.js';
|
|
@@ -2324,7 +2324,7 @@ var IDENTITY_WHOAMI = {
|
|
|
2324
2324
|
description: "Canonical identity summary for the current session",
|
|
2325
2325
|
fields: {
|
|
2326
2326
|
principalId: "string \u2014 canonical federated principal identifier",
|
|
2327
|
-
principalType: "string \u2014 human, service, or
|
|
2327
|
+
principalType: "string \u2014 human, service, agent, group, or external_viewer",
|
|
2328
2328
|
tenantId: "string | undefined \u2014 resolved tenant scope",
|
|
2329
2329
|
workspaceId: "string | undefined \u2014 resolved workspace scope",
|
|
2330
2330
|
scopes: "string[] | undefined \u2014 granted scopes for this session",
|
|
@@ -2335,6 +2335,49 @@ var IDENTITY_WHOAMI = {
|
|
|
2335
2335
|
ontologyPrimitive: "identity",
|
|
2336
2336
|
tier: "workhorse"
|
|
2337
2337
|
};
|
|
2338
|
+
var RESOLVE_INTERACTIVE_PRINCIPAL = {
|
|
2339
|
+
name: "resolve_interactive_principal",
|
|
2340
|
+
description: "Read the Permit-backed Lucern principal context for an authenticated Clerk user. Like `git config --get user.email` plus the repository ACL \u2014 resolves the identity alias into the canonical authorization subject.",
|
|
2341
|
+
parameters: {
|
|
2342
|
+
clerkId: {
|
|
2343
|
+
type: "string",
|
|
2344
|
+
description: "Authenticated Clerk subject (`sub`). Clerk proves identity only; it is not the authorization record."
|
|
2345
|
+
},
|
|
2346
|
+
tenantId: {
|
|
2347
|
+
type: "string",
|
|
2348
|
+
description: "Optional tenant scope. Omit only when the Clerk alias is globally unambiguous."
|
|
2349
|
+
},
|
|
2350
|
+
workspaceId: {
|
|
2351
|
+
type: "string",
|
|
2352
|
+
description: "Optional workspace scope. Required when the principal has access to multiple workspaces and no default can be inferred."
|
|
2353
|
+
},
|
|
2354
|
+
providerProjectId: {
|
|
2355
|
+
type: "string",
|
|
2356
|
+
description: "Optional Clerk project or provider instance id for tenants with multiple identity providers."
|
|
2357
|
+
}
|
|
2358
|
+
},
|
|
2359
|
+
required: ["clerkId"],
|
|
2360
|
+
response: {
|
|
2361
|
+
description: "Permit-backed Lucern principal context for tenant SDK bootstrap",
|
|
2362
|
+
fields: {
|
|
2363
|
+
principalId: "string \u2014 canonical Lucern principal identifier",
|
|
2364
|
+
principalType: "string \u2014 human, service, agent, group, or external_viewer",
|
|
2365
|
+
clerkId: "string \u2014 authenticated Clerk subject alias",
|
|
2366
|
+
tenantId: "string \u2014 resolved tenant scope",
|
|
2367
|
+
workspaceId: "string | null \u2014 resolved workspace scope",
|
|
2368
|
+
roles: "string[] \u2014 effective Permit roles",
|
|
2369
|
+
scopes: "string[] \u2014 effective scopes derived from Permit/control-plane projection",
|
|
2370
|
+
groupIds: "string[] \u2014 active Permit group memberships",
|
|
2371
|
+
principalStatus: "string \u2014 active, invited, suspended, disabled, revoked, or missing",
|
|
2372
|
+
tenantStatus: "string \u2014 projected tenant resource status",
|
|
2373
|
+
workspaceStatus: "string \u2014 projected workspace resource status",
|
|
2374
|
+
permit: "object \u2014 Permit subject, tenant, and optional workspace tuple"
|
|
2375
|
+
}
|
|
2376
|
+
},
|
|
2377
|
+
ownerModule: "control-plane",
|
|
2378
|
+
ontologyPrimitive: "identity",
|
|
2379
|
+
tier: "workhorse"
|
|
2380
|
+
};
|
|
2338
2381
|
var COMPILE_CONTEXT = {
|
|
2339
2382
|
name: "compile_context",
|
|
2340
2383
|
description: "Compile a focused reasoning context. If topicId is omitted, Lucern resolves the best topic from the query. Like `git log --graph --decorate` for the reasoning substrate \u2014 returns the canonical Pillar 3 context pack through the public API shape.",
|
|
@@ -4237,6 +4280,7 @@ var MCP_TOOL_CONTRACTS = {
|
|
|
4237
4280
|
update_worktree_targets: UPDATE_WORKTREE_TARGETS,
|
|
4238
4281
|
update_worktree_metadata: UPDATE_WORKTREE_METADATA,
|
|
4239
4282
|
identity_whoami: IDENTITY_WHOAMI,
|
|
4283
|
+
resolve_interactive_principal: RESOLVE_INTERACTIVE_PRINCIPAL,
|
|
4240
4284
|
compile_context: COMPILE_CONTEXT,
|
|
4241
4285
|
record_scope_learning: RECORD_SCOPE_LEARNING,
|
|
4242
4286
|
pipeline_snapshot: PIPELINE_SNAPSHOT,
|