@lucern/contracts 0.3.0-alpha.6 → 0.3.0-alpha.7
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/CHANGELOG.md +4 -0
- package/dist/{dsl-BgpoVOVQ.d.ts → dsl-djCRfuWC.d.ts} +1 -1
- package/dist/dsl.d.ts +1 -1
- package/dist/dsl.js +1 -4
- package/dist/dsl.js.map +1 -1
- package/dist/{edge-policy-manifest-DpmTtjmm.d.ts → edge-policy-manifest-Byv6cQPP.d.ts} +1 -1
- package/dist/function-registry/beliefs.js +73 -10
- package/dist/function-registry/beliefs.js.map +1 -1
- package/dist/function-registry/coding.js +73 -10
- package/dist/function-registry/coding.js.map +1 -1
- package/dist/function-registry/context.js +78 -12
- package/dist/function-registry/context.js.map +1 -1
- package/dist/function-registry/contracts.js +73 -10
- package/dist/function-registry/contracts.js.map +1 -1
- package/dist/function-registry/coordination.js +73 -10
- package/dist/function-registry/coordination.js.map +1 -1
- package/dist/function-registry/edges.js +73 -10
- package/dist/function-registry/edges.js.map +1 -1
- package/dist/function-registry/evidence.js +77 -11
- package/dist/function-registry/evidence.js.map +1 -1
- package/dist/function-registry/graph.js +73 -10
- package/dist/function-registry/graph.js.map +1 -1
- package/dist/function-registry/helpers.d.ts +3 -3
- package/dist/function-registry/helpers.js +73 -10
- package/dist/function-registry/helpers.js.map +1 -1
- package/dist/function-registry/identity.js +73 -10
- package/dist/function-registry/identity.js.map +1 -1
- package/dist/function-registry/index.d.ts +2 -2
- package/dist/function-registry/index.js +76 -13
- package/dist/function-registry/index.js.map +1 -1
- package/dist/function-registry/judgments.js +73 -10
- package/dist/function-registry/judgments.js.map +1 -1
- package/dist/function-registry/legacy.js +73 -10
- package/dist/function-registry/legacy.js.map +1 -1
- package/dist/function-registry/lenses.js +73 -10
- package/dist/function-registry/lenses.js.map +1 -1
- package/dist/function-registry/manifest.d.ts +1 -1
- package/dist/function-registry/ontologies.js +73 -10
- package/dist/function-registry/ontologies.js.map +1 -1
- package/dist/function-registry/pipeline.js +73 -10
- package/dist/function-registry/pipeline.js.map +1 -1
- package/dist/function-registry/questions.js +73 -10
- package/dist/function-registry/questions.js.map +1 -1
- package/dist/function-registry/tasks.d.ts +17 -17
- package/dist/function-registry/tasks.js +117 -12
- package/dist/function-registry/tasks.js.map +1 -1
- package/dist/function-registry/topics.js +73 -10
- package/dist/function-registry/topics.js.map +1 -1
- package/dist/function-registry/types.d.ts +1 -1
- package/dist/function-registry/worktrees.js +81 -13
- package/dist/function-registry/worktrees.js.map +1 -1
- package/dist/function-registry-input-audit.js +4 -2
- package/dist/function-registry-input-audit.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.js +100 -12
- package/dist/index.js.map +1 -1
- package/dist/infisical-runtime.contract.js +5 -0
- package/dist/infisical-runtime.contract.js.map +1 -1
- package/dist/lens-filter.contract.js +4 -3
- package/dist/lens-filter.contract.js.map +1 -1
- package/dist/lens-workflow.contract.js +4 -3
- package/dist/lens-workflow.contract.js.map +1 -1
- package/dist/manifests/edge-policy-manifest.d.ts +1 -1
- package/dist/manifests/infisical-runtime-manifest.js +5 -0
- package/dist/manifests/infisical-runtime-manifest.js.map +1 -1
- package/dist/manifests/tenant-client-manifest.d.ts +20 -1
- package/dist/manifests/tenant-client-manifest.js +23 -0
- package/dist/manifests/tenant-client-manifest.js.map +1 -1
- package/dist/projections/check-convex-args-shape.js +4 -1
- package/dist/projections/check-convex-args-shape.js.map +1 -1
- package/dist/projections/create-evidence.projection.js +4 -1
- package/dist/projections/create-evidence.projection.js.map +1 -1
- package/dist/projections/index.js +4 -1
- package/dist/projections/index.js.map +1 -1
- package/dist/schema-helpers/enumValidation.js +2 -5
- package/dist/schema-helpers/enumValidation.js.map +1 -1
- package/dist/schema-helpers/spine/nodes/decision.js +2 -1
- package/dist/schema-helpers/spine/nodes/decision.js.map +1 -1
- package/dist/schema-helpers/spine/tables/epistemicNodes.js +27 -27
- package/dist/schema-helpers/spine/tables/epistemicNodes.js.map +1 -1
- package/dist/sdk-methods.contract.d.ts +1 -1
- package/dist/{sdk-tools.contract-Ng8ULxjr.d.ts → sdk-tools.contract-Ci8bkoai.d.ts} +2 -2
- package/dist/sdk-tools.contract.d.ts +2 -2
- package/dist/sdk-tools.contract.js +72 -7
- package/dist/sdk-tools.contract.js.map +1 -1
- package/dist/tenant-client.contract.d.ts +20 -1
- package/dist/tenant-client.contract.js +23 -0
- package/dist/tenant-client.contract.js.map +1 -1
- package/dist/{tool-contracts-CYXVPN4K.d.ts → tool-contracts-B4iWhejG.d.ts} +1 -1
- package/dist/tool-contracts.d.ts +1 -1
- package/dist/tool-contracts.js +72 -7
- package/dist/tool-contracts.js.map +1 -1
- package/package.json +1 -1
|
@@ -119,14 +119,16 @@ function projectionReadKeys(projection) {
|
|
|
119
119
|
return [...keys].sort();
|
|
120
120
|
}
|
|
121
121
|
function acceptedInputKeys(contract) {
|
|
122
|
-
|
|
122
|
+
const keys = [
|
|
123
123
|
.../* @__PURE__ */ new Set([
|
|
124
124
|
...objectSchemaKeys(contract.args),
|
|
125
125
|
...objectSchemaKeys(contract.input),
|
|
126
126
|
...Object.keys(contract.mcp.parameters),
|
|
127
127
|
"__sdkSessionId"
|
|
128
128
|
])
|
|
129
|
-
]
|
|
129
|
+
];
|
|
130
|
+
keys.sort();
|
|
131
|
+
return keys;
|
|
130
132
|
}
|
|
131
133
|
function allowedProjectionKeys(contractName) {
|
|
132
134
|
return /* @__PURE__ */ new Set([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/function-registry-input-audit.ts"],"names":[],"mappings":"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","file":"function-registry-input-audit.js","sourcesContent":["import { z } from \"zod\";\nimport { ALL_FUNCTION_CONTRACTS } from \"./function-registry/index.js\";\nimport type { FunctionContract } from \"./function-registry/types.js\";\n\nexport type FunctionRegistryInputAuditFinding = {\n contractName: string;\n projectionKeys: string[];\n acceptedKeys: string[];\n missingKeys: string[];\n};\n\ntype InputProjection = NonNullable<\n FunctionContract[\"convex\"]\n>[\"inputProjection\"];\n\nconst INTERNAL_OR_ALIAS_KEYS = new Set([\n \"__sdkSessionId\",\n \"actorId\",\n \"beliefId\",\n \"createdBy\",\n \"evidenceId\",\n \"id\",\n \"insightId\",\n \"nodeId\",\n \"ontologyId\",\n \"parentNodeId\",\n \"principalId\",\n \"projectId\",\n \"questionId\",\n \"tenantId\",\n \"trustedBypassAccessCheck\",\n \"userId\",\n \"versionId\",\n \"workspaceId\",\n]);\n\nconst INTENTIONAL_PROJECTION_READS: Record<string, readonly string[]> = {\n add_evidence: [\"linkedBeliefNodeId\", \"targetId\"],\n apply_lens_to_topic: [\"metadata\"],\n archive_belief: [\"reason\"],\n check_permission: [\"principalId\", \"tenantId\", \"userId\", \"workspaceId\"],\n claim_files: [\"paths\", \"touchedFiles\"],\n complete_task: [\"summary\"],\n create_belief: [\"formulation\"],\n discover: [\"prompt\", \"topicHint\"],\n filter_by_permission: [\"principalId\", \"tenantId\", \"userId\", \"workspaceId\"],\n get_change_history: [\"status\"],\n get_failure_log: [\"status\"],\n identity_whoami: [\"principalId\", \"tenantId\", \"userId\", \"workspaceId\"],\n ingest_observation: [\"reasoning\", \"trustedBypassAccessCheck\"],\n link_evidence: [\n \"beliefId\",\n \"beliefNodeId\",\n \"context\",\n \"evidenceNodeId\",\n \"globalId\",\n \"insightId\",\n \"topicId\",\n \"trustedBypassAccessCheck\",\n \"type\",\n ],\n link_evidence_to_belief: [\n \"beliefNodeId\",\n \"context\",\n \"evidenceNodeId\",\n \"globalId\",\n \"insightId\",\n \"targetId\",\n \"topicId\",\n \"trustedBypassAccessCheck\",\n \"type\",\n ],\n link_evidence_to_question: [\n \"context\",\n \"evidenceNodeId\",\n \"globalId\",\n \"impactScore\",\n \"insightId\",\n \"questionNodeId\",\n \"targetId\",\n \"topicId\",\n \"trustedBypassAccessCheck\",\n \"weight\",\n ],\n list_evidence: [\"status\"],\n manage_write_policy: [\"summary\"],\n merge: [\"decisionsReached\", \"keyFindings\", \"nextSteps\"],\n record_attempt: [\"reasoning\", \"trustedBypassAccessCheck\"],\n record_judgment: [\"reasoning\", \"trustedBypassAccessCheck\"],\n record_scope_learning: [\"reasoning\", \"trustedBypassAccessCheck\"],\n search_beliefs: [\"searchQuery\"],\n search_evidence: [\"query\", \"searchQuery\"],\n update_question_status: [\"answer\", \"answerStatus\", \"nodeId\", \"questionId\"],\n update_topic: [\"graphScopeProjectId\"],\n};\n\nfunction unwrapObjectSchema(\n schema: z.ZodTypeAny,\n): z.ZodObject<z.ZodRawShape> | undefined {\n let current = schema;\n while (true) {\n switch (current._def.typeName) {\n case z.ZodFirstPartyTypeKind.ZodEffects:\n current = current._def.schema;\n continue;\n case z.ZodFirstPartyTypeKind.ZodBranded:\n current = current._def.type;\n continue;\n default:\n return current instanceof z.ZodObject ? current : undefined;\n }\n }\n}\n\nfunction objectSchemaKeys(schema: z.ZodTypeAny): Set<string> {\n const objectSchema = unwrapObjectSchema(schema);\n if (!objectSchema) {\n return new Set();\n }\n const shape =\n typeof objectSchema._def.shape === \"function\"\n ? objectSchema._def.shape()\n : objectSchema._def.shape;\n return new Set(Object.keys(shape));\n}\n\nexport function projectionReadKeys(\n projection: InputProjection,\n): string[] {\n if (!projection) {\n return [];\n }\n const source = String(projection);\n const keys = new Set<string>();\n\n for (const match of source.matchAll(/\\binput\\s*\\.\\s*([A-Za-z_$][\\w$]*)/gu)) {\n keys.add(match[1]);\n }\n for (const match of source.matchAll(/\\binput\\s*\\[\\s*[\"']([^\"']+)[\"']\\s*\\]/gu)) {\n keys.add(match[1]);\n }\n\n return [...keys].sort();\n}\n\nfunction acceptedInputKeys(contract: FunctionContract): string[] {\n return [\n ...new Set([\n ...objectSchemaKeys(contract.args),\n ...objectSchemaKeys(contract.input),\n ...Object.keys(contract.mcp.parameters),\n \"__sdkSessionId\",\n ]),\n ].sort();\n}\n\nfunction allowedProjectionKeys(contractName: string): Set<string> {\n return new Set([\n ...INTERNAL_OR_ALIAS_KEYS,\n ...(INTENTIONAL_PROJECTION_READS[contractName] ?? []),\n ]);\n}\n\nexport function auditFunctionRegistryInputs(\n contracts: readonly FunctionContract[] = ALL_FUNCTION_CONTRACTS,\n): FunctionRegistryInputAuditFinding[] {\n return contracts.flatMap((contract) => {\n const projectionKeys = projectionReadKeys(contract.convex?.inputProjection);\n if (projectionKeys.length === 0) {\n return [];\n }\n\n const accepted = new Set(acceptedInputKeys(contract));\n const allowed = allowedProjectionKeys(contract.name);\n const missingKeys = projectionKeys.filter(\n (key) => !accepted.has(key) && !allowed.has(key),\n );\n\n if (missingKeys.length === 0) {\n return [];\n }\n\n return [\n {\n contractName: contract.name,\n projectionKeys,\n acceptedKeys: [...accepted].sort(),\n missingKeys,\n },\n ];\n });\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/function-registry-input-audit.ts"],"names":[],"mappings":"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","file":"function-registry-input-audit.js","sourcesContent":["import { z } from \"zod\";\nimport { ALL_FUNCTION_CONTRACTS } from \"./function-registry/index.js\";\nimport type { FunctionContract } from \"./function-registry/types.js\";\n\nexport type FunctionRegistryInputAuditFinding = {\n contractName: string;\n projectionKeys: string[];\n acceptedKeys: string[];\n missingKeys: string[];\n};\n\ntype InputProjection = NonNullable<\n FunctionContract[\"convex\"]\n>[\"inputProjection\"];\n\nconst INTERNAL_OR_ALIAS_KEYS = new Set([\n \"__sdkSessionId\",\n \"actorId\",\n \"beliefId\",\n \"createdBy\",\n \"evidenceId\",\n \"id\",\n \"insightId\",\n \"nodeId\",\n \"ontologyId\",\n \"parentNodeId\",\n \"principalId\",\n \"projectId\",\n \"questionId\",\n \"tenantId\",\n \"trustedBypassAccessCheck\",\n \"userId\",\n \"versionId\",\n \"workspaceId\",\n]);\n\nconst INTENTIONAL_PROJECTION_READS: Record<string, readonly string[]> = {\n add_evidence: [\"linkedBeliefNodeId\", \"targetId\"],\n apply_lens_to_topic: [\"metadata\"],\n archive_belief: [\"reason\"],\n check_permission: [\"principalId\", \"tenantId\", \"userId\", \"workspaceId\"],\n claim_files: [\"paths\", \"touchedFiles\"],\n complete_task: [\"summary\"],\n create_belief: [\"formulation\"],\n discover: [\"prompt\", \"topicHint\"],\n filter_by_permission: [\"principalId\", \"tenantId\", \"userId\", \"workspaceId\"],\n get_change_history: [\"status\"],\n get_failure_log: [\"status\"],\n identity_whoami: [\"principalId\", \"tenantId\", \"userId\", \"workspaceId\"],\n ingest_observation: [\"reasoning\", \"trustedBypassAccessCheck\"],\n link_evidence: [\n \"beliefId\",\n \"beliefNodeId\",\n \"context\",\n \"evidenceNodeId\",\n \"globalId\",\n \"insightId\",\n \"topicId\",\n \"trustedBypassAccessCheck\",\n \"type\",\n ],\n link_evidence_to_belief: [\n \"beliefNodeId\",\n \"context\",\n \"evidenceNodeId\",\n \"globalId\",\n \"insightId\",\n \"targetId\",\n \"topicId\",\n \"trustedBypassAccessCheck\",\n \"type\",\n ],\n link_evidence_to_question: [\n \"context\",\n \"evidenceNodeId\",\n \"globalId\",\n \"impactScore\",\n \"insightId\",\n \"questionNodeId\",\n \"targetId\",\n \"topicId\",\n \"trustedBypassAccessCheck\",\n \"weight\",\n ],\n list_evidence: [\"status\"],\n manage_write_policy: [\"summary\"],\n merge: [\"decisionsReached\", \"keyFindings\", \"nextSteps\"],\n record_attempt: [\"reasoning\", \"trustedBypassAccessCheck\"],\n record_judgment: [\"reasoning\", \"trustedBypassAccessCheck\"],\n record_scope_learning: [\"reasoning\", \"trustedBypassAccessCheck\"],\n search_beliefs: [\"searchQuery\"],\n search_evidence: [\"query\", \"searchQuery\"],\n update_question_status: [\"answer\", \"answerStatus\", \"nodeId\", \"questionId\"],\n update_topic: [\"graphScopeProjectId\"],\n};\n\nfunction unwrapObjectSchema(\n schema: z.ZodTypeAny,\n): z.ZodObject<z.ZodRawShape> | undefined {\n let current = schema;\n while (true) {\n switch (current._def.typeName) {\n case z.ZodFirstPartyTypeKind.ZodEffects:\n current = current._def.schema;\n continue;\n case z.ZodFirstPartyTypeKind.ZodBranded:\n current = current._def.type;\n continue;\n default:\n return current instanceof z.ZodObject ? current : undefined;\n }\n }\n}\n\nfunction objectSchemaKeys(schema: z.ZodTypeAny): Set<string> {\n const objectSchema = unwrapObjectSchema(schema);\n if (!objectSchema) {\n return new Set();\n }\n const shape =\n typeof objectSchema._def.shape === \"function\"\n ? objectSchema._def.shape()\n : objectSchema._def.shape;\n return new Set(Object.keys(shape));\n}\n\nexport function projectionReadKeys(\n projection: InputProjection,\n): string[] {\n if (!projection) {\n return [];\n }\n const source = String(projection);\n const keys = new Set<string>();\n\n for (const match of source.matchAll(/\\binput\\s*\\.\\s*([A-Za-z_$][\\w$]*)/gu)) {\n keys.add(match[1]);\n }\n for (const match of source.matchAll(/\\binput\\s*\\[\\s*[\"']([^\"']+)[\"']\\s*\\]/gu)) {\n keys.add(match[1]);\n }\n\n return [...keys].sort();\n}\n\nfunction acceptedInputKeys(contract: FunctionContract): string[] {\n const keys = [\n ...new Set([\n ...objectSchemaKeys(contract.args),\n ...objectSchemaKeys(contract.input),\n ...Object.keys(contract.mcp.parameters),\n \"__sdkSessionId\",\n ]),\n ];\n keys.sort();\n return keys;\n}\n\nfunction allowedProjectionKeys(contractName: string): Set<string> {\n return new Set([\n ...INTERNAL_OR_ALIAS_KEYS,\n ...(INTENTIONAL_PROJECTION_READS[contractName] ?? []),\n ]);\n}\n\nexport function auditFunctionRegistryInputs(\n contracts: readonly FunctionContract[] = ALL_FUNCTION_CONTRACTS,\n): FunctionRegistryInputAuditFinding[] {\n return contracts.flatMap((contract) => {\n const projectionKeys = projectionReadKeys(contract.convex?.inputProjection);\n if (projectionKeys.length === 0) {\n return [];\n }\n\n const accepted = new Set(acceptedInputKeys(contract));\n const allowed = allowedProjectionKeys(contract.name);\n const missingKeys = projectionKeys.filter(\n (key) => !accepted.has(key) && !allowed.has(key),\n );\n\n if (missingKeys.length === 0) {\n return [];\n }\n\n return [\n {\n contractName: contract.name,\n projectionKeys,\n acceptedKeys: [...accepted].sort(),\n missingKeys,\n },\n ];\n });\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -8,22 +8,22 @@ export { GRAPH_INTELLIGENCE_MODE_TOOL_NAMES, GRAPH_INTELLIGENCE_PUBLIC_TOOL_NAME
|
|
|
8
8
|
export { BELIEF_TYPE_BONUS, BeliefLatticeSeed, CONTEXT_PACK_SCHEMA_VERSION, CONTEXT_PACK_SECTION_KEYS, CONTEXT_RANKING_PROFILES, ContextCompilationMode, ContextPackBelief, ContextPackContradiction, ContextPackDeltaReport, ContextPackDiagnostics, ContextPackEntity, ContextPackEvidence, ContextPackFailure, ContextPackFailureContext, ContextPackInjectionPolicy, ContextPackQuestion, ContextPackRequestV1, ContextPackSectionKey, ContextPackSummary, ContextPackV1, ContextRankingProfile, DEFAULT_BELIEF_TYPE_BONUS, DEFAULT_COMPILATION_MODE, DEFAULT_ENTITY_LIMIT, DEFAULT_PRIORITY_SCORE, DEFAULT_RANKING_PROFILE, DEFAULT_SECTION_LIMIT, DEFAULT_SEVERITY_SCORE, DEFAULT_TOKEN_BUDGET, ENTITY_RANKING_WEIGHTS, MAX_ENTITY_LIMIT, MAX_SECTION_LIMIT, MAX_TOKEN_BUDGET, MIN_CONTRADICTION_BUDGET, MIN_TOKEN_BUDGET, MIN_TOKEN_ESTIMATE, PRIORITY_SCORES, PackWeightOverride, PublicCompiledContext, PublicContextBelief, PublicContextContradiction, PublicContextEntity, PublicContextEvidence, PublicContextInjectionPolicy, PublicContextQuestion, RANKING_WEIGHTS, RECENCY_HALF_LIFE_DAYS, RESOLVED_QUESTION_STATUSES, RankingWeightVector, SECTION_BUDGET_RATIOS, SEVERITY_SCORES, TOKENS_PER_WORD, VerificationObligation } from './context-pack.contract.js';
|
|
9
9
|
export { CreateDomainEventInput, DOMAIN_EVENT_TYPES, DOMAIN_EVENT_VERSION, DomainActorType, DomainEvent, DomainEventData, DomainEventType, DomainResourceType, EVENT_RETENTION_DEFAULT_DAYS, EventCursor, EventListQuery, EventListResult, ReplayEventsInput, ReplayEventsResult, WEBHOOK_MAX_ATTEMPTS, WEBHOOK_RETRY_DELAYS_MS, WebhookCreateInput, WebhookDeliveriesResult, WebhookDeliveryAttemptRecord, WebhookDeliveryRecord, WebhookDeliveryStatus, WebhookHealthResult, WebhookRecord, WebhookSecretMode, WebhookTestResult, WebhookUpdateInput, buildDomainEvent, compareEventCursor, createEventId, decodeEventCursor, emitDomainEvent, encodeEventCursor, inferActorType, isAfterCursor, normalizeRetentionDays, sortEventsByCursor } from './events.contract.js';
|
|
10
10
|
export { DecodedPrefixedId, decodePrefixedId, encodePrefixedId, hasPrefixedIdPrefix } from './ids.contract.js';
|
|
11
|
-
export { d as contractDsl } from './dsl-
|
|
11
|
+
export { d as contractDsl } from './dsl-djCRfuWC.js';
|
|
12
12
|
export { i as schemaContracts } from './index-O09U2xHk.js';
|
|
13
13
|
export { ComponentTableManifest, ComponentTableManifestSchema } from './schemas/component-table-manifest.js';
|
|
14
14
|
export { SLOpinionInput, SLOpinionInputSchema } from './schemas/sl-opinion.js';
|
|
15
|
-
export {
|
|
15
|
+
export { E as EdgePolicyEntry, a as EdgePolicyEntrySchema, b as EdgePolicyManifest, c as EdgePolicyManifestSchema, d as EdgePolicyViolation, e as EpistemicNodeType, f as EpistemicNodeTypeSchema, G as GraphRef, g as GraphRefSchema, h as assertEdgePolicyAllowed, i as findEdgePolicy } from './edge-policy-manifest-Byv6cQPP.js';
|
|
16
16
|
export { edgePolicyManifest } from './manifests/edge-policy-manifest.data.js';
|
|
17
17
|
export { INFISICAL_RUNTIME_MANIFEST, InfisicalRuntimeManifest } from './manifests/infisical-runtime-manifest.js';
|
|
18
18
|
export { CheckContext, CheckerKind, InvariantId, InvariantManifest, InvariantManifestSchema, InvariantResult, InvariantRule, InvariantSeverity } from './manifests/invariant-manifest.js';
|
|
19
19
|
export { TENANT_CLIENT_MANIFEST, TenantClientManifest } from './manifests/tenant-client-manifest.js';
|
|
20
20
|
export { ProjectionRegistry, projections } from './projections/index.js';
|
|
21
21
|
export * from './function-registry/index.js';
|
|
22
|
-
export { t as mcpToolsContract } from './tool-contracts-
|
|
22
|
+
export { t as mcpToolsContract } from './tool-contracts-B4iWhejG.js';
|
|
23
23
|
export { EntityConnectionMatch, EntityMatchCandidate, EntityTypeMatch, OntologyEntityType, rankEntityConnections, rankEntityTypeMatches, scoreEntityConnection, scoreEntityTypeMatch } from './v1/ontologies/v1.js';
|
|
24
24
|
export { LucernPrompt, LucernPromptModelHint, isLucernPrompt } from './prompt.contract.js';
|
|
25
25
|
export { AddEvidenceInput, AddWorktreeInput, BeliefResult, BisectConfidenceInput, BisectResult, BranchResult, CompileContextInput, CompiledContextResult, ConfidenceResult, ContradictionResult, CreateBeliefInput, CreateBranchInput, CreateEdgeInput, EdgeResult, EvidenceResult, FlagContradictionInput, ForkBeliefInput, ForkResult, JudgmentResult, LineageResult, LucernClient, LucernClientConfig, LucernGraphMethods, LucernWorkflowMethods, MergeInput, MergeResult, ModulateConfidenceInput, OpenPullRequestInput, PullRequestResult, PushInput, PushResult, QueryLineageInput, RecordJudgmentInput, RefineBeliefInput, SearchBeliefsInput, WorktreeResult } from './sdk-methods.contract.js';
|
|
26
|
-
export { s as sdkToolsContract } from './sdk-tools.contract-
|
|
26
|
+
export { s as sdkToolsContract } from './sdk-tools.contract-Ci8bkoai.js';
|
|
27
27
|
export { INFISICAL_RUNTIME_BOOTSTRAP_ENV, INFISICAL_RUNTIME_CONTRACT_VERSION, INFISICAL_RUNTIME_DEFAULT_API_URL, INFISICAL_RUNTIME_DEFAULT_PROJECT_ID, INFISICAL_RUNTIME_DELIVERY_MODES, INFISICAL_RUNTIME_ENVIRONMENTS, INFISICAL_RUNTIME_PATHS, INFISICAL_RUNTIME_SURFACES, INFISICAL_RUNTIME_SURFACE_IDS, InfisicalRuntimeBootstrapEnv, InfisicalRuntimeDeliveryMode, InfisicalRuntimeEnvironment, InfisicalRuntimePath, InfisicalRuntimePathDefinition, InfisicalRuntimePathId, InfisicalRuntimeSurface, InfisicalRuntimeSurfaceDefinition, InfisicalRuntimeSurfaceId, InfisicalRuntimeVariable, findInfisicalRuntimePath, findInfisicalRuntimeSurface } from './infisical-runtime.contract.js';
|
|
28
28
|
export { TENANT_CLIENT_AUTH_MODES, TENANT_CLIENT_CAPABILITIES, TENANT_CLIENT_COMPONENT_CONFIG_IMPORTS, TENANT_CLIENT_CONTRACT_VERSION, TENANT_CLIENT_FORBIDDEN_IMPORT_PATTERNS, TENANT_CLIENT_FORBIDDEN_INSTALL_TOKEN_INFISICAL_PATHS, TENANT_CLIENT_FORBIDDEN_SECRET_ENV, TENANT_CLIENT_FULL_SUITE_PACKAGE_NAMES, TENANT_CLIENT_INSTALLABLE_PACKAGES, TENANT_CLIENT_INSTALL_PROFILES, TENANT_CLIENT_INSTALL_TOKEN_ENV, TENANT_CLIENT_INSTALL_TOKEN_INFISICAL_PATH, TENANT_CLIENT_ISOLATION_RULES, TENANT_CLIENT_OPTIONAL_CONTEXT_FIELDS, TENANT_CLIENT_PRINCIPAL_TYPES, TENANT_CLIENT_PUBLIC_IMPORTS, TENANT_CLIENT_REQUIRED_CONTEXT_FIELDS, TENANT_CLIENT_REQUIRED_SDK_NAMESPACES, TenantClientAllowedImport, TenantClientAuthMode, TenantClientCapability, TenantClientCapabilityId, TenantClientComponentConfigImport, TenantClientForbiddenImportPattern, TenantClientForbiddenImportPatternId, TenantClientForbiddenInstallTokenInfisicalPath, TenantClientForbiddenSecretEnv, TenantClientImportClassification, TenantClientImportDecision, TenantClientInstallProfile, TenantClientInstallProfileId, TenantClientInstallablePackage, TenantClientInstallablePackageName, TenantClientIsolationRule, TenantClientOptionalContextField, TenantClientPackageRole, TenantClientPrincipalType, TenantClientPublicImport, TenantClientPublicPackage, TenantClientPublicSurface, TenantClientRequiredContextField, TenantClientRequiredSdkNamespace, assertTenantClientImportAllowed, classifyTenantClientImport, findTenantClientInstallablePackage, formatTenantClientImportViolation, isTenantClientAllowedImport, isTenantClientComponentConfigImport, isTenantClientInstallablePackage, isTenantClientPublicImport } from './tenant-client.contract.js';
|
|
29
29
|
export { TENANT_BOOTSTRAP_FORBIDDEN_SEED_TABLES, TENANT_BOOTSTRAP_SEED_AUTH_METADATA_FIELDS, TENANT_BOOTSTRAP_SEED_COMPONENTS, TENANT_BOOTSTRAP_SEED_CONTRACT_VERSION, TENANT_BOOTSTRAP_SEED_MANIFEST, TENANT_BOOTSTRAP_SEED_TABLES, TENANT_BOOTSTRAP_TABLE_REQUIREMENTS, TenantBootstrapCopyMode, TenantBootstrapForbiddenSeedTable, TenantBootstrapPrepopulation, TenantBootstrapSeedAuthMetadataField, TenantBootstrapSeedComponent, TenantBootstrapSeedScope, TenantBootstrapSeedTable, TenantBootstrapSeedTableName, TenantBootstrapTableRequirement, findTenantBootstrapSeedTable, findTenantBootstrapTableRequirement, isTenantBootstrapForbiddenSeedTable, isTenantBootstrapSeedTable } from './tenant-bootstrap-seed.contract.js';
|
|
@@ -31,11 +31,11 @@ export { TENANT_BOOTSTRAP_TEMPLATE_ACTOR, TENANT_BOOTSTRAP_TEMPLATE_SEED_VERSION
|
|
|
31
31
|
export { LexicalRerankOptions, LexicalSignal, LexicalStrategy, PreparedLexicalQuery, bigramTokenize, jaccardSimilarity, prepareLexicalQuery, rankWindowScore, rerankLexicalWindow, scoreLexicalSignal, scoreLexicalSignals, stemToken, tokenOverlapScore, tokenizeSearchText, wordOverlapScore, wordTokenize } from './text-matching.contract.js';
|
|
32
32
|
export { ROOT_TOPIC_ID, TopicDoc, collectTopicNeighborhood } from './v1/topics/v1.js';
|
|
33
33
|
export { CANONICAL_WORKFLOW_DEFINITIONS, DEFAULT_TIER_APPROVAL_MODE, DEFAULT_WORKFLOW_AUTO_FIX_POLICY, EngineeringBriefOutput, InboxSummaryOutput, MORNING_BRIEF_WORKFLOW_ID, NIGHTLY_RECONCILIATION_WORKFLOW_ID, PipelineBriefOutput, ResearchMemoOutput, StrategyArtifactOutput, StructuredPayloadOutput, WORKFLOW_ACTION_KINDS, WORKFLOW_APPROVAL_MODES, WORKFLOW_AUTO_FIX_MODES, WORKFLOW_HOOK_EVENTS, WORKFLOW_INTEGRITY_CHECKS, WORKFLOW_MUTATION_TIERS, WORKFLOW_OUTPUT_KINDS, WORKFLOW_PROOF_ARTIFACT_KINDS, WORKFLOW_RUNTIME_SCHEMA_VERSION, WORKFLOW_RUN_STATUSES, WORKFLOW_STAFFING_HINTS, WORKFLOW_TRIGGER_KINDS, WorkflowActionContract, WorkflowActionKind, WorkflowApprovalMode, WorkflowApprovalPolicy, WorkflowAutoFixMode, WorkflowAutoFixPolicy, WorkflowDefinitionV1, WorkflowHookContract, WorkflowHookEvent, WorkflowIntegrityCheckId, WorkflowMutationTier, WorkflowOutputBase, WorkflowOutputContract, WorkflowOutputKind, WorkflowProofArtifact, WorkflowProofArtifactKind, WorkflowRunReceiptV1, WorkflowRunStatus, WorkflowStaffingHint, WorkflowTriggerContract, WorkflowTriggerKind } from './workflow-runtime.contract.js';
|
|
34
|
+
export { ProjectionDef, defineProjection } from './projections/projection-dsl.js';
|
|
34
35
|
export { createEvidenceProjection } from './projections/create-evidence.projection.js';
|
|
35
36
|
export { listBeliefsProjection } from './projections/list-beliefs.projection.js';
|
|
36
37
|
export { listTasksProjection } from './projections/list-tasks.projection.js';
|
|
37
38
|
export { modulateConfidenceProjection } from './projections/modulate-confidence.projection.js';
|
|
38
|
-
export { ProjectionDef, defineProjection } from './projections/projection-dsl.js';
|
|
39
39
|
import './generated/tableOwnership.js';
|
|
40
40
|
import './defineFunction-DO97DKs4.js';
|
|
41
41
|
import 'zod';
|
package/dist/index.js
CHANGED
|
@@ -1508,9 +1508,6 @@ function encodeLiteral(value) {
|
|
|
1508
1508
|
}
|
|
1509
1509
|
return JSON.stringify(value);
|
|
1510
1510
|
}
|
|
1511
|
-
function quoteKey(value) {
|
|
1512
|
-
return JSON.stringify(value);
|
|
1513
|
-
}
|
|
1514
1511
|
function sortEntries(entries) {
|
|
1515
1512
|
return [...entries].sort(([left], [right]) => left.localeCompare(right));
|
|
1516
1513
|
}
|
|
@@ -1673,7 +1670,7 @@ function convertSchemaInner(schema, state, path) {
|
|
|
1673
1670
|
convertSchema(value, state, [...path, key])
|
|
1674
1671
|
]);
|
|
1675
1672
|
return {
|
|
1676
|
-
source: `v.object({ ${convertedFields.map(([key, converted]) => `${
|
|
1673
|
+
source: `v.object({ ${convertedFields.map(([key, converted]) => `${JSON.stringify(key)}: ${converted.source}`).join(", ")} })`,
|
|
1677
1674
|
defaults: convertedFields.flatMap(([, converted]) => converted.defaults)
|
|
1678
1675
|
};
|
|
1679
1676
|
}
|
|
@@ -6487,6 +6484,11 @@ var TENANT_CLIENT_INSTALLABLE_PACKAGES = [
|
|
|
6487
6484
|
role: "sdk_dependency",
|
|
6488
6485
|
directTenantImport: false
|
|
6489
6486
|
},
|
|
6487
|
+
{
|
|
6488
|
+
packageName: "@lucern/graph-sync",
|
|
6489
|
+
role: "host_addon_runtime",
|
|
6490
|
+
directTenantImport: true
|
|
6491
|
+
},
|
|
6490
6492
|
{
|
|
6491
6493
|
packageName: "@lucern/identity",
|
|
6492
6494
|
role: "component_runtime",
|
|
@@ -6565,6 +6567,12 @@ var TENANT_CLIENT_INSTALL_PROFILES = [
|
|
|
6565
6567
|
packageNames: ["@lucern/identity", "@lucern/reasoning-kernel"],
|
|
6566
6568
|
dependencyField: "dependencies"
|
|
6567
6569
|
},
|
|
6570
|
+
{
|
|
6571
|
+
id: "graph_mirroring_addon",
|
|
6572
|
+
description: "Optional tenant Convex host install for Neo4j graph projection, edge topology writes, backfill, health checks, and query proxy helpers.",
|
|
6573
|
+
packageNames: ["@lucern/graph-sync"],
|
|
6574
|
+
dependencyField: "dependencies"
|
|
6575
|
+
},
|
|
6568
6576
|
{
|
|
6569
6577
|
id: "operator_cli",
|
|
6570
6578
|
description: "Developer/operator install for the `lucern` binary, including tenant bootstrap seed commands.",
|
|
@@ -6609,6 +6617,12 @@ var TENANT_CLIENT_PUBLIC_IMPORTS = [
|
|
|
6609
6617
|
subpaths: "published_exports",
|
|
6610
6618
|
description: "MCP client/server entry points and hosted route helpers."
|
|
6611
6619
|
},
|
|
6620
|
+
{
|
|
6621
|
+
packageName: "@lucern/graph-sync",
|
|
6622
|
+
surface: "runtime",
|
|
6623
|
+
subpaths: "published_exports",
|
|
6624
|
+
description: "Optional Neo4j graph mirroring host actions, edge API, query proxy, backfill, and health helpers."
|
|
6625
|
+
},
|
|
6612
6626
|
{
|
|
6613
6627
|
packageName: "@lucern/contracts",
|
|
6614
6628
|
surface: "contract",
|
|
@@ -6714,6 +6728,12 @@ var TENANT_CLIENT_CAPABILITIES = [
|
|
|
6714
6728
|
surfaces: ["@lucern/sdk", "@lucern/cli", "@lucern/mcp"],
|
|
6715
6729
|
requiredContextFields: TENANT_CLIENT_REQUIRED_CONTEXT_FIELDS
|
|
6716
6730
|
},
|
|
6731
|
+
{
|
|
6732
|
+
id: "reasoning.graph_mirroring.install",
|
|
6733
|
+
description: "Install and run the optional Neo4j graph mirror for paid or enterprise tenant deployments.",
|
|
6734
|
+
surfaces: ["@lucern/graph-sync", "@lucern/cli"],
|
|
6735
|
+
requiredContextFields: TENANT_CLIENT_REQUIRED_CONTEXT_FIELDS
|
|
6736
|
+
},
|
|
6717
6737
|
{
|
|
6718
6738
|
id: "workflow.worktree_lifecycle",
|
|
6719
6739
|
description: "Create, review, merge, and close scoped worktrees.",
|
|
@@ -7146,8 +7166,11 @@ function compactRecord(input) {
|
|
|
7146
7166
|
Object.entries(input).filter(([, value]) => value !== void 0)
|
|
7147
7167
|
);
|
|
7148
7168
|
}
|
|
7169
|
+
function isRecord(value) {
|
|
7170
|
+
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
7171
|
+
}
|
|
7149
7172
|
function recordValue(value) {
|
|
7150
|
-
return
|
|
7173
|
+
return isRecord(value) ? value : {};
|
|
7151
7174
|
}
|
|
7152
7175
|
var createEvidenceProjection = defineProjection({
|
|
7153
7176
|
contractName: "create_evidence",
|
|
@@ -7981,9 +8004,16 @@ var ADD_WORKTREE = {
|
|
|
7981
8004
|
},
|
|
7982
8005
|
projectId: {
|
|
7983
8006
|
type: "string",
|
|
7984
|
-
description: "Legacy topicId alias"
|
|
8007
|
+
description: "Legacy topicId alias or resolver hint"
|
|
8008
|
+
},
|
|
8009
|
+
topicId: {
|
|
8010
|
+
type: "string",
|
|
8011
|
+
description: "Optional topic scope hint for resolver validation"
|
|
8012
|
+
},
|
|
8013
|
+
topicHint: {
|
|
8014
|
+
type: "string",
|
|
8015
|
+
description: "Natural-language topic hint for automatic topic resolution"
|
|
7985
8016
|
},
|
|
7986
|
-
topicId: { type: "string", description: "Optional topic scope hint" },
|
|
7987
8017
|
branchId: {
|
|
7988
8018
|
type: "string",
|
|
7989
8019
|
description: "The branch this worktree investigates"
|
|
@@ -8081,6 +8111,22 @@ var ADD_WORKTREE = {
|
|
|
8081
8111
|
type: "string",
|
|
8082
8112
|
description: "Optional domain pack whose shaping hooks should influence generated questions and tasks"
|
|
8083
8113
|
},
|
|
8114
|
+
tags: {
|
|
8115
|
+
type: "array",
|
|
8116
|
+
description: "Additional topic-resolution tags for the worktree"
|
|
8117
|
+
},
|
|
8118
|
+
touchedPaths: {
|
|
8119
|
+
type: "array",
|
|
8120
|
+
description: "File paths used as topic-resolution signals"
|
|
8121
|
+
},
|
|
8122
|
+
sourceRef: {
|
|
8123
|
+
type: "string",
|
|
8124
|
+
description: "Source reference used as a topic-resolution signal"
|
|
8125
|
+
},
|
|
8126
|
+
sourceKind: {
|
|
8127
|
+
type: "string",
|
|
8128
|
+
description: "Source kind used as a topic-resolution signal"
|
|
8129
|
+
},
|
|
8084
8130
|
campaign: {
|
|
8085
8131
|
type: "number",
|
|
8086
8132
|
description: "Top-level pipeline campaign number. Campaigns define the outer execution slice."
|
|
@@ -8118,7 +8164,7 @@ var ADD_WORKTREE = {
|
|
|
8118
8164
|
description: "Timestamp when worktree metadata was last reconciled"
|
|
8119
8165
|
}
|
|
8120
8166
|
},
|
|
8121
|
-
required: ["title"
|
|
8167
|
+
required: ["title"],
|
|
8122
8168
|
response: {
|
|
8123
8169
|
description: "The created worktree",
|
|
8124
8170
|
fields: {
|
|
@@ -9821,18 +9867,60 @@ var CREATE_TASK = {
|
|
|
9821
9867
|
name: "create_task",
|
|
9822
9868
|
description: "Create an execution task tied to the reasoning state. Like `git task` \u2014 tracks concrete work items (calls to make, data to gather, analyses to run) linked to questions, beliefs, or worktrees.",
|
|
9823
9869
|
parameters: {
|
|
9824
|
-
title: { type: "string", description: "Task
|
|
9870
|
+
title: { type: "string", description: "Task title" },
|
|
9825
9871
|
topicId: { type: "string", description: "Topic scope" },
|
|
9872
|
+
description: {
|
|
9873
|
+
type: "string",
|
|
9874
|
+
description: "Long-form task description"
|
|
9875
|
+
},
|
|
9826
9876
|
taskType: {
|
|
9827
9877
|
type: "string",
|
|
9828
|
-
description: "
|
|
9829
|
-
enum: [
|
|
9878
|
+
description: "Task taxonomy",
|
|
9879
|
+
enum: [
|
|
9880
|
+
"general",
|
|
9881
|
+
"find_evidence",
|
|
9882
|
+
"verify_claim",
|
|
9883
|
+
"research",
|
|
9884
|
+
"review",
|
|
9885
|
+
"interview",
|
|
9886
|
+
"analysis",
|
|
9887
|
+
"track_metrics"
|
|
9888
|
+
]
|
|
9889
|
+
},
|
|
9890
|
+
priority: {
|
|
9891
|
+
type: "string",
|
|
9892
|
+
description: "Priority",
|
|
9893
|
+
enum: ["urgent", "high", "medium", "low"]
|
|
9894
|
+
},
|
|
9895
|
+
status: {
|
|
9896
|
+
type: "string",
|
|
9897
|
+
description: "Initial status (defaults to todo)",
|
|
9898
|
+
enum: ["todo", "in_progress", "blocked", "done"]
|
|
9899
|
+
},
|
|
9900
|
+
linkedWorktreeId: {
|
|
9901
|
+
type: "string",
|
|
9902
|
+
description: "Worktree this task belongs to"
|
|
9903
|
+
},
|
|
9904
|
+
linkedBeliefId: {
|
|
9905
|
+
type: "string",
|
|
9906
|
+
description: "Belief this task supports"
|
|
9830
9907
|
},
|
|
9831
9908
|
linkedQuestionId: {
|
|
9832
9909
|
type: "string",
|
|
9833
9910
|
description: "Question this task addresses"
|
|
9834
9911
|
},
|
|
9835
|
-
|
|
9912
|
+
assigneeId: {
|
|
9913
|
+
type: "string",
|
|
9914
|
+
description: "Principal assigned to the task"
|
|
9915
|
+
},
|
|
9916
|
+
dueDate: {
|
|
9917
|
+
type: "number",
|
|
9918
|
+
description: "Due date as epoch milliseconds"
|
|
9919
|
+
},
|
|
9920
|
+
tags: {
|
|
9921
|
+
type: "array",
|
|
9922
|
+
description: "Free-form string tags"
|
|
9923
|
+
}
|
|
9836
9924
|
},
|
|
9837
9925
|
required: ["title"],
|
|
9838
9926
|
response: {
|