synorch 0.2.0 → 0.4.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +55 -1
- package/README.md +338 -28
- package/dist/application/doctor-service.d.ts +16 -0
- package/dist/application/doctor-service.d.ts.map +1 -1
- package/dist/application/doctor-service.js +230 -32
- package/dist/application/doctor-service.js.map +1 -1
- package/dist/application/generated-skill-doctor.d.ts +9 -0
- package/dist/application/generated-skill-doctor.d.ts.map +1 -0
- package/dist/application/generated-skill-doctor.js +433 -0
- package/dist/application/generated-skill-doctor.js.map +1 -0
- package/dist/application/project-discovery.d.ts +26 -1
- package/dist/application/project-discovery.d.ts.map +1 -1
- package/dist/application/project-discovery.js +99 -6
- package/dist/application/project-discovery.js.map +1 -1
- package/dist/application/safe-path.d.ts +19 -0
- package/dist/application/safe-path.d.ts.map +1 -0
- package/dist/application/safe-path.js +35 -0
- package/dist/application/safe-path.js.map +1 -0
- package/dist/application/size-ceiling.d.ts +15 -0
- package/dist/application/size-ceiling.d.ts.map +1 -0
- package/dist/application/size-ceiling.js +32 -0
- package/dist/application/size-ceiling.js.map +1 -0
- package/dist/application/structure-service.d.ts.map +1 -1
- package/dist/application/structure-service.js +10 -1
- package/dist/application/structure-service.js.map +1 -1
- package/dist/build-info.json +4 -0
- package/dist/cli.js +135 -18
- package/dist/cli.js.map +1 -1
- package/dist/domain/canonical-contracts.d.ts +69 -0
- package/dist/domain/canonical-contracts.d.ts.map +1 -0
- package/dist/domain/canonical-contracts.js +92 -0
- package/dist/domain/canonical-contracts.js.map +1 -0
- package/dist/domain/generated-skill.d.ts +55 -0
- package/dist/domain/generated-skill.d.ts.map +1 -0
- package/dist/domain/generated-skill.js +90 -0
- package/dist/domain/generated-skill.js.map +1 -0
- package/dist/domain/generation.d.ts +15 -2
- package/dist/domain/generation.d.ts.map +1 -1
- package/dist/domain/observation-ledger.d.ts +118 -0
- package/dist/domain/observation-ledger.d.ts.map +1 -0
- package/dist/domain/observation-ledger.js +183 -0
- package/dist/domain/observation-ledger.js.map +1 -0
- package/dist/domain/product.d.ts +1 -1
- package/dist/domain/product.d.ts.map +1 -1
- package/dist/domain/product.js +1 -1
- package/dist/domain/product.js.map +1 -1
- package/dist/domain/relative-path.d.ts +21 -0
- package/dist/domain/relative-path.d.ts.map +1 -0
- package/dist/domain/relative-path.js +43 -0
- package/dist/domain/relative-path.js.map +1 -0
- package/dist/domain/skill-packs.d.ts.map +1 -1
- package/dist/domain/skill-packs.js +1 -0
- package/dist/domain/skill-packs.js.map +1 -1
- package/dist/domain/suggest.d.ts +5 -0
- package/dist/domain/suggest.d.ts.map +1 -0
- package/dist/domain/suggest.js +32 -0
- package/dist/domain/suggest.js.map +1 -0
- package/dist/domain/zod-issues.d.ts +21 -0
- package/dist/domain/zod-issues.d.ts.map +1 -0
- package/dist/domain/zod-issues.js +27 -0
- package/dist/domain/zod-issues.js.map +1 -0
- package/dist/harness/auth/api-key.d.ts +13 -0
- package/dist/harness/auth/api-key.d.ts.map +1 -0
- package/dist/harness/auth/api-key.js +87 -0
- package/dist/harness/auth/api-key.js.map +1 -0
- package/dist/harness/auth/claude-bridge.d.ts +22 -0
- package/dist/harness/auth/claude-bridge.d.ts.map +1 -0
- package/dist/harness/auth/claude-bridge.js +92 -0
- package/dist/harness/auth/claude-bridge.js.map +1 -0
- package/dist/harness/auth/command.d.ts +17 -0
- package/dist/harness/auth/command.d.ts.map +1 -0
- package/dist/harness/auth/command.js +223 -0
- package/dist/harness/auth/command.js.map +1 -0
- package/dist/harness/auth/credential-store.d.ts +30 -0
- package/dist/harness/auth/credential-store.d.ts.map +1 -0
- package/dist/harness/auth/credential-store.js +270 -0
- package/dist/harness/auth/credential-store.js.map +1 -0
- package/dist/harness/auth/index.d.ts +13 -0
- package/dist/harness/auth/index.d.ts.map +1 -0
- package/dist/harness/auth/index.js +10 -0
- package/dist/harness/auth/index.js.map +1 -0
- package/dist/harness/auth/json-file.d.ts +8 -0
- package/dist/harness/auth/json-file.d.ts.map +1 -0
- package/dist/harness/auth/json-file.js +57 -0
- package/dist/harness/auth/json-file.js.map +1 -0
- package/dist/harness/auth/jwt.d.ts +11 -0
- package/dist/harness/auth/jwt.d.ts.map +1 -0
- package/dist/harness/auth/jwt.js +37 -0
- package/dist/harness/auth/jwt.js.map +1 -0
- package/dist/harness/auth/keychain.d.ts +39 -0
- package/dist/harness/auth/keychain.d.ts.map +1 -0
- package/dist/harness/auth/keychain.js +191 -0
- package/dist/harness/auth/keychain.js.map +1 -0
- package/dist/harness/auth/locks.d.ts +19 -0
- package/dist/harness/auth/locks.d.ts.map +1 -0
- package/dist/harness/auth/locks.js +102 -0
- package/dist/harness/auth/locks.js.map +1 -0
- package/dist/harness/auth/notices.d.ts +6 -0
- package/dist/harness/auth/notices.d.ts.map +1 -0
- package/dist/harness/auth/notices.js +29 -0
- package/dist/harness/auth/notices.js.map +1 -0
- package/dist/harness/auth/openai-chatgpt.d.ts +32 -0
- package/dist/harness/auth/openai-chatgpt.d.ts.map +1 -0
- package/dist/harness/auth/openai-chatgpt.js +446 -0
- package/dist/harness/auth/openai-chatgpt.js.map +1 -0
- package/dist/harness/auth/profile-state.d.ts +25 -0
- package/dist/harness/auth/profile-state.d.ts.map +1 -0
- package/dist/harness/auth/profile-state.js +77 -0
- package/dist/harness/auth/profile-state.js.map +1 -0
- package/dist/harness/auth/providers.d.ts +27 -0
- package/dist/harness/auth/providers.d.ts.map +1 -0
- package/dist/harness/auth/providers.js +66 -0
- package/dist/harness/auth/providers.js.map +1 -0
- package/dist/harness/auth/resolved-credential.d.ts +11 -0
- package/dist/harness/auth/resolved-credential.d.ts.map +1 -0
- package/dist/harness/auth/resolved-credential.js +35 -0
- package/dist/harness/auth/resolved-credential.js.map +1 -0
- package/dist/harness/cli/appearance.d.ts +28 -0
- package/dist/harness/cli/appearance.d.ts.map +1 -0
- package/dist/harness/cli/appearance.js +123 -0
- package/dist/harness/cli/appearance.js.map +1 -0
- package/dist/harness/cli/args.d.ts +429 -0
- package/dist/harness/cli/args.d.ts.map +1 -0
- package/dist/harness/cli/args.js +372 -0
- package/dist/harness/cli/args.js.map +1 -0
- package/dist/harness/cli/attachments.d.ts +44 -0
- package/dist/harness/cli/attachments.d.ts.map +1 -0
- package/dist/harness/cli/attachments.js +176 -0
- package/dist/harness/cli/attachments.js.map +1 -0
- package/dist/harness/cli/canonical.d.ts +64 -0
- package/dist/harness/cli/canonical.d.ts.map +1 -0
- package/dist/harness/cli/canonical.js +455 -0
- package/dist/harness/cli/canonical.js.map +1 -0
- package/dist/harness/cli/claude-native-approvals.d.ts +45 -0
- package/dist/harness/cli/claude-native-approvals.d.ts.map +1 -0
- package/dist/harness/cli/claude-native-approvals.js +183 -0
- package/dist/harness/cli/claude-native-approvals.js.map +1 -0
- package/dist/harness/cli/command-grants.d.ts +23 -0
- package/dist/harness/cli/command-grants.d.ts.map +1 -0
- package/dist/harness/cli/command-grants.js +76 -0
- package/dist/harness/cli/command-grants.js.map +1 -0
- package/dist/harness/cli/config-command.d.ts +98 -0
- package/dist/harness/cli/config-command.d.ts.map +1 -0
- package/dist/harness/cli/config-command.js +561 -0
- package/dist/harness/cli/config-command.js.map +1 -0
- package/dist/harness/cli/config.d.ts +429 -0
- package/dist/harness/cli/config.d.ts.map +1 -0
- package/dist/harness/cli/config.js +504 -0
- package/dist/harness/cli/config.js.map +1 -0
- package/dist/harness/cli/conversation.d.ts +35 -0
- package/dist/harness/cli/conversation.d.ts.map +1 -0
- package/dist/harness/cli/conversation.js +3755 -0
- package/dist/harness/cli/conversation.js.map +1 -0
- package/dist/harness/cli/doctor.d.ts +32 -0
- package/dist/harness/cli/doctor.d.ts.map +1 -0
- package/dist/harness/cli/doctor.js +329 -0
- package/dist/harness/cli/doctor.js.map +1 -0
- package/dist/harness/cli/effort-command.d.ts +41 -0
- package/dist/harness/cli/effort-command.d.ts.map +1 -0
- package/dist/harness/cli/effort-command.js +133 -0
- package/dist/harness/cli/effort-command.js.map +1 -0
- package/dist/harness/cli/extensions/agents.d.ts +40 -0
- package/dist/harness/cli/extensions/agents.d.ts.map +1 -0
- package/dist/harness/cli/extensions/agents.js +66 -0
- package/dist/harness/cli/extensions/agents.js.map +1 -0
- package/dist/harness/cli/extensions/catalog.d.ts +134 -0
- package/dist/harness/cli/extensions/catalog.d.ts.map +1 -0
- package/dist/harness/cli/extensions/catalog.js +213 -0
- package/dist/harness/cli/extensions/catalog.js.map +1 -0
- package/dist/harness/cli/extensions/claude-home.d.ts +33 -0
- package/dist/harness/cli/extensions/claude-home.d.ts.map +1 -0
- package/dist/harness/cli/extensions/claude-home.js +78 -0
- package/dist/harness/cli/extensions/claude-home.js.map +1 -0
- package/dist/harness/cli/extensions/controller.d.ts +51 -0
- package/dist/harness/cli/extensions/controller.d.ts.map +1 -0
- package/dist/harness/cli/extensions/controller.js +67 -0
- package/dist/harness/cli/extensions/controller.js.map +1 -0
- package/dist/harness/cli/extensions/hooks.d.ts +164 -0
- package/dist/harness/cli/extensions/hooks.d.ts.map +1 -0
- package/dist/harness/cli/extensions/hooks.js +442 -0
- package/dist/harness/cli/extensions/hooks.js.map +1 -0
- package/dist/harness/cli/extensions/index.d.ts +10 -0
- package/dist/harness/cli/extensions/index.d.ts.map +1 -0
- package/dist/harness/cli/extensions/index.js +10 -0
- package/dist/harness/cli/extensions/index.js.map +1 -0
- package/dist/harness/cli/extensions/markdown.d.ts +46 -0
- package/dist/harness/cli/extensions/markdown.d.ts.map +1 -0
- package/dist/harness/cli/extensions/markdown.js +139 -0
- package/dist/harness/cli/extensions/markdown.js.map +1 -0
- package/dist/harness/cli/extensions/plugins.d.ts +160 -0
- package/dist/harness/cli/extensions/plugins.d.ts.map +1 -0
- package/dist/harness/cli/extensions/plugins.js +645 -0
- package/dist/harness/cli/extensions/plugins.js.map +1 -0
- package/dist/harness/cli/extensions/tool-hooks.d.ts +28 -0
- package/dist/harness/cli/extensions/tool-hooks.d.ts.map +1 -0
- package/dist/harness/cli/extensions/tool-hooks.js +63 -0
- package/dist/harness/cli/extensions/tool-hooks.js.map +1 -0
- package/dist/harness/cli/extensions-command.d.ts +64 -0
- package/dist/harness/cli/extensions-command.d.ts.map +1 -0
- package/dist/harness/cli/extensions-command.js +639 -0
- package/dist/harness/cli/extensions-command.js.map +1 -0
- package/dist/harness/cli/help.d.ts +9 -0
- package/dist/harness/cli/help.d.ts.map +1 -0
- package/dist/harness/cli/help.js +191 -0
- package/dist/harness/cli/help.js.map +1 -0
- package/dist/harness/cli/index.d.ts +52 -0
- package/dist/harness/cli/index.d.ts.map +1 -0
- package/dist/harness/cli/index.js +297 -0
- package/dist/harness/cli/index.js.map +1 -0
- package/dist/harness/cli/inspect.d.ts +40 -0
- package/dist/harness/cli/inspect.d.ts.map +1 -0
- package/dist/harness/cli/inspect.js +185 -0
- package/dist/harness/cli/inspect.js.map +1 -0
- package/dist/harness/cli/mcp-command.d.ts +61 -0
- package/dist/harness/cli/mcp-command.d.ts.map +1 -0
- package/dist/harness/cli/mcp-command.js +519 -0
- package/dist/harness/cli/mcp-command.js.map +1 -0
- package/dist/harness/cli/memory-desk.d.ts +28 -0
- package/dist/harness/cli/memory-desk.d.ts.map +1 -0
- package/dist/harness/cli/memory-desk.js +275 -0
- package/dist/harness/cli/memory-desk.js.map +1 -0
- package/dist/harness/cli/model-picker.d.ts +44 -0
- package/dist/harness/cli/model-picker.d.ts.map +1 -0
- package/dist/harness/cli/model-picker.js +267 -0
- package/dist/harness/cli/model-picker.js.map +1 -0
- package/dist/harness/cli/onboarding.d.ts +29 -0
- package/dist/harness/cli/onboarding.d.ts.map +1 -0
- package/dist/harness/cli/onboarding.js +101 -0
- package/dist/harness/cli/onboarding.js.map +1 -0
- package/dist/harness/cli/orchestrate-tool.d.ts +60 -0
- package/dist/harness/cli/orchestrate-tool.d.ts.map +1 -0
- package/dist/harness/cli/orchestrate-tool.js +167 -0
- package/dist/harness/cli/orchestrate-tool.js.map +1 -0
- package/dist/harness/cli/orchestration-view.d.ts +57 -0
- package/dist/harness/cli/orchestration-view.d.ts.map +1 -0
- package/dist/harness/cli/orchestration-view.js +371 -0
- package/dist/harness/cli/orchestration-view.js.map +1 -0
- package/dist/harness/cli/outcome.d.ts +11 -0
- package/dist/harness/cli/outcome.d.ts.map +1 -0
- package/dist/harness/cli/outcome.js +70 -0
- package/dist/harness/cli/outcome.js.map +1 -0
- package/dist/harness/cli/panels/common.d.ts +30 -0
- package/dist/harness/cli/panels/common.d.ts.map +1 -0
- package/dist/harness/cli/panels/common.js +143 -0
- package/dist/harness/cli/panels/common.js.map +1 -0
- package/dist/harness/cli/panels/mcp.d.ts +18 -0
- package/dist/harness/cli/panels/mcp.d.ts.map +1 -0
- package/dist/harness/cli/panels/mcp.js +132 -0
- package/dist/harness/cli/panels/mcp.js.map +1 -0
- package/dist/harness/cli/panels/plugins.d.ts +8 -0
- package/dist/harness/cli/panels/plugins.d.ts.map +1 -0
- package/dist/harness/cli/panels/plugins.js +114 -0
- package/dist/harness/cli/panels/plugins.js.map +1 -0
- package/dist/harness/cli/panels/session.d.ts +54 -0
- package/dist/harness/cli/panels/session.d.ts.map +1 -0
- package/dist/harness/cli/panels/session.js +221 -0
- package/dist/harness/cli/panels/session.js.map +1 -0
- package/dist/harness/cli/panels/skills.d.ts +16 -0
- package/dist/harness/cli/panels/skills.d.ts.map +1 -0
- package/dist/harness/cli/panels/skills.js +146 -0
- package/dist/harness/cli/panels/skills.js.map +1 -0
- package/dist/harness/cli/project-profile.d.ts +87 -0
- package/dist/harness/cli/project-profile.d.ts.map +1 -0
- package/dist/harness/cli/project-profile.js +709 -0
- package/dist/harness/cli/project-profile.js.map +1 -0
- package/dist/harness/cli/project-scope.d.ts +2 -0
- package/dist/harness/cli/project-scope.d.ts.map +1 -0
- package/dist/harness/cli/project-scope.js +55 -0
- package/dist/harness/cli/project-scope.js.map +1 -0
- package/dist/harness/cli/renderers.d.ts +75 -0
- package/dist/harness/cli/renderers.d.ts.map +1 -0
- package/dist/harness/cli/renderers.js +162 -0
- package/dist/harness/cli/renderers.js.map +1 -0
- package/dist/harness/cli/rewind.d.ts +54 -0
- package/dist/harness/cli/rewind.d.ts.map +1 -0
- package/dist/harness/cli/rewind.js +80 -0
- package/dist/harness/cli/rewind.js.map +1 -0
- package/dist/harness/cli/role-policy.d.ts +8 -0
- package/dist/harness/cli/role-policy.d.ts.map +1 -0
- package/dist/harness/cli/role-policy.js +53 -0
- package/dist/harness/cli/role-policy.js.map +1 -0
- package/dist/harness/cli/run-summary.d.ts +16 -0
- package/dist/harness/cli/run-summary.d.ts.map +1 -0
- package/dist/harness/cli/run-summary.js +105 -0
- package/dist/harness/cli/run-summary.js.map +1 -0
- package/dist/harness/cli/runtime.d.ts +182 -0
- package/dist/harness/cli/runtime.d.ts.map +1 -0
- package/dist/harness/cli/runtime.js +999 -0
- package/dist/harness/cli/runtime.js.map +1 -0
- package/dist/harness/cli/scripted-script.d.ts +50 -0
- package/dist/harness/cli/scripted-script.d.ts.map +1 -0
- package/dist/harness/cli/scripted-script.js +110 -0
- package/dist/harness/cli/scripted-script.js.map +1 -0
- package/dist/harness/cli/session-git.d.ts +76 -0
- package/dist/harness/cli/session-git.d.ts.map +1 -0
- package/dist/harness/cli/session-git.js +146 -0
- package/dist/harness/cli/session-git.js.map +1 -0
- package/dist/harness/cli/session.d.ts +22 -0
- package/dist/harness/cli/session.d.ts.map +1 -0
- package/dist/harness/cli/session.js +203 -0
- package/dist/harness/cli/session.js.map +1 -0
- package/dist/harness/cli/slash-commands.d.ts +85 -0
- package/dist/harness/cli/slash-commands.d.ts.map +1 -0
- package/dist/harness/cli/slash-commands.js +114 -0
- package/dist/harness/cli/slash-commands.js.map +1 -0
- package/dist/harness/cli/startup-notices.d.ts +32 -0
- package/dist/harness/cli/startup-notices.d.ts.map +1 -0
- package/dist/harness/cli/startup-notices.js +93 -0
- package/dist/harness/cli/startup-notices.js.map +1 -0
- package/dist/harness/cli/terminal.d.ts +32 -0
- package/dist/harness/cli/terminal.d.ts.map +1 -0
- package/dist/harness/cli/terminal.js +21 -0
- package/dist/harness/cli/terminal.js.map +1 -0
- package/dist/harness/cli/transparency.d.ts +39 -0
- package/dist/harness/cli/transparency.d.ts.map +1 -0
- package/dist/harness/cli/transparency.js +491 -0
- package/dist/harness/cli/transparency.js.map +1 -0
- package/dist/harness/cli/trust.d.ts +40 -0
- package/dist/harness/cli/trust.d.ts.map +1 -0
- package/dist/harness/cli/trust.js +133 -0
- package/dist/harness/cli/trust.js.map +1 -0
- package/dist/harness/cli/usage-stats.d.ts +57 -0
- package/dist/harness/cli/usage-stats.d.ts.map +1 -0
- package/dist/harness/cli/usage-stats.js +341 -0
- package/dist/harness/cli/usage-stats.js.map +1 -0
- package/dist/harness/context/compaction.d.ts +69 -0
- package/dist/harness/context/compaction.d.ts.map +1 -0
- package/dist/harness/context/compaction.js +149 -0
- package/dist/harness/context/compaction.js.map +1 -0
- package/dist/harness/context/context-builder.d.ts +76 -0
- package/dist/harness/context/context-builder.d.ts.map +1 -0
- package/dist/harness/context/context-builder.js +367 -0
- package/dist/harness/context/context-builder.js.map +1 -0
- package/dist/harness/context/history.d.ts +31 -0
- package/dist/harness/context/history.d.ts.map +1 -0
- package/dist/harness/context/history.js +105 -0
- package/dist/harness/context/history.js.map +1 -0
- package/dist/harness/context/index.d.ts +11 -0
- package/dist/harness/context/index.d.ts.map +1 -0
- package/dist/harness/context/index.js +9 -0
- package/dist/harness/context/index.js.map +1 -0
- package/dist/harness/context/instructions.d.ts +30 -0
- package/dist/harness/context/instructions.d.ts.map +1 -0
- package/dist/harness/context/instructions.js +82 -0
- package/dist/harness/context/instructions.js.map +1 -0
- package/dist/harness/context/model-view.d.ts +46 -0
- package/dist/harness/context/model-view.d.ts.map +1 -0
- package/dist/harness/context/model-view.js +136 -0
- package/dist/harness/context/model-view.js.map +1 -0
- package/dist/harness/context/scope.d.ts +9 -0
- package/dist/harness/context/scope.d.ts.map +1 -0
- package/dist/harness/context/scope.js +50 -0
- package/dist/harness/context/scope.js.map +1 -0
- package/dist/harness/context/skills.d.ts +75 -0
- package/dist/harness/context/skills.d.ts.map +1 -0
- package/dist/harness/context/skills.js +109 -0
- package/dist/harness/context/skills.js.map +1 -0
- package/dist/harness/context/tokens.d.ts +10 -0
- package/dist/harness/context/tokens.d.ts.map +1 -0
- package/dist/harness/context/tokens.js +39 -0
- package/dist/harness/context/tokens.js.map +1 -0
- package/dist/harness/contracts/auth.d.ts +214 -0
- package/dist/harness/contracts/auth.d.ts.map +1 -0
- package/dist/harness/contracts/auth.js +120 -0
- package/dist/harness/contracts/auth.js.map +1 -0
- package/dist/harness/contracts/choice.d.ts +115 -0
- package/dist/harness/contracts/choice.d.ts.map +1 -0
- package/dist/harness/contracts/choice.js +115 -0
- package/dist/harness/contracts/choice.js.map +1 -0
- package/dist/harness/contracts/common.d.ts +119 -0
- package/dist/harness/contracts/common.d.ts.map +1 -0
- package/dist/harness/contracts/common.js +66 -0
- package/dist/harness/contracts/common.js.map +1 -0
- package/dist/harness/contracts/digest.d.ts +59 -0
- package/dist/harness/contracts/digest.d.ts.map +1 -0
- package/dist/harness/contracts/digest.js +88 -0
- package/dist/harness/contracts/digest.js.map +1 -0
- package/dist/harness/contracts/errors.d.ts +70 -0
- package/dist/harness/contracts/errors.d.ts.map +1 -0
- package/dist/harness/contracts/errors.js +87 -0
- package/dist/harness/contracts/errors.js.map +1 -0
- package/dist/harness/contracts/events.d.ts +3094 -0
- package/dist/harness/contracts/events.d.ts.map +1 -0
- package/dist/harness/contracts/events.js +426 -0
- package/dist/harness/contracts/events.js.map +1 -0
- package/dist/harness/contracts/evidence.d.ts +286 -0
- package/dist/harness/contracts/evidence.d.ts.map +1 -0
- package/dist/harness/contracts/evidence.js +234 -0
- package/dist/harness/contracts/evidence.js.map +1 -0
- package/dist/harness/contracts/ids.d.ts +77 -0
- package/dist/harness/contracts/ids.d.ts.map +1 -0
- package/dist/harness/contracts/ids.js +126 -0
- package/dist/harness/contracts/ids.js.map +1 -0
- package/dist/harness/contracts/index.d.ts +23 -0
- package/dist/harness/contracts/index.d.ts.map +1 -0
- package/dist/harness/contracts/index.js +23 -0
- package/dist/harness/contracts/index.js.map +1 -0
- package/dist/harness/contracts/jsonl.d.ts +3386 -0
- package/dist/harness/contracts/jsonl.d.ts.map +1 -0
- package/dist/harness/contracts/jsonl.js +87 -0
- package/dist/harness/contracts/jsonl.js.map +1 -0
- package/dist/harness/contracts/memory.d.ts +271 -0
- package/dist/harness/contracts/memory.d.ts.map +1 -0
- package/dist/harness/contracts/memory.js +152 -0
- package/dist/harness/contracts/memory.js.map +1 -0
- package/dist/harness/contracts/model.d.ts +1201 -0
- package/dist/harness/contracts/model.d.ts.map +1 -0
- package/dist/harness/contracts/model.js +386 -0
- package/dist/harness/contracts/model.js.map +1 -0
- package/dist/harness/contracts/packets.d.ts +945 -0
- package/dist/harness/contracts/packets.d.ts.map +1 -0
- package/dist/harness/contracts/packets.js +535 -0
- package/dist/harness/contracts/packets.js.map +1 -0
- package/dist/harness/contracts/panel.d.ts +140 -0
- package/dist/harness/contracts/panel.d.ts.map +1 -0
- package/dist/harness/contracts/panel.js +19 -0
- package/dist/harness/contracts/panel.js.map +1 -0
- package/dist/harness/contracts/paths.d.ts +58 -0
- package/dist/harness/contracts/paths.d.ts.map +1 -0
- package/dist/harness/contracts/paths.js +204 -0
- package/dist/harness/contracts/paths.js.map +1 -0
- package/dist/harness/contracts/policy.d.ts +459 -0
- package/dist/harness/contracts/policy.d.ts.map +1 -0
- package/dist/harness/contracts/policy.js +338 -0
- package/dist/harness/contracts/policy.js.map +1 -0
- package/dist/harness/contracts/projection.d.ts +111 -0
- package/dist/harness/contracts/projection.d.ts.map +1 -0
- package/dist/harness/contracts/projection.js +2 -0
- package/dist/harness/contracts/projection.js.map +1 -0
- package/dist/harness/contracts/renderer.d.ts +291 -0
- package/dist/harness/contracts/renderer.d.ts.map +1 -0
- package/dist/harness/contracts/renderer.js +36 -0
- package/dist/harness/contracts/renderer.js.map +1 -0
- package/dist/harness/contracts/roles.d.ts +28 -0
- package/dist/harness/contracts/roles.d.ts.map +1 -0
- package/dist/harness/contracts/roles.js +36 -0
- package/dist/harness/contracts/roles.js.map +1 -0
- package/dist/harness/contracts/runtime.d.ts +283 -0
- package/dist/harness/contracts/runtime.d.ts.map +1 -0
- package/dist/harness/contracts/runtime.js +13 -0
- package/dist/harness/contracts/runtime.js.map +1 -0
- package/dist/harness/contracts/state.d.ts +124 -0
- package/dist/harness/contracts/state.d.ts.map +1 -0
- package/dist/harness/contracts/state.js +172 -0
- package/dist/harness/contracts/state.js.map +1 -0
- package/dist/harness/contracts/store.d.ts +117 -0
- package/dist/harness/contracts/store.d.ts.map +1 -0
- package/dist/harness/contracts/store.js +54 -0
- package/dist/harness/contracts/store.js.map +1 -0
- package/dist/harness/contracts/tools.d.ts +296 -0
- package/dist/harness/contracts/tools.d.ts.map +1 -0
- package/dist/harness/contracts/tools.js +117 -0
- package/dist/harness/contracts/tools.js.map +1 -0
- package/dist/harness/contracts/views.d.ts +468 -0
- package/dist/harness/contracts/views.d.ts.map +1 -0
- package/dist/harness/contracts/views.js +2 -0
- package/dist/harness/contracts/views.js.map +1 -0
- package/dist/harness/core/driver.d.ts +53 -0
- package/dist/harness/core/driver.d.ts.map +1 -0
- package/dist/harness/core/driver.js +566 -0
- package/dist/harness/core/driver.js.map +1 -0
- package/dist/harness/core/envelope.d.ts +11 -0
- package/dist/harness/core/envelope.d.ts.map +1 -0
- package/dist/harness/core/envelope.js +35 -0
- package/dist/harness/core/envelope.js.map +1 -0
- package/dist/harness/core/index.d.ts +7 -0
- package/dist/harness/core/index.d.ts.map +1 -0
- package/dist/harness/core/index.js +5 -0
- package/dist/harness/core/index.js.map +1 -0
- package/dist/harness/core/projection.d.ts +10 -0
- package/dist/harness/core/projection.d.ts.map +1 -0
- package/dist/harness/core/projection.js +268 -0
- package/dist/harness/core/projection.js.map +1 -0
- package/dist/harness/core/recovery.d.ts +14 -0
- package/dist/harness/core/recovery.d.ts.map +1 -0
- package/dist/harness/core/recovery.js +115 -0
- package/dist/harness/core/recovery.js.map +1 -0
- package/dist/harness/core/stream.d.ts +23 -0
- package/dist/harness/core/stream.d.ts.map +1 -0
- package/dist/harness/core/stream.js +102 -0
- package/dist/harness/core/stream.js.map +1 -0
- package/dist/harness/core/testing.d.ts +80 -0
- package/dist/harness/core/testing.d.ts.map +1 -0
- package/dist/harness/core/testing.js +258 -0
- package/dist/harness/core/testing.js.map +1 -0
- package/dist/harness/mcp/approvals.d.ts +14 -0
- package/dist/harness/mcp/approvals.d.ts.map +1 -0
- package/dist/harness/mcp/approvals.js +60 -0
- package/dist/harness/mcp/approvals.js.map +1 -0
- package/dist/harness/mcp/client.d.ts +74 -0
- package/dist/harness/mcp/client.d.ts.map +1 -0
- package/dist/harness/mcp/client.js +214 -0
- package/dist/harness/mcp/client.js.map +1 -0
- package/dist/harness/mcp/config.d.ts +156 -0
- package/dist/harness/mcp/config.d.ts.map +1 -0
- package/dist/harness/mcp/config.js +180 -0
- package/dist/harness/mcp/config.js.map +1 -0
- package/dist/harness/mcp/errors.d.ts +24 -0
- package/dist/harness/mcp/errors.d.ts.map +1 -0
- package/dist/harness/mcp/errors.js +67 -0
- package/dist/harness/mcp/errors.js.map +1 -0
- package/dist/harness/mcp/index.d.ts +9 -0
- package/dist/harness/mcp/index.d.ts.map +1 -0
- package/dist/harness/mcp/index.js +9 -0
- package/dist/harness/mcp/index.js.map +1 -0
- package/dist/harness/mcp/manager.d.ts +115 -0
- package/dist/harness/mcp/manager.d.ts.map +1 -0
- package/dist/harness/mcp/manager.js +361 -0
- package/dist/harness/mcp/manager.js.map +1 -0
- package/dist/harness/mcp/oauth.d.ts +54 -0
- package/dist/harness/mcp/oauth.d.ts.map +1 -0
- package/dist/harness/mcp/oauth.js +253 -0
- package/dist/harness/mcp/oauth.js.map +1 -0
- package/dist/harness/mcp/tools.d.ts +24 -0
- package/dist/harness/mcp/tools.d.ts.map +1 -0
- package/dist/harness/mcp/tools.js +142 -0
- package/dist/harness/mcp/tools.js.map +1 -0
- package/dist/harness/memory/bootstrap.d.ts +55 -0
- package/dist/harness/memory/bootstrap.d.ts.map +1 -0
- package/dist/harness/memory/bootstrap.js +124 -0
- package/dist/harness/memory/bootstrap.js.map +1 -0
- package/dist/harness/memory/desk.d.ts +74 -0
- package/dist/harness/memory/desk.d.ts.map +1 -0
- package/dist/harness/memory/desk.js +211 -0
- package/dist/harness/memory/desk.js.map +1 -0
- package/dist/harness/memory/graph.d.ts +24 -0
- package/dist/harness/memory/graph.d.ts.map +1 -0
- package/dist/harness/memory/graph.js +92 -0
- package/dist/harness/memory/graph.js.map +1 -0
- package/dist/harness/memory/index.d.ts +12 -0
- package/dist/harness/memory/index.d.ts.map +1 -0
- package/dist/harness/memory/index.js +10 -0
- package/dist/harness/memory/index.js.map +1 -0
- package/dist/harness/memory/markdown-memory-store.d.ts +122 -0
- package/dist/harness/memory/markdown-memory-store.d.ts.map +1 -0
- package/dist/harness/memory/markdown-memory-store.js +419 -0
- package/dist/harness/memory/markdown-memory-store.js.map +1 -0
- package/dist/harness/memory/memory-command.d.ts +22 -0
- package/dist/harness/memory/memory-command.d.ts.map +1 -0
- package/dist/harness/memory/memory-command.js +335 -0
- package/dist/harness/memory/memory-command.js.map +1 -0
- package/dist/harness/memory/memory-index.d.ts +71 -0
- package/dist/harness/memory/memory-index.d.ts.map +1 -0
- package/dist/harness/memory/memory-index.js +206 -0
- package/dist/harness/memory/memory-index.js.map +1 -0
- package/dist/harness/memory/note-format.d.ts +20 -0
- package/dist/harness/memory/note-format.d.ts.map +1 -0
- package/dist/harness/memory/note-format.js +69 -0
- package/dist/harness/memory/note-format.js.map +1 -0
- package/dist/harness/memory/obsidian.d.ts +14 -0
- package/dist/harness/memory/obsidian.d.ts.map +1 -0
- package/dist/harness/memory/obsidian.js +64 -0
- package/dist/harness/memory/obsidian.js.map +1 -0
- package/dist/harness/memory/redaction.d.ts +15 -0
- package/dist/harness/memory/redaction.d.ts.map +1 -0
- package/dist/harness/memory/redaction.js +64 -0
- package/dist/harness/memory/redaction.js.map +1 -0
- package/dist/harness/memory/relations.d.ts +29 -0
- package/dist/harness/memory/relations.d.ts.map +1 -0
- package/dist/harness/memory/relations.js +117 -0
- package/dist/harness/memory/relations.js.map +1 -0
- package/dist/harness/memory/vault.d.ts +35 -0
- package/dist/harness/memory/vault.d.ts.map +1 -0
- package/dist/harness/memory/vault.js +194 -0
- package/dist/harness/memory/vault.js.map +1 -0
- package/dist/harness/orchestration/approval.d.ts +29 -0
- package/dist/harness/orchestration/approval.d.ts.map +1 -0
- package/dist/harness/orchestration/approval.js +86 -0
- package/dist/harness/orchestration/approval.js.map +1 -0
- package/dist/harness/orchestration/artifact-review.d.ts +219 -0
- package/dist/harness/orchestration/artifact-review.d.ts.map +1 -0
- package/dist/harness/orchestration/artifact-review.js +319 -0
- package/dist/harness/orchestration/artifact-review.js.map +1 -0
- package/dist/harness/orchestration/attempt-log.d.ts +53 -0
- package/dist/harness/orchestration/attempt-log.d.ts.map +1 -0
- package/dist/harness/orchestration/attempt-log.js +138 -0
- package/dist/harness/orchestration/attempt-log.js.map +1 -0
- package/dist/harness/orchestration/budget.d.ts +110 -0
- package/dist/harness/orchestration/budget.d.ts.map +1 -0
- package/dist/harness/orchestration/budget.js +197 -0
- package/dist/harness/orchestration/budget.js.map +1 -0
- package/dist/harness/orchestration/capabilities.d.ts +6 -0
- package/dist/harness/orchestration/capabilities.d.ts.map +1 -0
- package/dist/harness/orchestration/capabilities.js +80 -0
- package/dist/harness/orchestration/capabilities.js.map +1 -0
- package/dist/harness/orchestration/claims.d.ts +148 -0
- package/dist/harness/orchestration/claims.d.ts.map +1 -0
- package/dist/harness/orchestration/claims.js +64 -0
- package/dist/harness/orchestration/claims.js.map +1 -0
- package/dist/harness/orchestration/control-plane.d.ts +18 -0
- package/dist/harness/orchestration/control-plane.d.ts.map +1 -0
- package/dist/harness/orchestration/control-plane.js +74 -0
- package/dist/harness/orchestration/control-plane.js.map +1 -0
- package/dist/harness/orchestration/coordinator.d.ts +132 -0
- package/dist/harness/orchestration/coordinator.d.ts.map +1 -0
- package/dist/harness/orchestration/coordinator.js +1628 -0
- package/dist/harness/orchestration/coordinator.js.map +1 -0
- package/dist/harness/orchestration/delegation.d.ts +80 -0
- package/dist/harness/orchestration/delegation.d.ts.map +1 -0
- package/dist/harness/orchestration/delegation.js +81 -0
- package/dist/harness/orchestration/delegation.js.map +1 -0
- package/dist/harness/orchestration/evidence.d.ts +124 -0
- package/dist/harness/orchestration/evidence.d.ts.map +1 -0
- package/dist/harness/orchestration/evidence.js +576 -0
- package/dist/harness/orchestration/evidence.js.map +1 -0
- package/dist/harness/orchestration/factories.d.ts +13 -0
- package/dist/harness/orchestration/factories.d.ts.map +1 -0
- package/dist/harness/orchestration/factories.js +20 -0
- package/dist/harness/orchestration/factories.js.map +1 -0
- package/dist/harness/orchestration/git.d.ts +77 -0
- package/dist/harness/orchestration/git.d.ts.map +1 -0
- package/dist/harness/orchestration/git.js +214 -0
- package/dist/harness/orchestration/git.js.map +1 -0
- package/dist/harness/orchestration/index.d.ts +25 -0
- package/dist/harness/orchestration/index.d.ts.map +1 -0
- package/dist/harness/orchestration/index.js +23 -0
- package/dist/harness/orchestration/index.js.map +1 -0
- package/dist/harness/orchestration/isolation.d.ts +181 -0
- package/dist/harness/orchestration/isolation.d.ts.map +1 -0
- package/dist/harness/orchestration/isolation.js +1357 -0
- package/dist/harness/orchestration/isolation.js.map +1 -0
- package/dist/harness/orchestration/paths.d.ts +18 -0
- package/dist/harness/orchestration/paths.d.ts.map +1 -0
- package/dist/harness/orchestration/paths.js +56 -0
- package/dist/harness/orchestration/paths.js.map +1 -0
- package/dist/harness/orchestration/plan.d.ts +219 -0
- package/dist/harness/orchestration/plan.d.ts.map +1 -0
- package/dist/harness/orchestration/plan.js +537 -0
- package/dist/harness/orchestration/plan.js.map +1 -0
- package/dist/harness/orchestration/planner.d.ts +137 -0
- package/dist/harness/orchestration/planner.d.ts.map +1 -0
- package/dist/harness/orchestration/planner.js +162 -0
- package/dist/harness/orchestration/planner.js.map +1 -0
- package/dist/harness/orchestration/recorder.d.ts +23 -0
- package/dist/harness/orchestration/recorder.d.ts.map +1 -0
- package/dist/harness/orchestration/recorder.js +50 -0
- package/dist/harness/orchestration/recorder.js.map +1 -0
- package/dist/harness/orchestration/scheduler.d.ts +40 -0
- package/dist/harness/orchestration/scheduler.d.ts.map +1 -0
- package/dist/harness/orchestration/scheduler.js +157 -0
- package/dist/harness/orchestration/scheduler.js.map +1 -0
- package/dist/harness/orchestration/testing.d.ts +233 -0
- package/dist/harness/orchestration/testing.d.ts.map +1 -0
- package/dist/harness/orchestration/testing.js +734 -0
- package/dist/harness/orchestration/testing.js.map +1 -0
- package/dist/harness/orchestration/verification-preflight.d.ts +46 -0
- package/dist/harness/orchestration/verification-preflight.d.ts.map +1 -0
- package/dist/harness/orchestration/verification-preflight.js +104 -0
- package/dist/harness/orchestration/verification-preflight.js.map +1 -0
- package/dist/harness/orchestration/worker-control.d.ts +64 -0
- package/dist/harness/orchestration/worker-control.d.ts.map +1 -0
- package/dist/harness/orchestration/worker-control.js +199 -0
- package/dist/harness/orchestration/worker-control.js.map +1 -0
- package/dist/harness/orchestration/worker-manager.d.ts +225 -0
- package/dist/harness/orchestration/worker-manager.d.ts.map +1 -0
- package/dist/harness/orchestration/worker-manager.js +1347 -0
- package/dist/harness/orchestration/worker-manager.js.map +1 -0
- package/dist/harness/orchestration/workspace-digest.d.ts +39 -0
- package/dist/harness/orchestration/workspace-digest.d.ts.map +1 -0
- package/dist/harness/orchestration/workspace-digest.js +147 -0
- package/dist/harness/orchestration/workspace-digest.js.map +1 -0
- package/dist/harness/policy/approval-broker.d.ts +13 -0
- package/dist/harness/policy/approval-broker.d.ts.map +1 -0
- package/dist/harness/policy/approval-broker.js +26 -0
- package/dist/harness/policy/approval-broker.js.map +1 -0
- package/dist/harness/policy/command-classifier.d.ts +29 -0
- package/dist/harness/policy/command-classifier.d.ts.map +1 -0
- package/dist/harness/policy/command-classifier.js +459 -0
- package/dist/harness/policy/command-classifier.js.map +1 -0
- package/dist/harness/policy/command-rules.d.ts +56 -0
- package/dist/harness/policy/command-rules.d.ts.map +1 -0
- package/dist/harness/policy/command-rules.js +588 -0
- package/dist/harness/policy/command-rules.js.map +1 -0
- package/dist/harness/policy/config.d.ts +27 -0
- package/dist/harness/policy/config.d.ts.map +1 -0
- package/dist/harness/policy/config.js +37 -0
- package/dist/harness/policy/config.js.map +1 -0
- package/dist/harness/policy/engine.d.ts +67 -0
- package/dist/harness/policy/engine.d.ts.map +1 -0
- package/dist/harness/policy/engine.js +483 -0
- package/dist/harness/policy/engine.js.map +1 -0
- package/dist/harness/policy/exec-allowlist.d.ts +66 -0
- package/dist/harness/policy/exec-allowlist.d.ts.map +1 -0
- package/dist/harness/policy/exec-allowlist.js +449 -0
- package/dist/harness/policy/exec-allowlist.js.map +1 -0
- package/dist/harness/policy/index.d.ts +10 -0
- package/dist/harness/policy/index.d.ts.map +1 -0
- package/dist/harness/policy/index.js +8 -0
- package/dist/harness/policy/index.js.map +1 -0
- package/dist/harness/policy/secret-patterns.d.ts +12 -0
- package/dist/harness/policy/secret-patterns.d.ts.map +1 -0
- package/dist/harness/policy/secret-patterns.js +48 -0
- package/dist/harness/policy/secret-patterns.js.map +1 -0
- package/dist/harness/policy/shell-parser.d.ts +40 -0
- package/dist/harness/policy/shell-parser.d.ts.map +1 -0
- package/dist/harness/policy/shell-parser.js +278 -0
- package/dist/harness/policy/shell-parser.js.map +1 -0
- package/dist/harness/policy/workspace-trust.d.ts +37 -0
- package/dist/harness/policy/workspace-trust.d.ts.map +1 -0
- package/dist/harness/policy/workspace-trust.js +164 -0
- package/dist/harness/policy/workspace-trust.js.map +1 -0
- package/dist/harness/providers/anthropic-messages.d.ts +48 -0
- package/dist/harness/providers/anthropic-messages.d.ts.map +1 -0
- package/dist/harness/providers/anthropic-messages.js +360 -0
- package/dist/harness/providers/anthropic-messages.js.map +1 -0
- package/dist/harness/providers/assembler.d.ts +29 -0
- package/dist/harness/providers/assembler.d.ts.map +1 -0
- package/dist/harness/providers/assembler.js +130 -0
- package/dist/harness/providers/assembler.js.map +1 -0
- package/dist/harness/providers/authenticated-stream.d.ts +9 -0
- package/dist/harness/providers/authenticated-stream.d.ts.map +1 -0
- package/dist/harness/providers/authenticated-stream.js +81 -0
- package/dist/harness/providers/authenticated-stream.js.map +1 -0
- package/dist/harness/providers/catalog.d.ts +75 -0
- package/dist/harness/providers/catalog.d.ts.map +1 -0
- package/dist/harness/providers/catalog.js +124 -0
- package/dist/harness/providers/catalog.js.map +1 -0
- package/dist/harness/providers/claude-code/adapter.d.ts +96 -0
- package/dist/harness/providers/claude-code/adapter.d.ts.map +1 -0
- package/dist/harness/providers/claude-code/adapter.js +863 -0
- package/dist/harness/providers/claude-code/adapter.js.map +1 -0
- package/dist/harness/providers/claude-code/mcp-relay.d.ts +2 -0
- package/dist/harness/providers/claude-code/mcp-relay.d.ts.map +1 -0
- package/dist/harness/providers/claude-code/mcp-relay.js +27 -0
- package/dist/harness/providers/claude-code/mcp-relay.js.map +1 -0
- package/dist/harness/providers/claude-code/mcp-server.d.ts +40 -0
- package/dist/harness/providers/claude-code/mcp-server.d.ts.map +1 -0
- package/dist/harness/providers/claude-code/mcp-server.js +171 -0
- package/dist/harness/providers/claude-code/mcp-server.js.map +1 -0
- package/dist/harness/providers/claude-code/native.d.ts +36 -0
- package/dist/harness/providers/claude-code/native.d.ts.map +1 -0
- package/dist/harness/providers/claude-code/native.js +153 -0
- package/dist/harness/providers/claude-code/native.js.map +1 -0
- package/dist/harness/providers/claude-code/process.d.ts +48 -0
- package/dist/harness/providers/claude-code/process.d.ts.map +1 -0
- package/dist/harness/providers/claude-code/process.js +128 -0
- package/dist/harness/providers/claude-code/process.js.map +1 -0
- package/dist/harness/providers/codex-app-server.d.ts +8 -0
- package/dist/harness/providers/codex-app-server.d.ts.map +1 -0
- package/dist/harness/providers/codex-app-server.js +45 -0
- package/dist/harness/providers/codex-app-server.js.map +1 -0
- package/dist/harness/providers/effort.d.ts +51 -0
- package/dist/harness/providers/effort.d.ts.map +1 -0
- package/dist/harness/providers/effort.js +108 -0
- package/dist/harness/providers/effort.js.map +1 -0
- package/dist/harness/providers/errors.d.ts +34 -0
- package/dist/harness/providers/errors.d.ts.map +1 -0
- package/dist/harness/providers/errors.js +143 -0
- package/dist/harness/providers/errors.js.map +1 -0
- package/dist/harness/providers/grammar.d.ts +17 -0
- package/dist/harness/providers/grammar.d.ts.map +1 -0
- package/dist/harness/providers/grammar.js +89 -0
- package/dist/harness/providers/grammar.js.map +1 -0
- package/dist/harness/providers/http-stream.d.ts +40 -0
- package/dist/harness/providers/http-stream.d.ts.map +1 -0
- package/dist/harness/providers/http-stream.js +134 -0
- package/dist/harness/providers/http-stream.js.map +1 -0
- package/dist/harness/providers/index.d.ts +20 -0
- package/dist/harness/providers/index.d.ts.map +1 -0
- package/dist/harness/providers/index.js +17 -0
- package/dist/harness/providers/index.js.map +1 -0
- package/dist/harness/providers/responses.d.ts +36 -0
- package/dist/harness/providers/responses.d.ts.map +1 -0
- package/dist/harness/providers/responses.js +435 -0
- package/dist/harness/providers/responses.js.map +1 -0
- package/dist/harness/providers/reviewer-route.d.ts +14 -0
- package/dist/harness/providers/reviewer-route.d.ts.map +1 -0
- package/dist/harness/providers/reviewer-route.js +31 -0
- package/dist/harness/providers/reviewer-route.js.map +1 -0
- package/dist/harness/providers/router.d.ts +50 -0
- package/dist/harness/providers/router.d.ts.map +1 -0
- package/dist/harness/providers/router.js +295 -0
- package/dist/harness/providers/router.js.map +1 -0
- package/dist/harness/providers/scripted.d.ts +22 -0
- package/dist/harness/providers/scripted.d.ts.map +1 -0
- package/dist/harness/providers/scripted.js +111 -0
- package/dist/harness/providers/scripted.js.map +1 -0
- package/dist/harness/providers/sse.d.ts +13 -0
- package/dist/harness/providers/sse.d.ts.map +1 -0
- package/dist/harness/providers/sse.js +82 -0
- package/dist/harness/providers/sse.js.map +1 -0
- package/dist/harness/providers/testing.d.ts +35 -0
- package/dist/harness/providers/testing.d.ts.map +1 -0
- package/dist/harness/providers/testing.js +93 -0
- package/dist/harness/providers/testing.js.map +1 -0
- package/dist/harness/providers/web-search.d.ts +110 -0
- package/dist/harness/providers/web-search.d.ts.map +1 -0
- package/dist/harness/providers/web-search.js +476 -0
- package/dist/harness/providers/web-search.js.map +1 -0
- package/dist/harness/store/blob-store.d.ts +4 -0
- package/dist/harness/store/blob-store.d.ts.map +1 -0
- package/dist/harness/store/blob-store.js +79 -0
- package/dist/harness/store/blob-store.js.map +1 -0
- package/dist/harness/store/durable-file.d.ts +17 -0
- package/dist/harness/store/durable-file.d.ts.map +1 -0
- package/dist/harness/store/durable-file.js +84 -0
- package/dist/harness/store/durable-file.js.map +1 -0
- package/dist/harness/store/event-store.d.ts +56 -0
- package/dist/harness/store/event-store.d.ts.map +1 -0
- package/dist/harness/store/event-store.js +210 -0
- package/dist/harness/store/event-store.js.map +1 -0
- package/dist/harness/store/index.d.ts +8 -0
- package/dist/harness/store/index.d.ts.map +1 -0
- package/dist/harness/store/index.js +4 -0
- package/dist/harness/store/index.js.map +1 -0
- package/dist/harness/store/layout.d.ts +12 -0
- package/dist/harness/store/layout.d.ts.map +1 -0
- package/dist/harness/store/layout.js +27 -0
- package/dist/harness/store/layout.js.map +1 -0
- package/dist/harness/store/lease.d.ts +37 -0
- package/dist/harness/store/lease.d.ts.map +1 -0
- package/dist/harness/store/lease.js +326 -0
- package/dist/harness/store/lease.js.map +1 -0
- package/dist/harness/store/segments.d.ts +49 -0
- package/dist/harness/store/segments.d.ts.map +1 -0
- package/dist/harness/store/segments.js +216 -0
- package/dist/harness/store/segments.js.map +1 -0
- package/dist/harness/store/session-store.d.ts +18 -0
- package/dist/harness/store/session-store.d.ts.map +1 -0
- package/dist/harness/store/session-store.js +319 -0
- package/dist/harness/store/session-store.js.map +1 -0
- package/dist/harness/tools/builtin/control-tools.d.ts +57 -0
- package/dist/harness/tools/builtin/control-tools.d.ts.map +1 -0
- package/dist/harness/tools/builtin/control-tools.js +72 -0
- package/dist/harness/tools/builtin/control-tools.js.map +1 -0
- package/dist/harness/tools/builtin/glob.d.ts +15 -0
- package/dist/harness/tools/builtin/glob.d.ts.map +1 -0
- package/dist/harness/tools/builtin/glob.js +164 -0
- package/dist/harness/tools/builtin/glob.js.map +1 -0
- package/dist/harness/tools/builtin/process-bg.d.ts +72 -0
- package/dist/harness/tools/builtin/process-bg.d.ts.map +1 -0
- package/dist/harness/tools/builtin/process-bg.js +360 -0
- package/dist/harness/tools/builtin/process-bg.js.map +1 -0
- package/dist/harness/tools/builtin/process-tools.d.ts +46 -0
- package/dist/harness/tools/builtin/process-tools.d.ts.map +1 -0
- package/dist/harness/tools/builtin/process-tools.js +263 -0
- package/dist/harness/tools/builtin/process-tools.js.map +1 -0
- package/dist/harness/tools/builtin/read-media.d.ts +10 -0
- package/dist/harness/tools/builtin/read-media.d.ts.map +1 -0
- package/dist/harness/tools/builtin/read-media.js +128 -0
- package/dist/harness/tools/builtin/read-media.js.map +1 -0
- package/dist/harness/tools/builtin/read-tools.d.ts +29 -0
- package/dist/harness/tools/builtin/read-tools.d.ts.map +1 -0
- package/dist/harness/tools/builtin/read-tools.js +329 -0
- package/dist/harness/tools/builtin/read-tools.js.map +1 -0
- package/dist/harness/tools/builtin/shared.d.ts +47 -0
- package/dist/harness/tools/builtin/shared.d.ts.map +1 -0
- package/dist/harness/tools/builtin/shared.js +94 -0
- package/dist/harness/tools/builtin/shared.js.map +1 -0
- package/dist/harness/tools/builtin/todo.d.ts +38 -0
- package/dist/harness/tools/builtin/todo.d.ts.map +1 -0
- package/dist/harness/tools/builtin/todo.js +55 -0
- package/dist/harness/tools/builtin/todo.js.map +1 -0
- package/dist/harness/tools/builtin/web-common.d.ts +18 -0
- package/dist/harness/tools/builtin/web-common.d.ts.map +1 -0
- package/dist/harness/tools/builtin/web-common.js +53 -0
- package/dist/harness/tools/builtin/web-common.js.map +1 -0
- package/dist/harness/tools/builtin/web-fetch.d.ts +33 -0
- package/dist/harness/tools/builtin/web-fetch.d.ts.map +1 -0
- package/dist/harness/tools/builtin/web-fetch.js +173 -0
- package/dist/harness/tools/builtin/web-fetch.js.map +1 -0
- package/dist/harness/tools/builtin/web-html.d.ts +14 -0
- package/dist/harness/tools/builtin/web-html.d.ts.map +1 -0
- package/dist/harness/tools/builtin/web-html.js +314 -0
- package/dist/harness/tools/builtin/web-html.js.map +1 -0
- package/dist/harness/tools/builtin/web-net.d.ts +59 -0
- package/dist/harness/tools/builtin/web-net.d.ts.map +1 -0
- package/dist/harness/tools/builtin/web-net.js +347 -0
- package/dist/harness/tools/builtin/web-net.js.map +1 -0
- package/dist/harness/tools/builtin/web-search.d.ts +40 -0
- package/dist/harness/tools/builtin/web-search.d.ts.map +1 -0
- package/dist/harness/tools/builtin/web-search.js +60 -0
- package/dist/harness/tools/builtin/web-search.js.map +1 -0
- package/dist/harness/tools/builtin/web-state.d.ts +67 -0
- package/dist/harness/tools/builtin/web-state.d.ts.map +1 -0
- package/dist/harness/tools/builtin/web-state.js +227 -0
- package/dist/harness/tools/builtin/web-state.js.map +1 -0
- package/dist/harness/tools/builtin/write-tools.d.ts +18 -0
- package/dist/harness/tools/builtin/write-tools.d.ts.map +1 -0
- package/dist/harness/tools/builtin/write-tools.js +335 -0
- package/dist/harness/tools/builtin/write-tools.js.map +1 -0
- package/dist/harness/tools/environment.d.ts +9 -0
- package/dist/harness/tools/environment.d.ts.map +1 -0
- package/dist/harness/tools/environment.js +59 -0
- package/dist/harness/tools/environment.js.map +1 -0
- package/dist/harness/tools/file-ledger.d.ts +9 -0
- package/dist/harness/tools/file-ledger.d.ts.map +1 -0
- package/dist/harness/tools/file-ledger.js +26 -0
- package/dist/harness/tools/file-ledger.js.map +1 -0
- package/dist/harness/tools/gateway.d.ts +52 -0
- package/dist/harness/tools/gateway.d.ts.map +1 -0
- package/dist/harness/tools/gateway.js +435 -0
- package/dist/harness/tools/gateway.js.map +1 -0
- package/dist/harness/tools/index.d.ts +20 -0
- package/dist/harness/tools/index.d.ts.map +1 -0
- package/dist/harness/tools/index.js +17 -0
- package/dist/harness/tools/index.js.map +1 -0
- package/dist/harness/tools/patch.d.ts +51 -0
- package/dist/harness/tools/patch.d.ts.map +1 -0
- package/dist/harness/tools/patch.js +450 -0
- package/dist/harness/tools/patch.js.map +1 -0
- package/dist/harness/tools/process.d.ts +28 -0
- package/dist/harness/tools/process.d.ts.map +1 -0
- package/dist/harness/tools/process.js +263 -0
- package/dist/harness/tools/process.js.map +1 -0
- package/dist/harness/tools/redaction.d.ts +26 -0
- package/dist/harness/tools/redaction.d.ts.map +1 -0
- package/dist/harness/tools/redaction.js +77 -0
- package/dist/harness/tools/redaction.js.map +1 -0
- package/dist/harness/tools/registry.d.ts +26 -0
- package/dist/harness/tools/registry.d.ts.map +1 -0
- package/dist/harness/tools/registry.js +57 -0
- package/dist/harness/tools/registry.js.map +1 -0
- package/dist/harness/tools/sandbox.d.ts +23 -0
- package/dist/harness/tools/sandbox.d.ts.map +1 -0
- package/dist/harness/tools/sandbox.js +117 -0
- package/dist/harness/tools/sandbox.js.map +1 -0
- package/dist/harness/tools/testing.d.ts +42 -0
- package/dist/harness/tools/testing.d.ts.map +1 -0
- package/dist/harness/tools/testing.js +143 -0
- package/dist/harness/tools/testing.js.map +1 -0
- package/dist/harness/tools/text-file.d.ts +38 -0
- package/dist/harness/tools/text-file.d.ts.map +1 -0
- package/dist/harness/tools/text-file.js +90 -0
- package/dist/harness/tools/text-file.js.map +1 -0
- package/dist/harness/tools/windows-launch.d.ts +52 -0
- package/dist/harness/tools/windows-launch.d.ts.map +1 -0
- package/dist/harness/tools/windows-launch.js +261 -0
- package/dist/harness/tools/windows-launch.js.map +1 -0
- package/dist/harness/tools/workspace-path.d.ts +34 -0
- package/dist/harness/tools/workspace-path.d.ts.map +1 -0
- package/dist/harness/tools/workspace-path.js +133 -0
- package/dist/harness/tools/workspace-path.js.map +1 -0
- package/dist/harness/tui/approvals.d.ts +44 -0
- package/dist/harness/tui/approvals.d.ts.map +1 -0
- package/dist/harness/tui/approvals.js +127 -0
- package/dist/harness/tui/approvals.js.map +1 -0
- package/dist/harness/tui/auth-interaction.d.ts +36 -0
- package/dist/harness/tui/auth-interaction.d.ts.map +1 -0
- package/dist/harness/tui/auth-interaction.js +76 -0
- package/dist/harness/tui/auth-interaction.js.map +1 -0
- package/dist/harness/tui/choice-modal.d.ts +58 -0
- package/dist/harness/tui/choice-modal.d.ts.map +1 -0
- package/dist/harness/tui/choice-modal.js +244 -0
- package/dist/harness/tui/choice-modal.js.map +1 -0
- package/dist/harness/tui/conversation-view.d.ts +250 -0
- package/dist/harness/tui/conversation-view.d.ts.map +1 -0
- package/dist/harness/tui/conversation-view.js +1115 -0
- package/dist/harness/tui/conversation-view.js.map +1 -0
- package/dist/harness/tui/describe.d.ts +21 -0
- package/dist/harness/tui/describe.d.ts.map +1 -0
- package/dist/harness/tui/describe.js +110 -0
- package/dist/harness/tui/describe.js.map +1 -0
- package/dist/harness/tui/index.d.ts +30 -0
- package/dist/harness/tui/index.d.ts.map +1 -0
- package/dist/harness/tui/index.js +26 -0
- package/dist/harness/tui/index.js.map +1 -0
- package/dist/harness/tui/input/attachments.d.ts +20 -0
- package/dist/harness/tui/input/attachments.d.ts.map +1 -0
- package/dist/harness/tui/input/attachments.js +100 -0
- package/dist/harness/tui/input/attachments.js.map +1 -0
- package/dist/harness/tui/input/autocomplete.d.ts +41 -0
- package/dist/harness/tui/input/autocomplete.d.ts.map +1 -0
- package/dist/harness/tui/input/autocomplete.js +85 -0
- package/dist/harness/tui/input/autocomplete.js.map +1 -0
- package/dist/harness/tui/input/clipboard.d.ts +44 -0
- package/dist/harness/tui/input/clipboard.d.ts.map +1 -0
- package/dist/harness/tui/input/clipboard.js +181 -0
- package/dist/harness/tui/input/clipboard.js.map +1 -0
- package/dist/harness/tui/input/commands.d.ts +23 -0
- package/dist/harness/tui/input/commands.d.ts.map +1 -0
- package/dist/harness/tui/input/commands.js +71 -0
- package/dist/harness/tui/input/commands.js.map +1 -0
- package/dist/harness/tui/input/file-index.d.ts +49 -0
- package/dist/harness/tui/input/file-index.d.ts.map +1 -0
- package/dist/harness/tui/input/file-index.js +170 -0
- package/dist/harness/tui/input/file-index.js.map +1 -0
- package/dist/harness/tui/input/index.d.ts +8 -0
- package/dist/harness/tui/input/index.d.ts.map +1 -0
- package/dist/harness/tui/input/index.js +8 -0
- package/dist/harness/tui/input/index.js.map +1 -0
- package/dist/harness/tui/input/mouse.d.ts +68 -0
- package/dist/harness/tui/input/mouse.d.ts.map +1 -0
- package/dist/harness/tui/input/mouse.js +141 -0
- package/dist/harness/tui/input/mouse.js.map +1 -0
- package/dist/harness/tui/interrupt.d.ts +25 -0
- package/dist/harness/tui/interrupt.d.ts.map +1 -0
- package/dist/harness/tui/interrupt.js +49 -0
- package/dist/harness/tui/interrupt.js.map +1 -0
- package/dist/harness/tui/jsonl-renderer.d.ts +68 -0
- package/dist/harness/tui/jsonl-renderer.d.ts.map +1 -0
- package/dist/harness/tui/jsonl-renderer.js +172 -0
- package/dist/harness/tui/jsonl-renderer.js.map +1 -0
- package/dist/harness/tui/line-source.d.ts +39 -0
- package/dist/harness/tui/line-source.d.ts.map +1 -0
- package/dist/harness/tui/line-source.js +137 -0
- package/dist/harness/tui/line-source.js.map +1 -0
- package/dist/harness/tui/logo-art.d.ts +9 -0
- package/dist/harness/tui/logo-art.d.ts.map +1 -0
- package/dist/harness/tui/logo-art.js +24 -0
- package/dist/harness/tui/logo-art.js.map +1 -0
- package/dist/harness/tui/logo.d.ts +28 -0
- package/dist/harness/tui/logo.d.ts.map +1 -0
- package/dist/harness/tui/logo.js +88 -0
- package/dist/harness/tui/logo.js.map +1 -0
- package/dist/harness/tui/open-browser.d.ts +17 -0
- package/dist/harness/tui/open-browser.d.ts.map +1 -0
- package/dist/harness/tui/open-browser.js +45 -0
- package/dist/harness/tui/open-browser.js.map +1 -0
- package/dist/harness/tui/output-chunks.d.ts +8 -0
- package/dist/harness/tui/output-chunks.d.ts.map +1 -0
- package/dist/harness/tui/output-chunks.js +48 -0
- package/dist/harness/tui/output-chunks.js.map +1 -0
- package/dist/harness/tui/panels/index.d.ts +2 -0
- package/dist/harness/tui/panels/index.d.ts.map +1 -0
- package/dist/harness/tui/panels/index.js +2 -0
- package/dist/harness/tui/panels/index.js.map +1 -0
- package/dist/harness/tui/panels/panel-view.d.ts +98 -0
- package/dist/harness/tui/panels/panel-view.d.ts.map +1 -0
- package/dist/harness/tui/panels/panel-view.js +596 -0
- package/dist/harness/tui/panels/panel-view.js.map +1 -0
- package/dist/harness/tui/pi-tui-renderer.d.ts +363 -0
- package/dist/harness/tui/pi-tui-renderer.d.ts.map +1 -0
- package/dist/harness/tui/pi-tui-renderer.js +2696 -0
- package/dist/harness/tui/pi-tui-renderer.js.map +1 -0
- package/dist/harness/tui/plain-line-renderer.d.ts +102 -0
- package/dist/harness/tui/plain-line-renderer.d.ts.map +1 -0
- package/dist/harness/tui/plain-line-renderer.js +491 -0
- package/dist/harness/tui/plain-line-renderer.js.map +1 -0
- package/dist/harness/tui/render-queue.d.ts +34 -0
- package/dist/harness/tui/render-queue.d.ts.map +1 -0
- package/dist/harness/tui/render-queue.js +92 -0
- package/dist/harness/tui/render-queue.js.map +1 -0
- package/dist/harness/tui/sanitize.d.ts +9 -0
- package/dist/harness/tui/sanitize.d.ts.map +1 -0
- package/dist/harness/tui/sanitize.js +31 -0
- package/dist/harness/tui/sanitize.js.map +1 -0
- package/dist/harness/tui/style.d.ts +54 -0
- package/dist/harness/tui/style.d.ts.map +1 -0
- package/dist/harness/tui/style.js +64 -0
- package/dist/harness/tui/style.js.map +1 -0
- package/dist/harness/tui/terminal-lifecycle.d.ts +49 -0
- package/dist/harness/tui/terminal-lifecycle.d.ts.map +1 -0
- package/dist/harness/tui/terminal-lifecycle.js +100 -0
- package/dist/harness/tui/terminal-lifecycle.js.map +1 -0
- package/dist/harness/tui/theme.d.ts +77 -0
- package/dist/harness/tui/theme.d.ts.map +1 -0
- package/dist/harness/tui/theme.js +501 -0
- package/dist/harness/tui/theme.js.map +1 -0
- package/dist/harness/tui/tool-cards.d.ts +35 -0
- package/dist/harness/tui/tool-cards.d.ts.map +1 -0
- package/dist/harness/tui/tool-cards.js +122 -0
- package/dist/harness/tui/tool-cards.js.map +1 -0
- package/dist/harness/tui/tool-row.d.ts +51 -0
- package/dist/harness/tui/tool-row.d.ts.map +1 -0
- package/dist/harness/tui/tool-row.js +98 -0
- package/dist/harness/tui/tool-row.js.map +1 -0
- package/dist/harness/tui/views/board.d.ts +49 -0
- package/dist/harness/tui/views/board.d.ts.map +1 -0
- package/dist/harness/tui/views/board.js +293 -0
- package/dist/harness/tui/views/board.js.map +1 -0
- package/dist/harness/tui/views/cards.d.ts +8 -0
- package/dist/harness/tui/views/cards.d.ts.map +1 -0
- package/dist/harness/tui/views/cards.js +206 -0
- package/dist/harness/tui/views/cards.js.map +1 -0
- package/dist/harness/tui/views/components.d.ts +101 -0
- package/dist/harness/tui/views/components.d.ts.map +1 -0
- package/dist/harness/tui/views/components.js +186 -0
- package/dist/harness/tui/views/components.js.map +1 -0
- package/dist/harness/tui/views/diff.d.ts +11 -0
- package/dist/harness/tui/views/diff.d.ts.map +1 -0
- package/dist/harness/tui/views/diff.js +150 -0
- package/dist/harness/tui/views/diff.js.map +1 -0
- package/dist/harness/tui/views/graph.d.ts +49 -0
- package/dist/harness/tui/views/graph.d.ts.map +1 -0
- package/dist/harness/tui/views/graph.js +361 -0
- package/dist/harness/tui/views/graph.js.map +1 -0
- package/dist/harness/tui/views/index.d.ts +15 -0
- package/dist/harness/tui/views/index.d.ts.map +1 -0
- package/dist/harness/tui/views/index.js +15 -0
- package/dist/harness/tui/views/index.js.map +1 -0
- package/dist/harness/tui/views/kit.d.ts +112 -0
- package/dist/harness/tui/views/kit.d.ts.map +1 -0
- package/dist/harness/tui/views/kit.js +282 -0
- package/dist/harness/tui/views/kit.js.map +1 -0
- package/dist/harness/tui/views/trust-cards.d.ts +27 -0
- package/dist/harness/tui/views/trust-cards.d.ts.map +1 -0
- package/dist/harness/tui/views/trust-cards.js +181 -0
- package/dist/harness/tui/views/trust-cards.js.map +1 -0
- package/dist/harness/tui/views/usage.d.ts +4 -0
- package/dist/harness/tui/views/usage.d.ts.map +1 -0
- package/dist/harness/tui/views/usage.js +182 -0
- package/dist/harness/tui/views/usage.js.map +1 -0
- package/dist/harness/tui/views/worker.d.ts +47 -0
- package/dist/harness/tui/views/worker.d.ts.map +1 -0
- package/dist/harness/tui/views/worker.js +221 -0
- package/dist/harness/tui/views/worker.js.map +1 -0
- package/dist/harness/tui/welcome.d.ts +97 -0
- package/dist/harness/tui/welcome.d.ts.map +1 -0
- package/dist/harness/tui/welcome.js +271 -0
- package/dist/harness/tui/welcome.js.map +1 -0
- package/dist/harness/tui/wrap.d.ts +26 -0
- package/dist/harness/tui/wrap.d.ts.map +1 -0
- package/dist/harness/tui/wrap.js +38 -0
- package/dist/harness/tui/wrap.js.map +1 -0
- package/dist/infrastructure/build-info.d.ts +5 -0
- package/dist/infrastructure/build-info.d.ts.map +1 -0
- package/dist/infrastructure/build-info.js +21 -0
- package/dist/infrastructure/build-info.js.map +1 -0
- package/dist/infrastructure/frontmatter.d.ts +25 -0
- package/dist/infrastructure/frontmatter.d.ts.map +1 -0
- package/dist/infrastructure/frontmatter.js +75 -0
- package/dist/infrastructure/frontmatter.js.map +1 -0
- package/dist/templates/agent-manifests.d.ts +19 -0
- package/dist/templates/agent-manifests.d.ts.map +1 -0
- package/dist/templates/agent-manifests.js +302 -0
- package/dist/templates/agent-manifests.js.map +1 -0
- package/dist/templates/base-skills.d.ts +23 -0
- package/dist/templates/base-skills.d.ts.map +1 -0
- package/dist/templates/base-skills.js +477 -0
- package/dist/templates/base-skills.js.map +1 -0
- package/dist/templates/skill-creator-skill.d.ts +23 -0
- package/dist/templates/skill-creator-skill.d.ts.map +1 -0
- package/dist/templates/skill-creator-skill.js +235 -0
- package/dist/templates/skill-creator-skill.js.map +1 -0
- package/dist/templates/skill-references.d.ts +13 -0
- package/dist/templates/skill-references.d.ts.map +1 -0
- package/dist/templates/skill-references.js +280 -0
- package/dist/templates/skill-references.js.map +1 -0
- package/dist/templates/structure-templates.d.ts.map +1 -1
- package/dist/templates/structure-templates.js +20 -144
- package/dist/templates/structure-templates.js.map +1 -1
- package/dist/templates/task-conductor-skill.d.ts +1 -1
- package/dist/templates/task-conductor-skill.d.ts.map +1 -1
- package/dist/templates/task-conductor-skill.js +50 -22
- package/dist/templates/task-conductor-skill.js.map +1 -1
- package/package.json +8 -2
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { WorkerFactory } from "./coordinator.ts";
|
|
2
|
+
import type { GitRunner } from "./git.ts";
|
|
3
|
+
import { type WorkerManagerDependencies } from "./worker-manager.ts";
|
|
4
|
+
export type SharedWorkerDependencies = Omit<WorkerManagerDependencies, "run" | "budget" | "isolation"> & {
|
|
5
|
+
/** Parent of `.synorch/worktrees`; defaults to the user's home directory. */
|
|
6
|
+
readonly home?: string;
|
|
7
|
+
/** Overrides `<home>/.synorch/worktrees`. */
|
|
8
|
+
readonly worktreesRoot?: string;
|
|
9
|
+
readonly git?: GitRunner;
|
|
10
|
+
};
|
|
11
|
+
/** Wires a per-run WorkerManager with its own IsolationProvider for the coordinator. */
|
|
12
|
+
export declare function createWorkerFactory(shared: SharedWorkerDependencies): WorkerFactory;
|
|
13
|
+
//# sourceMappingURL=factories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../../src/harness/orchestration/factories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,EAAuB,KAAK,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAE1F,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,yBAAyB,EAAE,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAC,GAAG;IACvG,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC;CAC1B,CAAC;AAEF,wFAAwF;AACxF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,wBAAwB,GAAG,aAAa,CAgBnF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { createIsolationProvider } from "./isolation.js";
|
|
2
|
+
import { createWorkerManager } from "./worker-manager.js";
|
|
3
|
+
/** Wires a per-run WorkerManager with its own IsolationProvider for the coordinator. */
|
|
4
|
+
export function createWorkerFactory(shared) {
|
|
5
|
+
return (scope, budget) => createWorkerManager({
|
|
6
|
+
...shared,
|
|
7
|
+
run: scope,
|
|
8
|
+
budget,
|
|
9
|
+
isolation: createIsolationProvider({
|
|
10
|
+
workspaceRoot: scope.workspaceRoot,
|
|
11
|
+
projectId: scope.projectId,
|
|
12
|
+
blobs: shared.blobs,
|
|
13
|
+
...(shared.home === undefined ? {} : { home: shared.home }),
|
|
14
|
+
...(shared.worktreesRoot === undefined ? {} : { worktreesRoot: shared.worktreesRoot }),
|
|
15
|
+
...(shared.git === undefined ? {} : { git: shared.git }),
|
|
16
|
+
...(shared.platform === undefined ? {} : { platform: shared.platform }),
|
|
17
|
+
}),
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=factories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factories.js","sourceRoot":"","sources":["../../../src/harness/orchestration/factories.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAkC,MAAM,qBAAqB,CAAC;AAU1F,wFAAwF;AACxF,MAAM,UAAU,mBAAmB,CAAC,MAAgC;IAClE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CACvB,mBAAmB,CAAC;QAClB,GAAG,MAAM;QACT,GAAG,EAAE,KAAK;QACV,MAAM;QACN,SAAS,EAAE,uBAAuB,CAAC;YACjC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YAC3D,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;YACtF,GAAG,CAAC,MAAM,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;YACxD,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;SACxE,CAAC;KACH,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The narrow git surface isolation needs. It runs git with an argv array (never a shell), no
|
|
3
|
+
* terminal prompts and a bounded buffer; a failure rejects with the command's stderr. Every
|
|
4
|
+
* command runs with `core.longpaths=true` (ADR-19): a worktree under `<home>/.synorch/worktrees`
|
|
5
|
+
* adds to every path's length, and Git for Windows otherwise fails on paths past MAX_PATH.
|
|
6
|
+
*/
|
|
7
|
+
export interface GitResult {
|
|
8
|
+
readonly stdout: Buffer;
|
|
9
|
+
readonly stderr: string;
|
|
10
|
+
}
|
|
11
|
+
export interface GitRunOptions {
|
|
12
|
+
/** Written to the command's standard input (batch commands such as `hash-object --stdin-paths`). */
|
|
13
|
+
readonly input?: Buffer | string;
|
|
14
|
+
}
|
|
15
|
+
export type GitRunner = (args: readonly string[], cwd: string, signal?: AbortSignal, options?: GitRunOptions) => Promise<GitResult>;
|
|
16
|
+
export declare class GitCommandError extends Error {
|
|
17
|
+
readonly args: readonly string[];
|
|
18
|
+
readonly exitCode: number | undefined;
|
|
19
|
+
/** The spawn error code (`ENOENT` when git is not installed), when git never ran. */
|
|
20
|
+
readonly spawnCode: string | undefined;
|
|
21
|
+
constructor(args: readonly string[], exitCode: number | undefined, stderr: string, spawnCode?: string);
|
|
22
|
+
}
|
|
23
|
+
/** Options every git invocation carries. */
|
|
24
|
+
export declare const GIT_BASE_OPTIONS: readonly ["-c", "core.longpaths=true"];
|
|
25
|
+
export declare const runGit: GitRunner;
|
|
26
|
+
export declare function gitText(git: GitRunner, args: readonly string[], cwd: string, signal?: AbortSignal): Promise<string>;
|
|
27
|
+
/** True when a git executable can be started at all. */
|
|
28
|
+
export declare function gitAvailable(git: GitRunner, cwd: string): Promise<boolean>;
|
|
29
|
+
/** The repository top level, or undefined when `cwd` is not inside a git work tree. */
|
|
30
|
+
export declare function gitTopLevel(git: GitRunner, cwd: string): Promise<string | undefined>;
|
|
31
|
+
export declare function gitHead(git: GitRunner, cwd: string): Promise<string | undefined>;
|
|
32
|
+
/** Paths git considers changed or untracked (ignored files excluded), POSIX separators, as named on disk. */
|
|
33
|
+
export declare function gitDirtyPaths(git: GitRunner, cwd: string, signal?: AbortSignal): Promise<string[]>;
|
|
34
|
+
/** Raw blob bytes at `HEAD`, or undefined when the path does not exist there. */
|
|
35
|
+
export declare function gitShowHead(git: GitRunner, cwd: string, relative: string): Promise<Buffer | undefined>;
|
|
36
|
+
/**
|
|
37
|
+
* The bytes a checkout of `<rev>:<relative>` writes in the work tree at `cwd`: the blob through
|
|
38
|
+
* that tree's smudge filter and EOL conversion (`cat-file --filters`). Undefined when absent.
|
|
39
|
+
*/
|
|
40
|
+
export declare function gitShowFiltered(git: GitRunner, cwd: string, rev: string, relative: string, signal?: AbortSignal): Promise<Buffer | undefined>;
|
|
41
|
+
/** The work-tree bytes of blob `oid` checked out at `relative` in the tree at `cwd` (smudge + EOL). */
|
|
42
|
+
export declare function gitSmudgeBlob(git: GitRunner, cwd: string, oid: string, relative: string, signal?: AbortSignal): Promise<Buffer>;
|
|
43
|
+
export interface GitTreeEntry {
|
|
44
|
+
readonly mode: string;
|
|
45
|
+
readonly type: string;
|
|
46
|
+
readonly oid: string;
|
|
47
|
+
}
|
|
48
|
+
/** Tree entries of `rev` for exactly `paths` (literal pathspecs); a path absent from `rev` is missing from the map. */
|
|
49
|
+
export declare function gitTreeEntries(git: GitRunner, cwd: string, rev: string, paths: readonly string[], signal?: AbortSignal): Promise<Map<string, GitTreeEntry>>;
|
|
50
|
+
/** Paths recorded in the index, POSIX separators. */
|
|
51
|
+
export declare function gitTrackedPaths(git: GitRunner, cwd: string, signal?: AbortSignal): Promise<string[]>;
|
|
52
|
+
/** Gitlink (submodule, mode 160000) paths recorded in the index. */
|
|
53
|
+
export declare function gitSubmodulePaths(git: GitRunner, cwd: string, signal?: AbortSignal): Promise<string[]>;
|
|
54
|
+
/**
|
|
55
|
+
* Blob ids git would store for the files at `paths` in the tree at `cwd` (clean filter and EOL
|
|
56
|
+
* conversion of that tree). With `write`, the blobs are also written to the object database.
|
|
57
|
+
*/
|
|
58
|
+
export declare function gitHashObjects(git: GitRunner, cwd: string, paths: readonly string[], options?: {
|
|
59
|
+
readonly write?: boolean;
|
|
60
|
+
readonly signal?: AbortSignal;
|
|
61
|
+
}): Promise<Map<string, string>>;
|
|
62
|
+
/** The blob id of `bytes` as if stored at `relative` in the tree at `cwd` (never written). */
|
|
63
|
+
export declare function gitHashBytes(git: GitRunner, cwd: string, relative: string, bytes: Buffer, signal?: AbortSignal): Promise<string>;
|
|
64
|
+
/**
|
|
65
|
+
* The subset of `paths` git ignores in the tree at `cwd`, honouring the index: a tracked file is
|
|
66
|
+
* never ignored. The paths need not exist.
|
|
67
|
+
*/
|
|
68
|
+
export declare function gitIgnoredSubset(git: GitRunner, cwd: string, paths: readonly string[], signal?: AbortSignal): Promise<Set<string>>;
|
|
69
|
+
/**
|
|
70
|
+
* Ignored, untracked entries (files, or whole directories collapsed with a trailing `/`), POSIX
|
|
71
|
+
* separators. Used to see which ignored paths a changed `.gitignore` would expose, which ignored
|
|
72
|
+
* directories a scoped snapshot skips and which dependency directories a worktree links.
|
|
73
|
+
*/
|
|
74
|
+
export declare function gitIgnoredEntries(git: GitRunner, cwd: string, signal?: AbortSignal): Promise<string[]>;
|
|
75
|
+
/** The subset of `paths` the ignore rules under `cwd` match (`--no-index`: the paths need not be tracked or exist). */
|
|
76
|
+
export declare function gitCheckIgnored(git: GitRunner, cwd: string, paths: readonly string[], signal?: AbortSignal): Promise<Set<string>>;
|
|
77
|
+
//# sourceMappingURL=git.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../../src/harness/orchestration/git.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { execFile } from "node:child_process";
|
|
2
|
+
export class GitCommandError extends Error {
|
|
3
|
+
args;
|
|
4
|
+
exitCode;
|
|
5
|
+
/** The spawn error code (`ENOENT` when git is not installed), when git never ran. */
|
|
6
|
+
spawnCode;
|
|
7
|
+
constructor(args, exitCode, stderr, spawnCode) {
|
|
8
|
+
super(`git ${args.join(" ")} failed${exitCode === undefined ? "" : ` (${exitCode})`}: ${stderr.trim()}`);
|
|
9
|
+
this.name = "GitCommandError";
|
|
10
|
+
this.args = args;
|
|
11
|
+
this.exitCode = exitCode;
|
|
12
|
+
this.spawnCode = spawnCode;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
/** Options every git invocation carries. */
|
|
16
|
+
export const GIT_BASE_OPTIONS = ["-c", "core.longpaths=true"];
|
|
17
|
+
export const runGit = (args, cwd, signal, options) => new Promise((resolve, reject) => {
|
|
18
|
+
const child = execFile("git", [...GIT_BASE_OPTIONS, ...args], {
|
|
19
|
+
cwd,
|
|
20
|
+
encoding: "buffer",
|
|
21
|
+
maxBuffer: 256 * 1024 * 1024,
|
|
22
|
+
windowsHide: true,
|
|
23
|
+
env: { ...process.env, GIT_TERMINAL_PROMPT: "0", GIT_OPTIONAL_LOCKS: "0" },
|
|
24
|
+
...(signal === undefined ? {} : { signal }),
|
|
25
|
+
}, (error, stdout, stderr) => {
|
|
26
|
+
const stderrText = Buffer.isBuffer(stderr) ? stderr.toString("utf8") : String(stderr);
|
|
27
|
+
if (error !== null) {
|
|
28
|
+
const rawCode = error.code;
|
|
29
|
+
const code = typeof rawCode === "number" ? rawCode : undefined;
|
|
30
|
+
reject(new GitCommandError(args, code, stderrText || error.message, typeof rawCode === "string" ? rawCode : undefined));
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
resolve({ stdout: Buffer.isBuffer(stdout) ? stdout : Buffer.from(String(stdout)), stderr: stderrText });
|
|
34
|
+
});
|
|
35
|
+
if (options?.input !== undefined) {
|
|
36
|
+
child.stdin?.on("error", () => undefined);
|
|
37
|
+
child.stdin?.end(options.input);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
child.stdin?.end();
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
export async function gitText(git, args, cwd, signal) {
|
|
44
|
+
return (await git(args, cwd, signal)).stdout.toString("utf8").trim();
|
|
45
|
+
}
|
|
46
|
+
/** True when a git executable can be started at all. */
|
|
47
|
+
export async function gitAvailable(git, cwd) {
|
|
48
|
+
try {
|
|
49
|
+
await git(["--version"], cwd);
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
return !(error instanceof GitCommandError && error.spawnCode !== undefined);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/** The repository top level, or undefined when `cwd` is not inside a git work tree. */
|
|
57
|
+
export async function gitTopLevel(git, cwd) {
|
|
58
|
+
try {
|
|
59
|
+
const inside = await gitText(git, ["rev-parse", "--is-inside-work-tree"], cwd);
|
|
60
|
+
if (inside !== "true")
|
|
61
|
+
return undefined;
|
|
62
|
+
return await gitText(git, ["rev-parse", "--show-toplevel"], cwd);
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
export async function gitHead(git, cwd) {
|
|
69
|
+
try {
|
|
70
|
+
return await gitText(git, ["rev-parse", "--verify", "HEAD"], cwd);
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
return undefined;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/** Paths git considers changed or untracked (ignored files excluded), POSIX separators, as named on disk. */
|
|
77
|
+
export async function gitDirtyPaths(git, cwd, signal) {
|
|
78
|
+
const output = (await git(["status", "--porcelain=v1", "-z", "--untracked-files=all", "--no-renames"], cwd, signal)).stdout.toString("utf8");
|
|
79
|
+
const paths = [];
|
|
80
|
+
for (const entry of output.split("\0")) {
|
|
81
|
+
if (entry.length < 4)
|
|
82
|
+
continue;
|
|
83
|
+
paths.push(entry.slice(3));
|
|
84
|
+
}
|
|
85
|
+
return paths;
|
|
86
|
+
}
|
|
87
|
+
/** Raw blob bytes at `HEAD`, or undefined when the path does not exist there. */
|
|
88
|
+
export async function gitShowHead(git, cwd, relative) {
|
|
89
|
+
try {
|
|
90
|
+
return (await git(["cat-file", "blob", `HEAD:${relative}`], cwd)).stdout;
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
return undefined;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* The bytes a checkout of `<rev>:<relative>` writes in the work tree at `cwd`: the blob through
|
|
98
|
+
* that tree's smudge filter and EOL conversion (`cat-file --filters`). Undefined when absent.
|
|
99
|
+
*/
|
|
100
|
+
export async function gitShowFiltered(git, cwd, rev, relative, signal) {
|
|
101
|
+
try {
|
|
102
|
+
return (await git(["cat-file", "--filters", `${rev}:${relative}`], cwd, signal)).stdout;
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
return undefined;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/** The work-tree bytes of blob `oid` checked out at `relative` in the tree at `cwd` (smudge + EOL). */
|
|
109
|
+
export async function gitSmudgeBlob(git, cwd, oid, relative, signal) {
|
|
110
|
+
return (await git(["cat-file", "--filters", `--path=${relative}`, oid], cwd, signal)).stdout;
|
|
111
|
+
}
|
|
112
|
+
const PATHSPEC_CHUNK = 100;
|
|
113
|
+
/** Tree entries of `rev` for exactly `paths` (literal pathspecs); a path absent from `rev` is missing from the map. */
|
|
114
|
+
export async function gitTreeEntries(git, cwd, rev, paths, signal) {
|
|
115
|
+
const entries = new Map();
|
|
116
|
+
for (let index = 0; index < paths.length; index += PATHSPEC_CHUNK) {
|
|
117
|
+
const chunk = paths.slice(index, index + PATHSPEC_CHUNK);
|
|
118
|
+
const output = (await git(["--literal-pathspecs", "ls-tree", "-r", "-z", "--full-tree", rev, "--", ...chunk], cwd, signal)).stdout.toString("utf8");
|
|
119
|
+
for (const record of output.split("\0")) {
|
|
120
|
+
const tab = record.indexOf("\t");
|
|
121
|
+
if (tab === -1)
|
|
122
|
+
continue;
|
|
123
|
+
const [mode = "", type = "", oid = ""] = record.slice(0, tab).split(" ");
|
|
124
|
+
entries.set(record.slice(tab + 1), { mode, type, oid });
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return entries;
|
|
128
|
+
}
|
|
129
|
+
/** Paths recorded in the index, POSIX separators. */
|
|
130
|
+
export async function gitTrackedPaths(git, cwd, signal) {
|
|
131
|
+
const output = (await git(["ls-files", "-z"], cwd, signal)).stdout.toString("utf8");
|
|
132
|
+
return output.split("\0").filter((entry) => entry.length > 0);
|
|
133
|
+
}
|
|
134
|
+
/** Gitlink (submodule, mode 160000) paths recorded in the index. */
|
|
135
|
+
export async function gitSubmodulePaths(git, cwd, signal) {
|
|
136
|
+
const output = (await git(["ls-files", "--stage", "-z"], cwd, signal)).stdout.toString("utf8");
|
|
137
|
+
const paths = [];
|
|
138
|
+
for (const record of output.split("\0")) {
|
|
139
|
+
if (!record.startsWith("160000 "))
|
|
140
|
+
continue;
|
|
141
|
+
const tab = record.indexOf("\t");
|
|
142
|
+
if (tab !== -1)
|
|
143
|
+
paths.push(record.slice(tab + 1));
|
|
144
|
+
}
|
|
145
|
+
return paths;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Blob ids git would store for the files at `paths` in the tree at `cwd` (clean filter and EOL
|
|
149
|
+
* conversion of that tree). With `write`, the blobs are also written to the object database.
|
|
150
|
+
*/
|
|
151
|
+
export async function gitHashObjects(git, cwd, paths, options = {}) {
|
|
152
|
+
const result = new Map();
|
|
153
|
+
const write = options.write === true ? ["-w"] : [];
|
|
154
|
+
const batch = paths.filter((relative) => !relative.includes("\n") && !relative.includes("\r"));
|
|
155
|
+
if (batch.length > 0) {
|
|
156
|
+
const output = (await git(["hash-object", ...write, "--stdin-paths"], cwd, options.signal, { input: `${batch.join("\n")}\n` })).stdout.toString("utf8");
|
|
157
|
+
const oids = output.split("\n").filter((line) => line.length > 0);
|
|
158
|
+
batch.forEach((relative, index) => {
|
|
159
|
+
const oid = oids[index];
|
|
160
|
+
if (oid !== undefined)
|
|
161
|
+
result.set(relative, oid.trim());
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
for (const relative of paths.filter((candidate) => !batch.includes(candidate))) {
|
|
165
|
+
result.set(relative, (await gitText(git, ["hash-object", ...write, `--path=${relative}`, "--", relative], cwd, options.signal)));
|
|
166
|
+
}
|
|
167
|
+
return result;
|
|
168
|
+
}
|
|
169
|
+
/** The blob id of `bytes` as if stored at `relative` in the tree at `cwd` (never written). */
|
|
170
|
+
export async function gitHashBytes(git, cwd, relative, bytes, signal) {
|
|
171
|
+
return (await git(["hash-object", "--stdin", `--path=${relative}`], cwd, signal, { input: bytes })).stdout.toString("utf8").trim();
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* The subset of `paths` git ignores in the tree at `cwd`, honouring the index: a tracked file is
|
|
175
|
+
* never ignored. The paths need not exist.
|
|
176
|
+
*/
|
|
177
|
+
export async function gitIgnoredSubset(git, cwd, paths, signal) {
|
|
178
|
+
if (paths.length === 0)
|
|
179
|
+
return new Set();
|
|
180
|
+
try {
|
|
181
|
+
const output = (await git(["check-ignore", "--stdin", "-z"], cwd, signal, { input: `${paths.join("\0")}\0` })).stdout.toString("utf8");
|
|
182
|
+
return new Set(output.split("\0").filter((entry) => entry.length > 0));
|
|
183
|
+
}
|
|
184
|
+
catch (error) {
|
|
185
|
+
if (error instanceof GitCommandError && error.exitCode === 1)
|
|
186
|
+
return new Set();
|
|
187
|
+
throw error;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Ignored, untracked entries (files, or whole directories collapsed with a trailing `/`), POSIX
|
|
192
|
+
* separators. Used to see which ignored paths a changed `.gitignore` would expose, which ignored
|
|
193
|
+
* directories a scoped snapshot skips and which dependency directories a worktree links.
|
|
194
|
+
*/
|
|
195
|
+
export async function gitIgnoredEntries(git, cwd, signal) {
|
|
196
|
+
const output = (await git(["ls-files", "--others", "--ignored", "--exclude-standard", "--directory", "-z"], cwd, signal)).stdout.toString("utf8");
|
|
197
|
+
return output.split("\0").filter((entry) => entry.length > 0);
|
|
198
|
+
}
|
|
199
|
+
/** The subset of `paths` the ignore rules under `cwd` match (`--no-index`: the paths need not be tracked or exist). */
|
|
200
|
+
export async function gitCheckIgnored(git, cwd, paths, signal) {
|
|
201
|
+
if (paths.length === 0)
|
|
202
|
+
return new Set();
|
|
203
|
+
try {
|
|
204
|
+
const output = (await git(["check-ignore", "--no-index", "--stdin", "-z"], cwd, signal, { input: `${paths.join("\0")}\0` })).stdout.toString("utf8");
|
|
205
|
+
return new Set(output.split("\0").filter((entry) => entry.length > 0));
|
|
206
|
+
}
|
|
207
|
+
catch (error) {
|
|
208
|
+
// Exit code 1 means that none of the paths is ignored.
|
|
209
|
+
if (error instanceof GitCommandError && error.exitCode === 1)
|
|
210
|
+
return new Set();
|
|
211
|
+
throw error;
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
//# sourceMappingURL=git.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../../src/harness/orchestration/git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAqB9C,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxB,IAAI,CAAoB;IACxB,QAAQ,CAAqB;IAC7C,qFAAqF;IACrE,SAAS,CAAqB;IAE9C,YAAmB,IAAuB,EAAE,QAA4B,EAAE,MAAc,EAAE,SAAkB;QAC1G,KAAK,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,QAAQ,GAAG,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACzG,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED,4CAA4C;AAC5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,qBAAqB,CAAU,CAAC;AAEvE,MAAM,CAAC,MAAM,MAAM,GAAc,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CAC9D,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,KAAK,GAAG,QAAQ,CACpB,KAAK,EACL,CAAC,GAAG,gBAAgB,EAAE,GAAG,IAAI,CAAC,EAC9B;QACE,GAAG;QACH,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;QAC5B,WAAW,EAAE,IAAI;QACjB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE;QAC1E,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;KAC5C,EACD,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtF,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,MAAM,OAAO,GAAI,KAA4B,CAAC,IAAI,CAAC;YACnD,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/D,MAAM,CAAC,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,IAAI,KAAK,CAAC,OAAO,EAAE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACxH,OAAO;QACT,CAAC;QACD,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IAC1G,CAAC,CACF,CAAC;IACF,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;QACjC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC1C,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;IACrB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAc,EAAE,IAAuB,EAAE,GAAW,EAAE,MAAoB;IACtG,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AACvE,CAAC;AAED,wDAAwD;AACxD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAc,EAAE,GAAW;IAC5D,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,OAAO,CAAC,CAAC,KAAK,YAAY,eAAe,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAc,EAAE,GAAW;IAC3D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,uBAAuB,CAAC,EAAE,GAAG,CAAC,CAAC;QAC/E,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,SAAS,CAAC;QACxC,OAAO,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE,GAAG,CAAC,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAc,EAAE,GAAW;IACvD,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,6GAA6G;AAC7G,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,GAAc,EAAE,GAAW,EAAE,MAAoB;IACnF,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,uBAAuB,EAAE,cAAc,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC7I,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QAC/B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,iFAAiF;AACjF,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAc,EAAE,GAAW,EAAE,QAAgB;IAC7E,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAc,EAAE,GAAW,EAAE,GAAW,EAAE,QAAgB,EAAE,MAAoB;IACpH,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAC1F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,uGAAuG;AACvG,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,GAAc,EAAE,GAAW,EAAE,GAAW,EAAE,QAAgB,EAAE,MAAoB;IAClH,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,QAAQ,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/F,CAAC;AAQD,MAAM,cAAc,GAAG,GAAG,CAAC;AAE3B,uHAAuH;AACvH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAc,EAAE,GAAW,EAAE,GAAW,EAAE,KAAwB,EAAE,MAAoB;IAC3H,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;IAChD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,cAAc,EAAE,CAAC;QAClE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,cAAc,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,qBAAqB,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACpJ,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,GAAG,KAAK,CAAC,CAAC;gBAAE,SAAS;YACzB,MAAM,CAAC,IAAI,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACzE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,qDAAqD;AACrD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAc,EAAE,GAAW,EAAE,MAAoB;IACrF,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpF,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,oEAAoE;AACpE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAc,EAAE,GAAW,EAAE,MAAoB;IACvF,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC/F,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,SAAS;QAC5C,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,GAAG,KAAK,CAAC,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAc,EAAE,GAAW,EAAE,KAAwB,EAAE,UAAuE,EAAE;IACnK,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/F,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,aAAa,EAAE,GAAG,KAAK,EAAE,eAAe,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxJ,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClE,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,GAAG,KAAK,SAAS;gBAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAC/E,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,GAAG,KAAK,EAAE,UAAU,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACnI,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8FAA8F;AAC9F,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAc,EAAE,GAAW,EAAE,QAAgB,EAAE,KAAa,EAAE,MAAoB;IACnH,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,aAAa,EAAE,SAAS,EAAE,UAAU,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AACrI,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAc,EAAE,GAAW,EAAE,KAAwB,EAAE,MAAoB;IAChH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IACzC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,cAAc,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACvI,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAI,KAAK,YAAY,eAAe,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QAC/E,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAc,EAAE,GAAW,EAAE,MAAoB;IACvF,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,oBAAoB,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClJ,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,uHAAuH;AACvH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAc,EAAE,GAAW,EAAE,KAAwB,EAAE,MAAoB;IAC/G,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IACzC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrJ,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,uDAAuD;QACvD,IAAI,KAAK,YAAY,eAAe,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QAC/E,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** I4 — coordinator, plan/DAG scheduler, WorkerManager, IsolationProvider, review gate. */
|
|
2
|
+
export type { Coordinator, IsolationProvider, WorkerManager } from "../contracts/index.ts";
|
|
3
|
+
export { approvePlan, decisionAnswers, isAllowing, isHumanOnlySubject, summarizePlan, type PlanApprovalOutcome } from "./approval.ts";
|
|
4
|
+
export { BUDGET_METRICS, CANCEL_THRESHOLD, createBudgetGateSlot, createBudgetTracker, isHumanBudgetGrant, requestBudgetIncrease, type AdmitOptions, type BudgetAdmission, type BudgetExceeded, type BudgetGateSlot, type BudgetLimits, type BudgetTracker, type UsageObservation, } from "./budget.ts";
|
|
5
|
+
export { buildAttemptLog, latestReport, type AttemptLog, type RecordedReportCall, type RecordedToolCall } from "./attempt-log.ts";
|
|
6
|
+
export { actionableFindings, artifactReviewGoal, artifactReviewRecordSchema, compileArtifactReviewPacket, describeReviewTarget, fixFollowUpMessage, isGeneratedPath, mapReviewVerdict, parseReviewArgument, renderArtifactReviewBrief, renderReviewCard, reviewSessionIds, REVIEW_CRITERIA, runArtifactReview, verdictDecision, type ArtifactReviewRequest, type ArtifactReviewResult, type ArtifactReviewStatus, type ParsedReviewArgument, type ReviewCardGlyphs, type ReviewTarget, type ReviewVerdict, } from "./artifact-review.ts";
|
|
7
|
+
export { commandMentioned, roleCapabilityIssues } from "./capabilities.ts";
|
|
8
|
+
export { extractJsonBlock, parseClaim, readClaim, reviewerClaimSchema, workerClaimSchema } from "./claims.ts";
|
|
9
|
+
export { createControlPlaneWriter, type ControlPlaneWriter } from "./control-plane.ts";
|
|
10
|
+
export { createCoordinator, criterionEvidence, DEFAULT_COORDINATOR_LIMITS, failedRunExitCode, resolveBudgets, retryNotes, scopeLimitedReview, type CoordinatorDependencies, type CoordinatorLimits, type OrchestrationCoordinator, type WorkerFactory, } from "./coordinator.ts";
|
|
11
|
+
export { createDelegationSlot, createReportSlot, delegationCallbacks, REPORT_RECORDED, reportCallbacks, type ReportCheck, type ReportSlot, type DelegationCaller, type DelegationPort, type DelegationResult, type DelegationSlot, type TriageDecision, } from "./delegation.ts";
|
|
12
|
+
export { commandArgv, commandsFromLog, evidenceCandidates, firstPathToken, harnessCanSubstitute, isPlanCausedVerification, INDEPENDENT_EVIDENCE_HINT, isIndependentReviewEvidence, mayComplete, provingVerification, resolveCompletionEvidence, resolveEvidence, resolvePointer, reviewRequired, verifyCompletion, verifyReview, type CompletionEvidence, type CompletionVerification, type EvidenceIndex, type ReviewVerification, } from "./evidence.ts";
|
|
13
|
+
export { createWorkerFactory, type SharedWorkerDependencies } from "./factories.ts";
|
|
14
|
+
export { runGit, type GitRunner } from "./git.ts";
|
|
15
|
+
export { ARTIFACT_FORMAT, createIsolationProvider, decodeArtifact, isAttemptOwnerLive, pruneOrphanedAttempts, resolveLinkSafeTarget, SCOPED_SNAPSHOT_LIMITS, type AttemptOwner, type ChangeSet, type PruneOrphansOptions, type PruneReport, type IsolationProviderDependencies, type OrchestratedWorkspace, type OrchestrationIsolationProvider, } from "./isolation.ts";
|
|
16
|
+
export { findScopeViolations, isControlPlanePath, matchesAny, matchesPattern } from "./paths.ts";
|
|
17
|
+
export { applyDelta, compileReviewerPacket, compileTaskPacket, createDeltaPacket, DEFAULT_STEP_FLOORS, MIN_REVIEWER_STEPS, MIN_TASK_STEPS, isIntegrationReview, perTaskStepLimit, placeCrossTaskCriteria, WORKSPACE_READ_EXCLUSIONS, workspaceReadScope, refreshPacketSources, reviewerStepLimit, runStepLimit, validatePlan, type PersonaResolver, type PlanValidation, type StepFloors, } from "./plan.ts";
|
|
18
|
+
export { createModelPlanner, renderConsultPrompt, renderWorkerMessages, renderPlanningPrompt, renderTriagePrompt, type ConsultInput, type Planner, type PlannerInput, type TriageInput, } from "./planner.ts";
|
|
19
|
+
export { createWorkspaceSourceReader, type SourceDigestReader } from "./recorder.ts";
|
|
20
|
+
export { createDagScheduler, DEFAULT_CONCURRENCY, findDependencyCycle, SchedulerError, type ConcurrencyLimits, type DagScheduler, type SchedulableTask, } from "./scheduler.ts";
|
|
21
|
+
export { classifyAttemptFailure, DEFAULT_FINISH_WARNING, renderFinishNowMessage, renderReportOnlyMessage, createWorkerManager, renderRepairMessage, renderIntegrationReviewBrief, renderReviewBrief, type IntegratedDependency, type IntegrationReviewHandle, type IntegrationReviewOutcome, type ArtifactReviewHandle, type ArtifactReviewOutcome, type PinnedReviewArtifact, type AttemptFailure, renderWorkerMessage, type AttemptRecord, type VerificationRequest, type VerificationResult, type VerificationRunner, type WorkerDispatchOptions, type OrchestrationWorkerManager, type RunScope, type WorkerManagerDependencies, } from "./worker-manager.ts";
|
|
22
|
+
export { WorkerStreamHub, type WorkerControlResult, type WorkerDirectory, type WorkerSummary } from "./worker-control.ts";
|
|
23
|
+
export { formatVerificationRefusal, preflightVerification, type VerificationPreflight, type VerificationPreflightContext, type VerificationRefusal } from "./verification-preflight.ts";
|
|
24
|
+
export { contentIdentities, contentIdentity, createWorkspaceDigestReader, resolveOnDiskPath, type ContentIdentityOptions, type WorkspaceDigestOptions } from "./workspace-digest.ts";
|
|
25
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/harness/orchestration/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export { approvePlan, decisionAnswers, isAllowing, isHumanOnlySubject, summarizePlan } from "./approval.js";
|
|
2
|
+
export { BUDGET_METRICS, CANCEL_THRESHOLD, createBudgetGateSlot, createBudgetTracker, isHumanBudgetGrant, requestBudgetIncrease, } from "./budget.js";
|
|
3
|
+
export { buildAttemptLog, latestReport } from "./attempt-log.js";
|
|
4
|
+
export { actionableFindings, artifactReviewGoal, artifactReviewRecordSchema, compileArtifactReviewPacket, describeReviewTarget, fixFollowUpMessage, isGeneratedPath, mapReviewVerdict, parseReviewArgument, renderArtifactReviewBrief, renderReviewCard, reviewSessionIds, REVIEW_CRITERIA, runArtifactReview, verdictDecision, } from "./artifact-review.js";
|
|
5
|
+
export { commandMentioned, roleCapabilityIssues } from "./capabilities.js";
|
|
6
|
+
export { extractJsonBlock, parseClaim, readClaim, reviewerClaimSchema, workerClaimSchema } from "./claims.js";
|
|
7
|
+
export { createControlPlaneWriter } from "./control-plane.js";
|
|
8
|
+
export { createCoordinator, criterionEvidence, DEFAULT_COORDINATOR_LIMITS, failedRunExitCode, resolveBudgets, retryNotes, scopeLimitedReview, } from "./coordinator.js";
|
|
9
|
+
export { createDelegationSlot, createReportSlot, delegationCallbacks, REPORT_RECORDED, reportCallbacks, } from "./delegation.js";
|
|
10
|
+
export { commandArgv, commandsFromLog, evidenceCandidates, firstPathToken, harnessCanSubstitute, isPlanCausedVerification, INDEPENDENT_EVIDENCE_HINT, isIndependentReviewEvidence, mayComplete, provingVerification, resolveCompletionEvidence, resolveEvidence, resolvePointer, reviewRequired, verifyCompletion, verifyReview, } from "./evidence.js";
|
|
11
|
+
export { createWorkerFactory } from "./factories.js";
|
|
12
|
+
export { runGit } from "./git.js";
|
|
13
|
+
export { ARTIFACT_FORMAT, createIsolationProvider, decodeArtifact, isAttemptOwnerLive, pruneOrphanedAttempts, resolveLinkSafeTarget, SCOPED_SNAPSHOT_LIMITS, } from "./isolation.js";
|
|
14
|
+
export { findScopeViolations, isControlPlanePath, matchesAny, matchesPattern } from "./paths.js";
|
|
15
|
+
export { applyDelta, compileReviewerPacket, compileTaskPacket, createDeltaPacket, DEFAULT_STEP_FLOORS, MIN_REVIEWER_STEPS, MIN_TASK_STEPS, isIntegrationReview, perTaskStepLimit, placeCrossTaskCriteria, WORKSPACE_READ_EXCLUSIONS, workspaceReadScope, refreshPacketSources, reviewerStepLimit, runStepLimit, validatePlan, } from "./plan.js";
|
|
16
|
+
export { createModelPlanner, renderConsultPrompt, renderWorkerMessages, renderPlanningPrompt, renderTriagePrompt, } from "./planner.js";
|
|
17
|
+
export { createWorkspaceSourceReader } from "./recorder.js";
|
|
18
|
+
export { createDagScheduler, DEFAULT_CONCURRENCY, findDependencyCycle, SchedulerError, } from "./scheduler.js";
|
|
19
|
+
export { classifyAttemptFailure, DEFAULT_FINISH_WARNING, renderFinishNowMessage, renderReportOnlyMessage, createWorkerManager, renderRepairMessage, renderIntegrationReviewBrief, renderReviewBrief, renderWorkerMessage, } from "./worker-manager.js";
|
|
20
|
+
export { WorkerStreamHub } from "./worker-control.js";
|
|
21
|
+
export { formatVerificationRefusal, preflightVerification } from "./verification-preflight.js";
|
|
22
|
+
export { contentIdentities, contentIdentity, createWorkspaceDigestReader, resolveOnDiskPath } from "./workspace-digest.js";
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/harness/orchestration/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { type AttemptId, type BlobStore, type Digest, type IsolatedWorkspace, type IsolationCreateOptions, type IsolationProvider, type ProjectId, type TaskContextPacket } from "../contracts/index.ts";
|
|
2
|
+
import { type GitRunner } from "./git.ts";
|
|
3
|
+
/**
|
|
4
|
+
* Per-attempt isolation (ADR-07, ADR-19).
|
|
5
|
+
*
|
|
6
|
+
* - `worktree`: a detached git worktree at `<worktrees>/<project-hash>/<attempt-hash>` on `HEAD`
|
|
7
|
+
* (short hashed names keep Windows paths short; git runs with `core.longpaths=true`). The main
|
|
8
|
+
* workspace is untouched until `integrate`. Dirty or untracked read inputs are overlaid from the
|
|
9
|
+
* main tree and ignored dependency directories (`DEPENDENCY_LINK_DIRECTORIES`) are linked in
|
|
10
|
+
* (junction on Windows); neither is ever integrated back. A retry of the same task reuses the
|
|
11
|
+
* worktree (`IsolationCreateOptions.reuse`): it is reset to its base instead of recreated. When
|
|
12
|
+
* creating the worktree fails, a non-high-risk task falls back to `scoped-dir` with a recorded
|
|
13
|
+
* reason, and nothing is left behind.
|
|
14
|
+
* - `scoped-dir`: writes happen in place, limited by policy to `owned_paths`. A snapshot of the
|
|
15
|
+
* tree (ignored files included, but not ignored directories outside the owned paths; bounded by
|
|
16
|
+
* `SCOPED_SNAPSHOT_LIMITS`) is taken first and persisted under `<worktrees>/<project-hash>/
|
|
17
|
+
* <attempt-hash>.scoped`, so every change is seen (changed ⊆ owned), a failed attempt can be
|
|
18
|
+
* reverted, and crash recovery can revert a crashed attempt's partial writes
|
|
19
|
+
* (`pruneOrphanedAttempts`). Scoped-dir attempts of different tasks run one at a time.
|
|
20
|
+
* - `shared-read-only`: explorers and reviewers; nothing may change.
|
|
21
|
+
*
|
|
22
|
+
* Every workspace can pin its changes as an artifact: a canonical JSON document of
|
|
23
|
+
* `{path, before, after, content}` entries whose sha256 is the artifact digest a review binds to.
|
|
24
|
+
* `before`/`after` are `workspaceDigest`s in the attempt's own workspace (ADR-19). Integrate
|
|
25
|
+
* compares the main tree by `ContentIdentity` (filtered git blob id) and writes content in the main
|
|
26
|
+
* tree's representation (smudge filter, EOL), so autocrlf, `.gitattributes eol`, clean/smudge
|
|
27
|
+
* filters and Git LFS never produce a false conflict.
|
|
28
|
+
*
|
|
29
|
+
* Link safety (SEC-H4): integrate, seed and revert resolve every target segment by segment and
|
|
30
|
+
* refuse any path that traverses a symbolic link or junction, resolves elsewhere or is a
|
|
31
|
+
* multiply linked file; they never follow a link out of the workspace. Integrate also refuses a
|
|
32
|
+
* `.gitignore` change that would expose an ignored link unless the link is owned and stays inside.
|
|
33
|
+
* A worktree is always removed with its dependency links unlinked first and with Node's `rm`,
|
|
34
|
+
* which never descends into a link (`git worktree remove` would empty a junction's target).
|
|
35
|
+
*/
|
|
36
|
+
export declare const ARTIFACT_FORMAT = "synorch.artifact/v1";
|
|
37
|
+
export declare const ARTIFACT_MEDIA_TYPE = "application/vnd.synorch.artifact+json";
|
|
38
|
+
export declare const SCOPED_BASELINE_FORMAT = "synorch.scoped-baseline/v1";
|
|
39
|
+
export declare const ATTEMPT_OWNER_FORMAT = "synorch.attempt-owner/v1";
|
|
40
|
+
/** Bounds of the scoped-dir snapshot. More entries than `maxEntries` refuses scoped-dir (fail closed). */
|
|
41
|
+
export declare const SCOPED_SNAPSHOT_LIMITS: {
|
|
42
|
+
readonly maxEntries: 200000;
|
|
43
|
+
/** Files up to this size are compared by content hash; larger ones by size and mtime. */
|
|
44
|
+
readonly hashFileBytes: number;
|
|
45
|
+
/** Content hashed while taking one snapshot; files beyond it are compared by size and mtime. */
|
|
46
|
+
readonly hashTotalBytes: number;
|
|
47
|
+
/** Pre-attempt content kept on disk for revert; changes to files beyond it are detected but reported unrestorable. */
|
|
48
|
+
readonly keepTotalBytes: number;
|
|
49
|
+
};
|
|
50
|
+
/** Length of the hashed project and attempt directory names under the worktrees root. */
|
|
51
|
+
export declare const WORKSPACE_NAME_LENGTH = 12;
|
|
52
|
+
/**
|
|
53
|
+
* Generated output directories (P0-A): dependency installs, build output and tool caches. Outside a
|
|
54
|
+
* git root (where `git check-ignore` cannot answer) a scoped snapshot never walks them, so they never
|
|
55
|
+
* enter an artifact, its digest, the changed ⊆ owned check, a review or an integration; inside a git
|
|
56
|
+
* root the ignore rules decide instead (a tracked `build/` stays visible).
|
|
57
|
+
*/
|
|
58
|
+
export declare const GENERATED_DIRECTORY_NAMES: ReadonlySet<string>;
|
|
59
|
+
/** True when `relative` lies inside a generated directory (`GENERATED_DIRECTORY_NAMES`) that no owned path names. */
|
|
60
|
+
export declare function inGeneratedDirectory(relative: string, ownedPaths: readonly string[], platform: NodeJS.Platform): boolean;
|
|
61
|
+
export interface ArtifactChange {
|
|
62
|
+
readonly path: string;
|
|
63
|
+
readonly before: Digest | null;
|
|
64
|
+
readonly after: Digest | null;
|
|
65
|
+
}
|
|
66
|
+
export interface ChangeSet {
|
|
67
|
+
readonly artifactDigest: Digest;
|
|
68
|
+
readonly artifactBytes: Uint8Array;
|
|
69
|
+
readonly changes: readonly ArtifactChange[];
|
|
70
|
+
readonly contents: ReadonlyMap<string, Buffer | null>;
|
|
71
|
+
/** Changed paths that are links, special files, inside a submodule, ambiguous or not expressible as workspace paths; integrate refuses them. */
|
|
72
|
+
readonly unsafe: readonly string[];
|
|
73
|
+
/** Why an `unsafe` entry cannot be integrated, when more specific than "link or special file". */
|
|
74
|
+
readonly unsafeReasons?: ReadonlyMap<string, string>;
|
|
75
|
+
/** On-disk spelling of a changed path when it differs from its NFC workspace path (an NFD-created name). */
|
|
76
|
+
readonly diskPaths?: ReadonlyMap<string, string>;
|
|
77
|
+
}
|
|
78
|
+
export interface OrchestratedWorkspace extends IsolatedWorkspace {
|
|
79
|
+
readonly attemptId: AttemptId;
|
|
80
|
+
readonly ownedPaths: readonly string[];
|
|
81
|
+
readonly forbiddenPaths: readonly string[];
|
|
82
|
+
changeSet(signal: AbortSignal): Promise<ChangeSet>;
|
|
83
|
+
/** Restores the pre-attempt content of every changed path; returns the paths it restored. */
|
|
84
|
+
revert(signal: AbortSignal): Promise<readonly string[]>;
|
|
85
|
+
}
|
|
86
|
+
export interface IsolationProviderDependencies {
|
|
87
|
+
readonly workspaceRoot: string;
|
|
88
|
+
readonly projectId: ProjectId;
|
|
89
|
+
/** Parent of `.synorch`; defaults to the user's home directory. */
|
|
90
|
+
readonly home?: string;
|
|
91
|
+
/** Overrides `<home>/.synorch/worktrees` (the composition root passes `<SYNORCH_HOME>/worktrees`). */
|
|
92
|
+
readonly worktreesRoot?: string;
|
|
93
|
+
readonly git?: GitRunner;
|
|
94
|
+
readonly blobs?: BlobStore;
|
|
95
|
+
readonly platform?: NodeJS.Platform;
|
|
96
|
+
}
|
|
97
|
+
export interface OrchestrationIsolationProvider extends IsolationProvider {
|
|
98
|
+
create(packet: TaskContextPacket, attemptId: AttemptId, signal: AbortSignal, options?: IsolationCreateOptions): Promise<OrchestratedWorkspace>;
|
|
99
|
+
/** Writes a previously pinned artifact into a fresh workspace (a revise attempt continues from it). */
|
|
100
|
+
seed(workspace: OrchestratedWorkspace, artifactBytes: Uint8Array, signal: AbortSignal): Promise<void>;
|
|
101
|
+
worktreePath(attemptId: AttemptId): string;
|
|
102
|
+
}
|
|
103
|
+
interface ArtifactDocument {
|
|
104
|
+
readonly format: typeof ARTIFACT_FORMAT;
|
|
105
|
+
readonly mode: IsolatedWorkspace["mode"];
|
|
106
|
+
readonly base_commit: string | null;
|
|
107
|
+
readonly changes: readonly {
|
|
108
|
+
readonly path: string;
|
|
109
|
+
readonly before: string | null;
|
|
110
|
+
readonly after: string | null;
|
|
111
|
+
readonly content: string | null;
|
|
112
|
+
}[];
|
|
113
|
+
}
|
|
114
|
+
/** Who created an attempt workspace; recovery prunes it only when this process is gone. */
|
|
115
|
+
export interface AttemptOwner {
|
|
116
|
+
readonly format: typeof ATTEMPT_OWNER_FORMAT;
|
|
117
|
+
readonly attempt_id: string;
|
|
118
|
+
readonly mode: "worktree" | "scoped-dir";
|
|
119
|
+
readonly pid: number;
|
|
120
|
+
readonly host: string;
|
|
121
|
+
readonly workspace_root: string;
|
|
122
|
+
readonly created_at: string;
|
|
123
|
+
/** Dependency links inside the worktree, unlinked before the worktree is removed. */
|
|
124
|
+
readonly dependency_links?: readonly string[];
|
|
125
|
+
}
|
|
126
|
+
/** Short, stable directory name for a project or attempt id (keeps worktree paths short on Windows). */
|
|
127
|
+
export declare function workspaceDirectoryName(id: string): string;
|
|
128
|
+
/** `<worktreesRoot>/<project-hash>`: where one project's attempt workspaces live. */
|
|
129
|
+
export declare function projectWorkspacesDirectory(worktreesRoot: string, projectId: string): string;
|
|
130
|
+
interface TargetOptions {
|
|
131
|
+
/** Revert and recovery restore reserved paths (`.git/hooks`, `.synorch`) too; integrate and seed never write them. */
|
|
132
|
+
readonly allowReserved?: boolean;
|
|
133
|
+
/** Removal may unlink a link itself (never what it points to). */
|
|
134
|
+
readonly allowFinalLink?: boolean;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* The absolute path for writing `relative` under `root`. Each existing segment is checked with
|
|
138
|
+
* `lstat` and `realpath`: a symbolic link, junction or other reparse point, a non-directory
|
|
139
|
+
* parent, a directory target or a multiply linked file is refused, so the write can never land
|
|
140
|
+
* outside `root`. The on-disk spelling is kept (an NFD-created name is written as it is on disk).
|
|
141
|
+
*/
|
|
142
|
+
export declare function resolveLinkSafeTarget(root: string, relative: string, platform: NodeJS.Platform, options?: TargetOptions): Promise<string>;
|
|
143
|
+
export declare function decodeArtifact(bytes: Uint8Array): ArtifactDocument;
|
|
144
|
+
export declare function createIsolationProvider(deps: IsolationProviderDependencies): OrchestrationIsolationProvider;
|
|
145
|
+
export interface PruneOrphansOptions {
|
|
146
|
+
readonly worktreesRoot: string;
|
|
147
|
+
readonly projectId: ProjectId;
|
|
148
|
+
readonly workspaceRoot: string;
|
|
149
|
+
readonly git?: GitRunner;
|
|
150
|
+
readonly platform?: NodeJS.Platform;
|
|
151
|
+
/** Whether the process that created an attempt workspace may still use it. */
|
|
152
|
+
readonly isLive?: (owner: AttemptOwner) => boolean;
|
|
153
|
+
}
|
|
154
|
+
export interface PruneReport {
|
|
155
|
+
/** Worktree directories removed (their attempt's process is gone), by attempt id. */
|
|
156
|
+
readonly removedWorktrees: readonly string[];
|
|
157
|
+
/** Crashed scoped-dir attempts: owned paths restored, other changes left in place, and paths no copy existed for. */
|
|
158
|
+
readonly revertedScoped: readonly {
|
|
159
|
+
readonly attemptId: string;
|
|
160
|
+
readonly restored: readonly string[];
|
|
161
|
+
readonly leftInPlace: readonly string[];
|
|
162
|
+
readonly unrestorable: readonly string[];
|
|
163
|
+
}[];
|
|
164
|
+
/** Attempt workspaces whose owner process is still alive (or on another host). */
|
|
165
|
+
readonly live: readonly string[];
|
|
166
|
+
/** Directories without an owner record; left alone. */
|
|
167
|
+
readonly unknown: readonly string[];
|
|
168
|
+
}
|
|
169
|
+
/** The default liveness test: same host, and the owner process still runs (this process counts as live). */
|
|
170
|
+
export declare function isAttemptOwnerLive(owner: AttemptOwner): boolean;
|
|
171
|
+
/**
|
|
172
|
+
* Removes attempt workspaces a crashed process left under the project's worktrees directory (the
|
|
173
|
+
* hashed one, and the pre-ADR-19 `<worktrees>/<project-id>`): git worktrees are removed with their
|
|
174
|
+
* dependency links unlinked first, and a scoped-dir attempt's partial writes inside its owned
|
|
175
|
+
* paths are reverted from the persisted snapshot (changes elsewhere are reported, not reverted,
|
|
176
|
+
* because the user may have edited those files since). Nothing whose owner is live is touched.
|
|
177
|
+
* Integrated scoped-dir attempts are only cleaned up.
|
|
178
|
+
*/
|
|
179
|
+
export declare function pruneOrphanedAttempts(options: PruneOrphansOptions): Promise<PruneReport>;
|
|
180
|
+
export {};
|
|
181
|
+
//# sourceMappingURL=isolation.d.ts.map
|