@interf/compiler 0.3.1 → 0.3.3

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 (148) hide show
  1. package/README.md +124 -54
  2. package/dist/commands/compile.d.ts +12 -0
  3. package/dist/commands/compile.d.ts.map +1 -1
  4. package/dist/commands/compile.js +233 -29
  5. package/dist/commands/compile.js.map +1 -1
  6. package/dist/commands/create.d.ts.map +1 -1
  7. package/dist/commands/create.js +22 -13
  8. package/dist/commands/create.js.map +1 -1
  9. package/dist/commands/default.js +1 -1
  10. package/dist/commands/default.js.map +1 -1
  11. package/dist/commands/executor-flow.d.ts +2 -0
  12. package/dist/commands/executor-flow.d.ts.map +1 -1
  13. package/dist/commands/executor-flow.js +71 -22
  14. package/dist/commands/executor-flow.js.map +1 -1
  15. package/dist/commands/init.d.ts.map +1 -1
  16. package/dist/commands/init.js +60 -22
  17. package/dist/commands/init.js.map +1 -1
  18. package/dist/commands/reset.d.ts.map +1 -1
  19. package/dist/commands/reset.js +2 -18
  20. package/dist/commands/reset.js.map +1 -1
  21. package/dist/commands/source-config-wizard.d.ts +2 -1
  22. package/dist/commands/source-config-wizard.d.ts.map +1 -1
  23. package/dist/commands/source-config-wizard.js +87 -16
  24. package/dist/commands/source-config-wizard.js.map +1 -1
  25. package/dist/commands/test-flow.d.ts +5 -0
  26. package/dist/commands/test-flow.d.ts.map +1 -1
  27. package/dist/commands/test-flow.js +48 -14
  28. package/dist/commands/test-flow.js.map +1 -1
  29. package/dist/commands/test.d.ts.map +1 -1
  30. package/dist/commands/test.js +18 -5
  31. package/dist/commands/test.js.map +1 -1
  32. package/dist/commands/workspace-flow.d.ts +3 -1
  33. package/dist/commands/workspace-flow.d.ts.map +1 -1
  34. package/dist/commands/workspace-flow.js +4 -3
  35. package/dist/commands/workspace-flow.js.map +1 -1
  36. package/dist/lib/agent-shells.d.ts +17 -0
  37. package/dist/lib/agent-shells.d.ts.map +1 -0
  38. package/dist/lib/agent-shells.js +294 -0
  39. package/dist/lib/agent-shells.js.map +1 -0
  40. package/dist/lib/benchmark-execution.d.ts +5 -1
  41. package/dist/lib/benchmark-execution.d.ts.map +1 -1
  42. package/dist/lib/benchmark-execution.js +34 -12
  43. package/dist/lib/benchmark-execution.js.map +1 -1
  44. package/dist/lib/benchmark-paths.d.ts +2 -0
  45. package/dist/lib/benchmark-paths.d.ts.map +1 -1
  46. package/dist/lib/benchmark-paths.js +6 -0
  47. package/dist/lib/benchmark-paths.js.map +1 -1
  48. package/dist/lib/benchmark-sandbox.d.ts +2 -0
  49. package/dist/lib/benchmark-sandbox.d.ts.map +1 -1
  50. package/dist/lib/benchmark-sandbox.js +68 -37
  51. package/dist/lib/benchmark-sandbox.js.map +1 -1
  52. package/dist/lib/benchmark-targets.js +1 -1
  53. package/dist/lib/benchmark-targets.js.map +1 -1
  54. package/dist/lib/interf-bootstrap.d.ts +2 -13
  55. package/dist/lib/interf-bootstrap.d.ts.map +1 -1
  56. package/dist/lib/interf-bootstrap.js +7 -164
  57. package/dist/lib/interf-bootstrap.js.map +1 -1
  58. package/dist/lib/interf-detect.d.ts +1 -0
  59. package/dist/lib/interf-detect.d.ts.map +1 -1
  60. package/dist/lib/interf-detect.js +5 -18
  61. package/dist/lib/interf-detect.js.map +1 -1
  62. package/dist/lib/interf-scaffold.d.ts.map +1 -1
  63. package/dist/lib/interf-scaffold.js +7 -71
  64. package/dist/lib/interf-scaffold.js.map +1 -1
  65. package/dist/lib/interf-workflow-package.d.ts.map +1 -1
  66. package/dist/lib/interf-workflow-package.js +20 -25
  67. package/dist/lib/interf-workflow-package.js.map +1 -1
  68. package/dist/lib/interf.d.ts +3 -2
  69. package/dist/lib/interf.d.ts.map +1 -1
  70. package/dist/lib/interf.js +3 -2
  71. package/dist/lib/interf.js.map +1 -1
  72. package/dist/lib/local-workflows.d.ts +6 -1
  73. package/dist/lib/local-workflows.d.ts.map +1 -1
  74. package/dist/lib/local-workflows.js +143 -2
  75. package/dist/lib/local-workflows.js.map +1 -1
  76. package/dist/lib/runtime-contracts.d.ts.map +1 -1
  77. package/dist/lib/runtime-contracts.js +10 -4
  78. package/dist/lib/runtime-contracts.js.map +1 -1
  79. package/dist/lib/runtime-prompt.d.ts.map +1 -1
  80. package/dist/lib/runtime-prompt.js +1 -0
  81. package/dist/lib/runtime-prompt.js.map +1 -1
  82. package/dist/lib/runtime-runs.d.ts.map +1 -1
  83. package/dist/lib/runtime-runs.js +6 -2
  84. package/dist/lib/runtime-runs.js.map +1 -1
  85. package/dist/lib/runtime-types.d.ts +1 -0
  86. package/dist/lib/runtime-types.d.ts.map +1 -1
  87. package/dist/lib/schema.d.ts +88 -13
  88. package/dist/lib/schema.d.ts.map +1 -1
  89. package/dist/lib/schema.js +66 -21
  90. package/dist/lib/schema.js.map +1 -1
  91. package/dist/lib/source-config.d.ts +2 -0
  92. package/dist/lib/source-config.d.ts.map +1 -1
  93. package/dist/lib/source-config.js +19 -1
  94. package/dist/lib/source-config.js.map +1 -1
  95. package/dist/lib/state-artifacts.d.ts +2 -2
  96. package/dist/lib/state-artifacts.d.ts.map +1 -1
  97. package/dist/lib/state-artifacts.js +3 -3
  98. package/dist/lib/state-artifacts.js.map +1 -1
  99. package/dist/lib/state-io.d.ts +2 -2
  100. package/dist/lib/state-io.d.ts.map +1 -1
  101. package/dist/lib/state-io.js +5 -5
  102. package/dist/lib/state-io.js.map +1 -1
  103. package/dist/lib/state-paths.d.ts +1 -1
  104. package/dist/lib/state-paths.d.ts.map +1 -1
  105. package/dist/lib/state-paths.js +3 -3
  106. package/dist/lib/state-paths.js.map +1 -1
  107. package/dist/lib/state-view.d.ts +2 -2
  108. package/dist/lib/state-view.d.ts.map +1 -1
  109. package/dist/lib/state-view.js +6 -7
  110. package/dist/lib/state-view.js.map +1 -1
  111. package/dist/lib/state.d.ts +4 -4
  112. package/dist/lib/state.d.ts.map +1 -1
  113. package/dist/lib/state.js +3 -3
  114. package/dist/lib/state.js.map +1 -1
  115. package/dist/lib/workflow-definitions.d.ts +4 -1
  116. package/dist/lib/workflow-definitions.d.ts.map +1 -1
  117. package/dist/lib/workflow-definitions.js +38 -3
  118. package/dist/lib/workflow-definitions.js.map +1 -1
  119. package/dist/lib/workflow-stage-runner.d.ts +1 -0
  120. package/dist/lib/workflow-stage-runner.d.ts.map +1 -1
  121. package/dist/lib/workflow-stage-runner.js +2 -0
  122. package/dist/lib/workflow-stage-runner.js.map +1 -1
  123. package/dist/lib/workflows.d.ts +1 -1
  124. package/dist/lib/workflows.d.ts.map +1 -1
  125. package/dist/lib/workspace-compile.d.ts +4 -0
  126. package/dist/lib/workspace-compile.d.ts.map +1 -1
  127. package/dist/lib/workspace-compile.js +108 -66
  128. package/dist/lib/workspace-compile.js.map +1 -1
  129. package/dist/lib/workspace-docs.d.ts +3 -0
  130. package/dist/lib/workspace-docs.d.ts.map +1 -0
  131. package/dist/lib/workspace-docs.js +82 -0
  132. package/dist/lib/workspace-docs.js.map +1 -0
  133. package/dist/lib/workspace-raw.d.ts +30 -0
  134. package/dist/lib/workspace-raw.d.ts.map +1 -0
  135. package/dist/lib/workspace-raw.js +102 -0
  136. package/dist/lib/workspace-raw.js.map +1 -0
  137. package/dist/lib/workspace-reset.d.ts +2 -0
  138. package/dist/lib/workspace-reset.d.ts.map +1 -0
  139. package/dist/lib/workspace-reset.js +21 -0
  140. package/dist/lib/workspace-reset.js.map +1 -0
  141. package/dist/lib/workspace-schema.d.ts +26 -0
  142. package/dist/lib/workspace-schema.d.ts.map +1 -0
  143. package/dist/lib/workspace-schema.js +132 -0
  144. package/dist/lib/workspace-schema.js.map +1 -0
  145. package/package.json +1 -1
  146. package/skills/workflow/create/SKILL.md +19 -0
  147. package/skills/workspace/shape/SKILL.md +1 -1
  148. package/templates/workspace/README.md +2 -1
@@ -1,7 +1,8 @@
1
1
  import { mkdirSync, writeFileSync } from "node:fs";
2
2
  import { join } from "node:path";
3
3
  import { countFilesRecursive } from "./filesystem.js";
4
- import { readInterfConfig, refreshWorkspaceBootstrapGuidance, resolveSourceFolderPath, } from "./interf.js";
4
+ import { createStageExecutionShell, pruneStageExecutionShells } from "./agent-shells.js";
5
+ import { readInterfConfig, refreshWorkspaceBootstrapGuidance, resolveSourceFolderPath, resolveSourceControlPath, } from "./interf.js";
5
6
  import { findSourceWorkspaceConfig, loadSourceFolderConfig } from "./source-config.js";
6
7
  import { buildSummarizePlan, writeSummarizePlan } from "./summarize-plan.js";
7
8
  import { reconcileWorkspaceShapeRun, reconcileWorkspaceStructureRun, reconcileWorkspaceSummarizeRun, } from "./runtime-reconcile.js";
@@ -12,6 +13,7 @@ import { formatWorkspaceWorkflowStageStep, getWorkflowStagePolicyNotes, getWorks
12
13
  import { validateWorkspaceCompile, validateWorkspaceStructure, validateWorkspaceSummarize, } from "./validate.js";
13
14
  import { buildLocalSkillContractExtension, buildStageInstructions, bundledSkillForContractType, reportBlankLine, reportLine, reportValidationFailure, resolveStageAcceptance, workflowCompileStageDirectory, } from "./workflow-helpers.js";
14
15
  import { executeValidatedStage, executeValidatedSummarizeStage, findStageByContractType, } from "./workflow-stage-runner.js";
16
+ import { syncWorkspaceRawSnapshot } from "./workspace-raw.js";
15
17
  const SHAPE_INPUT_RELATIVE_PATH = ".interf/shape-input.json";
16
18
  export function resolveWorkspaceContext(workspacePath) {
17
19
  const config = readInterfConfig(workspacePath);
@@ -19,11 +21,12 @@ export function resolveWorkspaceContext(workspacePath) {
19
21
  return {
20
22
  workspaceName: config?.name ?? "workspace",
21
23
  sourcePath: resolveSourceFolderPath(workspacePath, config),
24
+ controlPath: resolveSourceControlPath(workspacePath),
22
25
  workflowId,
23
26
  };
24
27
  }
25
28
  export function workspaceExecutionStages(workflowId, workspacePath) {
26
- return getWorkspaceWorkflow(workflowId, { sourcePath: resolveSourceFolderPath(workspacePath) })
29
+ return getWorkspaceWorkflow(workflowId, { sourcePath: resolveSourceControlPath(workspacePath) })
27
30
  .stages;
28
31
  }
29
32
  function readWorkspaceInventoryTotal(workspacePath) {
@@ -80,9 +83,9 @@ function isWorkspaceShapeStageComplete(workspacePath, summaryCount) {
80
83
  (state.shaped ?? state.compiled ?? 0) >= summaryCount &&
81
84
  (state.compiled ?? 0) >= summaryCount);
82
85
  }
83
- function writeWorkspaceShapeInput(workspacePath, workspaceName, sourcePath) {
86
+ function writeWorkspaceShapeInput(workspacePath, workspaceName, controlPath) {
84
87
  const workspaceConfig = readInterfConfig(workspacePath);
85
- const sourceConfig = loadSourceFolderConfig(sourcePath);
88
+ const sourceConfig = loadSourceFolderConfig(controlPath);
86
89
  const sourceWorkspace = findSourceWorkspaceConfig(sourceConfig, workspaceName);
87
90
  const questions = (sourceWorkspace?.checks ?? []).map((check, index) => ({
88
91
  id: check.id ?? `check-${index + 1}`,
@@ -102,14 +105,14 @@ function writeWorkspaceShapeInput(workspacePath, workspaceName, sourcePath) {
102
105
  }
103
106
  export function buildWorkspaceCompileContract(workspacePath, workflowId, summaryCount, instructions, stageId = "shape", stageSkillDir = "shape", shapeInputPath = SHAPE_INPUT_RELATIVE_PATH) {
104
107
  const config = readInterfConfig(workspacePath);
105
- const sourcePath = resolveSourceFolderPath(workspacePath, config);
106
- const acceptance = resolveStageAcceptance(workflowId, stageId, sourcePath);
108
+ const controlPath = resolveSourceControlPath(workspacePath);
109
+ const acceptance = resolveStageAcceptance(workflowId, stageId, controlPath);
107
110
  const localSkills = buildLocalSkillContractExtension(workspacePath, [workflowCompileStageDirectory(stageSkillDir)], "Use them to refine workspace shaping, navigation, and retrieval routes.");
108
111
  return buildWorkspaceShapeContract({
109
112
  workspaceName: config?.name ?? "workspace",
110
113
  summaryCount,
111
114
  shapeInputPath,
112
- workflowNotes: getWorkflowStagePolicyNotes(workflowId, stageId, sourcePath),
115
+ workflowNotes: getWorkflowStagePolicyNotes(workflowId, stageId, controlPath),
113
116
  localSkillDocs: localSkills.reads,
114
117
  instructions,
115
118
  acceptance,
@@ -117,13 +120,13 @@ export function buildWorkspaceCompileContract(workspacePath, workflowId, summary
117
120
  }
118
121
  function buildWorkspaceStructureStageContract(workspacePath, workflowId, summaryCount, instructions, stageId = "structure", stageSkillDir = "structure") {
119
122
  const config = readInterfConfig(workspacePath);
120
- const sourcePath = resolveSourceFolderPath(workspacePath, config);
121
- const acceptance = resolveStageAcceptance(workflowId, stageId, sourcePath);
123
+ const controlPath = resolveSourceControlPath(workspacePath);
124
+ const acceptance = resolveStageAcceptance(workflowId, stageId, controlPath);
122
125
  const localSkills = buildLocalSkillContractExtension(workspacePath, [workflowCompileStageDirectory(stageSkillDir)], "Use them to refine workspace structure, taxonomy, ontology, entity extraction, and claim extraction.");
123
126
  return buildWorkspaceStructureContract({
124
127
  workspaceName: config?.name ?? "workspace",
125
128
  summaryCount,
126
- workflowNotes: getWorkflowStagePolicyNotes(workflowId, stageId, sourcePath),
129
+ workflowNotes: getWorkflowStagePolicyNotes(workflowId, stageId, controlPath),
127
130
  localSkillDocs: localSkills.reads,
128
131
  instructions,
129
132
  acceptance,
@@ -132,6 +135,7 @@ function buildWorkspaceStructureStageContract(workspacePath, workflowId, summary
132
135
  export async function runWorkspaceSummarize(options) {
133
136
  const context = resolveWorkspaceContext(options.workspacePath);
134
137
  const sourcePath = options.sourcePath ?? context.sourcePath;
138
+ const controlPath = context.controlPath;
135
139
  const workflowId = context.workflowId;
136
140
  const stageDefinition = options.stageDefinition ?? findStageByContractType(workspaceExecutionStages(workflowId, options.workspacePath), "workspace-file-evidence");
137
141
  const stageStatusLabel = stageDefinition.label.toLowerCase();
@@ -147,7 +151,7 @@ export async function runWorkspaceSummarize(options) {
147
151
  refreshWorkspaceArtifacts(options.workspacePath, { ensureViewSpec: true });
148
152
  const validation = validateWorkspaceSummarize(options.workspacePath);
149
153
  if (options.reportStep !== false) {
150
- reportLine(options.reporter, `${formatWorkspaceWorkflowStageStep(workflowId, stageDefinition.id, { sourcePath })} skipped (no work required)`);
154
+ reportLine(options.reporter, `${formatWorkspaceWorkflowStageStep(workflowId, stageDefinition.id, { sourcePath: controlPath })} skipped (no work required)`);
151
155
  }
152
156
  if (!validation.ok) {
153
157
  reportValidationFailure(options.reporter, validation.summary);
@@ -160,14 +164,16 @@ export async function runWorkspaceSummarize(options) {
160
164
  };
161
165
  }
162
166
  if (options.reportStep !== false) {
163
- reportLine(options.reporter, `${formatWorkspaceWorkflowStageStep(workflowId, stageDefinition.id, { sourcePath })} (${plan.targetCount} files)`);
167
+ reportLine(options.reporter, `${formatWorkspaceWorkflowStageStep(workflowId, stageDefinition.id, { sourcePath: controlPath })} (${plan.targetCount} files)`);
164
168
  }
169
+ const shell = createStageExecutionShell(options.workspacePath, context.workspaceName, workflowId, stageDefinition);
165
170
  const stageResult = await executeValidatedSummarizeStage({
166
171
  executor: options.executor,
167
172
  workspacePath: options.workspacePath,
173
+ executionPath: shell.rootPath,
168
174
  targetName: context.workspaceName,
169
175
  workflow: workflowId,
170
- workflowSourcePath: sourcePath,
176
+ workflowSourcePath: controlPath,
171
177
  stageDefinition,
172
178
  instructions,
173
179
  summary: `Preparing ${stageDefinition.label.toLowerCase()} for ${plan.targetCount} source files.`,
@@ -177,10 +183,10 @@ export async function runWorkspaceSummarize(options) {
177
183
  expectedSummaryTotal,
178
184
  sourcePath,
179
185
  planPath,
180
- workflowNotes: getWorkflowStagePolicyNotes(workflowId, stageDefinition.id, sourcePath),
186
+ workflowNotes: getWorkflowStagePolicyNotes(workflowId, stageDefinition.id, controlPath),
181
187
  localSkillDocs: localSkills.reads,
182
188
  instructions,
183
- acceptance: resolveStageAcceptance(workflowId, stageDefinition.id, sourcePath),
189
+ acceptance: resolveStageAcceptance(workflowId, stageDefinition.id, controlPath),
184
190
  }),
185
191
  statusLines: [
186
192
  `Emit exactly one startup line: STATUS: loaded ${stageStatusLabel} plan ${plan.targetCount} files.`,
@@ -217,6 +223,7 @@ async function runWorkspaceStructure(options) {
217
223
  const workspaceName = workspaceConfig?.name ?? "workspace";
218
224
  const workflowId = resolveWorkspaceWorkflowFromConfig(workspaceConfig);
219
225
  const sourcePath = options.sourcePath ?? resolveSourceFolderPath(options.workspacePath, workspaceConfig);
226
+ const controlPath = resolveSourceControlPath(options.workspacePath);
220
227
  const stageDefinition = options.stageDefinition ?? findStageByContractType(workspaceExecutionStages(workflowId, options.workspacePath), "workspace-knowledge-structure");
221
228
  const stageStatusLabel = stageDefinition.label.toLowerCase();
222
229
  const summaryCount = countFilesRecursive(join(options.workspacePath, "summaries"));
@@ -224,14 +231,16 @@ async function runWorkspaceStructure(options) {
224
231
  const instructions = buildStageInstructions(bundledSkillForContractType(stageDefinition.contractType), localSkills);
225
232
  if (options.reportStep !== false) {
226
233
  reportBlankLine(options.reporter);
227
- reportLine(options.reporter, `${formatWorkspaceWorkflowStageStep(workflowId, stageDefinition.id, { sourcePath })} (building knowledge structure)`);
234
+ reportLine(options.reporter, `${formatWorkspaceWorkflowStageStep(workflowId, stageDefinition.id, { sourcePath: controlPath })} (building knowledge structure)`);
228
235
  }
236
+ const shell = createStageExecutionShell(options.workspacePath, workspaceName, workflowId, stageDefinition);
229
237
  return executeValidatedStage({
230
238
  executor: options.executor,
231
239
  workspacePath: options.workspacePath,
240
+ executionPath: shell.rootPath,
232
241
  targetName: workspaceName,
233
242
  workflow: workflowId,
234
- workflowSourcePath: sourcePath,
243
+ workflowSourcePath: controlPath,
235
244
  stageDefinition,
236
245
  instructions,
237
246
  summary: `Preparing ${stageDefinition.label.toLowerCase()} for ${summaryCount} summary files.`,
@@ -254,22 +263,25 @@ async function runWorkspaceShape(options) {
254
263
  const workspaceName = workspaceConfig?.name ?? "workspace";
255
264
  const workflowId = resolveWorkspaceWorkflowFromConfig(workspaceConfig);
256
265
  const sourcePath = options.sourcePath ?? resolveSourceFolderPath(options.workspacePath, workspaceConfig);
266
+ const controlPath = resolveSourceControlPath(options.workspacePath);
257
267
  const stageDefinition = options.stageDefinition ?? findStageByContractType(workspaceExecutionStages(workflowId, options.workspacePath), "workspace-query-shape");
258
268
  const stageStatusLabel = stageDefinition.label.toLowerCase();
259
269
  const summaryCount = countFilesRecursive(join(options.workspacePath, "summaries"));
260
270
  const localSkills = buildLocalSkillContractExtension(options.workspacePath, [workflowCompileStageDirectory(stageDefinition.skillDir)], "Use them to refine final workspace shaping, navigation, and retrieval routes.");
261
271
  const instructions = buildStageInstructions(bundledSkillForContractType(stageDefinition.contractType), localSkills);
262
- const shapeInputPath = writeWorkspaceShapeInput(options.workspacePath, workspaceName, sourcePath);
272
+ const shapeInputPath = writeWorkspaceShapeInput(options.workspacePath, workspaceName, controlPath);
263
273
  if (options.reportStep !== false) {
264
274
  reportBlankLine(options.reporter);
265
- reportLine(options.reporter, `${formatWorkspaceWorkflowStageStep(workflowId, stageDefinition.id, { sourcePath })} (shaping workspace surface)`);
275
+ reportLine(options.reporter, `${formatWorkspaceWorkflowStageStep(workflowId, stageDefinition.id, { sourcePath: controlPath })} (shaping workspace surface)`);
266
276
  }
277
+ const shell = createStageExecutionShell(options.workspacePath, workspaceName, workflowId, stageDefinition);
267
278
  return executeValidatedStage({
268
279
  executor: options.executor,
269
280
  workspacePath: options.workspacePath,
281
+ executionPath: shell.rootPath,
270
282
  targetName: workspaceName,
271
283
  workflow: workflowId,
272
- workflowSourcePath: sourcePath,
284
+ workflowSourcePath: controlPath,
273
285
  stageDefinition,
274
286
  instructions,
275
287
  summary: `Preparing ${stageDefinition.label.toLowerCase()} for ${summaryCount} summary files.`,
@@ -335,63 +347,93 @@ async function runWorkspaceCompileStages(options) {
335
347
  };
336
348
  }
337
349
  export async function runWorkspaceCompile(options) {
338
- const result = await runWorkspaceCompileStages(options);
339
- if (!result.ok) {
340
- return result.shape ?? result.structure ?? { ok: false, code: 1 };
350
+ const preserveMode = options.preserveStageShells ?? "on-failure";
351
+ if (preserveMode !== "always") {
352
+ pruneStageExecutionShells(options.workspacePath);
353
+ }
354
+ let result = null;
355
+ try {
356
+ const compileStages = await runWorkspaceCompileStages(options);
357
+ if (!compileStages.ok) {
358
+ result = compileStages.shape ?? compileStages.structure ?? { ok: false, code: 1 };
359
+ return result;
360
+ }
361
+ result = compileStages.shape ?? compileStages.structure ?? { ok: true, code: 0 };
362
+ return result;
363
+ }
364
+ finally {
365
+ if (preserveMode !== "always" && result?.ok) {
366
+ pruneStageExecutionShells(options.workspacePath);
367
+ }
341
368
  }
342
- return result.shape ?? result.structure ?? { ok: true, code: 0 };
343
369
  }
344
370
  export async function compileWorkspace(options) {
345
- refreshWorkspaceBootstrapGuidance(options.workspacePath);
346
- const { sourcePath, workflowId } = resolveWorkspaceContext(options.workspacePath);
347
- const stages = workspaceExecutionStages(workflowId, options.workspacePath);
348
- let summarize = {
349
- ok: true,
350
- code: 0,
351
- skipped: true,
352
- plan: buildSummarizePlan(sourcePath, options.workspacePath),
353
- };
354
- let evidencePassCount = 0;
355
- for (const stageDefinition of stages) {
356
- if (stageDefinition.contractType !== "workspace-file-evidence") {
357
- break;
371
+ const preserveMode = options.preserveStageShells ?? "on-failure";
372
+ if (preserveMode !== "always") {
373
+ pruneStageExecutionShells(options.workspacePath);
374
+ }
375
+ let result = null;
376
+ try {
377
+ const controlPath = resolveSourceControlPath(options.workspacePath);
378
+ syncWorkspaceRawSnapshot(options.workspacePath, controlPath);
379
+ refreshWorkspaceBootstrapGuidance(options.workspacePath);
380
+ const { sourcePath, workflowId } = resolveWorkspaceContext(options.workspacePath);
381
+ const stages = workspaceExecutionStages(workflowId, options.workspacePath);
382
+ let summarize = {
383
+ ok: true,
384
+ code: 0,
385
+ skipped: true,
386
+ plan: buildSummarizePlan(sourcePath, options.workspacePath),
387
+ };
388
+ let evidencePassCount = 0;
389
+ for (const stageDefinition of stages) {
390
+ if (stageDefinition.contractType !== "workspace-file-evidence") {
391
+ break;
392
+ }
393
+ summarize = await runWorkspaceSummarize({
394
+ executor: options.executor,
395
+ workspacePath: options.workspacePath,
396
+ sourcePath,
397
+ reporter: options.reporter,
398
+ reportSummary: evidencePassCount === 0,
399
+ reportStep: true,
400
+ stageDefinition,
401
+ fullPass: evidencePassCount > 0,
402
+ });
403
+ evidencePassCount += 1;
404
+ if (!summarize.ok) {
405
+ result = {
406
+ ok: false,
407
+ summarize,
408
+ structure: null,
409
+ shape: null,
410
+ compile: null,
411
+ failedStage: stageDefinition.id,
412
+ };
413
+ return result;
414
+ }
358
415
  }
359
- summarize = await runWorkspaceSummarize({
416
+ const compileStages = await runWorkspaceCompileStages({
360
417
  executor: options.executor,
361
418
  workspacePath: options.workspacePath,
362
419
  sourcePath,
363
420
  reporter: options.reporter,
364
- reportSummary: evidencePassCount === 0,
365
421
  reportStep: true,
366
- stageDefinition,
367
- fullPass: evidencePassCount > 0,
368
422
  });
369
- evidencePassCount += 1;
370
- if (!summarize.ok) {
371
- return {
372
- ok: false,
373
- summarize,
374
- structure: null,
375
- shape: null,
376
- compile: null,
377
- failedStage: stageDefinition.id,
378
- };
423
+ result = {
424
+ ok: compileStages.ok,
425
+ summarize,
426
+ structure: compileStages.structure,
427
+ shape: compileStages.shape,
428
+ compile: compileStages.shape,
429
+ failedStage: compileStages.failedStage,
430
+ };
431
+ return result;
432
+ }
433
+ finally {
434
+ if (preserveMode !== "always" && result?.ok) {
435
+ pruneStageExecutionShells(options.workspacePath);
379
436
  }
380
437
  }
381
- const compileStages = await runWorkspaceCompileStages({
382
- executor: options.executor,
383
- workspacePath: options.workspacePath,
384
- sourcePath,
385
- reporter: options.reporter,
386
- reportStep: true,
387
- });
388
- return {
389
- ok: compileStages.ok,
390
- summarize,
391
- structure: compileStages.structure,
392
- shape: compileStages.shape,
393
- compile: compileStages.shape,
394
- failedStage: compileStages.failedStage,
395
- };
396
438
  }
397
439
  //# sourceMappingURL=workspace-compile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-compile.js","sourceRoot":"","sources":["../../src/lib/workspace-compile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-compile.js","sourceRoot":"","sources":["../../src/lib/workspace-compile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function renderWorkspaceAgents(name: string, workflowId: string, about?: string): string;
2
+ export declare function renderWorkspaceQuerySkill(): string;
3
+ //# sourceMappingURL=workspace-docs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-docs.d.ts","sourceRoot":"","sources":["../../src/lib/workspace-docs.ts"],"names":[],"mappings":"AAAA,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,CA2DR;AAED,wBAAgB,yBAAyB,IAAI,MAAM,CAoBlD"}
@@ -0,0 +1,82 @@
1
+ export function renderWorkspaceAgents(name, workflowId, about) {
2
+ return [
3
+ `# ${name}`,
4
+ "",
5
+ "This is an Interf compiled workspace.",
6
+ "It is a file-based layer on top of the raw files, built for agents to navigate, retrieve evidence, and answer more accurately.",
7
+ "",
8
+ ...(about
9
+ ? [
10
+ `About: ${about}`,
11
+ "",
12
+ ]
13
+ : []),
14
+ "## How to use this workspace",
15
+ "",
16
+ "1. Use the local native `interf-query` skill that Interf generated for this workspace.",
17
+ "2. Start from `home.md`, then use `knowledge/` and `summaries/`.",
18
+ "3. Use `raw/` when you need direct quotes, exact chart values, table lookups, or verification.",
19
+ "",
20
+ "## How this workspace works",
21
+ "",
22
+ "- `interf.json` points to the workspace-local `raw/` snapshot via `source.path`.",
23
+ `- Workflow: \`${workflowId}\`.`,
24
+ "- `workflow/` is the local editable method package for this workspace.",
25
+ "- `workflow/workspace.schema.json` is the deterministic output shape for this workspace.",
26
+ "- `workflow/use/query/` is the editable source for the generated native query shell.",
27
+ "- `workflow/compile/stages/` defines stage-specific docs that Interf projects into native execution shells for automated runs.",
28
+ "- Native local query skills are generated under local agent skill directories such as `.claude/skills/` and `.codex/skills/`.",
29
+ "- `raw/` contains the workspace-local raw snapshot used for evidence and verification.",
30
+ "- `summaries/` contains per-file evidence objects.",
31
+ "- `knowledge/` contains the cross-file knowledge layer and navigation structure.",
32
+ "- `home.md` is the starting note.",
33
+ "- `.interf/run.json`, `.interf/health.json`, `.interf/view-spec.json`, and `.interf/raw-snapshot.json` are CLI-owned runtime artifacts.",
34
+ "",
35
+ "## Manual query rules",
36
+ "",
37
+ "- Prefer `home.md`, `knowledge/`, and `summaries/` before `raw/`.",
38
+ "- Use the generated native `interf-query` skill for manual querying. The editable source lives at `workflow/use/query/SKILL.md`.",
39
+ "- Use `raw/` for quotes, verification, ambiguity, or evidence the compiled layer does not expose well.",
40
+ "- If exact chart, table, or image-derived evidence matters, inspect the raw source and say whether the answer was text-derived, table-derived, or chart-derived.",
41
+ "",
42
+ "## Commands",
43
+ "",
44
+ "```",
45
+ "interf compile build this compiled workspace",
46
+ "interf test run saved truth checks against this workspace",
47
+ "interf verify summarize verify summary coverage",
48
+ "interf verify structure verify cross-file structure outputs",
49
+ "interf verify compile verify compile outputs",
50
+ "interf status show deterministic health",
51
+ "```",
52
+ "",
53
+ "## Rules",
54
+ "",
55
+ "- Do not modify files under `raw/`.",
56
+ "- Treat compiled notes as working retrieval artifacts, not final truth.",
57
+ "- When confidence is low, verify against `raw/` before answering strongly.",
58
+ "",
59
+ ].join("\n");
60
+ }
61
+ export function renderWorkspaceQuerySkill() {
62
+ return [
63
+ "# Manual Query Loop",
64
+ "",
65
+ "This file is the editable authoring source for the generated native local `interf-query` skill.",
66
+ "",
67
+ "Default loop:",
68
+ "1. Read `home.md` first.",
69
+ "2. Browse `knowledge/` before `raw/`.",
70
+ "3. Use `summaries/` for source-grounded evidence.",
71
+ "4. Use `raw/` for direct quotes, verification, exact table lookups, and chart-derived values.",
72
+ "",
73
+ "Answering rule:",
74
+ "- do not modify files under `raw/`",
75
+ "- when a number is chart-derived, say that explicitly",
76
+ "- when the compiled layer is insufficient, verify in `raw/` and then answer",
77
+ "",
78
+ "You can edit this file to bias manual question-answering behavior for this workspace.",
79
+ "",
80
+ ].join("\n");
81
+ }
82
+ //# sourceMappingURL=workspace-docs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-docs.js","sourceRoot":"","sources":["../../src/lib/workspace-docs.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,qBAAqB,CACnC,IAAY,EACZ,UAAkB,EAClB,KAAc;IAEd,OAAO;QACL,KAAK,IAAI,EAAE;QACX,EAAE;QACF,uCAAuC;QACvC,gIAAgI;QAChI,EAAE;QACF,GAAG,CAAC,KAAK;YACP,CAAC,CAAC;gBACE,UAAU,KAAK,EAAE;gBACjB,EAAE;aACH;YACH,CAAC,CAAC,EAAE,CAAC;QACP,8BAA8B;QAC9B,EAAE;QACF,wFAAwF;QACxF,kEAAkE;QAClE,gGAAgG;QAChG,EAAE;QACF,6BAA6B;QAC7B,EAAE;QACF,kFAAkF;QAClF,iBAAiB,UAAU,KAAK;QAChC,wEAAwE;QACxE,0FAA0F;QAC1F,sFAAsF;QACtF,gIAAgI;QAChI,+HAA+H;QAC/H,wFAAwF;QACxF,oDAAoD;QACpD,kFAAkF;QAClF,mCAAmC;QACnC,yIAAyI;QACzI,EAAE;QACF,uBAAuB;QACvB,EAAE;QACF,mEAAmE;QACnE,kIAAkI;QAClI,wGAAwG;QACxG,kKAAkK;QAClK,EAAE;QACF,aAAa;QACb,EAAE;QACF,KAAK;QACL,yDAAyD;QACzD,yEAAyE;QACzE,mDAAmD;QACnD,+DAA+D;QAC/D,kDAAkD;QAClD,qDAAqD;QACrD,KAAK;QACL,EAAE;QACF,UAAU;QACV,EAAE;QACF,qCAAqC;QACrC,yEAAyE;QACzE,4EAA4E;QAC5E,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,qBAAqB;QACrB,EAAE;QACF,iGAAiG;QACjG,EAAE;QACF,eAAe;QACf,0BAA0B;QAC1B,uCAAuC;QACvC,mDAAmD;QACnD,+FAA+F;QAC/F,EAAE;QACF,iBAAiB;QACjB,oCAAoC;QACpC,uDAAuD;QACvD,6EAA6E;QAC7E,EAAE;QACF,uFAAuF;QACvF,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
@@ -0,0 +1,30 @@
1
+ import type { InterfConfig } from "./schema.js";
2
+ export interface WorkspaceRawSyncResult {
3
+ sourceTotal: number;
4
+ copied: number;
5
+ removed: number;
6
+ }
7
+ type RawSnapshotMaterializeMode = "copy" | "link-or-copy";
8
+ export declare function resolveWorkspaceRawPath(workspacePath: string, config?: {
9
+ [x: string]: unknown;
10
+ type: "workspace";
11
+ name: string;
12
+ source: {
13
+ path: string;
14
+ };
15
+ about?: string | undefined;
16
+ workflow?: string | undefined;
17
+ } | null): string;
18
+ export declare function resolveSourceControlPath(workspacePath: string): string;
19
+ export declare function syncWorkspaceRawSnapshot(workspacePath: string, sourcePath?: string): WorkspaceRawSyncResult;
20
+ export declare function ensureWorkspaceRawBinding(workspacePath: string): InterfConfig | null;
21
+ export declare function projectRawSnapshot(options: {
22
+ sourcePath: string;
23
+ destinationPath: string;
24
+ workspacePath: string;
25
+ mode?: RawSnapshotMaterializeMode;
26
+ prune?: boolean;
27
+ preserveTimestamps?: boolean;
28
+ }): WorkspaceRawSyncResult;
29
+ export {};
30
+ //# sourceMappingURL=workspace-raw.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-raw.d.ts","sourceRoot":"","sources":["../../src/lib/workspace-raw.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,0BAA0B,GAAG,MAAM,GAAG,cAAc,CAAC;AAE1D,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,MAAM,EACrB,MAAM;;;;;;;;;QAAkC,GACvC,MAAM,CAKR;AAED,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,MAAM,EACrB,UAAU,SAA0C,GACnD,sBAAsB,CAWxB;AAED,wBAAgB,yBAAyB,CAAC,aAAa,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAepF;AAqCD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,0BAA0B,CAAC;IAClC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,sBAAsB,CAqCzB"}
@@ -0,0 +1,102 @@
1
+ import { cpSync, existsSync, linkSync, mkdirSync, rmSync, statSync, writeFileSync, } from "node:fs";
2
+ import { dirname, join, relative, resolve } from "node:path";
3
+ import { listFilesRecursive } from "./filesystem.js";
4
+ import { discoverSourceFiles } from "./discovery.js";
5
+ import { readInterfConfig } from "./interf-detect.js";
6
+ export function resolveWorkspaceRawPath(workspacePath, config = readInterfConfig(workspacePath)) {
7
+ const configuredPath = typeof config?.source?.path === "string" && config.source.path.length > 0
8
+ ? config.source.path
9
+ : "raw";
10
+ return resolve(workspacePath, configuredPath);
11
+ }
12
+ export function resolveSourceControlPath(workspacePath) {
13
+ return resolve(workspacePath, "..", "..", "..");
14
+ }
15
+ export function syncWorkspaceRawSnapshot(workspacePath, sourcePath = resolveSourceControlPath(workspacePath)) {
16
+ ensureWorkspaceRawBinding(workspacePath);
17
+ const rawPath = resolveWorkspaceRawPath(workspacePath);
18
+ return projectRawSnapshot({
19
+ sourcePath,
20
+ destinationPath: rawPath,
21
+ workspacePath,
22
+ mode: "copy",
23
+ prune: true,
24
+ preserveTimestamps: true,
25
+ });
26
+ }
27
+ export function ensureWorkspaceRawBinding(workspacePath) {
28
+ const config = readInterfConfig(workspacePath);
29
+ if (!config)
30
+ return null;
31
+ if (config.source?.path === "./raw")
32
+ return config;
33
+ const nextConfig = {
34
+ ...config,
35
+ source: {
36
+ ...(config.source ?? {}),
37
+ path: "./raw",
38
+ },
39
+ };
40
+ writeFileSync(join(workspacePath, "interf.json"), `${JSON.stringify(nextConfig, null, 2)}\n`);
41
+ return nextConfig;
42
+ }
43
+ function filesMatch(sourcePath, targetPath) {
44
+ if (!existsSync(targetPath))
45
+ return false;
46
+ try {
47
+ const sourceStat = statSync(sourcePath);
48
+ const targetStat = statSync(targetPath);
49
+ return sourceStat.size === targetStat.size && sourceStat.mtimeMs === targetStat.mtimeMs;
50
+ }
51
+ catch {
52
+ return false;
53
+ }
54
+ }
55
+ function materializeRawSnapshotFile(sourcePath, targetPath, options) {
56
+ mkdirSync(dirname(targetPath), { recursive: true });
57
+ rmSync(targetPath, { force: true });
58
+ if (options.mode === "link-or-copy") {
59
+ try {
60
+ linkSync(sourcePath, targetPath);
61
+ return;
62
+ }
63
+ catch {
64
+ // fall through to copy
65
+ }
66
+ }
67
+ cpSync(sourcePath, targetPath, { preserveTimestamps: options.preserveTimestamps });
68
+ }
69
+ export function projectRawSnapshot(options) {
70
+ const discovery = discoverSourceFiles(options.sourcePath, options.workspacePath);
71
+ const expectedFiles = new Set(discovery.sourceFiles);
72
+ mkdirSync(options.destinationPath, { recursive: true });
73
+ let removed = 0;
74
+ if (options.prune !== false) {
75
+ for (const existingPath of listFilesRecursive(options.destinationPath)) {
76
+ const relativePath = relative(options.destinationPath, existingPath);
77
+ if (expectedFiles.has(relativePath))
78
+ continue;
79
+ rmSync(existingPath, { force: true });
80
+ removed += 1;
81
+ }
82
+ }
83
+ let copied = 0;
84
+ for (const relativePath of discovery.sourceFiles) {
85
+ const sourceFilePath = join(options.sourcePath, relativePath);
86
+ const targetFilePath = join(options.destinationPath, relativePath);
87
+ if (filesMatch(sourceFilePath, targetFilePath)) {
88
+ continue;
89
+ }
90
+ materializeRawSnapshotFile(sourceFilePath, targetFilePath, {
91
+ mode: options.mode ?? "copy",
92
+ preserveTimestamps: options.preserveTimestamps ?? true,
93
+ });
94
+ copied += 1;
95
+ }
96
+ return {
97
+ sourceTotal: discovery.totalCount,
98
+ copied,
99
+ removed,
100
+ };
101
+ }
102
+ //# sourceMappingURL=workspace-raw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-raw.js","sourceRoot":"","sources":["../../src/lib/workspace-raw.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,UAAU,EACV,QAAQ,EACR,SAAS,EACT,MAAM,EACN,QAAQ,EACR,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAWtD,MAAM,UAAU,uBAAuB,CACrC,aAAqB,EACrB,MAAM,GAAG,gBAAgB,CAAC,aAAa,CAAC;IAExC,MAAM,cAAc,GAAG,OAAO,MAAM,EAAE,MAAM,EAAE,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;QAC9F,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;QACpB,CAAC,CAAC,KAAK,CAAC;IACV,OAAO,OAAO,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,aAAqB;IAC5D,OAAO,OAAO,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,aAAqB,EACrB,UAAU,GAAG,wBAAwB,CAAC,aAAa,CAAC;IAEpD,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,uBAAuB,CAAC,aAAa,CAAC,CAAC;IACvD,OAAO,kBAAkB,CAAC;QACxB,UAAU;QACV,eAAe,EAAE,OAAO;QACxB,aAAa;QACb,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,IAAI;QACX,kBAAkB,EAAE,IAAI;KACzB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,aAAqB;IAC7D,MAAM,MAAM,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,KAAK,OAAO;QAAE,OAAO,MAAM,CAAC;IAEnD,MAAM,UAAU,GAAiB;QAC/B,GAAG,MAAM;QACT,MAAM,EAAE;YACN,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;YACxB,IAAI,EAAE,OAAO;SACd;KACF,CAAC;IAEF,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9F,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,UAAU,CAAC,UAAkB,EAAE,UAAkB;IACxD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAC;IAE1C,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;QACxC,OAAO,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,CAAC;IAC1F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,0BAA0B,CACjC,UAAkB,EAClB,UAAkB,EAClB,OAGC;IAED,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,MAAM,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpC,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAAC,MAAM,CAAC;YACP,uBAAuB;QACzB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;AACrF,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAOlC;IACC,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACjF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAErD,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAExD,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QAC5B,KAAK,MAAM,YAAY,IAAI,kBAAkB,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YACvE,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;YACrE,IAAI,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC;gBAAE,SAAS;YAC9C,MAAM,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IAED,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,YAAY,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC;QACjD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC9D,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAEnE,IAAI,UAAU,CAAC,cAAc,EAAE,cAAc,CAAC,EAAE,CAAC;YAC/C,SAAS;QACX,CAAC;QAED,0BAA0B,CAAC,cAAc,EAAE,cAAc,EAAE;YACzD,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,MAAM;YAC5B,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,IAAI,IAAI;SACvD,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,CAAC;IACd,CAAC;IAED,OAAO;QACL,WAAW,EAAE,SAAS,CAAC,UAAU;QACjC,MAAM;QACN,OAAO;KACR,CAAC;AACJ,CAAC"}