@devflow-tools/database 0.17.7 → 0.18.0
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/LICENSE +21 -0
- package/README.md +2 -2
- package/dist/data/LocalDataProvider.d.ts +63 -0
- package/dist/data/LocalDataProvider.js +332 -0
- package/dist/data/default-enforcer-rules.d.ts +3 -0
- package/dist/data/default-enforcer-rules.js +170 -0
- package/dist/data/devflow-schema.d.ts +2 -0
- package/dist/data/devflow-schema.js +80 -0
- package/dist/database.d.ts +45 -7
- package/dist/database.js +583 -125
- package/dist/index.d.ts +8 -4
- package/dist/index.js +11 -5
- package/dist/retrieval-ledger.d.ts +16 -1
- package/dist/retrieval-ledger.js +6 -0
- package/dist/retrieval-runtime.d.ts +39 -0
- package/dist/retrieval-runtime.js +2 -0
- package/dist/task-aggregate.d.ts +49 -0
- package/dist/task-aggregate.js +2 -0
- package/dist/task-semantic-control.d.ts +8 -1
- package/dist/task-semantic-control.js +2 -4
- package/package.json +15 -3
- package/CHANGELOG.md +0 -836
- package/__tests__/database.failure-category.test.ts +0 -44
- package/__tests__/database.host-actions.test.ts +0 -405
- package/__tests__/database.learning-candidates.test.ts +0 -93
- package/__tests__/database.memory-turn-receipts.test.ts +0 -98
- package/__tests__/database.retrieval-ledger.test.ts +0 -68
- package/__tests__/database.retrieval-sessions.test.ts +0 -79
- package/__tests__/database.semantic-resolution.test.ts +0 -87
- package/__tests__/database.skill-executions.test.ts +0 -456
- package/__tests__/database.task-runtime.test.ts +0 -73
- package/__tests__/database.test.ts +0 -177
- package/__tests__/database.work-queue.test.ts +0 -274
- package/__tests__/database.workflow-workers.test.ts +0 -60
- package/__tests__/node-sqlite.test.ts +0 -68
- package/src/database.ts +0 -5853
- package/src/host-actions.ts +0 -211
- package/src/index.ts +0 -153
- package/src/learning-candidates.ts +0 -181
- package/src/node-sqlite.ts +0 -60
- package/src/obligation-ledger.ts +0 -57
- package/src/retrieval-ledger.ts +0 -35
- package/src/retrieval-sessions.ts +0 -196
- package/src/semantic-resolution.ts +0 -181
- package/src/task-runtime.ts +0 -169
- package/src/task-semantic-control.ts +0 -270
- package/src/types.ts +0 -17
- package/src/work-queue.ts +0 -123
- package/src/workflow-workers.ts +0 -198
- package/tsconfig.json +0 -19
- package/tsconfig.tsbuildinfo +0 -1
- package/vitest.config.ts +0 -41
package/dist/index.d.ts
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
export { DevFlowDatabase, getGlobalDevFlowDbPath, openGlobalDevFlowDatabase, openGlobalDevFlowReadOnlyDatabase, } from './database';
|
|
2
|
+
export { LocalDataProvider } from './data/LocalDataProvider';
|
|
3
|
+
export { DEVFLOW_SCHEMA_SQL, DEVFLOW_TABLE_NAMES } from './data/devflow-schema';
|
|
4
|
+
export { DEFAULT_ENFORCER_RULES, seedDefaultEnforcerRules } from './data/default-enforcer-rules';
|
|
2
5
|
export type { BenchmarkReportMetaRecord, BenchmarkReportRecord, FeedbackRecord, GovernanceAuditRecord, GovernanceRuleRecord, HookFallbackRecord, HookReceiptRecord, ContextReceiptRecord, ContextSelectionEventRecord, PolicyVerificationBaselineRecord, MemoryDistillCheckpointRecord, MemoryTurnRecord, MemoryTurnStatus, TelemetryFailureRecord, } from './database';
|
|
3
6
|
export type { EnqueueWorkInput, LeaseWorkInput, RequestSessionClosureInput, SessionClosureRecord, SessionClosureState, WorkError, WorkItemRecord, WorkKind, WorkQueueHealth, WorkState, ProjectMutationLeaseRecord, } from './work-queue';
|
|
4
|
-
export type { RetrievalLedgerEventRecord, RetrievalLedgerSourceType, RetrievalLedgerStage, } from './retrieval-ledger';
|
|
7
|
+
export type { RetrievalLedgerEventRecord, RetrievalLedgerSourceType, RetrievalLedgerStage, VerifyReceiptBoundRetrievalInput, VerifyReceiptBoundRetrievalResult, } from './retrieval-ledger';
|
|
8
|
+
export { retrievalLedgerTransitionId } from './retrieval-ledger';
|
|
5
9
|
export { hostActionReportsEqual, isHostActionState, mapHostActionRow, serializeHostActionReport, } from './host-actions';
|
|
6
10
|
export { RETRIEVAL_MAX_CYCLES, isRetrievalSessionState } from './retrieval-sessions';
|
|
7
11
|
export type { AppendRetrievalCycleInput, CreateRetrievalSessionInput, RetrievalCycleRecord, RetrievalGapKind, RetrievalGapRecord, RetrievalSessionRecord, RetrievalSessionState, } from './retrieval-sessions';
|
|
12
|
+
export type { AppendRetrievalCycleV2Input, CreateRetrievalSessionV2Input, RetrievalSessionV2Record, } from './retrieval-runtime';
|
|
8
13
|
export type { FailHostActionInput, HostActionRecord, HostActionState, ReportHostActionInput, RequestHostActionInput, StartHostActionInput, VerifyHostActionInput, } from './host-actions';
|
|
9
14
|
export { mapSessionObligationRow, normalizeTurnId, } from './obligation-ledger';
|
|
10
15
|
export { assertTaskIdentity, mapChannelQueryPlanRow, mapTaskIntentArtifactRow, mapTerminalTransitionRow, mapToolNameResolutionRow, mapTranscriptCheckpointRow, stableSemanticJson, } from './task-semantic-control';
|
|
11
16
|
export { mapTaskRuntimeEventRow, mapTaskRuntimeSnapshotRow, stableTaskRuntimeHash, stableTaskRuntimeJson, } from './task-runtime';
|
|
17
|
+
export type { AppendTaskAggregateInput, AppendTaskAggregateResult, LeaseTaskOutboxInput, TaskAggregateRecord, TaskOutboxRecord, } from './task-aggregate';
|
|
12
18
|
export type { TaskRuntimeChannelRecord, TaskRuntimeChannelRequirement, TaskRuntimeChannelStatus, TaskRuntimeEventRecord, TaskRuntimeIdentityRecord, TaskRuntimeObligationRecord, TaskRuntimeObligationState, TaskRuntimeSnapshotRecord, } from './task-runtime';
|
|
13
|
-
export type { ChannelQueryPlanRecord, TaskIdentityRecord, TaskIntentArtifactRecord, TerminalTransitionRecord, ToolNameResolutionRecord, ToolNameResolutionStatus, TranscriptCheckpointRecord, } from './task-semantic-control';
|
|
19
|
+
export type { CanonicalSemanticTaskWrite, ChannelQueryPlanRecord, TaskIdentityRecord, TaskIntentArtifactRecord, TerminalTransitionRecord, ToolNameResolutionRecord, ToolNameResolutionStatus, TranscriptCheckpointRecord, } from './task-semantic-control';
|
|
14
20
|
export { LEGAL_WORKFLOW_WORKER_TRANSITIONS, TERMINAL_WORKFLOW_WORKER_STATES, mapWorkflowMergeRow, mapWorkflowWorkerEventRow, mapWorkflowWorkerRow, } from './workflow-workers';
|
|
15
21
|
export type { CreateWorkflowWorkerInput, EnqueueWorkflowMergeInput, TransitionWorkflowWorkerInput, WorkflowMergeRecord, WorkflowMergeState, WorkflowWorkerEventRecord, WorkflowWorkerRecord, WorkflowWorkerState, } from './workflow-workers';
|
|
16
22
|
export { mapLearningCandidateRow, mapLearningEvidenceRow, mapLearningVersionRow, stableLearningJson, } from './learning-candidates';
|
|
17
23
|
export type { AddLearningCandidateEvidenceInput, LearningCandidateEvidenceRecord, LearningCandidateKind, LearningCandidateRecord, LearningCandidateState, LearningCandidateVersionRecord, LearningEvidencePolarity, LearningOutcomeState, TransitionLearningCandidateInput, UpsertLearningCandidateInput, } from './learning-candidates';
|
|
18
24
|
export type { SessionObligationKind, SessionObligationRecord, SessionObligationState, } from './obligation-ledger';
|
|
19
|
-
export { assertSemanticResolutionRecord, mapSemanticResolutionRow, stableSemanticResolutionJson, } from './semantic-resolution';
|
|
20
|
-
export type { PersistedSemanticGeneratedBy, PersistedSemanticResolutionState, SemanticResolutionRecord, } from './semantic-resolution';
|
package/dist/index.js
CHANGED
|
@@ -1,11 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.stableLearningJson = exports.mapLearningVersionRow = exports.mapLearningEvidenceRow = exports.mapLearningCandidateRow = exports.mapWorkflowWorkerRow = exports.mapWorkflowWorkerEventRow = exports.mapWorkflowMergeRow = exports.TERMINAL_WORKFLOW_WORKER_STATES = exports.LEGAL_WORKFLOW_WORKER_TRANSITIONS = exports.stableTaskRuntimeJson = exports.stableTaskRuntimeHash = exports.mapTaskRuntimeSnapshotRow = exports.mapTaskRuntimeEventRow = exports.stableSemanticJson = exports.mapTranscriptCheckpointRow = exports.mapToolNameResolutionRow = exports.mapTerminalTransitionRow = exports.mapTaskIntentArtifactRow = exports.mapChannelQueryPlanRow = exports.assertTaskIdentity = exports.normalizeTurnId = exports.mapSessionObligationRow = exports.isRetrievalSessionState = exports.RETRIEVAL_MAX_CYCLES = exports.serializeHostActionReport = exports.mapHostActionRow = exports.isHostActionState = exports.hostActionReportsEqual = exports.retrievalLedgerTransitionId = exports.seedDefaultEnforcerRules = exports.DEFAULT_ENFORCER_RULES = exports.DEVFLOW_TABLE_NAMES = exports.DEVFLOW_SCHEMA_SQL = exports.LocalDataProvider = exports.openGlobalDevFlowReadOnlyDatabase = exports.openGlobalDevFlowDatabase = exports.getGlobalDevFlowDbPath = exports.DevFlowDatabase = void 0;
|
|
4
4
|
var database_1 = require("./database");
|
|
5
5
|
Object.defineProperty(exports, "DevFlowDatabase", { enumerable: true, get: function () { return database_1.DevFlowDatabase; } });
|
|
6
6
|
Object.defineProperty(exports, "getGlobalDevFlowDbPath", { enumerable: true, get: function () { return database_1.getGlobalDevFlowDbPath; } });
|
|
7
7
|
Object.defineProperty(exports, "openGlobalDevFlowDatabase", { enumerable: true, get: function () { return database_1.openGlobalDevFlowDatabase; } });
|
|
8
8
|
Object.defineProperty(exports, "openGlobalDevFlowReadOnlyDatabase", { enumerable: true, get: function () { return database_1.openGlobalDevFlowReadOnlyDatabase; } });
|
|
9
|
+
var LocalDataProvider_1 = require("./data/LocalDataProvider");
|
|
10
|
+
Object.defineProperty(exports, "LocalDataProvider", { enumerable: true, get: function () { return LocalDataProvider_1.LocalDataProvider; } });
|
|
11
|
+
var devflow_schema_1 = require("./data/devflow-schema");
|
|
12
|
+
Object.defineProperty(exports, "DEVFLOW_SCHEMA_SQL", { enumerable: true, get: function () { return devflow_schema_1.DEVFLOW_SCHEMA_SQL; } });
|
|
13
|
+
Object.defineProperty(exports, "DEVFLOW_TABLE_NAMES", { enumerable: true, get: function () { return devflow_schema_1.DEVFLOW_TABLE_NAMES; } });
|
|
14
|
+
var default_enforcer_rules_1 = require("./data/default-enforcer-rules");
|
|
15
|
+
Object.defineProperty(exports, "DEFAULT_ENFORCER_RULES", { enumerable: true, get: function () { return default_enforcer_rules_1.DEFAULT_ENFORCER_RULES; } });
|
|
16
|
+
Object.defineProperty(exports, "seedDefaultEnforcerRules", { enumerable: true, get: function () { return default_enforcer_rules_1.seedDefaultEnforcerRules; } });
|
|
17
|
+
var retrieval_ledger_1 = require("./retrieval-ledger");
|
|
18
|
+
Object.defineProperty(exports, "retrievalLedgerTransitionId", { enumerable: true, get: function () { return retrieval_ledger_1.retrievalLedgerTransitionId; } });
|
|
9
19
|
var host_actions_1 = require("./host-actions");
|
|
10
20
|
Object.defineProperty(exports, "hostActionReportsEqual", { enumerable: true, get: function () { return host_actions_1.hostActionReportsEqual; } });
|
|
11
21
|
Object.defineProperty(exports, "isHostActionState", { enumerable: true, get: function () { return host_actions_1.isHostActionState; } });
|
|
@@ -41,7 +51,3 @@ Object.defineProperty(exports, "mapLearningCandidateRow", { enumerable: true, ge
|
|
|
41
51
|
Object.defineProperty(exports, "mapLearningEvidenceRow", { enumerable: true, get: function () { return learning_candidates_1.mapLearningEvidenceRow; } });
|
|
42
52
|
Object.defineProperty(exports, "mapLearningVersionRow", { enumerable: true, get: function () { return learning_candidates_1.mapLearningVersionRow; } });
|
|
43
53
|
Object.defineProperty(exports, "stableLearningJson", { enumerable: true, get: function () { return learning_candidates_1.stableLearningJson; } });
|
|
44
|
-
var semantic_resolution_1 = require("./semantic-resolution");
|
|
45
|
-
Object.defineProperty(exports, "assertSemanticResolutionRecord", { enumerable: true, get: function () { return semantic_resolution_1.assertSemanticResolutionRecord; } });
|
|
46
|
-
Object.defineProperty(exports, "mapSemanticResolutionRow", { enumerable: true, get: function () { return semantic_resolution_1.mapSemanticResolutionRow; } });
|
|
47
|
-
Object.defineProperty(exports, "stableSemanticResolutionJson", { enumerable: true, get: function () { return semantic_resolution_1.stableSemanticResolutionJson; } });
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type RetrievalLedgerStage = 'eligible' | 'candidate' | 'selected' | '
|
|
1
|
+
export type RetrievalLedgerStage = 'eligible' | 'candidate' | 'selected' | 'consumed' | 'verified' | 'positive_outcome' | 'negative_outcome' | 'unknown_outcome' | 'rejected';
|
|
2
2
|
export type RetrievalLedgerSourceType = 'code' | 'memory' | 'knowledge' | 'action';
|
|
3
3
|
export interface RetrievalLedgerEventRecord {
|
|
4
4
|
schemaVersion?: 'retrieval-ledger-event.v1';
|
|
@@ -29,3 +29,18 @@ export interface RetrievalLedgerEventRecord {
|
|
|
29
29
|
payload: Record<string, unknown>;
|
|
30
30
|
createdAt: number;
|
|
31
31
|
}
|
|
32
|
+
export interface VerifyReceiptBoundRetrievalInput {
|
|
33
|
+
projectRoot: string;
|
|
34
|
+
sessionId: string;
|
|
35
|
+
executionId: string;
|
|
36
|
+
contextReceipt: string;
|
|
37
|
+
toolUseId: string;
|
|
38
|
+
verificationReceipt: string;
|
|
39
|
+
verifiedAt: number;
|
|
40
|
+
}
|
|
41
|
+
export interface VerifyReceiptBoundRetrievalResult {
|
|
42
|
+
selected: number;
|
|
43
|
+
consumed: number;
|
|
44
|
+
verified: number;
|
|
45
|
+
}
|
|
46
|
+
export declare function retrievalLedgerTransitionId(sourceEventId: string, stage: RetrievalLedgerStage, provenance: string): string;
|
package/dist/retrieval-ledger.js
CHANGED
|
@@ -1,2 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.retrievalLedgerTransitionId = retrievalLedgerTransitionId;
|
|
4
|
+
const node_crypto_1 = require("node:crypto");
|
|
5
|
+
function retrievalLedgerTransitionId(sourceEventId, stage, provenance) {
|
|
6
|
+
return `retrieval:${(0, node_crypto_1.createHash)('sha256')
|
|
7
|
+
.update(`${sourceEventId}\0${stage}\0${provenance}`).digest('hex')}`;
|
|
8
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { CanonicalTaskIdentity, RetrievalCycleReceiptV1, RetrievalSufficiencyStatus } from '@devflow-tools/sdk';
|
|
2
|
+
export interface RetrievalSessionV2Record {
|
|
3
|
+
id: string;
|
|
4
|
+
identity: CanonicalTaskIdentity;
|
|
5
|
+
taskRevision: number;
|
|
6
|
+
factsHash: string;
|
|
7
|
+
planHash: string;
|
|
8
|
+
activationSnapshotHash: string;
|
|
9
|
+
coordinatorVersion: string;
|
|
10
|
+
state: 'open' | RetrievalSufficiencyStatus;
|
|
11
|
+
cycle: number;
|
|
12
|
+
noGainCount: number;
|
|
13
|
+
maxCycles: 3;
|
|
14
|
+
initialTokenBudget: number;
|
|
15
|
+
remainingTokenBudget: number;
|
|
16
|
+
finalReceiptHash?: string;
|
|
17
|
+
createdAt: number;
|
|
18
|
+
updatedAt: number;
|
|
19
|
+
expiresAt: number;
|
|
20
|
+
}
|
|
21
|
+
export interface CreateRetrievalSessionV2Input {
|
|
22
|
+
id: string;
|
|
23
|
+
identity: CanonicalTaskIdentity;
|
|
24
|
+
taskRevision: number;
|
|
25
|
+
factsHash: string;
|
|
26
|
+
planHash: string;
|
|
27
|
+
activationSnapshotHash: string;
|
|
28
|
+
coordinatorVersion: string;
|
|
29
|
+
tokenBudget: number;
|
|
30
|
+
expiresAt: number;
|
|
31
|
+
createdAt?: number;
|
|
32
|
+
}
|
|
33
|
+
export interface AppendRetrievalCycleV2Input {
|
|
34
|
+
sessionId: string;
|
|
35
|
+
projectRoot: string;
|
|
36
|
+
taskSessionId: string;
|
|
37
|
+
receipt: RetrievalCycleReceiptV1;
|
|
38
|
+
remainingTokenBudget: number;
|
|
39
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { CanonicalTaskIdentity, TaskAggregateEventV1, TaskDefinitionV1, TaskRuntimeSnapshotV2 } from '@devflow-tools/sdk';
|
|
2
|
+
export interface TaskAggregateRecord {
|
|
3
|
+
identity: CanonicalTaskIdentity;
|
|
4
|
+
revision: number;
|
|
5
|
+
definitionHash: string;
|
|
6
|
+
activationSnapshotHash: string;
|
|
7
|
+
lastEventSequence: number;
|
|
8
|
+
snapshot: TaskRuntimeSnapshotV2;
|
|
9
|
+
updatedAt: number;
|
|
10
|
+
}
|
|
11
|
+
export interface TaskOutboxRecord {
|
|
12
|
+
operationId: string;
|
|
13
|
+
eventId: string;
|
|
14
|
+
projectRoot: string;
|
|
15
|
+
sessionId: string;
|
|
16
|
+
turnId: string;
|
|
17
|
+
revision: number;
|
|
18
|
+
kind: string;
|
|
19
|
+
payload: Record<string, unknown>;
|
|
20
|
+
state: 'pending' | 'leased' | 'completed' | 'dead_letter';
|
|
21
|
+
leaseOwner?: string;
|
|
22
|
+
leaseExpiresAt?: number;
|
|
23
|
+
fencingToken: number;
|
|
24
|
+
attempts: number;
|
|
25
|
+
createdAt: number;
|
|
26
|
+
updatedAt: number;
|
|
27
|
+
}
|
|
28
|
+
export interface AppendTaskAggregateInput {
|
|
29
|
+
definition?: TaskDefinitionV1;
|
|
30
|
+
event: TaskAggregateEventV1;
|
|
31
|
+
snapshot: TaskRuntimeSnapshotV2;
|
|
32
|
+
outbox?: {
|
|
33
|
+
operationId: string;
|
|
34
|
+
kind: string;
|
|
35
|
+
payload: Record<string, unknown>;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
export interface AppendTaskAggregateResult {
|
|
39
|
+
event: TaskAggregateEventV1;
|
|
40
|
+
snapshot: TaskRuntimeSnapshotV2;
|
|
41
|
+
replayed: boolean;
|
|
42
|
+
}
|
|
43
|
+
export interface LeaseTaskOutboxInput {
|
|
44
|
+
projectRoot: string;
|
|
45
|
+
owner: string;
|
|
46
|
+
limit: number;
|
|
47
|
+
leaseMs: number;
|
|
48
|
+
now?: number;
|
|
49
|
+
}
|
|
@@ -5,7 +5,7 @@ export interface TaskIdentityRecord {
|
|
|
5
5
|
sessionId: string;
|
|
6
6
|
turnId: string;
|
|
7
7
|
requestId: string;
|
|
8
|
-
executionId
|
|
8
|
+
executionId: string;
|
|
9
9
|
}
|
|
10
10
|
export interface TaskIntentArtifactRecord extends TaskIdentityRecord {
|
|
11
11
|
version: number;
|
|
@@ -36,6 +36,12 @@ export interface ChannelQueryPlanRecord extends TaskIdentityRecord {
|
|
|
36
36
|
degradation?: Record<string, unknown>;
|
|
37
37
|
createdAt: number;
|
|
38
38
|
}
|
|
39
|
+
export interface CanonicalSemanticTaskWrite {
|
|
40
|
+
revision: number;
|
|
41
|
+
activation: RuntimeActivationSnapshotV1;
|
|
42
|
+
context: SemanticExecutionContext;
|
|
43
|
+
definition: TaskDefinitionV1;
|
|
44
|
+
}
|
|
39
45
|
export type ToolNameResolutionStatus = 'canonical' | 'alias' | 'unsupported';
|
|
40
46
|
export interface ToolNameResolutionRecord extends TaskIdentityRecord {
|
|
41
47
|
id: string;
|
|
@@ -77,3 +83,4 @@ export declare function mapToolNameResolutionRow(row: Record<string, unknown>):
|
|
|
77
83
|
export declare function mapTerminalTransitionRow(row: Record<string, unknown>): TerminalTransitionRecord;
|
|
78
84
|
export declare function mapTranscriptCheckpointRow(row: Record<string, unknown>): TranscriptCheckpointRecord;
|
|
79
85
|
export declare function assertTaskIdentity(record: TaskIdentityRecord): void;
|
|
86
|
+
import type { RuntimeActivationSnapshotV1, SemanticExecutionContext, TaskDefinitionV1 } from '@devflow-tools/sdk';
|
|
@@ -102,14 +102,12 @@ function assertTaskIdentity(record) {
|
|
|
102
102
|
sessionId: record.sessionId,
|
|
103
103
|
turnId: record.turnId,
|
|
104
104
|
requestId: record.requestId,
|
|
105
|
+
executionId: record.executionId,
|
|
105
106
|
})) {
|
|
106
107
|
if (typeof value !== 'string' || value.trim().length === 0) {
|
|
107
108
|
throw new Error(`TASK_IDENTITY_INVALID:${field}`);
|
|
108
109
|
}
|
|
109
110
|
}
|
|
110
|
-
if (record.executionId !== undefined && record.executionId.trim().length === 0) {
|
|
111
|
-
throw new Error('TASK_IDENTITY_INVALID:executionId');
|
|
112
|
-
}
|
|
113
111
|
}
|
|
114
112
|
function mapTaskIdentityRow(row) {
|
|
115
113
|
return {
|
|
@@ -119,7 +117,7 @@ function mapTaskIdentityRow(row) {
|
|
|
119
117
|
sessionId: requiredString(row.session_id, 'session_id'),
|
|
120
118
|
turnId: requiredString(row.turn_id, 'turn_id'),
|
|
121
119
|
requestId: requiredString(row.request_id, 'request_id'),
|
|
122
|
-
executionId:
|
|
120
|
+
executionId: requiredString(row.execution_id, 'execution_id'),
|
|
123
121
|
};
|
|
124
122
|
}
|
|
125
123
|
function canonicalize(value) {
|
package/package.json
CHANGED
|
@@ -1,17 +1,29 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@devflow-tools/database",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "DevFlow
|
|
3
|
+
"version": "0.18.0",
|
|
4
|
+
"description": "SQLite persistence primitives shared by DevFlow runtime packages.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"dist"
|
|
9
|
+
],
|
|
7
10
|
"scripts": {
|
|
8
11
|
"build": "tsc",
|
|
9
12
|
"test": "vitest run"
|
|
10
13
|
},
|
|
14
|
+
"dependencies": {
|
|
15
|
+
"@devflow-tools/sdk": "0.18.0"
|
|
16
|
+
},
|
|
11
17
|
"devDependencies": {
|
|
12
18
|
"@types/node": "^22.15.0",
|
|
13
19
|
"typescript": "^5.5.0",
|
|
14
20
|
"vitest": "^2.0.0"
|
|
15
21
|
},
|
|
16
|
-
"gitHead": "
|
|
22
|
+
"gitHead": "940c6c004c0ebb59abad3da9bc67137fa2d2a666",
|
|
23
|
+
"license": "MIT",
|
|
24
|
+
"repository": {
|
|
25
|
+
"type": "git",
|
|
26
|
+
"url": "git+https://github.com/shilongfeicool/dev-flow.git"
|
|
27
|
+
},
|
|
28
|
+
"homepage": "https://github.com/shilongfeicool/dev-flow#readme"
|
|
17
29
|
}
|