@devflow-tools/delivery-line 0.18.22 → 0.18.23
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/artifacts/artifact-contract.d.ts +5 -0
- package/dist/artifacts/artifact-contract.d.ts.map +1 -1
- package/dist/artifacts/artifact-contract.js +4 -1
- package/dist/artifacts/artifact-contract.js.map +1 -1
- package/dist/composition.d.ts +2 -1
- package/dist/composition.d.ts.map +1 -1
- package/dist/composition.js +1 -0
- package/dist/composition.js.map +1 -1
- package/dist/domain/clarification-policy.d.ts +35 -0
- package/dist/domain/clarification-policy.d.ts.map +1 -0
- package/dist/domain/clarification-policy.js +16 -0
- package/dist/domain/clarification-policy.js.map +1 -0
- package/dist/domain/plugin-capability.d.ts +20 -1
- package/dist/domain/plugin-capability.d.ts.map +1 -1
- package/dist/domain/plugin-capability.js +5 -2
- package/dist/domain/plugin-capability.js.map +1 -1
- package/dist/domain/task-semantics.d.ts +25 -0
- package/dist/domain/task-semantics.d.ts.map +1 -0
- package/dist/domain/task-semantics.js +44 -0
- package/dist/domain/task-semantics.js.map +1 -0
- package/dist/domain/types.d.ts +67 -1
- package/dist/domain/types.d.ts.map +1 -1
- package/dist/domain/types.js.map +1 -1
- package/dist/facade/delivery-line-facade.d.ts +16 -0
- package/dist/facade/delivery-line-facade.d.ts.map +1 -1
- package/dist/facade/delivery-line-facade.js +61 -8
- package/dist/facade/delivery-line-facade.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/persistence/schema.d.ts +1 -1
- package/dist/persistence/schema.d.ts.map +1 -1
- package/dist/persistence/schema.js +54 -0
- package/dist/persistence/schema.js.map +1 -1
- package/dist/persistence/sqlite-store.d.ts +21 -1
- package/dist/persistence/sqlite-store.d.ts.map +1 -1
- package/dist/persistence/sqlite-store.js +86 -0
- package/dist/persistence/sqlite-store.js.map +1 -1
- package/dist/ports/index.d.ts +31 -1
- package/dist/ports/index.d.ts.map +1 -1
- package/dist/runtime/context-binder.d.ts +23 -0
- package/dist/runtime/context-binder.d.ts.map +1 -1
- package/dist/runtime/context-binder.js +30 -0
- package/dist/runtime/context-binder.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery-line-facade.d.ts","sourceRoot":"","sources":["../../src/facade/delivery-line-facade.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,QAAQ,EAA+D,KAAK,YAAY,EAA0C,KAAK,kBAAkB,EAAoB,KAAK,qBAAqB,EAAgD,MAAM,oBAAoB,CAAC;AAInT,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAMrF,OAAO,EAA4B,KAAK,cAAc,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"delivery-line-facade.d.ts","sourceRoot":"","sources":["../../src/facade/delivery-line-facade.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,8 @@ import { applyHostRoutingChange } from '../runtime/host-routing.js';
|
|
|
10
10
|
import { renderIntentMarkdown, renderPlanJson, renderPlanMarkdown, renderSpecMarkdown, renderStageProjectionMarkdown, validateIntentMarkdown, validatePlanMarkdown, validateSpecMarkdown } from '../artifacts/artifact-contract.js';
|
|
11
11
|
import { isAllowedFile } from '@devflow-tools/workflow-engine';
|
|
12
12
|
import { selectPluginCapabilities } from '../domain/plugin-capability.js';
|
|
13
|
+
import { deriveTaskSemantics } from '../domain/task-semantics.js';
|
|
14
|
+
import { buildRequirementUnknowns, evaluateClarificationPolicy } from '../domain/clarification-policy.js';
|
|
13
15
|
const stageApprovals = new Set(['intent', 'spec', 'plan', 'release']);
|
|
14
16
|
const defaults = { maxInteractionTurns: 12, maxTaskAttempts: 3, maxWallTimeMs: 3_600_000, maxToolCalls: 100 };
|
|
15
17
|
function requireIdentity(input) {
|
|
@@ -20,6 +22,15 @@ function requireCreateIdentity(input) {
|
|
|
20
22
|
if (!input.actor?.id || !input.sessionId || !input.executionId || !input.idempotencyKey)
|
|
21
23
|
throw new DeliveryLineError('MISSING_PREREQUISITE', 'actor, session, execution and idempotency identities are required');
|
|
22
24
|
}
|
|
25
|
+
function requireTrustedUserDecision(input) {
|
|
26
|
+
if (input.actor.kind !== 'human') {
|
|
27
|
+
throw new DeliveryLineError('USER_DECISION_REQUIRES_TRUSTED_CHANNEL', 'This decision must come from the host trusted user channel.', {
|
|
28
|
+
requiredChannel: 'host-attestation',
|
|
29
|
+
actorKind: input.actor.kind,
|
|
30
|
+
recoveryAction: 'Present the pending decision and ask the real user to submit the canonical /devflow:* command.',
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
23
34
|
function hash(value) { return createHash('sha256').update(JSON.stringify(value)).digest('hex'); }
|
|
24
35
|
function contentHash(value) { return createHash('sha256').update(value).digest('hex'); }
|
|
25
36
|
function nextActionsFor(record) {
|
|
@@ -131,6 +142,10 @@ export class DeliveryLineFacade {
|
|
|
131
142
|
const worktreeMode = input.worktreeMode ?? 'isolated';
|
|
132
143
|
const admission = await this.ports.worktreeAdmission?.inspect({ projectRoot });
|
|
133
144
|
const stackFacts = await this.ports.stackFacts?.inspect({ projectRoot });
|
|
145
|
+
const semanticFacts = await this.ports.semantic?.analyze({ projectRoot, request: input.title, ...(stackFacts ? { stackFacts: stackFacts.fingerprint } : {}) });
|
|
146
|
+
const taskSemantics = deriveTaskSemantics(input.title, stackFacts ? { fingerprint: stackFacts.fingerprint, detectedStacks: stackFacts.detectedStacks } : undefined, semanticFacts);
|
|
147
|
+
const unknownRegistry = buildRequirementUnknowns(taskSemantics, taskSemantics.evidenceRefs);
|
|
148
|
+
const clarificationPolicy = evaluateClarificationPolicy({ request: input.title, semantics: taskSemantics, unknowns: unknownRegistry, evidenceRefs: taskSemantics.evidenceRefs });
|
|
134
149
|
const runtimeProjection = await this.ports.runtimeActivation?.capture({ projectRoot, sessionId: input.sessionId, executionId: input.executionId, revision: baseRef }) ?? {
|
|
135
150
|
host: 'external', provider: 'none', model: 'none', permissions: { mode: 'external-candidate-only' }, probeReceiptHash: 'not-applicable',
|
|
136
151
|
};
|
|
@@ -146,15 +161,18 @@ export class DeliveryLineFacade {
|
|
|
146
161
|
const admissionBlocked = Boolean(admission && !admission.clean && (worktreeMode === 'auto' || worktreeMode === 'clean'));
|
|
147
162
|
const record = {
|
|
148
163
|
id, projectRoot, baseRef, integrationRef: `refs/devflow/delivery/${id}`, targetRef: input.targetRef,
|
|
149
|
-
title: input.title, source: input.source ?? 'human', riskTier, autonomy: input.autonomy ?? 'manual', stage: 'clarifying',
|
|
164
|
+
title: input.title, originalRequest: input.title, source: input.source ?? 'human', riskTier, autonomy: input.autonomy ?? 'manual', stage: 'clarifying',
|
|
150
165
|
budgets: { ...defaults, ...input.budgets }, artifacts: [], tasks: [], approvals: [], decisions: [], evidence: [],
|
|
151
166
|
approvalStates: {},
|
|
152
|
-
interaction: { phase: 'clarification', status: 'awaiting_user', turn: 1, openQuestions: [input.existingImplementations?.length ? `Existing implementations were detected (${input.existingImplementations.join(', ')}). Which implementation should be extended, replaced, or retained?` : 'What outcome and acceptance criteria should this change satisfy?'], blockingUnknowns: [input.existingImplementations?.length ? `Existing implementations were detected (${input.existingImplementations.join(', ')}). Which implementation should be extended, replaced, or retained?` : 'What outcome and acceptance criteria should this change satisfy?'], summaryRefs: [] },
|
|
167
|
+
interaction: { phase: 'clarification', status: 'awaiting_user', turn: 1, openQuestions: [input.existingImplementations?.length ? `Existing implementations were detected (${input.existingImplementations.join(', ')}). Which implementation should be extended, replaced, or retained?` : unknownRegistry[0]?.question ?? 'What outcome and acceptance criteria should this change satisfy?'], blockingUnknowns: [input.existingImplementations?.length ? `Existing implementations were detected (${input.existingImplementations.join(', ')}). Which implementation should be extended, replaced, or retained?` : unknownRegistry[0]?.question ?? 'What outcome and acceptance criteria should this change satisfy?'], summaryRefs: [] },
|
|
153
168
|
createdBy: input.actor, sessionId: input.sessionId, executionId: input.executionId, createdAt: now, updatedAt: now, version: 0, contextReceipt, worktreeMode,
|
|
154
169
|
runtimeActivation: { ...activationBody, snapshotHash: hash(activationBody) },
|
|
155
170
|
...(input.existingImplementations?.length ? { existingImplementations: [...input.existingImplementations] } : {}),
|
|
156
171
|
...(contextQuality ? { contextQuality } : {}),
|
|
157
172
|
...(stackFacts ? { stackFacts: { ...stackFacts, capturedAt: now } } : {}),
|
|
173
|
+
taskSemantics,
|
|
174
|
+
unknownRegistry,
|
|
175
|
+
clarificationPolicy,
|
|
158
176
|
};
|
|
159
177
|
if (admissionBlocked) {
|
|
160
178
|
record.stage = 'held';
|
|
@@ -166,6 +184,32 @@ export class DeliveryLineFacade {
|
|
|
166
184
|
return this.view(record);
|
|
167
185
|
}
|
|
168
186
|
async status(caseId) { return this.view(await this.ports.store.get(caseId)); }
|
|
187
|
+
async proposeClarification(caseId, input) {
|
|
188
|
+
requireIdentity(input);
|
|
189
|
+
if (input.actor.kind !== 'agent')
|
|
190
|
+
throw new DeliveryLineError('UNAUTHORIZED_ROLE', 'only an agent may propose clarification; a trusted user must resolve it');
|
|
191
|
+
return this.mutate(caseId, input, 'proposal.clarification', async (record) => {
|
|
192
|
+
if (!input.question.trim())
|
|
193
|
+
throw new DeliveryLineError('MISSING_PREREQUISITE', 'clarification question is required');
|
|
194
|
+
const nextTurn = record.interaction.turn + 1;
|
|
195
|
+
record.interaction = { ...record.interaction, status: 'awaiting_user', turn: nextTurn, openQuestions: [input.question], blockingUnknowns: [input.question] };
|
|
196
|
+
await this.ports.store.createPendingDecision?.({ id: `${record.id}:decision:${nextTurn}`, caseId: record.id, kind: 'clarification', caseVersion: record.version, turn: nextTurn, targetDecisionHash: hash({ caseId: record.id, question: input.question, options: input.options ?? [] }), options: input.options ?? [], status: 'pending', createdAt: Date.now() });
|
|
197
|
+
return record;
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
async proposeOptions(caseId, input) {
|
|
201
|
+
requireIdentity(input);
|
|
202
|
+
if (input.actor.kind !== 'agent')
|
|
203
|
+
throw new DeliveryLineError('UNAUTHORIZED_ROLE', 'only an agent may propose options; a trusted user must select one');
|
|
204
|
+
return this.mutate(caseId, input, 'proposal.options', async (record) => {
|
|
205
|
+
if (!input.question.trim() || input.options.length < 2)
|
|
206
|
+
throw new DeliveryLineError('MISSING_PREREQUISITE', 'at least two materially different options are required');
|
|
207
|
+
const nextTurn = record.interaction.turn + 1;
|
|
208
|
+
record.interaction = { ...record.interaction, status: 'awaiting_user', turn: nextTurn, openQuestions: [input.question], blockingUnknowns: [input.question] };
|
|
209
|
+
await this.ports.store.createPendingDecision?.({ id: `${record.id}:decision:${nextTurn}`, caseId: record.id, kind: 'option_selection', caseVersion: record.version, turn: nextTurn, targetDecisionHash: hash({ caseId: record.id, question: input.question, options: input.options }), options: input.options, status: 'pending', createdAt: Date.now() });
|
|
210
|
+
return record;
|
|
211
|
+
});
|
|
212
|
+
}
|
|
169
213
|
async routeHost(caseId, input) {
|
|
170
214
|
requireIdentity(input);
|
|
171
215
|
return this.mutate(caseId, input, 'host.routing_changed', record => applyHostRoutingChange(record, input.snapshot, input.executionAuthority));
|
|
@@ -189,6 +233,7 @@ export class DeliveryLineFacade {
|
|
|
189
233
|
}
|
|
190
234
|
async answer(caseId, input) {
|
|
191
235
|
requireIdentity(input);
|
|
236
|
+
requireTrustedUserDecision(input);
|
|
192
237
|
return this.mutate(caseId, input, 'interaction.answered', async (record) => {
|
|
193
238
|
if (!['clarifying', 'designing'].includes(record.stage))
|
|
194
239
|
throw new DeliveryLineError('INVALID_TRANSITION', 'interaction answers are only accepted during clarification or design', { currentStage: record.stage, allowedStages: ['clarifying', 'designing'] });
|
|
@@ -212,7 +257,7 @@ export class DeliveryLineFacade {
|
|
|
212
257
|
const decisionHash = hash({ questionId, optionId: input.optionId, selectedLabel, rawAnswer, acceptanceCriteria, optionsSnapshot });
|
|
213
258
|
record.decisions.push({ id: randomUUID(), kind: 'product', questionId, question, options: optionsSnapshot.map(option => option.label), optionsSnapshot, optionId: input.optionId, selectedLabel, rawAnswer, acceptanceCriteria, decisionHash, sessionId: input.sessionId, toolUseId: input.toolUseId, decision: selectedLabel, decidedBy: input.actor, artifactHash: decisionHash });
|
|
214
259
|
if (record.interaction.phase === 'clarification')
|
|
215
|
-
record.artifacts.push(await this.createArtifact(record, 'intent', renderIntentMarkdown({ title: record.title, problem: selectedLabel, outcome: selectedLabel, answer: rawAnswer, contextQuality: record.contextQuality, affectedSystems: [record.projectRoot], constraints: ['Respect the approved Delivery Line gates.'], successCriteria: [selectedLabel, ...acceptanceCriteria], openQuestions: record.interaction.blockingUnknowns, actor: input.actor }), input.actor));
|
|
260
|
+
record.artifacts.push(await this.createArtifact(record, 'intent', renderIntentMarkdown({ title: record.title, originalRequest: record.originalRequest, problem: selectedLabel, outcome: selectedLabel, answer: rawAnswer, contextQuality: record.contextQuality, affectedSystems: [record.projectRoot], constraints: ['Respect the approved Delivery Line gates.'], successCriteria: [selectedLabel, ...acceptanceCriteria], openQuestions: record.taskSemantics && record.taskSemantics.confidence > 0 ? (record.unknownRegistry?.filter(item => item.blocking).map(item => item.question) ?? []) : record.interaction.blockingUnknowns, unknownRegistry: record.taskSemantics && record.taskSemantics.confidence > 0 ? record.unknownRegistry : undefined, actor: input.actor }), input.actor));
|
|
216
261
|
await this.createProjectionArtifact(record, 'stack-facts.md', 'Stack facts', 'Project stack evidence bound at case creation.', { baseRef: record.baseRef, targetRef: record.targetRef, projectRoot: record.projectRoot }, input.actor);
|
|
217
262
|
await this.createProjectionArtifact(record, 'decisions.md', 'Decisions', 'Current-turn decision ledger projection.', { decisionHash, questionId, optionId: input.optionId, selectedLabel }, input.actor);
|
|
218
263
|
record.interaction = appendInteractionSummary(record.interaction, { id: randomUUID(), phase: record.interaction.phase, turn: input.turn, question, answer: rawAnswer, rawAnswer, acceptanceCriteria, decision: selectedLabel, options: optionsSnapshot.map(option => option.label), contextReceipt: input.contextReceipt, artifactHashes: [decisionHash], actor: input.actor });
|
|
@@ -221,6 +266,7 @@ export class DeliveryLineFacade {
|
|
|
221
266
|
}
|
|
222
267
|
async revise(caseId, input) {
|
|
223
268
|
requireIdentity(input);
|
|
269
|
+
requireTrustedUserDecision(input);
|
|
224
270
|
return this.mutate(caseId, input, 'interaction.revised', record => {
|
|
225
271
|
const allowedStages = input.phase === 'clarification' ? ['draft', 'clarifying'] : ['designing'];
|
|
226
272
|
if (!allowedStages.includes(record.stage))
|
|
@@ -233,6 +279,7 @@ export class DeliveryLineFacade {
|
|
|
233
279
|
}
|
|
234
280
|
async compareOptions(caseId, input) {
|
|
235
281
|
requireIdentity(input);
|
|
282
|
+
requireTrustedUserDecision(input);
|
|
236
283
|
return this.mutate(caseId, input, 'design.compared', async (record) => {
|
|
237
284
|
if (input.turn !== record.interaction.turn)
|
|
238
285
|
throw staleTurnError(record, input.turn);
|
|
@@ -277,15 +324,16 @@ export class DeliveryLineFacade {
|
|
|
277
324
|
const selectedCapabilities = this.capabilities?.manifests.length
|
|
278
325
|
? selectPluginCapabilities({
|
|
279
326
|
detectedStacks: this.capabilities.detectedStacks,
|
|
327
|
+
taskSemantics: record.taskSemantics,
|
|
280
328
|
decision: { questionId, optionId, selectedLabel, decisionHash },
|
|
281
329
|
manifests: this.capabilities.manifests,
|
|
282
330
|
})
|
|
283
331
|
: undefined;
|
|
284
|
-
const
|
|
332
|
+
const pluginSelectionHash = selectedCapabilities?.selectedManifestHash ?? hash({ capability: selectedLabel, protocolVersion: 'delivery-capability.v1' });
|
|
285
333
|
record.stackFactsHash = stackFactsHash;
|
|
286
334
|
const requiredContextChannels = [...new Set(Object.values(selectedCapabilities?.selected ?? {}).flatMap(manifest => manifest.requiredContextChannels))]
|
|
287
335
|
.filter((channel) => ['code', 'memory', 'knowledge'].includes(channel));
|
|
288
|
-
record.pluginSelection = { selectedManifestHash:
|
|
336
|
+
record.pluginSelection = { selectedManifestHash: pluginSelectionHash, stackFactsHash, decisionRefs: [decisionHash], selectionReason: selectedCapabilities?.selectionReason ?? 'selected by current user decision', rejectedAlternatives: [...new Set([...(selectedCapabilities?.rejectedAlternatives ?? []), ...optionsSnapshot.filter(option => option.id !== optionId).map(option => option.id)])], ...(requiredContextChannels.length ? { requiredContextChannels } : {}), ...(selectedCapabilities ? { selectedByRole: Object.fromEntries(Object.entries(selectedCapabilities.selected).map(([role, manifest]) => [role, { pluginName: manifest.name, version: manifest.version, manifestHash: hash(manifest) }])), ...(selectedCapabilities.hostWorkerFallback ? { hostWorkerFallback: true } : {}) } : {}), selectedAt: Date.now() };
|
|
289
337
|
await this.createProjectionArtifact(record, 'plugin-selection.md', 'Plugin selection', 'Capability providers selected by Delivery from stack facts and the current decision.', record.pluginSelection, input.actor);
|
|
290
338
|
record.stage = 'spec_ready';
|
|
291
339
|
record.interaction = { ...record.interaction, phase: 'design', status: 'awaiting_approval', openQuestions: [], blockingUnknowns: [] };
|
|
@@ -295,6 +343,7 @@ export class DeliveryLineFacade {
|
|
|
295
343
|
}
|
|
296
344
|
async approve(caseId, input) {
|
|
297
345
|
requireIdentity(input);
|
|
346
|
+
requireTrustedUserDecision(input);
|
|
298
347
|
if (!stageApprovals.has(input.stage))
|
|
299
348
|
throw new DeliveryLineError('INVALID_TRANSITION', `unsupported approval stage: ${String(input.stage)}`, { requestedStage: input.stage, recoveryAction: 'Use intent, spec, plan, or release approval stages.' });
|
|
300
349
|
return this.mutate(caseId, input, `approval.${input.stage}`, async (record) => {
|
|
@@ -341,7 +390,7 @@ export class DeliveryLineFacade {
|
|
|
341
390
|
throw new DeliveryLineError('MISSING_PREREQUISITE', `${artifactType} artifact is required`);
|
|
342
391
|
if (input.artifactHash && input.artifactHash !== approvalArtifactHash)
|
|
343
392
|
throw new DeliveryLineError('ARTIFACT_HASH_MISMATCH', 'approval artifact hash is stale');
|
|
344
|
-
if (input.stage === 'intent' && (record.stage !== 'clarifying' || record.interaction.blockingUnknowns.length > 0))
|
|
393
|
+
if (input.stage === 'intent' && (record.stage !== 'clarifying' || record.interaction.blockingUnknowns.length > 0 || (record.taskSemantics && record.taskSemantics.confidence > 0 && record.unknownRegistry?.some(item => item.blocking))))
|
|
345
394
|
throw new DeliveryLineError('MISSING_PREREQUISITE', 'clarification must be complete before intent approval');
|
|
346
395
|
if (input.stage === 'spec' && record.stage !== 'spec_ready')
|
|
347
396
|
throw new DeliveryLineError('INVALID_TRANSITION', 'spec approval requires a ready spec');
|
|
@@ -389,6 +438,7 @@ export class DeliveryLineFacade {
|
|
|
389
438
|
const decision = [...record.decisions].reverse().find(item => item.decisionHash);
|
|
390
439
|
if (decision && record.pluginSelection && record.stackFactsHash) {
|
|
391
440
|
record.lineage = {
|
|
441
|
+
lineageRootHash: hash({ originalRequest: record.originalRequest ?? record.title, taskSemantics: record.taskSemantics, stackFactsHash: record.stackFactsHash, pluginSelection: record.pluginSelection }),
|
|
392
442
|
decisionHash: decision.decisionHash,
|
|
393
443
|
stackFactsHash: record.stackFactsHash,
|
|
394
444
|
pluginSelectionHash: hash(record.pluginSelection),
|
|
@@ -727,7 +777,7 @@ export class DeliveryLineFacade {
|
|
|
727
777
|
return record;
|
|
728
778
|
});
|
|
729
779
|
}
|
|
730
|
-
async cancel(caseId, input) { requireIdentity(input); return this.mutate(caseId, input, 'case.cancelled', async (record) => { if (['delivered', 'cancelled', 'rejected'].includes(record.stage))
|
|
780
|
+
async cancel(caseId, input) { requireIdentity(input); requireTrustedUserDecision(input); return this.mutate(caseId, input, 'case.cancelled', async (record) => { if (['delivered', 'cancelled', 'rejected'].includes(record.stage))
|
|
731
781
|
throw new DeliveryLineError('CASE_CANCELLED', 'terminal case cannot be cancelled'); for (const task of record.tasks) {
|
|
732
782
|
if (task.status === 'running' || task.status === 'merge_pending')
|
|
733
783
|
await this.ports.execution?.cancelTask({ taskId: task.id });
|
|
@@ -740,8 +790,11 @@ export class DeliveryLineFacade {
|
|
|
740
790
|
throw new DeliveryLineError('MISSING_PREREQUISITE', 'context receipt does not match case');
|
|
741
791
|
if ((record.sessionId && record.sessionId !== input.sessionId) || (record.executionId && record.executionId !== input.executionId))
|
|
742
792
|
throw new DeliveryLineError('MISSING_PREREQUISITE', 'execution identity does not match case');
|
|
743
|
-
|
|
793
|
+
const proposal = type.startsWith('proposal.');
|
|
794
|
+
if (!proposal && !type.startsWith('approval.') && input.actor.kind !== 'system' && input.actor.id !== record.createdBy.id)
|
|
744
795
|
throw new DeliveryLineError('UNAUTHORIZED_ROLE', 'case mutation actor is not the case owner');
|
|
796
|
+
if (proposal && input.actor.kind !== 'agent')
|
|
797
|
+
throw new DeliveryLineError('UNAUTHORIZED_ROLE', 'only agent proposals are accepted');
|
|
745
798
|
if (await this.ports.store.hasIdempotencyKey(input.idempotencyKey))
|
|
746
799
|
return this.view(record);
|
|
747
800
|
if (['delivered', 'cancelled', 'rejected'].includes(record.stage) && type !== 'case.cancelled')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery-line-facade.js","sourceRoot":"","sources":["../../src/facade/delivery-line-facade.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"delivery-line-facade.js","sourceRoot":"","sources":["../../src/facade/delivery-line-facade.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export * from './domain/types.js';
|
|
2
2
|
export * from './domain/plugin-capability.js';
|
|
3
3
|
export * from './domain/state-machine.js';
|
|
4
|
+
export * from './domain/task-semantics.js';
|
|
5
|
+
export * from './domain/clarification-policy.js';
|
|
4
6
|
export * from './domain/task-dag.js';
|
|
5
7
|
export * from './ports/index.js';
|
|
6
8
|
export * from './recovery-spike.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export * from './domain/types.js';
|
|
2
2
|
export * from './domain/plugin-capability.js';
|
|
3
3
|
export * from './domain/state-machine.js';
|
|
4
|
+
export * from './domain/task-semantics.js';
|
|
5
|
+
export * from './domain/clarification-policy.js';
|
|
4
6
|
export * from './domain/task-dag.js';
|
|
5
7
|
export * from './ports/index.js';
|
|
6
8
|
export * from './recovery-spike.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const DELIVERY_SCHEMA = "\nPRAGMA journal_mode = WAL;\nPRAGMA foreign_keys = ON;\nCREATE TABLE IF NOT EXISTS delivery_cases (\n id TEXT PRIMARY KEY,\n payload TEXT NOT NULL,\n version INTEGER NOT NULL,\n updated_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_events (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n idempotency_key TEXT NOT NULL UNIQUE,\n actor TEXT NOT NULL,\n type TEXT NOT NULL,\n payload TEXT NOT NULL,\n created_at INTEGER NOT NULL,\n processed_at INTEGER\n);\nCREATE TABLE IF NOT EXISTS delivery_tasks (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n payload TEXT NOT NULL,\n version INTEGER NOT NULL,\n lease_owner TEXT,\n lease_expires_at INTEGER,\n fencing_token INTEGER NOT NULL DEFAULT 0,\n attempt INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_artifacts (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n payload TEXT NOT NULL,\n content_hash TEXT NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_approvals (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n payload TEXT NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_evidence (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n payload TEXT NOT NULL,\n evidence_hash TEXT NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_interactions (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n case_id TEXT NOT NULL,\n phase TEXT NOT NULL,\n turn INTEGER NOT NULL,\n prompt_or_summary TEXT NOT NULL,\n answer TEXT,\n decision TEXT,\n blocking INTEGER NOT NULL,\n artifact_hash TEXT,\n actor TEXT NOT NULL,\n created_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_subagent_sessions (\n session_id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n role TEXT NOT NULL,\n agent_id TEXT NOT NULL,\n agent_version TEXT NOT NULL,\n permission_snapshot TEXT NOT NULL,\n status TEXT NOT NULL,\n last_event_id TEXT,\n processed_user_event_ids TEXT NOT NULL DEFAULT '[]',\n last_user_turn INTEGER NOT NULL DEFAULT 0,\n created_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_handoffs (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n case_id TEXT NOT NULL,\n idempotency_key TEXT NOT NULL UNIQUE,\n source_role TEXT NOT NULL,\n target_role TEXT NOT NULL,\n input_refs TEXT NOT NULL,\n output_refs TEXT NOT NULL,\n context_receipt TEXT NOT NULL,\n status TEXT NOT NULL,\n payload TEXT NOT NULL,\n created_at INTEGER NOT NULL,\n processed_at INTEGER\n);\nCREATE TABLE IF NOT EXISTS delivery_operations (\n operation_id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n kind TEXT NOT NULL,\n idempotency_key TEXT NOT NULL UNIQUE,\n status TEXT NOT NULL,\n payload TEXT NOT NULL,\n updated_at INTEGER NOT NULL\n);\nCREATE INDEX IF NOT EXISTS delivery_tasks_active_lease_idx\n ON delivery_tasks (case_id, lease_expires_at);\nCREATE INDEX IF NOT EXISTS delivery_interactions_pending_idx\n ON delivery_interactions (case_id, blocking, answer);\nCREATE INDEX IF NOT EXISTS delivery_handoffs_unprocessed_idx\n ON delivery_handoffs (case_id, processed_at, status);\nCREATE INDEX IF NOT EXISTS delivery_events_cursor_idx\n ON delivery_events (case_id, created_at, id);\nCREATE INDEX IF NOT EXISTS delivery_operations_case_idx\n ON delivery_operations (case_id, updated_at, operation_id);\n";
|
|
1
|
+
export declare const DELIVERY_SCHEMA = "\nPRAGMA journal_mode = WAL;\nPRAGMA foreign_keys = ON;\nCREATE TABLE IF NOT EXISTS delivery_cases (\n id TEXT PRIMARY KEY,\n payload TEXT NOT NULL,\n version INTEGER NOT NULL,\n updated_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_events (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n idempotency_key TEXT NOT NULL UNIQUE,\n actor TEXT NOT NULL,\n type TEXT NOT NULL,\n payload TEXT NOT NULL,\n created_at INTEGER NOT NULL,\n processed_at INTEGER\n);\nCREATE TABLE IF NOT EXISTS delivery_tasks (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n payload TEXT NOT NULL,\n version INTEGER NOT NULL,\n lease_owner TEXT,\n lease_expires_at INTEGER,\n fencing_token INTEGER NOT NULL DEFAULT 0,\n attempt INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_artifacts (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n payload TEXT NOT NULL,\n content_hash TEXT NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_approvals (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n payload TEXT NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_evidence (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n payload TEXT NOT NULL,\n evidence_hash TEXT NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_interactions (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n case_id TEXT NOT NULL,\n phase TEXT NOT NULL,\n turn INTEGER NOT NULL,\n prompt_or_summary TEXT NOT NULL,\n answer TEXT,\n decision TEXT,\n blocking INTEGER NOT NULL,\n artifact_hash TEXT,\n actor TEXT NOT NULL,\n created_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_subagent_sessions (\n session_id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n role TEXT NOT NULL,\n agent_id TEXT NOT NULL,\n agent_version TEXT NOT NULL,\n permission_snapshot TEXT NOT NULL,\n status TEXT NOT NULL,\n last_event_id TEXT,\n processed_user_event_ids TEXT NOT NULL DEFAULT '[]',\n last_user_turn INTEGER NOT NULL DEFAULT 0,\n created_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_handoffs (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n case_id TEXT NOT NULL,\n idempotency_key TEXT NOT NULL UNIQUE,\n source_role TEXT NOT NULL,\n target_role TEXT NOT NULL,\n input_refs TEXT NOT NULL,\n output_refs TEXT NOT NULL,\n context_receipt TEXT NOT NULL,\n status TEXT NOT NULL,\n payload TEXT NOT NULL,\n created_at INTEGER NOT NULL,\n processed_at INTEGER\n);\nCREATE TABLE IF NOT EXISTS delivery_operations (\n operation_id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n kind TEXT NOT NULL,\n idempotency_key TEXT NOT NULL UNIQUE,\n status TEXT NOT NULL,\n payload TEXT NOT NULL,\n updated_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_authorities (\n case_id TEXT PRIMARY KEY,\n source_workspace_id TEXT NOT NULL,\n payload TEXT NOT NULL,\n created_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_pending_decisions (\n id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n case_version INTEGER NOT NULL,\n status TEXT NOT NULL,\n payload TEXT NOT NULL,\n created_at INTEGER NOT NULL\n);\nCREATE UNIQUE INDEX IF NOT EXISTS delivery_pending_decisions_active_idx\n ON delivery_pending_decisions (case_id) WHERE status = 'pending';\nCREATE TABLE IF NOT EXISTS delivery_workflow_bindings (\n case_id TEXT PRIMARY KEY,\n source_workspace_id TEXT NOT NULL,\n source_path TEXT NOT NULL,\n aliases TEXT NOT NULL,\n status TEXT NOT NULL,\n case_version INTEGER NOT NULL,\n payload TEXT NOT NULL,\n created_at INTEGER NOT NULL\n);\nCREATE UNIQUE INDEX IF NOT EXISTS delivery_workflow_active_workspace_idx\n ON delivery_workflow_bindings (source_workspace_id) WHERE status = 'enforced';\nCREATE TABLE IF NOT EXISTS delivery_trusted_nonces (\n nonce TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n decision_id TEXT NOT NULL,\n consumed_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_integration_operations (\n operation_id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n status TEXT NOT NULL,\n payload TEXT NOT NULL,\n updated_at INTEGER NOT NULL\n);\nCREATE TABLE IF NOT EXISTS delivery_execution_leases (\n lease_id TEXT PRIMARY KEY,\n case_id TEXT NOT NULL,\n task_id TEXT NOT NULL,\n owner TEXT NOT NULL,\n fencing_token INTEGER NOT NULL,\n status TEXT NOT NULL,\n payload TEXT NOT NULL,\n issued_at INTEGER NOT NULL,\n expires_at INTEGER NOT NULL\n);\nCREATE UNIQUE INDEX IF NOT EXISTS delivery_execution_active_task_idx\n ON delivery_execution_leases (case_id, task_id) WHERE status = 'active';\nCREATE INDEX IF NOT EXISTS delivery_tasks_active_lease_idx\n ON delivery_tasks (case_id, lease_expires_at);\nCREATE INDEX IF NOT EXISTS delivery_interactions_pending_idx\n ON delivery_interactions (case_id, blocking, answer);\nCREATE INDEX IF NOT EXISTS delivery_handoffs_unprocessed_idx\n ON delivery_handoffs (case_id, processed_at, status);\nCREATE INDEX IF NOT EXISTS delivery_events_cursor_idx\n ON delivery_events (case_id, created_at, id);\nCREATE INDEX IF NOT EXISTS delivery_operations_case_idx\n ON delivery_operations (case_id, updated_at, operation_id);\n";
|
|
2
2
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/persistence/schema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/persistence/schema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,09JA+J3B,CAAC"}
|