@dsh-enhanced/assistant-goals 0.1.30

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.
Files changed (100) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +274 -0
  3. package/cordis.patch.yml +3 -0
  4. package/lib/budget-store.d.ts +73 -0
  5. package/lib/budget-store.d.ts.map +1 -0
  6. package/lib/budget-store.js +345 -0
  7. package/lib/budget-store.js.map +1 -0
  8. package/lib/budget.d.ts +78 -0
  9. package/lib/budget.d.ts.map +1 -0
  10. package/lib/budget.js +344 -0
  11. package/lib/budget.js.map +1 -0
  12. package/lib/dependency.d.ts +11 -0
  13. package/lib/dependency.d.ts.map +1 -0
  14. package/lib/dependency.js +34 -0
  15. package/lib/dependency.js.map +1 -0
  16. package/lib/event-wait-store.d.ts +56 -0
  17. package/lib/event-wait-store.d.ts.map +1 -0
  18. package/lib/event-wait-store.js +189 -0
  19. package/lib/event-wait-store.js.map +1 -0
  20. package/lib/event-wait.d.ts +47 -0
  21. package/lib/event-wait.d.ts.map +1 -0
  22. package/lib/event-wait.js +372 -0
  23. package/lib/event-wait.js.map +1 -0
  24. package/lib/execution-store.d.ts +23 -0
  25. package/lib/execution-store.d.ts.map +1 -0
  26. package/lib/execution-store.js +207 -0
  27. package/lib/execution-store.js.map +1 -0
  28. package/lib/execution.d.ts +49 -0
  29. package/lib/execution.d.ts.map +1 -0
  30. package/lib/execution.js +438 -0
  31. package/lib/execution.js.map +1 -0
  32. package/lib/feedback.d.ts +63 -0
  33. package/lib/feedback.d.ts.map +1 -0
  34. package/lib/feedback.js +134 -0
  35. package/lib/feedback.js.map +1 -0
  36. package/lib/index.d.ts +27 -0
  37. package/lib/index.d.ts.map +1 -0
  38. package/lib/index.js +9 -0
  39. package/lib/index.js.map +1 -0
  40. package/lib/outcome-store.d.ts +47 -0
  41. package/lib/outcome-store.d.ts.map +1 -0
  42. package/lib/outcome-store.js +271 -0
  43. package/lib/outcome-store.js.map +1 -0
  44. package/lib/outcome.d.ts +77 -0
  45. package/lib/outcome.d.ts.map +1 -0
  46. package/lib/outcome.js +417 -0
  47. package/lib/outcome.js.map +1 -0
  48. package/lib/service.d.ts +363 -0
  49. package/lib/service.d.ts.map +1 -0
  50. package/lib/service.js +1839 -0
  51. package/lib/service.js.map +1 -0
  52. package/lib/store.d.ts +21 -0
  53. package/lib/store.d.ts.map +1 -0
  54. package/lib/store.js +577 -0
  55. package/lib/store.js.map +1 -0
  56. package/lib/strategy-feedback.d.ts +29 -0
  57. package/lib/strategy-feedback.d.ts.map +1 -0
  58. package/lib/strategy-feedback.js +53 -0
  59. package/lib/strategy-feedback.js.map +1 -0
  60. package/lib/strategy-identity.d.ts +11 -0
  61. package/lib/strategy-identity.d.ts.map +1 -0
  62. package/lib/strategy-identity.js +10 -0
  63. package/lib/strategy-identity.js.map +1 -0
  64. package/lib/strategy-store.d.ts +76 -0
  65. package/lib/strategy-store.d.ts.map +1 -0
  66. package/lib/strategy-store.js +277 -0
  67. package/lib/strategy-store.js.map +1 -0
  68. package/lib/strategy.d.ts +56 -0
  69. package/lib/strategy.d.ts.map +1 -0
  70. package/lib/strategy.js +478 -0
  71. package/lib/strategy.js.map +1 -0
  72. package/lib/tools.d.ts +4 -0
  73. package/lib/tools.d.ts.map +1 -0
  74. package/lib/tools.js +130 -0
  75. package/lib/tools.js.map +1 -0
  76. package/lib/types.d.ts +285 -0
  77. package/lib/types.d.ts.map +1 -0
  78. package/lib/types.js +10 -0
  79. package/lib/types.js.map +1 -0
  80. package/lib/verified-artifact.d.ts +72 -0
  81. package/lib/verified-artifact.d.ts.map +1 -0
  82. package/lib/verified-artifact.js +142 -0
  83. package/lib/verified-artifact.js.map +1 -0
  84. package/lib/verified-workflow.d.ts +120 -0
  85. package/lib/verified-workflow.d.ts.map +1 -0
  86. package/lib/verified-workflow.js +253 -0
  87. package/lib/verified-workflow.js.map +1 -0
  88. package/lib/version.d.ts +2 -0
  89. package/lib/version.d.ts.map +1 -0
  90. package/lib/version.js +2 -0
  91. package/lib/version.js.map +1 -0
  92. package/lib/wake-store.d.ts +38 -0
  93. package/lib/wake-store.d.ts.map +1 -0
  94. package/lib/wake-store.js +177 -0
  95. package/lib/wake-store.js.map +1 -0
  96. package/lib/wake.d.ts +45 -0
  97. package/lib/wake.d.ts.map +1 -0
  98. package/lib/wake.js +327 -0
  99. package/lib/wake.js.map +1 -0
  100. package/package.json +143 -0
@@ -0,0 +1,142 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { posix } from 'node:path';
3
+ import { validateTaskAcceptanceContract, validateTaskVerificationReceipt } from '@dsh-enhanced/task-acceptance-contract';
4
+ const freeze = (value) => {
5
+ const copy = JSON.parse(JSON.stringify(value));
6
+ const visit = (item) => {
7
+ if (item === null || typeof item !== 'object' || Object.isFrozen(item))
8
+ return;
9
+ for (const child of Object.values(item))
10
+ visit(child);
11
+ Object.freeze(item);
12
+ };
13
+ visit(copy);
14
+ return copy;
15
+ };
16
+ const same = (left, right) => JSON.stringify(left) === JSON.stringify(right);
17
+ const failed = () => { throw new Error('assistant-goals: verified artifact evidence is unavailable'); };
18
+ export function validateOwnerVerifiedArtifactsInput(value) {
19
+ if (value === null || typeof value !== 'object' || Array.isArray(value) || Object.getPrototypeOf(value) !== Object.prototype || Object.getOwnPropertySymbols(value).length !== 0)
20
+ failed();
21
+ const input = value;
22
+ const keys = Object.keys(input);
23
+ if (keys.length !== 8 || !['ownerRouteId', 'principalId', 'workspace', 'preset', 'sessionId', 'goalId', 'runId', 'paths'].every(key => keys.includes(key))
24
+ || Object.values(Object.getOwnPropertyDescriptors(input)).some(item => !item.enumerable || !('value' in item)))
25
+ failed();
26
+ for (const key of ['ownerRouteId', 'principalId', 'workspace', 'preset', 'sessionId', 'goalId', 'runId']) {
27
+ if (typeof input[key] !== 'string' || input[key].length === 0 || input[key].length > 4096)
28
+ failed();
29
+ }
30
+ const rawPaths = input.paths;
31
+ if (!Array.isArray(rawPaths) || rawPaths.length < 1 || rawPaths.length > 32)
32
+ failed();
33
+ const paths = rawPaths.map((path) => {
34
+ if (typeof path !== 'string' || path.length === 0 || path.length > 4096 || posix.isAbsolute(path) || posix.normalize(path) !== path || path.split('/').includes('..') || path.includes('\\'))
35
+ failed();
36
+ return path;
37
+ });
38
+ if (new Set(paths).size !== paths.length)
39
+ failed();
40
+ return Object.freeze({ ownerRouteId: input.ownerRouteId, principalId: input.principalId, workspace: input.workspace,
41
+ preset: input.preset, sessionId: input.sessionId, goalId: input.goalId, runId: input.runId, paths: Object.freeze(paths) });
42
+ }
43
+ function accepted(snapshot, id, kind, now) {
44
+ const item = snapshot.acceptedTasks.find(entry => {
45
+ try {
46
+ return validateTaskAcceptanceContract(entry.contract).id === id;
47
+ }
48
+ catch {
49
+ return false;
50
+ }
51
+ });
52
+ const found = item;
53
+ if (found === undefined || found.state !== 'done' || found.verifierExecutionObservation === null)
54
+ return failed();
55
+ const contract = validateTaskAcceptanceContract(found.contract);
56
+ const receipt = validateTaskVerificationReceipt(contract, found.receipt);
57
+ const execution = found.verifierExecutionObservation;
58
+ if (contract.protocol !== 'task-acceptance/v4' || contract.task.kind !== kind || receipt.objectiveStatus !== 'achieved'
59
+ || receipt.validUntil <= now || execution.status !== 'succeeded' || execution.quiescent !== true)
60
+ failed();
61
+ return { contract, receipt };
62
+ }
63
+ function artifactEvidence(receipt, criterionId, artifact) {
64
+ const result = receipt.results.find(item => item.criterionId === criterionId);
65
+ return result?.status === 'passed' && result.artifactDigest === artifact.sha256
66
+ && result.evidence.some(item => item.kind === 'isolated-artifact' && item.ref === artifact.jobId && item.digest === artifact.sha256);
67
+ }
68
+ function acceptedStep(first, last, input, now, phases) {
69
+ const before = first;
70
+ const after = last;
71
+ if (!before || !after || !same(before.ownerRoute, after.ownerRoute) || !same(before.storedGoal, after.storedGoal) || !same(before.executionRuns, after.executionRuns)
72
+ || !same(before.outcomeAssessments, after.outcomeAssessments) || !same(before.acceptedTasks, after.acceptedTasks))
73
+ failed();
74
+ const goal = before.storedGoal;
75
+ if (goal.id !== input.goalId || goal.nativeAtLastObservation.sessionId !== input.sessionId || !phases.includes(goal.nativeAtLastObservation.phase)
76
+ || goal.scope.principalId !== input.principalId || goal.scope.workspace !== input.workspace || goal.scope.preset !== input.preset)
77
+ failed();
78
+ const run = before.executionRuns.find(entry => entry?.intent?.runId === input.runId);
79
+ if (!run || run.intent?.task?.kind !== 'goal-step' || run.intent.task.ref !== input.runId || run.intent.task.goal?.id !== goal.id
80
+ || run.intent.task.goal.definitionVersion !== goal.definition.version || run.intent.task.goal.definitionDigest !== goal.definition.digest
81
+ || run.intent.task.goal.sessionId !== goal.nativeAtLastObservation.sessionId || run.intent.task.goal.nativeGoalId !== goal.nativeAtLastObservation.goalId
82
+ || run.execution?.status !== 'succeeded' || run.execution?.quiescent !== true || !run.acceptance?.contractId)
83
+ failed();
84
+ const step = accepted(before, run.acceptance.contractId, 'goal-step', now);
85
+ if (step.contract.digest !== run.acceptance.contractDigest || !same(step.contract.task, run.intent.task)
86
+ || step.contract.scope.workspace !== goal.scope.workspace || step.contract.scope.preset !== goal.scope.preset
87
+ || step.contract.owner.principalRecordId !== goal.scope.principalRecordId || step.contract.owner.principalVersion !== goal.scope.principalVersion)
88
+ failed();
89
+ return { before, goal, step };
90
+ }
91
+ /** Builds a delivery-safe artifact snapshot from two independently read owner snapshots. */
92
+ export function buildOwnerVerifiedArtifacts(first, last, input, isolation, now = Date.now()) {
93
+ const { before, goal, step } = acceptedStep(first, last, input, now, ['active', 'complete']);
94
+ const assessment = before.outcomeAssessments[0];
95
+ if (assessment === undefined || assessment.triggerRunId !== input.runId || assessment.execution === null)
96
+ return failed();
97
+ const outcomeContract = validateTaskAcceptanceContract(assessment.contract);
98
+ if (outcomeContract.task.kind !== 'goal-outcome' || outcomeContract.task.goal.id !== goal.id
99
+ || outcomeContract.task.goal.definitionVersion !== goal.definition.version || outcomeContract.task.goal.definitionDigest !== goal.definition.digest
100
+ || outcomeContract.task.goal.sessionId !== goal.nativeAtLastObservation.sessionId || outcomeContract.task.goal.nativeGoalId !== goal.nativeAtLastObservation.goalId)
101
+ failed();
102
+ const outcome = accepted(before, outcomeContract.id, 'goal-outcome', now);
103
+ if (!same(outcome.contract, outcomeContract) || outcome.contract.scope.workspace !== goal.scope.workspace || outcome.contract.scope.preset !== goal.scope.preset
104
+ || outcome.contract.owner.principalRecordId !== goal.scope.principalRecordId || outcome.contract.owner.principalVersion !== goal.scope.principalVersion)
105
+ failed();
106
+ const files = readArtifacts(input, isolation, step, outcome);
107
+ return freeze({ protocol: 'assistant-goals/verified-artifacts/v1', scope: goal.scope,
108
+ goal: { id: goal.id, definition: goal.definition, sessionId: goal.nativeAtLastObservation.sessionId, nativeGoalId: goal.nativeAtLastObservation.goalId }, runId: input.runId,
109
+ acceptance: { stepContractId: step.contract.id, stepContractDigest: step.contract.digest, outcomeContractId: outcome.contract.id, outcomeContractDigest: outcome.contract.digest,
110
+ stepReceiptDigest: step.receipt.digest, outcomeReceiptDigest: outcome.receipt.digest, validUntil: Math.min(step.receipt.validUntil, outcome.receipt.validUntil) }, files });
111
+ }
112
+ function readArtifacts(input, isolation, step, outcome) {
113
+ const files = [];
114
+ let bytes = 0;
115
+ for (const path of input.paths) {
116
+ const stepCriteria = step.contract.criteria.filter(item => item.kind === 'isolated-process-behavior' && item.artifactPath === path);
117
+ const outcomeCriteria = outcome?.contract.criteria.filter(item => item.kind === 'isolated-process-behavior' && item.artifactPath === path);
118
+ if (stepCriteria.length === 0 || outcomeCriteria?.length === 0)
119
+ failed();
120
+ const raw = isolation.readAcceptedArtifact(step.contract, path);
121
+ if (!raw || raw.path !== path || typeof raw.content !== 'string' || typeof raw.sha256 !== 'string' || !/^[a-f0-9]{64}$/.test(raw.sha256) || typeof raw.jobId !== 'string' || raw.jobId.length === 0)
122
+ failed();
123
+ const artifact = { path, content: raw.content, sha256: raw.sha256, jobId: raw.jobId };
124
+ if (createHash('sha256').update(artifact.content).digest('hex') !== artifact.sha256 || !stepCriteria.every(item => artifactEvidence(step.receipt, item.id, artifact))
125
+ || outcome !== undefined && !outcomeCriteria.every(item => artifactEvidence(outcome.receipt, item.id, artifact)))
126
+ failed();
127
+ bytes += Buffer.byteLength(artifact.content, 'utf8');
128
+ if (bytes > 1_048_576)
129
+ failed();
130
+ files.push(artifact);
131
+ }
132
+ return files;
133
+ }
134
+ /** Step acceptance permits explicitly authorized intermediate delivery, not whole-goal completion. */
135
+ export function buildOwnerAcceptedStepArtifacts(first, last, input, isolation, now = Date.now()) {
136
+ const { goal, step } = acceptedStep(first, last, input, now, ['active', 'paused', 'complete']);
137
+ const files = readArtifacts(input, isolation, step);
138
+ return freeze({ protocol: 'assistant-goals/accepted-step-artifacts/v1', scope: goal.scope,
139
+ goal: { id: goal.id, definition: goal.definition, sessionId: goal.nativeAtLastObservation.sessionId, nativeGoalId: goal.nativeAtLastObservation.goalId }, runId: input.runId,
140
+ acceptance: { stepContractId: step.contract.id, stepContractDigest: step.contract.digest, stepReceiptDigest: step.receipt.digest, validUntil: step.receipt.validUntil }, files });
141
+ }
142
+ //# sourceMappingURL=verified-artifact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verified-artifact.js","sourceRoot":"","sources":["../src/verified-artifact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,120 @@
1
+ import type { GoalExecutionRun, GoalScope, GoalRecord, HostFailureEvidenceSummary, OwnerGoalRunProof } from './types.js';
2
+ export interface VerifiedWorkflowSource {
3
+ protocol: 'assistant-goals/verified-workflow-source/v1';
4
+ scope: GoalScope;
5
+ goal: {
6
+ id: string;
7
+ definition: {
8
+ version: number;
9
+ digest: string;
10
+ objective: string;
11
+ };
12
+ sessionId: string;
13
+ nativeGoalId: string;
14
+ };
15
+ runId: string;
16
+ turn: number;
17
+ acceptance: {
18
+ contractId: string;
19
+ contractDigest: string;
20
+ receiptDigest: string;
21
+ verifiedAt: number;
22
+ validUntil: number;
23
+ };
24
+ steps: readonly {
25
+ id: string;
26
+ toolName: string;
27
+ arguments: unknown;
28
+ }[];
29
+ failedObservations?: readonly {
30
+ id: string;
31
+ toolName: string;
32
+ arguments: unknown;
33
+ outcome: 'failed';
34
+ }[];
35
+ /** Present only when the owner bridge exports more than the final accepted native run. */
36
+ segments?: readonly VerifiedWorkflowSegment[];
37
+ }
38
+ export interface VerifiedWorkflowSegment {
39
+ runId: string;
40
+ turn: number;
41
+ round: number;
42
+ nativeRevision: number;
43
+ steps: readonly {
44
+ id: string;
45
+ toolName: string;
46
+ arguments: unknown;
47
+ }[];
48
+ failedObservations?: readonly {
49
+ id: string;
50
+ toolName: string;
51
+ arguments: unknown;
52
+ outcome: 'failed';
53
+ }[];
54
+ }
55
+ /** Stable failure taxonomy for the owner Host bridge. It is never model-visible. */
56
+ export declare class OwnerVerifiedWorkflowSourceError extends Error {
57
+ readonly code: 'pending' | 'unknown' | 'unavailable' | 'rejected';
58
+ constructor(code: 'pending' | 'unknown' | 'unavailable' | 'rejected', message: string, options?: ErrorOptions);
59
+ }
60
+ export interface VerifiedWorkflowEvidence {
61
+ scope: GoalScope;
62
+ record: GoalRecord;
63
+ run: GoalExecutionRun;
64
+ accepted: {
65
+ state: string;
66
+ contract: {
67
+ id: string;
68
+ digest: string;
69
+ } | null;
70
+ receipt: unknown;
71
+ };
72
+ events: readonly unknown[];
73
+ }
74
+ export declare function verifiedRunId(scope: GoalScope, goalId: string, sessionId: string, turn: number): string;
75
+ export declare function successfulToolSteps(events: readonly any[], turn: number): readonly {
76
+ id: string;
77
+ toolName: string;
78
+ arguments: unknown;
79
+ }[];
80
+ /**
81
+ * Reconstruct every settled call in one exact native Goal run. Failed calls
82
+ * remain explicit so downstream consumers can fail closed. traceDigest is an
83
+ * integrity checksum only; provenance comes from the Host-only service method.
84
+ */
85
+ export declare function ownerGoalRunProof(scope: GoalScope, record: Pick<GoalRecord, 'id' | 'scope' | 'definition' | 'native'>, run: GoalExecutionRun, outcomeProfile: {
86
+ id: string;
87
+ version: number;
88
+ digest: string;
89
+ }, rawEvents: readonly unknown[]): OwnerGoalRunProof;
90
+ /** Integrity linkage only; source trust requires the current Host-only Goals service capability. */
91
+ export declare function failureSummaryEvidenceDigest(value: Omit<HostFailureEvidenceSummary, 'evidence'>, generation: string): string;
92
+ /**
93
+ * A complete native turn trace. Failed calls are rejected except for bounded,
94
+ * explicit read-only probes, which stay separately labelled as observations.
95
+ */
96
+ export declare function verifiedToolTrace(events: readonly any[], turn: number): {
97
+ steps: readonly {
98
+ id: string;
99
+ toolName: string;
100
+ arguments: unknown;
101
+ }[];
102
+ failedObservations: readonly {
103
+ id: string;
104
+ toolName: string;
105
+ arguments: unknown;
106
+ outcome: 'failed';
107
+ }[];
108
+ };
109
+ /**
110
+ * Builds the single Host export after both callers have established their own
111
+ * authority and exact independent whole-goal assessment. Keeping the raw
112
+ * native-event checks here prevents a cold read from drifting from the live
113
+ * owner-turn path.
114
+ */
115
+ export declare function verifiedWorkflowSource(evidence: VerifiedWorkflowEvidence): VerifiedWorkflowSource;
116
+ /** Build an owner-only contiguous trace whose final run is independently achieved. */
117
+ export declare function verifiedWorkflowSourceChain(evidence: VerifiedWorkflowEvidence & {
118
+ runs: readonly GoalExecutionRun[];
119
+ }): VerifiedWorkflowSource;
120
+ //# sourceMappingURL=verified-workflow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verified-workflow.d.ts","sourceRoot":"","sources":["../src/verified-workflow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,253 @@
1
+ import { acceptanceDigest } from '@dsh-enhanced/task-acceptance-contract';
2
+ /** Stable failure taxonomy for the owner Host bridge. It is never model-visible. */
3
+ export class OwnerVerifiedWorkflowSourceError extends Error {
4
+ code;
5
+ constructor(code, message, options) {
6
+ super(message, options);
7
+ this.code = code;
8
+ this.name = 'OwnerVerifiedWorkflowSourceError';
9
+ }
10
+ }
11
+ export function verifiedRunId(scope, goalId, sessionId, turn) {
12
+ return `goal-run-${acceptanceDigest([scope, goalId, sessionId, turn])}`;
13
+ }
14
+ export function successfulToolSteps(events, turn) {
15
+ const trace = verifiedToolTrace(events, turn);
16
+ if (trace.failedObservations.length !== 0)
17
+ throw new Error('assistant-goals: tool trace contains a failed call');
18
+ return trace.steps;
19
+ }
20
+ /**
21
+ * Reconstruct every settled call in one exact native Goal run. Failed calls
22
+ * remain explicit so downstream consumers can fail closed. traceDigest is an
23
+ * integrity checksum only; provenance comes from the Host-only service method.
24
+ */
25
+ export function ownerGoalRunProof(scope, record, run, outcomeProfile, rawEvents) {
26
+ if (acceptanceDigest(record.scope) !== acceptanceDigest(scope) || acceptanceDigest(run.intent.scope) !== acceptanceDigest(scope)
27
+ || run.execution?.status !== 'succeeded' || run.execution.quiescent !== true || run.intent.runId !== run.intent.task.goal.runId
28
+ || run.intent.task.ref !== run.intent.runId || run.intent.objective !== record.definition.objective
29
+ || run.intent.task.goal.id !== record.id || run.intent.task.goal.definitionVersion !== record.definition.version
30
+ || run.intent.task.goal.definitionDigest !== record.definition.digest || run.intent.task.goal.sessionId !== record.native.sessionId
31
+ || run.intent.task.goal.nativeGoalId !== record.native.goalId)
32
+ throw new Error('assistant-goals: exact settled successful run is required');
33
+ const events = rawEvents;
34
+ const turns = events.filter(event => event?.type === 'turn/start' && Number.isSafeInteger(event.data?.turn)
35
+ && run.intent.runId === verifiedRunId(scope, record.id, record.native.sessionId, event.data.turn)).map(event => event.data.turn);
36
+ if (turns.length !== 1)
37
+ throw new Error('assistant-goals: run source turn is unavailable');
38
+ const turn = turns[0];
39
+ const starts = events.filter(event => event?.type === 'turn/start' && event.data?.turn === turn && Number.isSafeInteger(event.seq));
40
+ const ends = events.filter(event => event?.type === 'turn/end' && event.data?.turn === turn && Number.isSafeInteger(event.seq));
41
+ if (starts.length !== 1 || ends.length !== 1 || ends[0].seq <= starts[0].seq || ends[0].data?.reason?.kind !== 'completed') {
42
+ throw new Error('assistant-goals: completed run source turn is unavailable');
43
+ }
44
+ const start = starts[0], end = ends[0];
45
+ const source = events.filter(event => event?.type === 'user/message' && Number.isSafeInteger(event.seq) && event.seq > start.seq && event.seq < end.seq
46
+ && event.data?.source?.kind === 'goal' && event.data.source.goalId === record.native.goalId
47
+ && event.data.source.revision === run.intent.task.goal.nativeRevision && event.data.source.round === run.intent.admission.round);
48
+ if (source.length !== 1)
49
+ throw new Error('assistant-goals: run goal source is invalid');
50
+ const calls = new Map();
51
+ const results = new Map();
52
+ let argumentBytes = 0;
53
+ for (const event of events) {
54
+ if (!Number.isSafeInteger(event?.seq) || event.seq <= source[0].seq || event.seq >= end.seq || event.data?.turn !== turn)
55
+ continue;
56
+ if (event.type === 'tool/call' && typeof event.data.callId === 'string' && typeof event.data.name === 'string') {
57
+ if (calls.has(event.data.callId) || calls.size >= 32)
58
+ throw new Error('assistant-goals: duplicate or oversized run trace');
59
+ const arguments_ = parseArguments(event.data.arguments);
60
+ argumentBytes += Buffer.byteLength(event.data.arguments, 'utf8');
61
+ if (argumentBytes > 256 * 1024)
62
+ throw new Error('assistant-goals: oversized run trace arguments');
63
+ calls.set(event.data.callId, { id: event.data.callId, name: event.data.name, arguments: arguments_, seq: event.seq });
64
+ }
65
+ if (event.type === 'tool/result' && event.surfaceOp === 'append' && Array.isArray(event.sourceEventSeqs)
66
+ && event.sourceEventSeqs.length === 1 && typeof event.data?.message?.source?.callId === 'string') {
67
+ const id = event.data.message.source.callId, content = event.data.message.content;
68
+ const result = Array.isArray(content) && content.length === 1 && content[0]?.type === 'tool-result' ? content[0] : undefined;
69
+ const call = calls.get(id);
70
+ if (call === undefined || event.sourceEventSeqs[0] !== call.seq)
71
+ continue;
72
+ if (results.has(id) || result?.toolCallId !== id || event.seq <= call.seq)
73
+ throw new Error('assistant-goals: run trace contains a missing, duplicate or mismatched result');
74
+ results.set(id, { outcome: event.data.message.isError === true || result.isError === true ? 'failed' : 'succeeded', seq: event.seq });
75
+ }
76
+ }
77
+ if ([...calls.keys()].some(id => !results.has(id)))
78
+ throw new Error('assistant-goals: run trace contains an unconfirmed call');
79
+ const steps = Object.freeze([...calls.values()].sort((a, b) => a.seq - b.seq).map(call => Object.freeze({
80
+ id: call.id, name: call.name, arguments: call.arguments, outcome: results.get(call.id).outcome,
81
+ })));
82
+ const payload = { protocol: 'assistant-goals/owner-run-trace/v1', runId: run.intent.runId, turn,
83
+ nativeRevision: run.intent.task.goal.nativeRevision, definitionDigest: record.definition.digest,
84
+ outcomeProfile: Object.freeze({ ...outcomeProfile }), steps };
85
+ return Object.freeze({ ...payload, traceDigest: acceptanceDigest(payload) });
86
+ }
87
+ /** Integrity linkage only; source trust requires the current Host-only Goals service capability. */
88
+ export function failureSummaryEvidenceDigest(value, generation) {
89
+ return acceptanceDigest({ ...JSON.parse(JSON.stringify(value)), evidence: { producer: 'assistant-goals', generation } });
90
+ }
91
+ /**
92
+ * A complete native turn trace. Failed calls are rejected except for bounded,
93
+ * explicit read-only probes, which stay separately labelled as observations.
94
+ */
95
+ export function verifiedToolTrace(events, turn) {
96
+ const trace = verifiedToolTraceInternal(events, turn);
97
+ return { steps: trace.steps, failedObservations: trace.failedObservations };
98
+ }
99
+ function verifiedToolTraceInternal(events, turn, window) {
100
+ const calls = new Map();
101
+ const results = new Map();
102
+ let argumentBytes = 0;
103
+ for (const event of events) {
104
+ if (event?.type === 'tool/call' && event.data?.turn === turn && typeof event.data.callId === 'string'
105
+ && typeof event.data.name === 'string') {
106
+ if (window !== undefined && !traceEventInWindow(event, window))
107
+ continue;
108
+ if (calls.has(event.data.callId) || calls.size >= 32)
109
+ throw new Error('assistant-goals: duplicate or oversized tool trace');
110
+ const arguments_ = parseArguments(event.data.arguments);
111
+ argumentBytes += Buffer.byteLength(event.data.arguments, 'utf8');
112
+ if (argumentBytes > 256 * 1024)
113
+ throw new Error('assistant-goals: oversized tool trace arguments');
114
+ calls.set(event.data.callId, { id: event.data.callId, toolName: event.data.name, arguments: arguments_, seq: event.seq });
115
+ }
116
+ if (event?.type === 'tool/result' && event.data?.turn === turn && (window === undefined || traceEventInWindow(event, window))
117
+ && typeof event.data?.message?.source?.callId === 'string') {
118
+ const id = event.data.message.source.callId;
119
+ const content = event.data.message.content;
120
+ const result = Array.isArray(content) && content.length === 1 && content[0]?.type === 'tool-result' ? content[0] : undefined;
121
+ const call = calls.get(id);
122
+ // Native errors live in the matching tool-result block, not on Message.
123
+ if (call === undefined || window !== undefined && (event.surfaceOp !== 'append' || !Array.isArray(event.sourceEventSeqs)
124
+ || event.sourceEventSeqs.length !== 1 || event.sourceEventSeqs[0] !== call.seq))
125
+ continue;
126
+ if (results.has(id) || !result || result.toolCallId !== id || window !== undefined && event.seq <= call.seq) {
127
+ throw new Error('assistant-goals: tool trace contains a failed, duplicate or mismatched result');
128
+ }
129
+ results.set(id, event.data.message.isError === true || result.isError === true ? 'failed' : 'succeeded');
130
+ }
131
+ }
132
+ if ([...calls.keys()].some(id => !results.has(id)))
133
+ throw new Error('assistant-goals: tool trace contains an unconfirmed call');
134
+ const steps = [];
135
+ const failedObservations = [];
136
+ for (const call of calls.values()) {
137
+ const step = { id: call.id, toolName: call.toolName, arguments: call.arguments };
138
+ if (results.get(call.id) === 'succeeded') {
139
+ steps.push(step);
140
+ continue;
141
+ }
142
+ if (!readOnlyProbe(call))
143
+ throw new Error('assistant-goals: tool trace contains a failed non-observation call');
144
+ failedObservations.push({ ...step, outcome: 'failed' });
145
+ }
146
+ return { steps, failedObservations, argumentBytes };
147
+ }
148
+ /**
149
+ * Builds the single Host export after both callers have established their own
150
+ * authority and exact independent whole-goal assessment. Keeping the raw
151
+ * native-event checks here prevents a cold read from drifting from the live
152
+ * owner-turn path.
153
+ */
154
+ export function verifiedWorkflowSource(evidence) {
155
+ const { scope, record, run, accepted } = evidence;
156
+ const receipt = accepted.receipt;
157
+ if (record.native.phase !== 'complete')
158
+ throw new Error('assistant-goals: exact completed native goal is required');
159
+ if (accepted.state !== 'done' || accepted.contract === null || receipt === null || receipt.objectiveStatus !== 'achieved'
160
+ || !Number.isSafeInteger(receipt.validUntil) || !(typeof receipt.validUntil === 'number' && receipt.validUntil > Date.now()) || !Number.isSafeInteger(receipt.completedAt)) {
161
+ throw new Error('assistant-goals: current accepted outcome is unavailable');
162
+ }
163
+ const built = workflowSegment(scope, record, run, evidence.events);
164
+ return Object.freeze({ protocol: 'assistant-goals/verified-workflow-source/v1', scope: Object.freeze({ ...scope }),
165
+ goal: Object.freeze({ id: record.id, definition: Object.freeze({ ...record.definition }), sessionId: record.native.sessionId, nativeGoalId: record.native.goalId }),
166
+ runId: built.segment.runId, turn: built.segment.turn, acceptance: Object.freeze({ contractId: accepted.contract.id, contractDigest: accepted.contract.digest,
167
+ receiptDigest: typeof receipt.digest === 'string' ? receipt.digest : acceptanceDigest(receipt), verifiedAt: receipt.completedAt, validUntil: receipt.validUntil }),
168
+ steps: built.segment.steps, ...(built.segment.failedObservations === undefined ? {} : { failedObservations: built.segment.failedObservations }) });
169
+ }
170
+ /** Build an owner-only contiguous trace whose final run is independently achieved. */
171
+ export function verifiedWorkflowSourceChain(evidence) {
172
+ const final = verifiedWorkflowSource(evidence);
173
+ const runs = evidence.runs.filter(run => run.intent.task.goal.id === evidence.record.id
174
+ && run.intent.task.goal.definitionVersion === evidence.record.definition.version && run.intent.task.goal.definitionDigest === evidence.record.definition.digest
175
+ && run.intent.task.goal.sessionId === evidence.record.native.sessionId && run.intent.task.goal.nativeGoalId === evidence.record.native.goalId)
176
+ .sort((a, b) => a.intent.admission.round - b.intent.admission.round);
177
+ const finalIndex = runs.findIndex(run => run.intent.runId === final.runId);
178
+ if (finalIndex < 0 || runs.length !== finalIndex + 1 || runs.length === 0)
179
+ throw new Error('assistant-goals: exact final workflow run is required');
180
+ const maxGoalRounds = runs[0].intent.admission.maxGoalRounds;
181
+ if (maxGoalRounds !== evidence.record.native.maxGoalRounds || runs.some(run => run.intent.objective !== evidence.record.definition.objective || run.intent.admission.maxGoalRounds !== maxGoalRounds)) {
182
+ throw new Error('assistant-goals: workflow semantics changed');
183
+ }
184
+ const built = runs.map(run => {
185
+ if (run.execution?.status === 'unknown')
186
+ throw new Error('assistant-goals: workflow execution outcome is unknown');
187
+ if (run.execution?.status !== 'succeeded' || !run.execution.quiescent)
188
+ throw new Error('assistant-goals: workflow execution is pending');
189
+ return workflowSegment(evidence.scope, evidence.record, run, evidence.events, run.intent.runId !== final.runId);
190
+ });
191
+ for (let index = 0; index < built.length; index++)
192
+ if (runs[index].intent.admission.round !== index + 1 || index > 0 && built[index - 1].segment.turn >= built[index].segment.turn)
193
+ throw new Error('assistant-goals: workflow rounds are not contiguous');
194
+ const calls = built.reduce((total, item) => total + item.calls, 0);
195
+ const argumentBytes = built.reduce((total, item) => total + item.argumentBytes, 0);
196
+ if (calls > 32 || argumentBytes > 256 * 1024)
197
+ throw new Error('assistant-goals: bounded workflow trace is required');
198
+ const ids = built.flatMap(item => [...item.segment.steps, ...(item.segment.failedObservations ?? [])].map(call => call.id));
199
+ if (new Set(ids).size !== ids.length)
200
+ throw new Error('assistant-goals: workflow call ids are not unique');
201
+ if (built.length === 1)
202
+ return final;
203
+ return Object.freeze({ ...final, segments: Object.freeze(built.map(item => item.segment)) });
204
+ }
205
+ function workflowSegment(scope, record, run, rawEvents, allowEmpty = false) {
206
+ if (acceptanceDigest(run.intent.scope) !== acceptanceDigest(scope) || acceptanceDigest(record.scope) !== acceptanceDigest(scope)
207
+ || run.execution?.status !== 'succeeded' || !run.execution.quiescent || run.intent.objective !== record.definition.objective || run.intent.task.goal.id !== record.id
208
+ || run.intent.task.goal.definitionVersion !== record.definition.version || run.intent.task.goal.definitionDigest !== record.definition.digest
209
+ || run.intent.task.goal.sessionId !== record.native.sessionId || run.intent.task.goal.nativeGoalId !== record.native.goalId) {
210
+ throw new Error('assistant-goals: exact successful trigger run is required');
211
+ }
212
+ const events = rawEvents;
213
+ const turn = events.filter(event => event?.type === 'turn/start' && Number.isSafeInteger(event.data?.turn))
214
+ .map(event => event.data.turn)
215
+ .find(value => run.intent.runId === verifiedRunId(scope, record.id, record.native.sessionId, value));
216
+ if (turn === undefined)
217
+ throw new Error('assistant-goals: trigger run has no source turn');
218
+ const starts = events.filter(event => event?.type === 'turn/start' && event.data?.turn === turn && Number.isSafeInteger(event.seq));
219
+ const ends = events.filter(event => event?.type === 'turn/end' && event.data?.turn === turn && Number.isSafeInteger(event.seq));
220
+ if (starts.length !== 1 || ends.length !== 1 || ends[0].seq <= starts[0].seq || ends[0].data?.reason?.kind !== 'completed') {
221
+ throw new Error('assistant-goals: completed source turn is required');
222
+ }
223
+ const start = starts[0], end = ends[0];
224
+ const source = events.filter(event => event?.type === 'user/message' && Number.isSafeInteger(event.seq) && event.seq > start.seq && event.seq < end.seq
225
+ && event.data?.source?.kind === 'goal' && event.data.source.goalId === record.native.goalId && event.data.source.revision === run.intent.task.goal.nativeRevision
226
+ && event.data.source.round === run.intent.admission.round);
227
+ if (source.length !== 1)
228
+ throw new Error('assistant-goals: trigger run goal source is invalid');
229
+ const trace = verifiedToolTraceInternal(events, turn, { sourceSeq: source[0].seq, endSeq: end.seq });
230
+ if (!allowEmpty && trace.steps.length === 0 || trace.steps.length + trace.failedObservations.length > 32) {
231
+ throw new Error('assistant-goals: bounded successful tool trace is required');
232
+ }
233
+ return { segment: Object.freeze({ runId: run.intent.runId, turn, round: run.intent.admission.round, nativeRevision: run.intent.task.goal.nativeRevision, steps: Object.freeze(trace.steps.map(step => Object.freeze({ ...step }))),
234
+ ...(trace.failedObservations.length === 0 ? {} : { failedObservations: Object.freeze(trace.failedObservations.map(step => Object.freeze({ ...step }))) }) }), calls: trace.steps.length + trace.failedObservations.length, argumentBytes: trace.argumentBytes };
235
+ }
236
+ function traceEventInWindow(event, window) {
237
+ return Number.isSafeInteger(event?.seq) && event.seq > window.sourceSeq && event.seq < window.endSeq;
238
+ }
239
+ function readOnlyProbe(call) {
240
+ if (call.toolName === 'read' || call.toolName === 'glob' || call.toolName === 'grep')
241
+ return true;
242
+ return call.toolName === 'get_goal' && call.arguments !== null && typeof call.arguments === 'object'
243
+ && !Array.isArray(call.arguments) && Object.keys(call.arguments).length === 0;
244
+ }
245
+ function parseArguments(value) {
246
+ if (typeof value !== 'string' || Buffer.byteLength(value, 'utf8') > 262144)
247
+ throw new Error('assistant-goals: bounded native tool arguments required');
248
+ const parsed = JSON.parse(value);
249
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed))
250
+ throw new Error('assistant-goals: native tool arguments must be an object');
251
+ return parsed;
252
+ }
253
+ //# sourceMappingURL=verified-workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verified-workflow.js","sourceRoot":"","sources":["../src/verified-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAyBzE,qFAAqF;AACrF,MAAM,OAAO,gCAAiC,SAAQ,KAAK;IACpC;IAArB,YAAqB,IAAwD,EAAE,OAAe,EAAE,OAAsB;QACpH,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QADJ,SAAI,GAAJ,IAAI,CAAoD;QAE3E,IAAI,CAAC,IAAI,GAAG,kCAAkC,CAAA;IAChD,CAAC;CACF;AAYD,MAAM,UAAU,aAAa,CAAC,KAAgB,EAAE,MAAc,EAAE,SAAiB,EAAE,IAAY;IAC7F,OAAO,YAAY,gBAAgB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,CAAA;AACzE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAsB,EAAE,IAAY;IACtE,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC7C,IAAI,KAAK,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;IAChH,OAAO,KAAK,CAAC,KAAK,CAAA;AACpB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAgB,EAAE,MAAkE,EAAE,GAAqB,EAC3I,cAA+D,EAAE,SAA6B;IAC9F,IAAI,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,gBAAgB,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,gBAAgB,CAAC,KAAK,CAAC;WAC3H,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,WAAW,IAAI,GAAG,CAAC,SAAS,CAAC,SAAS,KAAK,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;WAC5H,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,UAAU,CAAC,SAAS;WAChG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,KAAK,MAAM,CAAC,UAAU,CAAC,OAAO;WAC7G,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,KAAK,MAAM,CAAC,UAAU,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS;WAChI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAA;IAC7I,MAAM,MAAM,GAAG,SAA2B,CAAA;IAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,YAAY,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;WACtG,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAc,CAAC,CAAA;IAC5I,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IAC1F,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAA;IACtB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IACnI,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/H,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAE,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAE,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9H,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAA;IAC9E,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAA;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,cAAc,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG;WAClJ,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM;WACxF,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAClI,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IACvF,MAAM,KAAK,GAAG,IAAI,GAAG,EAAyE,CAAA;IAC9F,MAAM,OAAO,GAAG,IAAI,GAAG,EAA4D,CAAA;IACnF,IAAI,aAAa,GAAG,CAAC,CAAA;IACrB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAE,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI;YAAE,SAAQ;QACnI,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/G,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;YAC1H,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YACvD,aAAa,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;YAChE,IAAI,aAAa,GAAG,GAAG,GAAG,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;YACjG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;QACvH,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC;eACnG,KAAK,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;YACnG,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;YACjF,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAC5H,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC1B,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,GAAG;gBAAE,SAAQ;YACzE,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,MAAM,EAAE,UAAU,KAAK,EAAE,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAA;YAC3K,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;QACvI,CAAC;IACH,CAAC;IACD,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;IAC9H,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;QACtG,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC,OAAO;KAChG,CAAC,CAAC,CAAC,CAAA;IACJ,MAAM,OAAO,GAAG,EAAE,QAAQ,EAAE,oCAA6C,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI;QACtG,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM;QAC/F,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC,EAAE,KAAK,EAAE,CAAA;IAC/D,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AAC9E,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,4BAA4B,CAAC,KAAmD,EAAE,UAAkB;IAClH,OAAO,gBAAgB,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;AAC1H,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAsB,EAAE,IAAY;IACpE,MAAM,KAAK,GAAG,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACrD,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAAE,CAAA;AAC7E,CAAC;AAED,SAAS,yBAAyB,CAAC,MAAsB,EAAE,IAAY,EAAE,MAA8C;IACrH,MAAM,KAAK,GAAG,IAAI,GAAG,EAA8E,CAAA;IACnG,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkC,CAAA;IACzD,IAAI,aAAa,GAAG,CAAC,CAAA;IACrB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ;eAChG,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACzC,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC;gBAAE,SAAQ;YACxE,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;YAC3H,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YACvD,aAAa,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;YAChE,IAAI,aAAa,GAAG,GAAG,GAAG,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;YAClG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;QAC3H,CAAC;QACD,IAAI,KAAK,EAAE,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;eACxH,OAAO,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7D,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAA;YAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;YAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAC5H,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC1B,wEAAwE;YACxE,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC;mBACnH,KAAK,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC;gBAAE,SAAQ;YAC3F,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,EAAE,IAAI,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,GAAI,EAAE,CAAC;gBAC7G,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAA;YAClG,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;QAC1G,CAAC;IACH,CAAC;IACD,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAC/H,MAAM,KAAK,GAAgE,EAAE,CAAA;IAC7E,MAAM,kBAAkB,GAAmF,EAAE,CAAA;IAC7G,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAA;QAChF,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,WAAW,EAAE,CAAC;YAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAAC,SAAQ;QAAC,CAAC;QACxE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;QAC/G,kBAAkB,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAA;IACzD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAA;AACrD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAkC;IACvE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAA;IACjD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAA8G,CAAA;IACvI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IACnH,IAAI,QAAQ,CAAC,KAAK,KAAK,MAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,eAAe,KAAK,UAAU;WACpH,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7K,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAC7E,CAAC;IACD,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IAClE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,6CAA6C,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;QAChH,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnK,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;YAC1J,aAAa,EAAE,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,WAAqB,EAAE,UAAU,EAAE,OAAO,CAAC,UAAoB,EAAE,CAAC;QACxL,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAA;AACtJ,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,2BAA2B,CAAC,QAA0E;IACpH,MAAM,KAAK,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IAC9C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE;WAClF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,KAAK,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,KAAK,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM;WAC5J,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;SAC7I,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACtE,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAA;IAC1E,IAAI,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;IACnJ,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAA;IAC7D,IAAI,aAAa,KAAK,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,KAAK,aAAa,CAAC,EAAE,CAAC;QACtM,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAChE,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QAC3B,IAAI,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;QAClH,IAAI,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,WAAW,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QACxI,OAAO,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAA;IACjH,CAAC,CAAC,CAAA;IACF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE;QAAE,IAAI,IAAI,CAAC,KAAK,CAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,KAAK,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IAC7P,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAAC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAA;IACtJ,IAAI,KAAK,GAAG,EAAE,IAAI,aAAa,GAAG,GAAG,GAAG,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IACpH,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3H,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;IAC1G,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAA;AAC9F,CAAC;AAED,SAAS,eAAe,CAAC,KAAgB,EAAE,MAAkB,EAAE,GAAqB,EAAE,SAA6B,EAAE,UAAU,GAAG,KAAK;IACrI,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,gBAAgB,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,gBAAgB,CAAC,KAAK,CAAC;WAC3H,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,WAAW,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,UAAU,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE;WAClK,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,KAAK,MAAM,CAAC,UAAU,CAAC,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,KAAK,MAAM,CAAC,UAAU,CAAC,MAAM;WAC1I,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9H,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAA;IAC9E,CAAC;IACD,MAAM,MAAM,GAAG,SAA2B,CAAA;IAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,YAAY,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;SACxG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAc,CAAC;SACvC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAA;IACtG,IAAI,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IAC1F,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IACnI,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/H,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAE,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAE,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9H,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;IACvE,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAA;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,cAAc,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG;WAClJ,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc;WAC9J,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAC5D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IAC/F,MAAM,KAAK,GAAG,yBAAyB,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAA;IACrG,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,kBAAkB,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACzG,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;IAC/E,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;YAChO,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAA;AACnQ,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAU,EAAE,MAA6C;IACnF,OAAO,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,CAAA;AACtG,CAAC;AAED,SAAS,aAAa,CAAC,IAA8C;IACnE,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM;QAAE,OAAO,IAAI,CAAA;IACjG,OAAO,IAAI,CAAC,QAAQ,KAAK,UAAU,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;WAC/F,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;AACjF,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;IACtJ,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACzC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAC/I,OAAO,MAAiC,CAAA;AAC1C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const version = "0.1.30";
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,WAAW,CAAA"}
package/lib/version.js ADDED
@@ -0,0 +1,2 @@
1
+ export const version = '0.1.30';
2
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAA"}