@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
|
@@ -24,6 +24,7 @@ var KERNEL_SCHEMA_TABLES = {
|
|
|
24
24
|
"decisionSnapshots": defineTable(v.object({ "anonymizationClass": v.optional(v.union(v.literal("none"), v.literal("standard"), v.literal("strict"))), "audienceLabel": v.optional(v.string()), "createdAt": v.number(), "decisionEventId": v.id("decisionEvents"), "exportClass": v.optional(v.union(v.literal("public_safe"), v.literal("client_safe"), v.literal("internal_only"))), "lineageParentDecisionEventId": v.optional(v.id("decisionEvents")), "lineageParentSnapshotId": v.optional(v.id("decisionSnapshots")), "lockedAt": v.number(), "lockedBy": v.string(), "metadata": v.optional(v.record(v.string(), v.any())), "outcome": v.optional(v.union(v.literal("approve"), v.literal("conditional"), v.literal("defer"), v.literal("reject"), v.literal("reopen_on_trigger"))), "ownerPrincipalId": v.optional(v.string()), "payload": v.record(v.string(), v.any()), "payloadHash": v.string(), "policyTags": v.optional(v.array(v.string())), "policyTraceId": v.optional(v.string()), "sensitivityTier": v.optional(v.union(v.literal("low"), v.literal("medium"), v.literal("high"))), "snapshotLabel": v.optional(v.string()), "tenantId": v.optional(v.string()), "topicId": v.optional(v.string()), "version": v.number(), "weightingModelVersion": v.string(), "weightingParameters": v.optional(v.record(v.string(), v.any())), "workspaceId": v.optional(v.string()) })).index("by_decisionEventId", ["decisionEventId"]).index("by_topicId", ["topicId"]).index("by_topic_lockedAt", ["topicId", "lockedAt"]).index("by_decision_version", ["decisionEventId", "version"]).index("by_decision_lockedAt", ["decisionEventId", "lockedAt"]).index("by_payloadHash", ["payloadHash"]),
|
|
25
25
|
"deliberationContributions": defineTable(v.object({ "answer": v.string(), "confidence": v.number(), "contradictionHypotheses": v.array(v.string()), "createdAt": v.number(), "escalationQuestions": v.array(v.string()), "modelKey": v.optional(v.string()), "parsedResponse": v.optional(v.any()), "principalId": v.string(), "promptName": v.optional(v.string()), "rawResponse": v.string(), "reasoningChain": v.array(v.string()), "role": v.union(v.literal("support"), v.literal("oppose"), v.literal("uncertain"), v.literal("synthesize")), "sessionId": v.id("deliberationSessions"), "slot": v.string(), "topicId": v.optional(v.string()), "traceId": v.optional(v.string()), "uncertaintyZones": v.array(v.object({ "explanation": v.string(), "label": v.string() })), "updatedAt": v.number() })).index("by_sessionId", ["sessionId"]).index("by_topicId", ["topicId"]).index("by_session_slot", ["sessionId", "slot"]),
|
|
26
26
|
"deliberationSessions": defineTable(v.object({ "completedAt": v.optional(v.number()), "contextBrief": v.optional(v.string()), "contextSnapshot": v.optional(v.any()), "contradictionIds": v.array(v.id("contradictions")), "createdAt": v.number(), "createdBy": v.string(), "error": v.optional(v.string()), "escalationQuestionIds": v.array(v.id("epistemicNodes")), "linkedBeliefNodeId": v.optional(v.id("epistemicNodes")), "modelSlots": v.array(v.string()), "outcomeSummary": v.optional(v.any()), "principalId": v.string(), "question": v.string(), "replayBaseline": v.optional(v.any()), "replayBaselineAt": v.number(), "replayDelta": v.optional(v.any()), "replayHeadAt": v.optional(v.number()), "status": v.union(v.literal("running"), v.literal("completed"), v.literal("failed")), "tenantId": v.optional(v.string()), "topicId": v.optional(v.string()), "traceId": v.optional(v.string()), "uncertaintyZones": v.array(v.object({ "explanation": v.string(), "label": v.string(), "slots": v.array(v.string()) })), "updatedAt": v.number(), "workspaceId": v.optional(v.string()) })).index("by_topicId", ["topicId"]).index("by_status", ["status"]).index("by_topic_status", ["topicId", "status"]).index("by_createdBy", ["createdBy"]),
|
|
27
|
+
"domainEvents": defineTable(v.object({ "actorId": v.string(), "actorType": v.union(v.literal("human"), v.literal("agent"), v.literal("service")), "correlationId": v.optional(v.string()), "data": v.record(v.string(), v.any()), "eventId": v.string(), "expiresAt": v.number(), "resourceId": v.string(), "resourceType": v.string(), "tenantId": v.optional(v.string()), "timestamp": v.number(), "topicId": v.string(), "type": v.string(), "version": v.string(), "workspaceId": v.optional(v.string()) })).index("by_eventId", ["eventId"]).index("by_topic_timestamp", ["topicId", "timestamp"]).index("by_tenant_workspace_timestamp", ["tenantId", "workspaceId", "timestamp"]).index("by_type_timestamp", ["type", "timestamp"]).index("by_resource", ["resourceType", "resourceId", "timestamp"]).index("by_expiresAt", ["expiresAt"]),
|
|
27
28
|
"epistemicAudit": defineTable(v.object({ "agentType": v.optional(v.string()), "changedAt": v.number(), "changedBy": v.string(), "changeType": v.union(v.literal("created"), v.literal("status_changed"), v.literal("confidence_changed"), v.literal("criticality_changed"), v.literal("formulation_modified"), v.literal("forked"), v.literal("superseded"), v.literal("archived"), v.literal("resolved"), v.literal("severity_changed"), v.literal("edge_added"), v.literal("edge_removed"), v.literal("annotated"), v.literal("blocked"), v.literal("unblocked"), v.literal("decision_finalized"), v.literal("proposal_accepted"), v.literal("proposal_rejected"), v.literal("pillar_changed"), v.literal("updated"), v.literal("deleted"), v.literal("entity_merged"), v.literal("entity_attributes_updated"), v.literal("entity_archived"), v.literal("published"), v.literal("deprecated"), v.literal("source_created"), v.literal("source_metadata_updated")), "entityId": v.string(), "entityType": v.union(v.literal("belief"), v.literal("evidence"), v.literal("question"), v.literal("answer"), v.literal("contradiction"), v.literal("decision"), v.literal("proposal"), v.literal("edge"), v.literal("node"), v.literal("entity"), v.literal("source"), v.literal("belief_conditional"), v.literal("belief_scenario"), v.literal("ontologyDefinition"), v.literal("ontologyVersion")), "isAgent": v.boolean(), "mcpSessionId": v.optional(v.string()), "mcpToolName": v.optional(v.string()), "newState": v.optional(v.union(v.record(v.string(), v.any()), v.null())), "previousState": v.optional(v.union(v.record(v.string(), v.any()), v.null())), "proposalId": v.optional(v.string()), "rationale": v.optional(v.string()), "sourceCommit": v.optional(v.string()), "topicId": v.optional(v.string()), "triggeringAction": v.optional(v.string()) })).index("by_entityId", ["entityId"]).index("by_entityType", ["entityType"]).index("by_entityType_id", ["entityType", "entityId"]).index("by_changedAt", ["changedAt"]).index("by_changedBy", ["changedBy"]).index("by_topicId", ["topicId"]).index("by_changeType", ["changeType"]).index("by_mcpSessionId", ["mcpSessionId"]),
|
|
28
29
|
"epistemicContracts": defineTable(v.object({ "beliefNodeId": v.string(), "compositeOf": v.optional(v.array(v.string())), "compositeOperator": v.optional(v.union(v.literal("all"), v.literal("any"), v.literal("majority"))), "condition": v.object({ "evaluator": v.string(), "evaluatorConfig": v.optional(v.union(v.string(), v.number(), v.boolean(), v.null(), v.record(v.string(), v.any()), v.array(v.any()))), "expression": v.string() }), "conditionType": v.union(v.literal("assertion"), v.literal("temporal"), v.literal("evidential"), v.literal("threshold"), v.literal("composite")), "contractId": v.string(), "createdAt": v.number(), "createdBy": v.string(), "deadline": v.optional(v.number()), "description": v.optional(v.string()), "direction": v.union(v.literal("confirms"), v.literal("falsifies")), "evaluationCount": v.optional(v.number()), "evaluationSchedule": v.union(v.literal("on_demand"), v.literal("on_evidence"), v.literal("periodic"), v.literal("event_driven")), "inheritedAt": v.optional(v.number()), "inheritedFromBeliefNodeId": v.optional(v.string()), "inheritedFromContractId": v.optional(v.string()), "lastEvaluatedAt": v.optional(v.number()), "lineageSource": v.union(v.literal("declared"), v.literal("inherited")), "modulation": v.object({ "onConfirmed": v.object({ "ceiling": v.optional(v.number()), "delta": v.number() }), "onDisconfirmed": v.object({ "delta": v.number(), "floor": v.optional(v.number()) }), "onExpired": v.optional(v.object({ "delta": v.number() })), "onPartial": v.optional(v.object({ "delta": v.number(), "threshold": v.number() })) }), "periodicIntervalMs": v.optional(v.number()), "status": v.union(v.literal("active"), v.literal("satisfied"), v.literal("violated"), v.literal("expired"), v.literal("suspended"), v.literal("archived")), "title": v.string(), "topicId": v.optional(v.string()), "updatedAt": v.number() })).index("by_contractId", ["contractId"]).index("by_belief", ["beliefNodeId"]).index("by_status", ["status"]).index("by_evaluator", ["condition.evaluator"]).index("by_topic", ["topicId"]).index("by_schedule", ["evaluationSchedule"]),
|
|
29
30
|
"epistemicEdges": defineTable(v.object({ "analogyBasis": v.optional(v.string()), "analogyStrength": v.optional(v.number()), "anonymizationClass": v.optional(v.union(v.literal("none"), v.literal("standard"), v.literal("strict"))), "audienceLabel": v.optional(v.string()), "blocking": v.optional(v.boolean()), "causal": v.optional(v.boolean()), "conditionalA": v.optional(v.object({ "a": v.number(), "b": v.number(), "d": v.number(), "u": v.number() })), "conditionalNotA": v.optional(v.object({ "a": v.number(), "b": v.number(), "d": v.number(), "u": v.number() })), "confidence": v.optional(v.number()), "constraint": v.optional(v.string()), "containment": v.optional(v.string()), "context": v.optional(v.string()), "createdAt": v.number(), "createdBy": v.string(), "defeatType": v.optional(v.union(v.literal("rebuts"), v.literal("undercuts"), v.literal("undermines"))), "derivation": v.optional(v.string()), "derivationType": v.optional(v.string()), "disanalogies": v.optional(v.array(v.string())), "domainNamespace": v.optional(v.string()), "edgeTier": v.optional(v.string()), "edgeType": v.union(v.literal("supports"), v.literal("informs"), v.literal("depends_on"), v.literal("derived_from"), v.literal("contains"), v.literal("tests"), v.literal("supersedes"), v.literal("responds_to"), v.literal("belongs_to"), v.literal("relates_to_thesis"), v.literal("works_at"), v.literal("invested_in"), v.literal("competes_with"), v.literal("participates_in"), v.literal("founded_by"), v.literal("evaluates"), v.literal("performs"), v.literal("function_in"), v.literal("impacts"), v.literal("raised_from"), v.literal("mentioned_in"), v.literal("perspective_on"), v.literal("plays_theme"), v.literal("answers"), v.literal("explores"), v.literal("qualifies"), v.literal("based_on"), v.literal("based_on_belief"), v.literal("based_on_question"), v.literal("blocked_by_contradiction"), v.literal("informed_by_theme"), v.literal("same_as"), v.literal("reinforces"), v.literal("parent_of"), v.literal("child_of"), v.literal("falsified_by"), v.literal("exclusive_with"), v.literal("collapses_if"), v.literal("cascade_from"), v.literal("counterfactual_of"), v.literal("cascade_to"), v.literal("mutually_exclusive"), v.literal("correlates_with"), v.literal("amplifies"), v.literal("precondition_for"), v.literal("in_tension_with"), v.literal("strengthened_by"), v.literal("weakened_by"), v.literal("alternative_to"), v.literal("subsumes"), v.literal("validated_by"), v.literal("required_for"), v.literal("blocks"), v.literal("prerequisite_for"), v.literal("parallel_to"), v.literal("corroborates"), v.literal("extends"), v.literal("same_source_as"), v.literal("same_theme_as"), v.literal("assumes"), v.literal("would_predict"), v.literal("analogous_to"), v.literal("independent_of"), v.literal("implements"), v.literal("violates"), v.literal("co_changes_with"), v.literal("migrating_from"), v.literal("migrating_to"), v.literal("scoped_by"), v.literal("about_entity"), v.literal("entity_referenced_in"), v.literal("contradicts"), v.literal("cites"), v.literal("summarizes"), v.literal("related_to"), v.literal("partially_answers"), v.literal("refines"), v.literal("branches_from"), v.literal("extracted_from")), "endDate": v.optional(v.number()), "evidence": v.optional(v.string()), "exportClass": v.optional(v.union(v.literal("internal_only"), v.literal("client_safe"), v.literal("public_safe"), v.literal("restricted"))), "fromLayer": v.optional(v.union(v.literal("L4"), v.literal("L3"), v.literal("L2"), v.literal("L1"), v.literal("ontological"), v.literal("organizational"))), "fromNodeId": v.string(), "fromNodeType": v.optional(v.string()), "globalId": v.string(), "implicit": v.optional(v.boolean()), "interrogation": v.optional(v.string()), "keywords": v.optional(v.array(v.string())), "logicalRole": v.optional(v.union(v.literal("necessary"), v.literal("sufficient"), v.literal("necessary_sufficient"), v.literal("contributory"), v.literal("corroborative"))), "metadata": v.optional(v.record(v.string(), v.any())), "normalization": v.optional(v.string()), "ownerPrincipalId": v.optional(v.string()), "policyTags": v.optional(v.array(v.string())), "predictionFulfilled": v.optional(v.boolean()), "predictionFulfilledAt": v.optional(v.number()), "predictionFulfilledBy": v.optional(v.string()), "projectId": v.optional(v.string()), "propagation": v.optional(v.string()), "reasoningMethod": v.optional(v.union(v.literal("deductive"), v.literal("inductive"), v.literal("abductive"), v.literal("analogical"), v.literal("causal"), v.literal("correlational"), v.literal("testimonial"), v.literal("statistical"), v.literal("implicit"), v.literal("pattern_match"))), "sensitivityTier": v.optional(v.union(v.literal("low"), v.literal("medium"), v.literal("high"), v.literal("restricted"))), "sourceGlobalId": v.optional(v.string()), "startDate": v.optional(v.number()), "surpriseScore": v.optional(v.number()), "targetGlobalId": v.optional(v.string()), "temporalClass": v.optional(v.union(v.literal("structural"), v.literal("cyclical"), v.literal("transient"), v.literal("point_in_time"))), "tenantId": v.optional(v.string()), "toLayer": v.optional(v.union(v.literal("L4"), v.literal("L3"), v.literal("L2"), v.literal("L1"), v.literal("ontological"), v.literal("organizational"))), "toNodeId": v.optional(v.string()), "toNodeType": v.optional(v.string()), "topicId": v.optional(v.string()), "updatedAt": v.optional(v.number()), "validFrom": v.optional(v.number()), "validUntil": v.optional(v.number()), "weight": v.optional(v.number()), "workspaceId": v.optional(v.string()) })).index("by_globalId", ["globalId"]).index("by_from", ["fromNodeId"]).index("by_to", ["toNodeId"]).index("by_from_type", ["fromNodeId", "edgeType"]).index("by_to_type", ["toNodeId", "edgeType"]).index("by_topic", ["topicId"]).index("by_tenantId", ["tenantId"]).index("by_workspaceId", ["workspaceId"]).index("by_tenant_workspace", ["tenantId", "workspaceId"]).index("by_audienceLabel", ["audienceLabel"]).index("by_sensitivityTier", ["sensitivityTier"]).index("by_exportClass", ["exportClass"]).index("by_type", ["edgeType"]).index("by_from_to", ["fromNodeId", "toNodeId"]).index("by_fromLayer", ["fromLayer"]).index("by_toLayer", ["toLayer"]).index("by_layer_pair", ["fromLayer", "toLayer"]).index("by_source_global_id", ["sourceGlobalId"]).index("by_target_global_id", ["targetGlobalId"]).index("by_reasoning_method", ["edgeType", "reasoningMethod"]).index("by_logical_role", ["edgeType", "logicalRole"]).index("by_temporal_class", ["temporalClass", "validUntil"]).index("by_surprise", ["edgeType", "surpriseScore"]),
|
|
@@ -73,7 +74,7 @@ var CONTROL_PLANE_SCHEMA_TABLES = {
|
|
|
73
74
|
"permitGroups": defineTable(v.object({ "createdAt": v.number(), "createdBy": v.string(), "description": v.optional(v.string()), "groupId": v.string(), "groupKey": v.string(), "groupName": v.string(), "groupType": v.union(v.literal("tenant"), v.literal("workspace"), v.literal("external"), v.literal("system"), v.literal("dynamic")), "metadata": v.optional(v.record(v.string(), v.any())), "status": v.union(v.literal("active"), v.literal("invited"), v.literal("revoked"), v.literal("suspended"), v.literal("disabled")), "tenantId": v.string(), "updatedAt": v.number(), "updatedBy": v.optional(v.string()), "workspaceId": v.optional(v.string()) })).index("by_tenantId", ["tenantId"]).index("by_workspaceId", ["workspaceId"]).index("by_tenant_groupId", ["tenantId", "groupId"]).index("by_tenant_groupKey", ["tenantId", "groupKey"]).index("by_tenant_status", ["tenantId", "status"]),
|
|
74
75
|
"permitPolicyBundles": defineTable(v.object({ "bundleKey": v.string(), "createdAt": v.number(), "createdBy": v.string(), "metadata": v.optional(v.record(v.string(), v.any())), "policyHash": v.optional(v.string()), "policyPayload": v.record(v.string(), v.any()), "retiredAt": v.optional(v.number()), "reviewedBy": v.optional(v.string()), "status": v.union(v.literal("draft"), v.literal("validated"), v.literal("enforced"), v.literal("archived")), "tenantId": v.string(), "updatedAt": v.number(), "version": v.number(), "workspaceId": v.optional(v.string()) })).index("by_tenantId", ["tenantId"]).index("by_workspaceId", ["workspaceId"]).index("by_tenant_bundleKey", ["tenantId", "bundleKey"]).index("by_tenant_bundle_version", ["tenantId", "bundleKey", "version"]).index("by_tenant_status", ["tenantId", "status"]),
|
|
75
76
|
"permitPolicyDecisionReceipts": defineTable(v.object({ "action": v.string(), "audienceClass": v.optional(v.union(v.literal("internal"), v.literal("restricted_external"), v.literal("public"))), "audienceKey": v.optional(v.string()), "audienceMode": v.optional(v.string()), "createdAt": v.number(), "createdBy": v.optional(v.string()), "decision": v.union(v.literal("allow"), v.literal("deny")), "expiresAt": v.optional(v.number()), "metadata": v.optional(v.record(v.string(), v.any())), "policyBundleId": v.optional(v.string()), "policyVersion": v.string(), "principalId": v.string(), "reasonCode": v.string(), "requestId": v.optional(v.string()), "resourceId": v.string(), "resourceType": v.string(), "subjectId": v.optional(v.string()), "subjectType": v.optional(v.union(v.literal("principal"), v.literal("group"), v.literal("role_assignment"), v.literal("resource_instance"))), "tenantId": v.optional(v.string()), "traceId": v.optional(v.string()), "workspaceId": v.optional(v.string()) })).index("by_principal_createdAt", ["principalId", "createdAt"]).index("by_tenant_createdAt", ["tenantId", "createdAt"]).index("by_resource", ["resourceType", "resourceId"]).index("by_decision_createdAt", ["decision", "createdAt"]).index("by_traceId", ["traceId"]).index("by_action", ["action"]),
|
|
76
|
-
"permitPrincipalAliases": defineTable(v.object({ "alias": v.string(), "aliasKind": v.string(), "createdAt": v.number(), "createdBy": v.string(), "metadata": v.optional(v.record(v.string(), v.any())), "principalId": v.string(), "provider": v.string(), "providerProjectId": v.optional(v.string()), "providerSubjectId": v.string(), "revokedAt": v.optional(v.number()), "revokedBy": v.optional(v.string()), "status": v.union(v.literal("active"), v.literal("invited"), v.literal("revoked"), v.literal("suspended"), v.literal("disabled")), "tenantId": v.string(), "updatedAt": v.number(), "updatedBy": v.optional(v.string()), "workspaceId": v.optional(v.string()) })).index("by_principalId", ["principalId"]).index("by_tenant_provider_subject", ["tenantId", "provider", "providerSubjectId"]).index("by_tenant_provider_alias", ["tenantId", "provider", "alias"]).index("by_tenant_alias", ["tenantId", "alias"]).index("by_tenant_provider_status", ["tenantId", "provider", "status"]),
|
|
77
|
+
"permitPrincipalAliases": defineTable(v.object({ "alias": v.string(), "aliasKind": v.string(), "createdAt": v.number(), "createdBy": v.string(), "metadata": v.optional(v.record(v.string(), v.any())), "principalId": v.string(), "provider": v.string(), "providerProjectId": v.optional(v.string()), "providerSubjectId": v.string(), "revokedAt": v.optional(v.number()), "revokedBy": v.optional(v.string()), "status": v.union(v.literal("active"), v.literal("invited"), v.literal("revoked"), v.literal("suspended"), v.literal("disabled")), "tenantId": v.string(), "updatedAt": v.number(), "updatedBy": v.optional(v.string()), "workspaceId": v.optional(v.string()) })).index("by_principalId", ["principalId"]).index("by_provider_subject", ["provider", "providerSubjectId"]).index("by_provider_project_subject", ["provider", "providerProjectId", "providerSubjectId"]).index("by_tenant_provider_subject", ["tenantId", "provider", "providerSubjectId"]).index("by_tenant_provider_project_subject", ["tenantId", "provider", "providerProjectId", "providerSubjectId"]).index("by_tenant_provider_alias", ["tenantId", "provider", "alias"]).index("by_tenant_alias", ["tenantId", "alias"]).index("by_tenant_provider_status", ["tenantId", "provider", "status"]),
|
|
77
78
|
"permitPrincipals": defineTable(v.object({ "createdAt": v.number(), "createdBy": v.string(), "displayName": v.optional(v.string()), "lastSeenAt": v.optional(v.number()), "metadata": v.optional(v.record(v.string(), v.any())), "principalId": v.string(), "principalType": v.union(v.literal("human"), v.literal("agent"), v.literal("service_principal"), v.literal("external_stakeholder"), v.literal("system")), "status": v.union(v.literal("active"), v.literal("invited"), v.literal("revoked"), v.literal("suspended"), v.literal("disabled")), "tenantId": v.string(), "updatedAt": v.number(), "updatedBy": v.optional(v.string()), "workspaceId": v.optional(v.string()) })).index("by_tenantId", ["tenantId"]).index("by_workspaceId", ["workspaceId"]).index("by_tenant_principalId", ["tenantId", "principalId"]).index("by_tenant_status", ["tenantId", "status"]).index("by_tenant_principalType_status", ["tenantId", "principalType", "status"]),
|
|
78
79
|
"permitProjectionOutbox": defineTable(v.object({ "attemptCount": v.number(), "createdAt": v.number(), "lastError": v.optional(v.string()), "lastHandledAt": v.optional(v.number()), "nextAttemptAt": v.optional(v.number()), "objectId": v.string(), "objectType": v.union(v.literal("resource"), v.literal("role"), v.literal("resource_role"), v.literal("resource_relation"), v.literal("tenant"), v.literal("workspace"), v.literal("principal"), v.literal("membership"), v.literal("group"), v.literal("resource_instance"), v.literal("relationship_tuple"), v.literal("role_assignment"), v.literal("attribute_binding"), v.literal("policy_bundle")), "operation": v.union(v.literal("upsert"), v.literal("delete"), v.literal("sync"), v.literal("resync"), v.literal("delete_sync"), v.literal("noop")), "payload": v.record(v.string(), v.any()), "permitResourceKey": v.optional(v.string()), "permitResourceType": v.optional(v.string()), "permitTenantKey": v.optional(v.string()), "principalId": v.optional(v.string()), "status": v.union(v.literal("queued"), v.literal("inflight"), v.literal("completed"), v.literal("failed"), v.literal("skipped"), v.literal("stale")), "syncKey": v.string(), "tenantId": v.optional(v.string()), "updatedAt": v.number(), "workspaceId": v.optional(v.string()) })).index("by_syncKey", ["syncKey"]).index("by_status", ["status"]).index("by_tenantId", ["tenantId"]).index("by_tenant_status", ["tenantId", "status"]).index("by_objectType", ["objectType", "status"]),
|
|
79
80
|
"permitRelationshipTuples": defineTable(v.object({ "attributes": v.optional(v.record(v.string(), v.any())), "createdAt": v.number(), "createdBy": v.string(), "lastSeenAt": v.optional(v.number()), "object": v.string(), "relation": v.string(), "resourceKey": v.optional(v.string()), "resourceType": v.optional(v.string()), "status": v.union(v.literal("queued"), v.literal("inflight"), v.literal("completed"), v.literal("failed"), v.literal("skipped"), v.literal("stale")), "subject": v.string(), "tenantId": v.string(), "updatedAt": v.number(), "updatedBy": v.optional(v.string()), "workspaceId": v.optional(v.string()) })).index("by_tenant_subject", ["tenantId", "subject"]).index("by_tenant_object", ["tenantId", "object"]).index("by_tenant_relation", ["tenantId", "relation"]).index("by_tenant_relation_subject", ["tenantId", "relation", "subject"]).index("by_tenant_status", ["tenantId", "status"]),
|