@devflow-tools/database 0.17.2 → 0.17.4
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 +30 -0
- package/__tests__/database.retrieval-ledger.test.ts +15 -0
- package/__tests__/database.semantic-resolution.test.ts +87 -0
- package/__tests__/database.task-runtime.test.ts +73 -0
- package/__tests__/database.work-queue.test.ts +34 -0
- package/dist/database.d.ts +39 -0
- package/dist/database.js +395 -12
- package/dist/index.d.ts +5 -1
- package/dist/index.js +10 -1
- package/dist/retrieval-ledger.d.ts +8 -1
- package/dist/semantic-resolution.d.ts +30 -0
- package/dist/semantic-resolution.js +156 -0
- package/dist/task-runtime.d.ts +64 -0
- package/dist/task-runtime.js +106 -0
- package/dist/work-queue.d.ts +18 -2
- package/package.json +2 -2
- package/src/database.ts +423 -9
- package/src/index.ts +27 -0
- package/src/retrieval-ledger.ts +9 -2
- package/src/semantic-resolution.ts +181 -0
- package/src/task-runtime.ts +169 -0
- package/src/work-queue.ts +20 -1
- package/tsconfig.tsbuildinfo +1 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
export type PersistedSemanticResolutionState = 'provisional' | 'resolved' | 'abstained' | 'unavailable';
|
|
2
|
+
export type PersistedSemanticGeneratedBy = 'deterministic' | 'embedding_router' | 'host_semantic' | 'hybrid';
|
|
3
|
+
|
|
4
|
+
export interface SemanticResolutionRecord {
|
|
5
|
+
frameHash: string;
|
|
6
|
+
projectRoot: string;
|
|
7
|
+
projectId: string;
|
|
8
|
+
hostId: string;
|
|
9
|
+
sessionId: string;
|
|
10
|
+
turnId: string;
|
|
11
|
+
requestId: string;
|
|
12
|
+
sourceHash: string;
|
|
13
|
+
artifactHash: string;
|
|
14
|
+
artifactRevision: number;
|
|
15
|
+
supersedesFrameHash?: string;
|
|
16
|
+
state: PersistedSemanticResolutionState;
|
|
17
|
+
generatedBy: PersistedSemanticGeneratedBy;
|
|
18
|
+
modelId?: string;
|
|
19
|
+
modelRevision?: string;
|
|
20
|
+
routeCatalogVersion: string;
|
|
21
|
+
thresholdVersion: string;
|
|
22
|
+
route: Record<string, unknown>;
|
|
23
|
+
sampling: Record<string, unknown>;
|
|
24
|
+
conflicts: Array<Record<string, unknown>>;
|
|
25
|
+
frame: Record<string, unknown>;
|
|
26
|
+
durationMs: number;
|
|
27
|
+
createdAt: number;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const STATES = new Set<PersistedSemanticResolutionState>([
|
|
31
|
+
'provisional', 'resolved', 'abstained', 'unavailable',
|
|
32
|
+
]);
|
|
33
|
+
const GENERATORS = new Set<PersistedSemanticGeneratedBy>([
|
|
34
|
+
'deterministic', 'embedding_router', 'host_semantic', 'hybrid',
|
|
35
|
+
]);
|
|
36
|
+
|
|
37
|
+
export function assertSemanticResolutionRecord(record: SemanticResolutionRecord): void {
|
|
38
|
+
for (const [field, value] of Object.entries({
|
|
39
|
+
frameHash: record.frameHash,
|
|
40
|
+
projectRoot: record.projectRoot,
|
|
41
|
+
projectId: record.projectId,
|
|
42
|
+
hostId: record.hostId,
|
|
43
|
+
sessionId: record.sessionId,
|
|
44
|
+
turnId: record.turnId,
|
|
45
|
+
requestId: record.requestId,
|
|
46
|
+
sourceHash: record.sourceHash,
|
|
47
|
+
artifactHash: record.artifactHash,
|
|
48
|
+
routeCatalogVersion: record.routeCatalogVersion,
|
|
49
|
+
thresholdVersion: record.thresholdVersion,
|
|
50
|
+
})) {
|
|
51
|
+
if (typeof value !== 'string' || value.length === 0) {
|
|
52
|
+
throw new Error(`SEMANTIC_RESOLUTION_INVALID:${field}`);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
if (!Number.isSafeInteger(record.artifactRevision) || record.artifactRevision < 1) {
|
|
56
|
+
throw new Error('SEMANTIC_RESOLUTION_INVALID:artifactRevision');
|
|
57
|
+
}
|
|
58
|
+
if (!Number.isSafeInteger(record.durationMs) || record.durationMs < 0
|
|
59
|
+
|| !Number.isSafeInteger(record.createdAt) || record.createdAt < 0) {
|
|
60
|
+
throw new Error('SEMANTIC_RESOLUTION_INVALID:timing');
|
|
61
|
+
}
|
|
62
|
+
if (!STATES.has(record.state) || !GENERATORS.has(record.generatedBy)) {
|
|
63
|
+
throw new Error('SEMANTIC_RESOLUTION_INVALID:enum');
|
|
64
|
+
}
|
|
65
|
+
if (record.frame.frameHash !== record.frameHash) {
|
|
66
|
+
throw new Error('SEMANTIC_RESOLUTION_FRAME_HASH_MISMATCH');
|
|
67
|
+
}
|
|
68
|
+
stableSemanticResolutionJson(record.route);
|
|
69
|
+
stableSemanticResolutionJson(record.sampling);
|
|
70
|
+
stableSemanticResolutionJson(record.conflicts);
|
|
71
|
+
stableSemanticResolutionJson(record.frame);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export function stableSemanticResolutionJson(value: unknown): string {
|
|
75
|
+
return JSON.stringify(canonicalize(value));
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export function mapSemanticResolutionRow(row: Record<string, unknown>): SemanticResolutionRecord {
|
|
79
|
+
const state = requiredString(row.state, 'state') as PersistedSemanticResolutionState;
|
|
80
|
+
const generatedBy = requiredString(row.generated_by, 'generated_by') as PersistedSemanticGeneratedBy;
|
|
81
|
+
if (!STATES.has(state) || !GENERATORS.has(generatedBy)) {
|
|
82
|
+
throw new Error('SEMANTIC_RESOLUTION_ROW_INVALID:enum');
|
|
83
|
+
}
|
|
84
|
+
const result: SemanticResolutionRecord = {
|
|
85
|
+
frameHash: requiredString(row.frame_hash, 'frame_hash'),
|
|
86
|
+
projectRoot: requiredString(row.project_root, 'project_root'),
|
|
87
|
+
projectId: requiredString(row.project_id, 'project_id'),
|
|
88
|
+
hostId: requiredString(row.host_id, 'host_id'),
|
|
89
|
+
sessionId: requiredString(row.session_id, 'session_id'),
|
|
90
|
+
turnId: requiredString(row.turn_id, 'turn_id'),
|
|
91
|
+
requestId: requiredString(row.request_id, 'request_id'),
|
|
92
|
+
sourceHash: requiredString(row.source_hash, 'source_hash'),
|
|
93
|
+
artifactHash: requiredString(row.artifact_hash, 'artifact_hash'),
|
|
94
|
+
artifactRevision: requiredPositiveInteger(row.artifact_revision, 'artifact_revision'),
|
|
95
|
+
...(optionalString(row.supersedes_frame_hash)
|
|
96
|
+
? { supersedesFrameHash: optionalString(row.supersedes_frame_hash) }
|
|
97
|
+
: {}),
|
|
98
|
+
state,
|
|
99
|
+
generatedBy,
|
|
100
|
+
...(optionalString(row.model_id) ? { modelId: optionalString(row.model_id) } : {}),
|
|
101
|
+
...(optionalString(row.model_revision) ? { modelRevision: optionalString(row.model_revision) } : {}),
|
|
102
|
+
routeCatalogVersion: requiredString(row.route_catalog_version, 'route_catalog_version'),
|
|
103
|
+
thresholdVersion: requiredString(row.threshold_version, 'threshold_version'),
|
|
104
|
+
route: parseObject(row.route_json, 'route_json'),
|
|
105
|
+
sampling: parseObject(row.sampling_json, 'sampling_json'),
|
|
106
|
+
conflicts: parseObjectArray(row.conflicts_json, 'conflicts_json'),
|
|
107
|
+
frame: parseObject(row.frame_json, 'frame_json'),
|
|
108
|
+
durationMs: requiredNonNegativeInteger(row.duration_ms, 'duration_ms'),
|
|
109
|
+
createdAt: requiredNonNegativeInteger(row.created_at, 'created_at'),
|
|
110
|
+
};
|
|
111
|
+
assertSemanticResolutionRecord(result);
|
|
112
|
+
return result;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
function canonicalize(value: unknown): unknown {
|
|
116
|
+
if (value === undefined) return undefined;
|
|
117
|
+
if (value === null || typeof value === 'string' || typeof value === 'boolean') return value;
|
|
118
|
+
if (typeof value === 'number') {
|
|
119
|
+
if (!Number.isFinite(value) || Object.is(value, -0)) throw new Error('SEMANTIC_RESOLUTION_JSON_INVALID');
|
|
120
|
+
return value;
|
|
121
|
+
}
|
|
122
|
+
if (Array.isArray(value)) return value.map(item => {
|
|
123
|
+
if (item === undefined) throw new Error('SEMANTIC_RESOLUTION_JSON_INVALID');
|
|
124
|
+
return canonicalize(item);
|
|
125
|
+
});
|
|
126
|
+
if (!value || typeof value !== 'object' || Object.getPrototypeOf(value) !== Object.prototype) {
|
|
127
|
+
throw new Error('SEMANTIC_RESOLUTION_JSON_INVALID');
|
|
128
|
+
}
|
|
129
|
+
const record = value as Record<string, unknown>;
|
|
130
|
+
return Object.fromEntries(Object.keys(record).sort()
|
|
131
|
+
.filter(key => record[key] !== undefined)
|
|
132
|
+
.map(key => [key, canonicalize(record[key])]));
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
function parseObject(value: unknown, field: string): Record<string, unknown> {
|
|
136
|
+
const parsed = parseJson(value, field);
|
|
137
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
138
|
+
throw new Error(`SEMANTIC_RESOLUTION_ROW_INVALID:${field}`);
|
|
139
|
+
}
|
|
140
|
+
return parsed as Record<string, unknown>;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
function parseObjectArray(value: unknown, field: string): Array<Record<string, unknown>> {
|
|
144
|
+
const parsed = parseJson(value, field);
|
|
145
|
+
if (!Array.isArray(parsed) || parsed.some(item => !item || typeof item !== 'object' || Array.isArray(item))) {
|
|
146
|
+
throw new Error(`SEMANTIC_RESOLUTION_ROW_INVALID:${field}`);
|
|
147
|
+
}
|
|
148
|
+
return parsed as Array<Record<string, unknown>>;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
function parseJson(value: unknown, field: string): unknown {
|
|
152
|
+
if (typeof value !== 'string') throw new Error(`SEMANTIC_RESOLUTION_ROW_INVALID:${field}`);
|
|
153
|
+
try { return JSON.parse(value) as unknown; } catch {
|
|
154
|
+
throw new Error(`SEMANTIC_RESOLUTION_ROW_INVALID:${field}`);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
function requiredString(value: unknown, field: string): string {
|
|
159
|
+
if (typeof value !== 'string' || value.length === 0) {
|
|
160
|
+
throw new Error(`SEMANTIC_RESOLUTION_ROW_INVALID:${field}`);
|
|
161
|
+
}
|
|
162
|
+
return value;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
function optionalString(value: unknown): string | undefined {
|
|
166
|
+
return typeof value === 'string' && value.length > 0 ? value : undefined;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
function requiredPositiveInteger(value: unknown, field: string): number {
|
|
170
|
+
const result = requiredNonNegativeInteger(value, field);
|
|
171
|
+
if (result < 1) throw new Error(`SEMANTIC_RESOLUTION_ROW_INVALID:${field}`);
|
|
172
|
+
return result;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
function requiredNonNegativeInteger(value: unknown, field: string): number {
|
|
176
|
+
const result = Number(value);
|
|
177
|
+
if (!Number.isSafeInteger(result) || result < 0) {
|
|
178
|
+
throw new Error(`SEMANTIC_RESOLUTION_ROW_INVALID:${field}`);
|
|
179
|
+
}
|
|
180
|
+
return result;
|
|
181
|
+
}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
2
|
+
|
|
3
|
+
export interface TaskRuntimeIdentityRecord {
|
|
4
|
+
projectRoot: string;
|
|
5
|
+
projectId: string;
|
|
6
|
+
hostId: string;
|
|
7
|
+
sessionId: string;
|
|
8
|
+
turnId: string;
|
|
9
|
+
requestId: string;
|
|
10
|
+
executionId?: string;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface TaskRuntimeEventRecord {
|
|
14
|
+
schemaVersion: 'task-runtime-event.v1';
|
|
15
|
+
producer: string;
|
|
16
|
+
producerVersion: string;
|
|
17
|
+
eventId: string;
|
|
18
|
+
sequence: number;
|
|
19
|
+
identity: TaskRuntimeIdentityRecord;
|
|
20
|
+
taskSpecHash: string;
|
|
21
|
+
kind: string;
|
|
22
|
+
payload: Record<string, unknown>;
|
|
23
|
+
createdAt: number;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export type TaskRuntimeChannelRequirement = 'required' | 'optional' | 'not_required';
|
|
27
|
+
export type TaskRuntimeChannelStatus =
|
|
28
|
+
| 'satisfied' | 'intentional_abstention' | 'empty_valid' | 'degraded' | 'failed';
|
|
29
|
+
export type TaskRuntimeObligationState = 'pending' | 'satisfied' | 'degraded' | 'failed';
|
|
30
|
+
|
|
31
|
+
export interface TaskRuntimeChannelRecord {
|
|
32
|
+
requirement: TaskRuntimeChannelRequirement;
|
|
33
|
+
status: TaskRuntimeChannelStatus;
|
|
34
|
+
reasonCode: string;
|
|
35
|
+
evidenceIds: string[];
|
|
36
|
+
material: boolean;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface TaskRuntimeObligationRecord {
|
|
40
|
+
requirement: TaskRuntimeChannelRequirement;
|
|
41
|
+
state: TaskRuntimeObligationState;
|
|
42
|
+
receiptId?: string;
|
|
43
|
+
reasonCode?: string;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface TaskRuntimeSnapshotRecord {
|
|
47
|
+
schemaVersion: 'task-runtime-snapshot.v1';
|
|
48
|
+
producer: string;
|
|
49
|
+
producerVersion: string;
|
|
50
|
+
identity: TaskRuntimeIdentityRecord;
|
|
51
|
+
taskSpecHash: string;
|
|
52
|
+
lastEventSequence: number;
|
|
53
|
+
artifacts: {
|
|
54
|
+
requiredIdentityIds: string[];
|
|
55
|
+
resolvedIdentityIds: string[];
|
|
56
|
+
ambiguousIdentityIds: string[];
|
|
57
|
+
};
|
|
58
|
+
channels: Partial<Record<'code' | 'memory' | 'knowledge', TaskRuntimeChannelRecord>>;
|
|
59
|
+
contextReceiptId?: string;
|
|
60
|
+
action: TaskRuntimeObligationRecord;
|
|
61
|
+
verification: TaskRuntimeObligationRecord;
|
|
62
|
+
memory: TaskRuntimeObligationRecord;
|
|
63
|
+
durableWorkIds: string[];
|
|
64
|
+
terminal: 'running' | 'retry_pending' | 'completed' | 'completed_with_degradation' | 'failed';
|
|
65
|
+
runtimeHealth: 'healthy' | 'degraded' | 'unavailable';
|
|
66
|
+
snapshotHash: string;
|
|
67
|
+
updatedAt: number;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export function stableTaskRuntimeJson(value: unknown): string {
|
|
71
|
+
return JSON.stringify(canonicalize(value));
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export function stableTaskRuntimeHash(value: unknown): string {
|
|
75
|
+
return createHash('sha256').update(stableTaskRuntimeJson(value)).digest('hex');
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export function mapTaskRuntimeEventRow(row: Record<string, unknown>): TaskRuntimeEventRecord {
|
|
79
|
+
return {
|
|
80
|
+
schemaVersion: requiredLiteral(row.schema_version, 'task-runtime-event.v1'),
|
|
81
|
+
producer: requiredString(row.producer, 'producer'),
|
|
82
|
+
producerVersion: requiredString(row.producer_version, 'producer_version'),
|
|
83
|
+
eventId: requiredString(row.event_id, 'event_id'),
|
|
84
|
+
sequence: requiredPositiveInteger(row.sequence, 'sequence'),
|
|
85
|
+
identity: mapIdentity(row),
|
|
86
|
+
taskSpecHash: requiredString(row.task_spec_hash, 'task_spec_hash'),
|
|
87
|
+
kind: requiredString(row.kind, 'kind'),
|
|
88
|
+
payload: parseObject(row.payload_json, 'payload_json'),
|
|
89
|
+
createdAt: requiredNonNegativeInteger(row.created_at, 'created_at'),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export function mapTaskRuntimeSnapshotRow(row: Record<string, unknown>): TaskRuntimeSnapshotRecord {
|
|
94
|
+
const snapshot = parseObject(row.snapshot_json, 'snapshot_json') as unknown as TaskRuntimeSnapshotRecord;
|
|
95
|
+
if (snapshot.schemaVersion !== 'task-runtime-snapshot.v1') {
|
|
96
|
+
throw new Error(`TASK_RUNTIME_SCHEMA_UNSUPPORTED:${String(snapshot.schemaVersion)}`);
|
|
97
|
+
}
|
|
98
|
+
if (snapshot.snapshotHash !== requiredString(row.snapshot_hash, 'snapshot_hash')) {
|
|
99
|
+
throw new Error('TASK_RUNTIME_SNAPSHOT_HASH_MISMATCH');
|
|
100
|
+
}
|
|
101
|
+
const { snapshotHash: _snapshotHash, ...body } = snapshot;
|
|
102
|
+
if (stableTaskRuntimeHash(body) !== snapshot.snapshotHash) {
|
|
103
|
+
throw new Error('TASK_RUNTIME_SNAPSHOT_HASH_MISMATCH');
|
|
104
|
+
}
|
|
105
|
+
return snapshot;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
function mapIdentity(row: Record<string, unknown>): TaskRuntimeIdentityRecord {
|
|
109
|
+
return {
|
|
110
|
+
projectRoot: requiredString(row.project_root, 'project_root'),
|
|
111
|
+
projectId: requiredString(row.project_id, 'project_id'),
|
|
112
|
+
hostId: requiredString(row.host_id, 'host_id'),
|
|
113
|
+
sessionId: requiredString(row.session_id, 'session_id'),
|
|
114
|
+
turnId: requiredString(row.turn_id, 'turn_id'),
|
|
115
|
+
requestId: requiredString(row.request_id, 'request_id'),
|
|
116
|
+
...(optionalString(row.execution_id) ? { executionId: optionalString(row.execution_id) } : {}),
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
function requiredLiteral<T extends string>(value: unknown, literal: T): T {
|
|
121
|
+
if (value !== literal) throw new Error(`TASK_RUNTIME_SCHEMA_UNSUPPORTED:${String(value)}`);
|
|
122
|
+
return literal;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
function requiredString(value: unknown, field: string): string {
|
|
126
|
+
if (typeof value !== 'string' || !value.trim()) throw new Error(`TASK_RUNTIME_ROW_INVALID:${field}`);
|
|
127
|
+
return value;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
function optionalString(value: unknown): string | undefined {
|
|
131
|
+
return typeof value === 'string' && value.length > 0 ? value : undefined;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
function requiredPositiveInteger(value: unknown, field: string): number {
|
|
135
|
+
const result = Number(value);
|
|
136
|
+
if (!Number.isSafeInteger(result) || result < 1) throw new Error(`TASK_RUNTIME_ROW_INVALID:${field}`);
|
|
137
|
+
return result;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
function requiredNonNegativeInteger(value: unknown, field: string): number {
|
|
141
|
+
const result = Number(value);
|
|
142
|
+
if (!Number.isSafeInteger(result) || result < 0) throw new Error(`TASK_RUNTIME_ROW_INVALID:${field}`);
|
|
143
|
+
return result;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
function parseObject(value: unknown, field: string): Record<string, unknown> {
|
|
147
|
+
if (typeof value !== 'string') throw new Error(`TASK_RUNTIME_ROW_INVALID:${field}`);
|
|
148
|
+
try {
|
|
149
|
+
const parsed = JSON.parse(value) as unknown;
|
|
150
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) throw new Error('not object');
|
|
151
|
+
return parsed as Record<string, unknown>;
|
|
152
|
+
} catch {
|
|
153
|
+
throw new Error(`TASK_RUNTIME_ROW_INVALID:${field}`);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
function canonicalize(value: unknown): unknown {
|
|
158
|
+
if (value === null || typeof value === 'string' || typeof value === 'boolean') return value;
|
|
159
|
+
if (typeof value === 'number') {
|
|
160
|
+
if (!Number.isFinite(value) || Object.is(value, -0)) throw new Error('TASK_RUNTIME_JSON_INVALID');
|
|
161
|
+
return value;
|
|
162
|
+
}
|
|
163
|
+
if (Array.isArray(value)) return value.map(canonicalize);
|
|
164
|
+
if (!value || typeof value !== 'object' || Object.getPrototypeOf(value) !== Object.prototype) {
|
|
165
|
+
throw new Error('TASK_RUNTIME_JSON_INVALID');
|
|
166
|
+
}
|
|
167
|
+
return Object.fromEntries(Object.keys(value as Record<string, unknown>).sort()
|
|
168
|
+
.map(key => [key, canonicalize((value as Record<string, unknown>)[key])]));
|
|
169
|
+
}
|
package/src/work-queue.ts
CHANGED
|
@@ -4,6 +4,8 @@ export type WorkKind =
|
|
|
4
4
|
| 'memory.turn_capture'
|
|
5
5
|
| 'memory.turn_distill'
|
|
6
6
|
| 'memory.vector_backfill'
|
|
7
|
+
| 'knowledge.ingest'
|
|
8
|
+
| 'knowledge.index_refresh'
|
|
7
9
|
| 'context.prefetch'
|
|
8
10
|
| 'verification.policy'
|
|
9
11
|
| 'learning.analyze_session'
|
|
@@ -16,7 +18,7 @@ export type WorkKind =
|
|
|
16
18
|
| 'session.finalize'
|
|
17
19
|
| 'telemetry.reconcile';
|
|
18
20
|
|
|
19
|
-
export type WorkState = 'pending' | 'leased' | 'completed' | 'failed' | 'dead_letter';
|
|
21
|
+
export type WorkState = 'pending' | 'leased' | 'completed' | 'failed' | 'dead_letter' | 'cancelled';
|
|
20
22
|
|
|
21
23
|
export interface WorkError {
|
|
22
24
|
category: string;
|
|
@@ -30,6 +32,8 @@ export interface WorkItemRecord {
|
|
|
30
32
|
projectRoot: string;
|
|
31
33
|
sessionId?: string;
|
|
32
34
|
turnId?: string;
|
|
35
|
+
sourceHash?: string;
|
|
36
|
+
taskSpecHash?: string;
|
|
33
37
|
payload: unknown;
|
|
34
38
|
state: WorkState;
|
|
35
39
|
attempts: number;
|
|
@@ -42,6 +46,10 @@ export interface WorkItemRecord {
|
|
|
42
46
|
createdAt: number;
|
|
43
47
|
updatedAt: number;
|
|
44
48
|
completedAt?: number;
|
|
49
|
+
cancelledAt?: number;
|
|
50
|
+
cancellationReason?: string;
|
|
51
|
+
replayOfId?: string;
|
|
52
|
+
replayCount: number;
|
|
45
53
|
}
|
|
46
54
|
|
|
47
55
|
export interface EnqueueWorkInput {
|
|
@@ -50,11 +58,22 @@ export interface EnqueueWorkInput {
|
|
|
50
58
|
projectRoot: string;
|
|
51
59
|
sessionId?: string;
|
|
52
60
|
turnId?: string;
|
|
61
|
+
sourceHash?: string;
|
|
62
|
+
taskSpecHash?: string;
|
|
53
63
|
payload: unknown;
|
|
54
64
|
maxAttempts?: number;
|
|
55
65
|
nextAttemptAt?: number;
|
|
56
66
|
}
|
|
57
67
|
|
|
68
|
+
export interface ProjectMutationLeaseRecord {
|
|
69
|
+
projectRoot: string;
|
|
70
|
+
mutationKind: string;
|
|
71
|
+
owner: string;
|
|
72
|
+
leaseExpiresAt: number;
|
|
73
|
+
sourceHash?: string;
|
|
74
|
+
updatedAt: number;
|
|
75
|
+
}
|
|
76
|
+
|
|
58
77
|
export interface LeaseWorkInput {
|
|
59
78
|
projectRoot: string;
|
|
60
79
|
owner: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","./src/types.ts","./src/node-sqlite.ts","./src/work-queue.ts","./src/obligation-ledger.ts","./src/host-actions.ts","./src/retrieval-sessions.ts","./src/learning-candidates.ts","./src/workflow-workers.ts","./src/retrieval-ledger.ts","./src/task-semantic-control.ts","./src/task-runtime.ts","./src/semantic-resolution.ts","./src/database.ts","./src/index.ts","./node_modules/@types/node/compatibility/disposable.d.ts","./node_modules/@types/node/compatibility/indexable.d.ts","./node_modules/@types/node/compatibility/iterators.d.ts","./node_modules/@types/node/compatibility/index.d.ts","./node_modules/@types/node/globals.typedarray.d.ts","./node_modules/@types/node/buffer.buffer.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/web-globals/abortcontroller.d.ts","./node_modules/@types/node/web-globals/domexception.d.ts","./node_modules/@types/node/web-globals/events.d.ts","../../node_modules/buffer/index.d.ts","./node_modules/undici-types/header.d.ts","./node_modules/undici-types/readable.d.ts","./node_modules/undici-types/file.d.ts","./node_modules/undici-types/fetch.d.ts","./node_modules/undici-types/formdata.d.ts","./node_modules/undici-types/connector.d.ts","./node_modules/undici-types/client.d.ts","./node_modules/undici-types/errors.d.ts","./node_modules/undici-types/dispatcher.d.ts","./node_modules/undici-types/global-dispatcher.d.ts","./node_modules/undici-types/global-origin.d.ts","./node_modules/undici-types/pool-stats.d.ts","./node_modules/undici-types/pool.d.ts","./node_modules/undici-types/handlers.d.ts","./node_modules/undici-types/balanced-pool.d.ts","./node_modules/undici-types/agent.d.ts","./node_modules/undici-types/mock-interceptor.d.ts","./node_modules/undici-types/mock-agent.d.ts","./node_modules/undici-types/mock-client.d.ts","./node_modules/undici-types/mock-pool.d.ts","./node_modules/undici-types/mock-errors.d.ts","./node_modules/undici-types/proxy-agent.d.ts","./node_modules/undici-types/env-http-proxy-agent.d.ts","./node_modules/undici-types/retry-handler.d.ts","./node_modules/undici-types/retry-agent.d.ts","./node_modules/undici-types/api.d.ts","./node_modules/undici-types/interceptors.d.ts","./node_modules/undici-types/util.d.ts","./node_modules/undici-types/cookies.d.ts","./node_modules/undici-types/patch.d.ts","./node_modules/undici-types/websocket.d.ts","./node_modules/undici-types/eventsource.d.ts","./node_modules/undici-types/filereader.d.ts","./node_modules/undici-types/diagnostics-channel.d.ts","./node_modules/undici-types/content-type.d.ts","./node_modules/undici-types/cache.d.ts","./node_modules/undici-types/index.d.ts","./node_modules/@types/node/web-globals/fetch.d.ts","./node_modules/@types/node/web-globals/navigator.d.ts","./node_modules/@types/node/web-globals/storage.d.ts","./node_modules/@types/node/web-globals/streams.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.d.ts","./node_modules/@types/node/inspector.generated.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/readline/promises.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/sea.d.ts","./node_modules/@types/node/sqlite.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/index.d.ts","../../node_modules/@types/better-sqlite3/index.d.ts","../../node_modules/@types/d3-array/index.d.ts","../../node_modules/@types/d3-color/index.d.ts","../../node_modules/@types/d3-selection/index.d.ts","../../node_modules/@types/d3-drag/index.d.ts","../../node_modules/@types/d3-ease/index.d.ts","../../node_modules/@types/d3-interpolate/index.d.ts","../../node_modules/@types/d3-path/index.d.ts","../../node_modules/@types/d3-time/index.d.ts","../../node_modules/@types/d3-scale/index.d.ts","../../node_modules/@types/d3-shape/index.d.ts","../../node_modules/@types/d3-timer/index.d.ts","../../node_modules/@types/d3-transition/index.d.ts","../../node_modules/@types/d3-zoom/index.d.ts","../../node_modules/@types/dagre/index.d.ts","../../node_modules/@types/estree/index.d.ts","../../node_modules/@types/long/index.d.ts","../../node_modules/@types/minimatch/index.d.ts","../../node_modules/@types/minimist/index.d.ts","../../node_modules/@types/normalize-package-data/index.d.ts","../../node_modules/@types/parse-json/index.d.ts","../../node_modules/@types/prop-types/index.d.ts","../../node_modules/@types/react/global.d.ts","../../node_modules/csstype/index.d.ts","../../node_modules/@types/react/index.d.ts","../../node_modules/@types/react-dom/index.d.ts","../../node_modules/@types/turndown/index.d.ts","../../node_modules/@types/validator/lib/isboolean.d.ts","../../node_modules/@types/validator/lib/isemail.d.ts","../../node_modules/@types/validator/lib/isfqdn.d.ts","../../node_modules/@types/validator/lib/isiban.d.ts","../../node_modules/@types/validator/lib/isiso31661alpha2.d.ts","../../node_modules/@types/validator/lib/isiso4217.d.ts","../../node_modules/@types/validator/lib/isiso6391.d.ts","../../node_modules/@types/validator/lib/istaxid.d.ts","../../node_modules/@types/validator/lib/isurl.d.ts","../../node_modules/@types/validator/index.d.ts","../../../../node_modules/@types/html-minifier-terser/index.d.ts","../../../../node_modules/@types/json-schema/index.d.ts","../../../../node_modules/@types/q/index.d.ts","../../../../node_modules/@types/source-list-map/index.d.ts","../../../../node_modules/@types/tapable/index.d.ts","../../../../node_modules/@types/uglify-js/node_modules/source-map/source-map.d.ts","../../../../node_modules/@types/uglify-js/index.d.ts","../../../../node_modules/anymatch/index.d.ts","../../../../node_modules/@types/webpack/node_modules/source-map/source-map.d.ts","../../../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts","../../../../node_modules/@types/webpack-sources/lib/source.d.ts","../../../../node_modules/@types/webpack-sources/lib/compatsource.d.ts","../../../../node_modules/@types/webpack-sources/lib/concatsource.d.ts","../../../../node_modules/@types/webpack-sources/lib/originalsource.d.ts","../../../../node_modules/@types/webpack-sources/lib/prefixsource.d.ts","../../../../node_modules/@types/webpack-sources/lib/rawsource.d.ts","../../../../node_modules/@types/webpack-sources/lib/replacesource.d.ts","../../../../node_modules/@types/webpack-sources/lib/sizeonlysource.d.ts","../../../../node_modules/@types/webpack-sources/lib/sourcemapsource.d.ts","../../../../node_modules/@types/webpack-sources/lib/index.d.ts","../../../../node_modules/@types/webpack-sources/lib/cachedsource.d.ts","../../../../node_modules/@types/webpack-sources/index.d.ts","../../../../node_modules/@types/webpack/index.d.ts"],"fileIdsList":[[65,115,132,133,165],[65,115,132,133],[65,115,132,133,169,178],[65,115,132,133,168],[65,115,132,133,174],[65,115,132,133,173],[65,115,132,133,169,172,178],[65,115,132,133,190],[65,115,132,133,187,188,189],[65,115,132,133,193,194,195,196,197,198,199,200,201],[65,112,113,115,132,133],[65,114,115,132,133],[115,132,133],[65,115,120,132,133,150],[65,115,116,121,126,132,133,135,147,158],[65,115,116,117,126,132,133,135],[60,61,62,65,115,132,133],[65,115,118,132,133,159],[65,115,119,120,127,132,133,136],[65,115,120,132,133,147,155],[65,115,121,123,126,132,133,135],[65,114,115,122,132,133],[65,115,123,124,132,133],[65,115,125,126,132,133],[65,114,115,126,132,133],[65,115,126,127,128,132,133,147,158],[65,115,126,127,128,132,133,142,147,150],[65,107,115,123,126,129,132,133,135,147,158],[65,115,126,127,129,130,132,133,135,147,155,158],[65,115,129,131,132,133,147,155,158],[63,64,65,66,67,68,69,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164],[65,115,126,132,133],[65,115,132,133,134,158],[65,115,123,126,132,133,135,147],[65,115,132,133,136],[65,115,132,133,137],[65,114,115,132,133,138],[65,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164],[65,115,132,133,140],[65,115,132,133,141],[65,115,126,132,133,142,143],[65,115,132,133,142,144,159,161],[65,115,127,132,133],[65,115,126,132,133,147,148,150],[65,115,132,133,149,150],[65,115,132,133,147,148],[65,115,132,133,150],[65,115,132,133,151],[65,112,115,132,133,147,152,158],[65,115,126,132,133,153,154],[65,115,132,133,153,154],[65,115,120,132,133,135,147,155],[65,115,132,133,156],[65,115,132,133,135,157],[65,115,129,132,133,141,158],[65,115,120,132,133,159],[65,115,132,133,147,160],[65,115,132,133,134,161],[65,115,132,133,162],[65,107,115,132,133],[65,107,115,126,128,132,133,138,147,150,158,160,161,163],[65,115,132,133,147,164],[65,79,83,115,132,133,158],[65,79,115,132,133,147,158],[65,74,115,132,133],[65,76,79,115,132,133,155,158],[65,115,132,133,135,155],[65,74,115,132,133,165],[65,76,79,115,132,133,135,158],[65,71,72,75,78,115,126,132,133,147,158],[65,79,86,115,132,133],[65,71,77,115,132,133],[65,79,100,101,115,132,133],[65,75,79,115,132,133,150,158,165],[65,100,115,132,133,165],[65,73,74,115,132,133,165],[65,79,115,132,133],[65,73,74,75,76,77,78,79,80,81,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,101,102,103,104,105,106,115,132,133],[65,79,94,115,132,133],[65,79,86,87,115,132,133],[65,77,79,87,88,115,132,133],[65,78,115,132,133],[65,71,74,79,115,132,133],[65,79,83,87,88,115,132,133],[65,83,115,132,133],[65,77,79,82,115,132,133,158],[65,71,76,79,86,115,132,133],[65,115,132,133,147],[65,74,79,100,115,132,133,163,165],[47,48,49,50,51,52,53,54,55,56,57,65,115,120,127,132,133,136,137],[48,49,50,51,52,53,54,55,56,57,58,65,115,132,133],[46,65,115,132,133,146],[65,115,120,132,133],[65,115,132,133,208],[65,115,132,133,165,213,214,215,216,217,218,219,220,221,222,223],[65,115,132,133,212,213,222],[65,115,132,133,213,222],[65,115,132,133,206,212,213,222],[65,115,132,133,212,213,214,215,216,217,218,219,220,221,223],[65,115,132,133,213],[65,115,120,132,133,212,222],[65,115,120,132,133,165,207,208,209,210,224]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"4f0b1a4ab354a2e47e1396af5bc2663a77cd9f91eb857b9f0fdfcd77cc95c8d0","signature":"651a6436cc80d726a120b278fcef7487a66061442629a7c83b27977438c3ed36"},{"version":"3b1a7693bd66fad891038ad2b30e8eb06c8da4cbfc1f7691e857540c01ac3cdb","signature":"694767dca8e136df397deda49122af216f2d10dd6bd222a2b117d49882cc2f23"},{"version":"6ad3f1af299806a8d6c59a9ad57c16d06a4f05a927ce3b3139e5e1fad8bcccf3","signature":"f2ba0aba5a46f82efb98147e8de87272e209dbf31f2e4af527298be3a35c007a"},{"version":"b490ef6391f64aa28bc452b907462163b63d412d8984630e0777970aed7fa8d5","signature":"27311437b7dae1bcf4f30ac52f5c7527f265438d3ad7184b46daf2f8f5417307"},{"version":"e04476f981a2bff5bc302e1776f5ece8eece3801e1188fb07126e661aa79e907","signature":"ba77c208cf696473912bd2f84cb93c2b61f7faf108712db69c838e23bb77bac1"},{"version":"16f19f92edb90e4ab2d034e856179a1a581bbd45e3fb25ab2531eb2d9315718d","signature":"060aada36f7239e7c8ae86b2164bb1b0e5c83c997eaae2dfcd120db7698f2406"},{"version":"f03144cf63c05642505945e36379d05b2dea254c4f9c2ba70085f3ffcea3e9f9","signature":"6766c9a574d2c656494cb8beb29fcb1701e6719366f7255d56cf723267ffd585"},{"version":"fcfa8c24b48dc6922c4b46daa657bfab22cdc2f610b4608174ddbd69fcea3085","signature":"dc34d797db0f2b3b97a86c8e9e7d5b1d55faa42d203759a08b080f2dce805274"},{"version":"cb59de368f2b515addaeaa009c402bf6d91b9d9d0ce9886b7ac703913d0a64ee","signature":"568eb228f5f7148aea1d17c1e7a8efa74bfa5bfb2f8ef645b8cf1f1dc6f705b4"},{"version":"00c81a2115f918bd85e67ed2d041324ba890777c03a9b34ad7cc605797957662","signature":"23c6afab884f3d5f7e09985f82db3e6f79ec5c054241c72240662abe5f9a9815"},{"version":"7b754852c12d01199750cbde41ae0002d07f7b30e591cc425325835193c6afed","signature":"1e1397d8708101d9a32058edb64196e8a122740c381bbebab692ed5a5adb9be9"},{"version":"c0da0a246b87eb863d733cc4bf3c7f3866fcb5d6e1eaf12f4daee39c04b0ef88","signature":"68763c29aca77e676556c1e0e5f37d4e247a0e59a0ec7708eccc25ea33901215"},{"version":"2add065ff6cfabe6c798deec3c250588d73adc22706b2a45fdc7c2c3197a7629","signature":"d36a83bcd8c9596f292dbdd8d9f2f18809ca128cedc1faedceaf357e86fb631f"},{"version":"c3071f5cc5b21eb5359051cfb04bac9f6346cfa6cb7dd9bccc94b7fbd5b26a82","signature":"57551f72f98143e7d654ed981749f7de17d9c51638700b7a5f890231786f9b0c"},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"808069bba06b6768b62fd22429b53362e7af342da4a236ed2d2e1c89fcca3b4a","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"b52476feb4a0cbcb25e5931b930fc73cb6643fb1a5060bf8a3dda0eeae5b4b68","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d97fb21da858fb18b8ae72c314e9743fd52f73ebe2764e12af1db32fc03f853f","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fa06ada475b910e2106c98c68b10483dc8811d0c14a8a8dd36efb2672485b29","impliedFormat":1},{"version":"33e5e9aba62c3193d10d1d33ae1fa75c46a1171cf76fef750777377d53b0303f","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"6a0cd27e5dc2cfbe039e731cf879d12b0e2dded06d1b1dedad07f7712de0d7f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f5c844119c43e51ce777c509267f14d6aaf31eafb2c2b002ca35584cd13b29","impliedFormat":1},{"version":"e60477649d6ad21542bd2dc7e3d9ff6853d0797ba9f689ba2f6653818999c264","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4c829ab315f57c5442c6667b53769975acbf92003a66aef19bce151987675bd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2ade7657e2db96d18315694789eff2ddd3d8aea7215b181f8a0b303277cc579","impliedFormat":1},{"version":"78dbea00e90d2df8ea3dbef0cc379d95b8be9b71cd6bde4c28728f306811803b","impliedFormat":1},{"version":"4d631b81fa2f07a0e63a9a143d6a82c25c5f051298651a9b69176ba28930756d","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"41670ee38943d9cbb4924e436f56fc19ee94232bc96108562de1a734af20dc2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e1e46d0a9837ee058c100501080c920fa98081ea3956af0374308ba6f22a33e","impliedFormat":1},{"version":"272ca407e0c9068bdc5152552d876e68037ceae3de62e529306403e973dec8e1","impliedFormat":1},{"version":"fa7834c715d5357e4540cee40ce96c3250ddb67a7b879a6b7fa0e86d6696f121","impliedFormat":1},{"version":"22dfb07a7ab15b66ac043829056fe70124844636ae719551812ac631ba04985b","impliedFormat":1},{"version":"a10f0e1854f3316d7ee437b79649e5a6ae3ae14ffe6322b02d4987071a95362e","impliedFormat":1},{"version":"e208f73ef6a980104304b0d2ca5f6bf1b85de6009d2c7e404028b875020fa8f2","impliedFormat":1},{"version":"d163b6bc2372b4f07260747cbc6c0a6405ab3fbcea3852305e98ac43ca59f5bc","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"a6f137d651076822d4fe884287e68fd61785a0d3d1fdb250a5059b691fa897db","impliedFormat":1},{"version":"24826ed94a78d5c64bd857570fdbd96229ad41b5cb654c08d75a9845e3ab7dde","impliedFormat":1},{"version":"8b479a130ccb62e98f11f136d3ac80f2984fdc07616516d29881f3061f2dd472","impliedFormat":1},{"version":"928af3d90454bf656a52a48679f199f64c1435247d6189d1caf4c68f2eaf921f","affectsGlobalScope":true,"impliedFormat":1},{"version":"bceb58df66ab8fb00170df20cd813978c5ab84be1d285710c4eb005d8e9d8efb","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"0cb167c371eaa8c869f8a7656a7296f2e4fae43b4d8b803a680236b24794e5f9","impliedFormat":1},{"version":"0a839dba0287cc0481ad4beedd48a1c64acf1e212ae865d1315f7007ca215161","impliedFormat":1},{"version":"38dc4655376cd1a4bd6bb3763d92949233e33d38d3dd3cbea7bbf218175a38ef","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"d61e0a64cd175208ac0b83670151a9a6b5916f0d1ffcdc5c29c90b1cebfc5045","affectsGlobalScope":true,"impliedFormat":1},{"version":"18fd40412d102c5564136f29735e5d1c3b455b8a37f920da79561f1fde068208","impliedFormat":1},{"version":"48a679952eefe4cb776d5a0e1ccba2d3eb53b57448bbb7abc1fcebcbd5440188","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"2d14da6ecb49bf828d83948765ec2d3a579d476bbb9645e749610baa6ec880ca","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"5b7aa3c4c1a5d81b411e8cb302b45507fea9358d3569196b27eb1a27ae3a90ef","affectsGlobalScope":true,"impliedFormat":1},{"version":"5987a903da92c7462e0b35704ce7da94d7fdc4b89a984871c0e2b87a8aae9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea08a0345023ade2b47fbff5a76d0d0ed8bff10bc9d22b83f40858a8e941501c","impliedFormat":1},{"version":"0aef708fb4c7a6b915e8305cbfac40cd207b032dbaabe9a01889a5fff3254681","impliedFormat":1},{"version":"ae062ce7d9510060c5d7e7952ae379224fb3f8f2dd74e88959878af2057c143b","impliedFormat":1},{"version":"ad9bdafb4e7abf14cc53ce7970486a84c87831e62891e5dfe798ddcd55e84701","affectsGlobalScope":true,"impliedFormat":1},{"version":"358765d5ea8afd285d4fd1532e78b88273f18cb3f87403a9b16fef61ac9fdcfe","impliedFormat":1},{"version":"71d3ae6a5e73ca4130762560425e00984ebaff64d5353a3333d1bb7eb86ef336","impliedFormat":1},{"version":"c2a6a737189ced24ffe0634e9239b087e4c26378d0490f95141b9b9b042b746c","impliedFormat":1},{"version":"b1538a92b9bae8d230267210c5db38c2eb6bdb352128a3ce3aa8c6acf9fc9622","impliedFormat":1},{"version":"6fc1a4f64372593767a9b7b774e9b3b92bf04e8785c3f9ea98973aa9f4bbe490","impliedFormat":1},{"version":"469532350a366536390c6eb3bde6839ec5c81fe1227a6b7b6a70202954d70c40","impliedFormat":1},{"version":"54e79224429e911b5d6aeb3cf9097ec9fd0f140d5a1461bbdece3066b17c232c","impliedFormat":1},{"version":"ff09b6fbdcf74d8af4e131b8866925c5e18d225540b9b19ce9485ca93e574d84","impliedFormat":1},{"version":"d5895252efa27a50f134a9b580aa61f7def5ab73d0a8071f9b5bf9a317c01c2d","impliedFormat":1},{"version":"2c378d9368abcd2eba8c29b294d40909845f68557bc0b38117e4f04fc56e5f9c","impliedFormat":1},{"version":"56208c500dcb5f42be7e18e8cb578f257a1a89b94b3280c506818fed06391805","impliedFormat":1},{"version":"0c94c2e497e1b9bcfda66aea239d5d36cd980d12a6d9d59e66f4be1fa3da5d5a","impliedFormat":1},{"version":"9b048390bcffe88c023a4cd742a720b41d4cd7df83bc9270e6f2339bf38de278","affectsGlobalScope":true,"impliedFormat":1},{"version":"1f366bde16e0513fa7b64f87f86689c4d36efd85afce7eb24753e9c99b91c319","impliedFormat":1},{"version":"421c3f008f6ef4a5db2194d58a7b960ef6f33e94b033415649cd557be09ef619","impliedFormat":1},{"version":"57568ff84b8ba1a4f8c817141644b49252cc39ec7b899e4bfba0ec0557c910a0","impliedFormat":1},{"version":"443d1020635af05e3cb8c45974bc76f03a8b11f95563774b26afb51b1a8666d7","impliedFormat":1},{"version":"751764bb94219b4ce8f5475dc35d3de2e432fea01a0c9610cd7f69ad05e398c6","impliedFormat":1},{"version":"0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70","impliedFormat":1},{"version":"8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","impliedFormat":1},{"version":"fbca5ffaebf282ec3cdac47b0d1d4a138a8b0bb32105251a38acb235087d3318","impliedFormat":1},{"version":"22293bd6fa12747929f8dfca3ec1684a3fe08638aa18023dd286ab337e88a592","impliedFormat":1},{"version":"916be7d770b0ae0406be9486ac12eb9825f21514961dd050594c4b250617d5a8","impliedFormat":1},{"version":"87d9d29dbc745f182683f63187bf3d53fd8673e5fca38ad5eaab69798ed29fbc","impliedFormat":1},{"version":"eb5b19b86227ace1d29ea4cf81387279d04bb34051e944bc53df69f58914b788","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"09ddcfcfbe77a8232d155ca1030005106b1328f6210df43629d0be750da07c16","affectsGlobalScope":true,"impliedFormat":1},{"version":"17ed71200119e86ccef2d96b73b02ce8854b76ad6bd21b5021d4269bec527b5f","impliedFormat":1},{"version":"f80cb0ced191be0a08767ee613ec61b89d193ab698c7c0c8133b49a183c5ea26","impliedFormat":1},{"version":"c6cdcd12d577032b84eed1de4d2de2ae343463701a25961b202cff93989439fb","impliedFormat":1},{"version":"3dc633586d48fcd04a4f8acdbf7631b8e4a334632f252d5707e04b299069721e","impliedFormat":1},{"version":"3322858f01c0349ee7968a5ce93a1ca0c154c4692aa8f1721dc5192a9191a168","impliedFormat":1},{"version":"6dde0a77adad4173a49e6de4edd6ef70f5598cbebb5c80d76c111943854636ca","impliedFormat":1},{"version":"09acacae732e3cc67a6415026cfae979ebe900905500147a629837b790a366b3","impliedFormat":1},{"version":"f7b622759e094a3c2e19640e0cb233b21810d2762b3e894ef7f415334125eb22","impliedFormat":1},{"version":"99236ea5c4c583082975823fd19bcce6a44963c5c894e20384bc72e7eccf9b03","impliedFormat":1},{"version":"f6688a02946a3f7490aa9e26d76d1c97a388e42e77388cbab010b69982c86e9e","impliedFormat":1},{"version":"9f642953aba68babd23de41de85d4e97f0c39ef074cb8ab8aa7d55237f62aff6","impliedFormat":1},{"version":"159d95163a0ed369175ae7838fa21a9e9e703de5fdb0f978721293dd403d9f4a","impliedFormat":1},{"version":"6767cce098e1e6369c26258b7a1f9e569c5467d501a47a090136d5ea6e80ae6d","impliedFormat":1},{"version":"3a1e165b22a1cb8df82c44c9a09502fd2b33f160cd277de2cd3a055d8e5c6b27","impliedFormat":1},{"version":"f9a2dd6a6084665f093ed0e9664b8e673be2a45e342a59dd4e0e4e552e68a9ad","impliedFormat":1},{"version":"67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae","impliedFormat":1},{"version":"d558a0fe921ebcc88d3212c2c42108abf9f0d694d67ebdeba37d7728c044f579","impliedFormat":1},{"version":"2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579","impliedFormat":1},{"version":"bee79f5862fe1278d2ba275298862bce3f7abf1e59d9c669c4b9a4b2bba96956","impliedFormat":1},{"version":"4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349","impliedFormat":1},{"version":"2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579","impliedFormat":1},{"version":"b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9","impliedFormat":1},{"version":"8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d","impliedFormat":1},{"version":"ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5","impliedFormat":1},{"version":"083c1bd82f8dc3a1ed6fc9e8eaddf141f7c05df418eca386598821e045253af9","impliedFormat":1},{"version":"274ebe605bd7f71ce161f9f5328febc7d547a2929f803f04b44ec4a7d8729517","impliedFormat":1},{"version":"6ca0207e70d985a24396583f55836b10dc181063ab6069733561bfde404d1bad","impliedFormat":1},{"version":"5908142efeaab38ffdf43927ee0af681ae77e0d7672b956dfb8b6c705dbfe106","impliedFormat":1},{"version":"f772b188b943549b5c5eb803133314b8aa7689eced80eed0b70e2f30ca07ab9c","impliedFormat":1},{"version":"0026b816ef05cfbf290e8585820eef0f13250438669107dfc44482bac007b14f","impliedFormat":1},{"version":"8ef5aad624890acfe0fa48230edce255f00934016d16acb8de0edac0ea5b21bb","impliedFormat":1},{"version":"9af6248ff4baf0c1ddc62bb0bc43197437bd5fb2c95ff8e10e4cf2e699ea45c1","impliedFormat":1},{"version":"d84398556ba4595ee6be554671da142cfe964cbdebb2f0c517a10f76f2b016c0","impliedFormat":1},{"version":"89b42f8ee5d387a39db85ee2c7123a391c3ede266a2bcd502c85ad55626c3b2b","impliedFormat":1},{"version":"99c7f3bbc03f6eb3e663c26c104d639617620c2925e76fc284f7bedf1877fa2b","impliedFormat":1}],"root":[[46,59]],"options":{"composite":true,"declaration":true,"esModuleInterop":true,"module":1,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"strict":true,"target":7},"referencedMap":[[166,1],[167,2],[168,2],[170,3],[171,2],[172,4],[173,2],[175,5],[169,2],[176,6],[174,2],[177,2],[178,3],[179,7],[180,2],[181,2],[182,2],[183,2],[184,2],[185,2],[186,2],[187,2],[191,8],[188,2],[190,9],[192,2],[202,10],[193,2],[194,2],[195,2],[196,2],[197,2],[198,2],[199,2],[200,2],[201,2],[70,2],[189,2],[44,2],[45,2],[9,2],[8,2],[2,2],[10,2],[11,2],[12,2],[13,2],[14,2],[15,2],[16,2],[17,2],[3,2],[18,2],[19,2],[4,2],[20,2],[24,2],[21,2],[22,2],[23,2],[25,2],[26,2],[27,2],[5,2],[28,2],[29,2],[30,2],[31,2],[6,2],[35,2],[32,2],[33,2],[34,2],[36,2],[7,2],[37,2],[42,2],[43,2],[38,2],[39,2],[40,2],[41,2],[1,2],[112,11],[113,11],[114,12],[65,13],[115,14],[116,15],[117,16],[60,2],[63,17],[61,2],[62,2],[118,18],[119,19],[120,20],[121,21],[122,22],[123,23],[124,23],[125,24],[126,25],[127,26],[128,27],[66,2],[64,2],[129,28],[130,29],[131,30],[165,31],[132,32],[133,2],[134,33],[135,34],[136,35],[137,36],[138,37],[139,38],[140,39],[141,40],[142,41],[143,41],[144,42],[145,2],[146,43],[147,44],[149,45],[148,46],[150,47],[151,48],[152,49],[153,50],[154,51],[155,52],[156,53],[157,54],[158,55],[159,56],[160,57],[161,58],[162,59],[67,2],[68,2],[69,2],[108,60],[109,2],[110,2],[111,47],[163,61],[164,62],[86,63],[96,64],[85,63],[106,65],[77,66],[76,67],[105,1],[99,68],[104,69],[79,70],[93,71],[78,72],[102,73],[74,74],[73,1],[103,75],[75,76],[80,77],[81,2],[84,77],[71,2],[107,78],[97,79],[88,80],[89,81],[91,82],[87,83],[90,84],[100,1],[82,85],[83,86],[92,87],[72,88],[95,79],[94,77],[98,2],[101,89],[58,90],[50,2],[59,91],[52,2],[47,92],[49,2],[54,2],[51,2],[57,2],[56,93],[55,2],[46,2],[48,2],[53,2],[203,2],[204,2],[205,2],[206,2],[207,2],[209,94],[208,2],[224,95],[223,96],[214,97],[215,98],[222,99],[216,98],[217,97],[218,97],[219,97],[220,100],[213,101],[221,96],[212,2],[225,102],[211,2],[210,2]],"latestChangedDtsFile":"./dist/database.d.ts","version":"5.9.3"}
|