patchwork-os 0.2.0-alpha.8 → 0.2.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/README.bridge.md +6 -0
- package/README.md +315 -35
- package/deploy/bootstrap-new-vps.sh +12 -12
- package/deploy/bootstrap-vps.sh +187 -0
- package/deploy/deploy-dashboard.sh +174 -0
- package/deploy/deploy-landing.sh +136 -0
- package/dist/activationMetrics.d.ts +67 -0
- package/dist/activationMetrics.js +255 -0
- package/dist/activationMetrics.js.map +1 -0
- package/dist/activityLog.d.ts +49 -0
- package/dist/activityLog.js +78 -0
- package/dist/activityLog.js.map +1 -1
- package/dist/approvalHttp.d.ts +49 -2
- package/dist/approvalHttp.js +217 -21
- package/dist/approvalHttp.js.map +1 -1
- package/dist/approvalInsights.d.ts +49 -0
- package/dist/approvalInsights.js +97 -0
- package/dist/approvalInsights.js.map +1 -0
- package/dist/approvalQueue.d.ts +27 -1
- package/dist/approvalQueue.js +123 -3
- package/dist/approvalQueue.js.map +1 -1
- package/dist/approvalSignals.d.ts +124 -0
- package/dist/approvalSignals.js +512 -0
- package/dist/approvalSignals.js.map +1 -0
- package/dist/automation.d.ts +57 -0
- package/dist/automation.js +156 -59
- package/dist/automation.js.map +1 -1
- package/dist/automationSuggestions.d.ts +79 -0
- package/dist/automationSuggestions.js +150 -0
- package/dist/automationSuggestions.js.map +1 -0
- package/dist/bridge.d.ts +3 -0
- package/dist/bridge.js +174 -143
- package/dist/bridge.js.map +1 -1
- package/dist/bridgeToken.js +57 -19
- package/dist/bridgeToken.js.map +1 -1
- package/dist/ccPermissions.d.ts +15 -0
- package/dist/ccPermissions.js +21 -4
- package/dist/ccPermissions.js.map +1 -1
- package/dist/claudeDriver.js +74 -16
- package/dist/claudeDriver.js.map +1 -1
- package/dist/claudeOrchestrator.d.ts +1 -1
- package/dist/claudeOrchestrator.js +14 -8
- package/dist/claudeOrchestrator.js.map +1 -1
- package/dist/commands/dashboard.js +1 -1
- package/dist/commands/dashboard.js.map +1 -1
- package/dist/commands/launchd.d.ts +2 -0
- package/dist/commands/launchd.js +94 -0
- package/dist/commands/launchd.js.map +1 -0
- package/dist/commands/patchworkInit.d.ts +8 -0
- package/dist/commands/patchworkInit.js +77 -11
- package/dist/commands/patchworkInit.js.map +1 -1
- package/dist/commands/recipe.d.ts +289 -0
- package/dist/commands/recipe.js +1359 -0
- package/dist/commands/recipe.js.map +1 -0
- package/dist/commands/recipeInstall.d.ts +150 -0
- package/dist/commands/recipeInstall.js +647 -0
- package/dist/commands/recipeInstall.js.map +1 -0
- package/dist/commands/tracesExport.d.ts +83 -0
- package/dist/commands/tracesExport.js +269 -0
- package/dist/commands/tracesExport.js.map +1 -0
- package/dist/commands/tracesImport.d.ts +56 -0
- package/dist/commands/tracesImport.js +161 -0
- package/dist/commands/tracesImport.js.map +1 -0
- package/dist/config.d.ts +22 -1
- package/dist/config.js +108 -9
- package/dist/config.js.map +1 -1
- package/dist/connectorRoutes.d.ts +43 -0
- package/dist/connectorRoutes.js +1609 -0
- package/dist/connectorRoutes.js.map +1 -0
- package/dist/connectors/asana.d.ts +198 -0
- package/dist/connectors/asana.js +679 -0
- package/dist/connectors/asana.js.map +1 -0
- package/dist/connectors/baseConnector.d.ts +153 -0
- package/dist/connectors/baseConnector.js +336 -0
- package/dist/connectors/baseConnector.js.map +1 -0
- package/dist/connectors/confluence.d.ts +111 -0
- package/dist/connectors/confluence.js +406 -0
- package/dist/connectors/confluence.js.map +1 -0
- package/dist/connectors/datadog.d.ts +116 -0
- package/dist/connectors/datadog.js +385 -0
- package/dist/connectors/datadog.js.map +1 -0
- package/dist/connectors/discord.d.ts +150 -0
- package/dist/connectors/discord.js +543 -0
- package/dist/connectors/discord.js.map +1 -0
- package/dist/connectors/fixtureLibrary.d.ts +21 -0
- package/dist/connectors/fixtureLibrary.js +70 -0
- package/dist/connectors/fixtureLibrary.js.map +1 -0
- package/dist/connectors/fixtureRecorder.d.ts +1 -0
- package/dist/connectors/fixtureRecorder.js +35 -0
- package/dist/connectors/fixtureRecorder.js.map +1 -0
- package/dist/connectors/github.js +17 -18
- package/dist/connectors/github.js.map +1 -1
- package/dist/connectors/gitlab.d.ts +180 -0
- package/dist/connectors/gitlab.js +582 -0
- package/dist/connectors/gitlab.js.map +1 -0
- package/dist/connectors/gmail.d.ts +4 -1
- package/dist/connectors/gmail.js +157 -27
- package/dist/connectors/gmail.js.map +1 -1
- package/dist/connectors/googleCalendar.d.ts +4 -1
- package/dist/connectors/googleCalendar.js +88 -25
- package/dist/connectors/googleCalendar.js.map +1 -1
- package/dist/connectors/googleDrive.d.ts +34 -0
- package/dist/connectors/googleDrive.js +321 -0
- package/dist/connectors/googleDrive.js.map +1 -0
- package/dist/connectors/htmlEscape.d.ts +5 -0
- package/dist/connectors/htmlEscape.js +13 -0
- package/dist/connectors/htmlEscape.js.map +1 -0
- package/dist/connectors/hubspot.d.ts +112 -0
- package/dist/connectors/hubspot.js +408 -0
- package/dist/connectors/hubspot.js.map +1 -0
- package/dist/connectors/intercom.d.ts +102 -0
- package/dist/connectors/intercom.js +402 -0
- package/dist/connectors/intercom.js.map +1 -0
- package/dist/connectors/jira.d.ts +98 -0
- package/dist/connectors/jira.js +379 -0
- package/dist/connectors/jira.js.map +1 -0
- package/dist/connectors/linear.js +30 -19
- package/dist/connectors/linear.js.map +1 -1
- package/dist/connectors/mcpOAuth.d.ts +3 -0
- package/dist/connectors/mcpOAuth.js +64 -10
- package/dist/connectors/mcpOAuth.js.map +1 -1
- package/dist/connectors/mockConnector.d.ts +28 -0
- package/dist/connectors/mockConnector.js +81 -0
- package/dist/connectors/mockConnector.js.map +1 -0
- package/dist/connectors/notion.d.ts +143 -0
- package/dist/connectors/notion.js +424 -0
- package/dist/connectors/notion.js.map +1 -0
- package/dist/connectors/oauthStateStore.d.ts +31 -0
- package/dist/connectors/oauthStateStore.js +52 -0
- package/dist/connectors/oauthStateStore.js.map +1 -0
- package/dist/connectors/pagerduty.d.ts +160 -0
- package/dist/connectors/pagerduty.js +464 -0
- package/dist/connectors/pagerduty.js.map +1 -0
- package/dist/connectors/sentry.js +5 -13
- package/dist/connectors/sentry.js.map +1 -1
- package/dist/connectors/slack.d.ts +16 -1
- package/dist/connectors/slack.js +155 -32
- package/dist/connectors/slack.js.map +1 -1
- package/dist/connectors/stripe.d.ts +116 -0
- package/dist/connectors/stripe.js +379 -0
- package/dist/connectors/stripe.js.map +1 -0
- package/dist/connectors/tokenStorage.d.ts +35 -0
- package/dist/connectors/tokenStorage.js +484 -0
- package/dist/connectors/tokenStorage.js.map +1 -0
- package/dist/connectors/zendesk.d.ts +104 -0
- package/dist/connectors/zendesk.js +442 -0
- package/dist/connectors/zendesk.js.map +1 -0
- package/dist/cors.d.ts +10 -0
- package/dist/cors.js +29 -0
- package/dist/cors.js.map +1 -0
- package/dist/decisionReplay.d.ts +72 -0
- package/dist/decisionReplay.js +92 -0
- package/dist/decisionReplay.js.map +1 -0
- package/dist/decisionTraceLog.d.ts +6 -0
- package/dist/decisionTraceLog.js +54 -2
- package/dist/decisionTraceLog.js.map +1 -1
- package/dist/drivers/gemini/index.d.ts +5 -1
- package/dist/drivers/gemini/index.js +39 -5
- package/dist/drivers/gemini/index.js.map +1 -1
- package/dist/drivers/index.d.ts +5 -0
- package/dist/drivers/index.js +1 -1
- package/dist/drivers/index.js.map +1 -1
- package/dist/featureFlags.d.ts +79 -0
- package/dist/featureFlags.js +208 -0
- package/dist/featureFlags.js.map +1 -0
- package/dist/fp/automationInterpreter.js +26 -21
- package/dist/fp/automationInterpreter.js.map +1 -1
- package/dist/fp/automationProgram.d.ts +1 -1
- package/dist/fp/automationProgram.js.map +1 -1
- package/dist/fp/automationState.js +4 -1
- package/dist/fp/automationState.js.map +1 -1
- package/dist/fp/policyParser.js +21 -1
- package/dist/fp/policyParser.js.map +1 -1
- package/dist/inboxRoutes.d.ts +22 -0
- package/dist/inboxRoutes.js +114 -0
- package/dist/inboxRoutes.js.map +1 -0
- package/dist/index.js +1400 -201
- package/dist/index.js.map +1 -1
- package/dist/installGuard.d.ts +25 -0
- package/dist/installGuard.js +48 -0
- package/dist/installGuard.js.map +1 -0
- package/dist/mcpRoutes.d.ts +37 -0
- package/dist/mcpRoutes.js +76 -0
- package/dist/mcpRoutes.js.map +1 -0
- package/dist/oauth.d.ts +7 -1
- package/dist/oauth.js +201 -39
- package/dist/oauth.js.map +1 -1
- package/dist/oauthRoutes.d.ts +32 -0
- package/dist/oauthRoutes.js +124 -0
- package/dist/oauthRoutes.js.map +1 -0
- package/dist/orchestrator/orchestratorBridge.js +2 -2
- package/dist/orchestrator/orchestratorBridge.js.map +1 -1
- package/dist/patchworkConfig.d.ts +16 -0
- package/dist/patchworkConfig.js +1 -1
- package/dist/patchworkConfig.js.map +1 -1
- package/dist/pluginLoader.d.ts +28 -0
- package/dist/pluginLoader.js +77 -11
- package/dist/pluginLoader.js.map +1 -1
- package/dist/pluginWatcher.js +8 -3
- package/dist/pluginWatcher.js.map +1 -1
- package/dist/preToolUseHook.d.ts +12 -0
- package/dist/preToolUseHook.js +23 -0
- package/dist/preToolUseHook.js.map +1 -1
- package/dist/recipeOrchestration.d.ts +121 -0
- package/dist/recipeOrchestration.js +955 -0
- package/dist/recipeOrchestration.js.map +1 -0
- package/dist/recipeRoutes.d.ts +180 -0
- package/dist/recipeRoutes.js +1345 -0
- package/dist/recipeRoutes.js.map +1 -0
- package/dist/recipes/RecipeOrchestrator.d.ts +40 -0
- package/dist/recipes/RecipeOrchestrator.js +51 -0
- package/dist/recipes/RecipeOrchestrator.js.map +1 -0
- package/dist/recipes/agentExecutor.d.ts +29 -0
- package/dist/recipes/agentExecutor.js +49 -0
- package/dist/recipes/agentExecutor.js.map +1 -0
- package/dist/recipes/chainedRunner.d.ts +191 -0
- package/dist/recipes/chainedRunner.js +759 -0
- package/dist/recipes/chainedRunner.js.map +1 -0
- package/dist/recipes/compiler.js +3 -3
- package/dist/recipes/compiler.js.map +1 -1
- package/dist/recipes/dependencyGraph.d.ts +39 -0
- package/dist/recipes/dependencyGraph.js +199 -0
- package/dist/recipes/dependencyGraph.js.map +1 -0
- package/dist/recipes/disabledMarkers.d.ts +48 -0
- package/dist/recipes/disabledMarkers.js +52 -0
- package/dist/recipes/disabledMarkers.js.map +1 -0
- package/dist/recipes/installer.js +3 -3
- package/dist/recipes/installer.js.map +1 -1
- package/dist/recipes/legacyRecipeCompat.d.ts +10 -0
- package/dist/recipes/legacyRecipeCompat.js +131 -0
- package/dist/recipes/legacyRecipeCompat.js.map +1 -0
- package/dist/recipes/manifest.d.ts +47 -0
- package/dist/recipes/manifest.js +156 -0
- package/dist/recipes/manifest.js.map +1 -0
- package/dist/recipes/migrationWarnings.d.ts +12 -0
- package/dist/recipes/migrationWarnings.js +44 -0
- package/dist/recipes/migrationWarnings.js.map +1 -0
- package/dist/recipes/migrations/index.d.ts +24 -0
- package/dist/recipes/migrations/index.js +55 -0
- package/dist/recipes/migrations/index.js.map +1 -0
- package/dist/recipes/migrations/types.d.ts +28 -0
- package/dist/recipes/migrations/types.js +2 -0
- package/dist/recipes/migrations/types.js.map +1 -0
- package/dist/recipes/migrations/v1.d.ts +11 -0
- package/dist/recipes/migrations/v1.js +18 -0
- package/dist/recipes/migrations/v1.js.map +1 -0
- package/dist/recipes/names.d.ts +40 -0
- package/dist/recipes/names.js +66 -0
- package/dist/recipes/names.js.map +1 -0
- package/dist/recipes/nestedRecipeStep.d.ts +58 -0
- package/dist/recipes/nestedRecipeStep.js +95 -0
- package/dist/recipes/nestedRecipeStep.js.map +1 -0
- package/dist/recipes/outputRegistry.d.ts +28 -0
- package/dist/recipes/outputRegistry.js +52 -0
- package/dist/recipes/outputRegistry.js.map +1 -0
- package/dist/recipes/parser.js +4 -1
- package/dist/recipes/parser.js.map +1 -1
- package/dist/recipes/replayRun.d.ts +62 -0
- package/dist/recipes/replayRun.js +97 -0
- package/dist/recipes/replayRun.js.map +1 -0
- package/dist/recipes/resolveRecipePath.d.ts +69 -0
- package/dist/recipes/resolveRecipePath.js +202 -0
- package/dist/recipes/resolveRecipePath.js.map +1 -0
- package/dist/recipes/scheduler.d.ts +23 -7
- package/dist/recipes/scheduler.js +225 -45
- package/dist/recipes/scheduler.js.map +1 -1
- package/dist/recipes/schema.d.ts +17 -2
- package/dist/recipes/schemaGenerator.d.ts +28 -0
- package/dist/recipes/schemaGenerator.js +565 -0
- package/dist/recipes/schemaGenerator.js.map +1 -0
- package/dist/recipes/stepObservation.d.ts +44 -0
- package/dist/recipes/stepObservation.js +232 -0
- package/dist/recipes/stepObservation.js.map +1 -0
- package/dist/recipes/templateEngine.d.ts +62 -0
- package/dist/recipes/templateEngine.js +201 -0
- package/dist/recipes/templateEngine.js.map +1 -0
- package/dist/recipes/toolRegistry.d.ts +186 -0
- package/dist/recipes/toolRegistry.js +309 -0
- package/dist/recipes/toolRegistry.js.map +1 -0
- package/dist/recipes/tools/asana.d.ts +16 -0
- package/dist/recipes/tools/asana.js +524 -0
- package/dist/recipes/tools/asana.js.map +1 -0
- package/dist/recipes/tools/calendar.d.ts +6 -0
- package/dist/recipes/tools/calendar.js +61 -0
- package/dist/recipes/tools/calendar.js.map +1 -0
- package/dist/recipes/tools/confluence.d.ts +6 -0
- package/dist/recipes/tools/confluence.js +254 -0
- package/dist/recipes/tools/confluence.js.map +1 -0
- package/dist/recipes/tools/datadog.d.ts +6 -0
- package/dist/recipes/tools/datadog.js +239 -0
- package/dist/recipes/tools/datadog.js.map +1 -0
- package/dist/recipes/tools/diagnostics.d.ts +6 -0
- package/dist/recipes/tools/diagnostics.js +36 -0
- package/dist/recipes/tools/diagnostics.js.map +1 -0
- package/dist/recipes/tools/discord.d.ts +18 -0
- package/dist/recipes/tools/discord.js +254 -0
- package/dist/recipes/tools/discord.js.map +1 -0
- package/dist/recipes/tools/file.d.ts +12 -0
- package/dist/recipes/tools/file.js +174 -0
- package/dist/recipes/tools/file.js.map +1 -0
- package/dist/recipes/tools/git.d.ts +6 -0
- package/dist/recipes/tools/git.js +63 -0
- package/dist/recipes/tools/git.js.map +1 -0
- package/dist/recipes/tools/github.d.ts +6 -0
- package/dist/recipes/tools/github.js +116 -0
- package/dist/recipes/tools/github.js.map +1 -0
- package/dist/recipes/tools/gitlab.d.ts +11 -0
- package/dist/recipes/tools/gitlab.js +285 -0
- package/dist/recipes/tools/gitlab.js.map +1 -0
- package/dist/recipes/tools/gmail.d.ts +6 -0
- package/dist/recipes/tools/gmail.js +434 -0
- package/dist/recipes/tools/gmail.js.map +1 -0
- package/dist/recipes/tools/googleDrive.d.ts +1 -0
- package/dist/recipes/tools/googleDrive.js +55 -0
- package/dist/recipes/tools/googleDrive.js.map +1 -0
- package/dist/recipes/tools/hubspot.d.ts +6 -0
- package/dist/recipes/tools/hubspot.js +232 -0
- package/dist/recipes/tools/hubspot.js.map +1 -0
- package/dist/recipes/tools/index.d.ts +30 -0
- package/dist/recipes/tools/index.js +33 -0
- package/dist/recipes/tools/index.js.map +1 -0
- package/dist/recipes/tools/intercom.d.ts +6 -0
- package/dist/recipes/tools/intercom.js +226 -0
- package/dist/recipes/tools/intercom.js.map +1 -0
- package/dist/recipes/tools/jira.d.ts +14 -0
- package/dist/recipes/tools/jira.js +369 -0
- package/dist/recipes/tools/jira.js.map +1 -0
- package/dist/recipes/tools/linear.d.ts +7 -0
- package/dist/recipes/tools/linear.js +307 -0
- package/dist/recipes/tools/linear.js.map +1 -0
- package/dist/recipes/tools/meetingNotes.d.ts +21 -0
- package/dist/recipes/tools/meetingNotes.js +701 -0
- package/dist/recipes/tools/meetingNotes.js.map +1 -0
- package/dist/recipes/tools/notion.d.ts +6 -0
- package/dist/recipes/tools/notion.js +278 -0
- package/dist/recipes/tools/notion.js.map +1 -0
- package/dist/recipes/tools/pagerduty.d.ts +15 -0
- package/dist/recipes/tools/pagerduty.js +451 -0
- package/dist/recipes/tools/pagerduty.js.map +1 -0
- package/dist/recipes/tools/sentry.d.ts +12 -0
- package/dist/recipes/tools/sentry.js +73 -0
- package/dist/recipes/tools/sentry.js.map +1 -0
- package/dist/recipes/tools/slack.d.ts +6 -0
- package/dist/recipes/tools/slack.js +82 -0
- package/dist/recipes/tools/slack.js.map +1 -0
- package/dist/recipes/tools/stripe.d.ts +6 -0
- package/dist/recipes/tools/stripe.js +265 -0
- package/dist/recipes/tools/stripe.js.map +1 -0
- package/dist/recipes/tools/zendesk.d.ts +6 -0
- package/dist/recipes/tools/zendesk.js +245 -0
- package/dist/recipes/tools/zendesk.js.map +1 -0
- package/dist/recipes/validation.d.ts +13 -0
- package/dist/recipes/validation.js +617 -0
- package/dist/recipes/validation.js.map +1 -0
- package/dist/recipes/yamlRunner.d.ts +116 -1
- package/dist/recipes/yamlRunner.js +1000 -401
- package/dist/recipes/yamlRunner.js.map +1 -1
- package/dist/recipesHttp.d.ts +137 -6
- package/dist/recipesHttp.js +941 -29
- package/dist/recipesHttp.js.map +1 -1
- package/dist/riskTier.js +7 -1
- package/dist/riskTier.js.map +1 -1
- package/dist/runLog.d.ts +100 -1
- package/dist/runLog.js +258 -5
- package/dist/runLog.js.map +1 -1
- package/dist/schemas/dry-run-plan.v1.json +139 -0
- package/dist/schemas/recipe.v1.json +684 -0
- package/dist/server.d.ts +121 -8
- package/dist/server.js +538 -735
- package/dist/server.js.map +1 -1
- package/dist/ssrfGuard.d.ts +54 -0
- package/dist/ssrfGuard.js +122 -0
- package/dist/ssrfGuard.js.map +1 -0
- package/dist/streamableHttp.d.ts +39 -1
- package/dist/streamableHttp.js +128 -17
- package/dist/streamableHttp.js.map +1 -1
- package/dist/tokenUsageTracker.d.ts +33 -0
- package/dist/tokenUsageTracker.js +146 -0
- package/dist/tokenUsageTracker.js.map +1 -0
- package/dist/tools/activityLog.d.ts +2 -0
- package/dist/tools/addLinearComment.d.ts +1 -0
- package/dist/tools/addLinearComment.js +4 -2
- package/dist/tools/addLinearComment.js.map +1 -1
- package/dist/tools/batchLsp.d.ts +3 -0
- package/dist/tools/bridgeDoctor.d.ts +1 -0
- package/dist/tools/bridgeDoctor.js +2 -2
- package/dist/tools/bridgeDoctor.js.map +1 -1
- package/dist/tools/bridgeStatus.d.ts +1 -0
- package/dist/tools/cancelClaudeTask.d.ts +2 -0
- package/dist/tools/cancelClaudeTask.js +1 -0
- package/dist/tools/cancelClaudeTask.js.map +1 -1
- package/dist/tools/checkDocumentDirty.d.ts +1 -0
- package/dist/tools/clipboard.d.ts +2 -0
- package/dist/tools/closeTabs.d.ts +2 -0
- package/dist/tools/codeLens.d.ts +1 -0
- package/dist/tools/contextBundle.d.ts +1 -0
- package/dist/tools/createIssueFromAIComment.d.ts +1 -0
- package/dist/tools/createLinearIssue.d.ts +1 -0
- package/dist/tools/ctxGetTaskContext.d.ts +1 -0
- package/dist/tools/ctxQueryTraces.d.ts +1 -0
- package/dist/tools/ctxSaveTrace.d.ts +1 -0
- package/dist/tools/debug.d.ts +4 -0
- package/dist/tools/decorations.d.ts +2 -0
- package/dist/tools/documentLinks.d.ts +1 -0
- package/dist/tools/editText.d.ts +1 -0
- package/dist/tools/enrichCommit.d.ts +1 -0
- package/dist/tools/enrichStackTrace.d.ts +1 -0
- package/dist/tools/explainDiagnostic.d.ts +1 -0
- package/dist/tools/explainSymbol.d.ts +1 -0
- package/dist/tools/fetchCalendarEvents.d.ts +1 -0
- package/dist/tools/fetchGithubIssue.d.ts +1 -0
- package/dist/tools/fetchGithubPR.d.ts +1 -0
- package/dist/tools/fetchLinearIssue.d.ts +1 -0
- package/dist/tools/fetchSentryIssue.d.ts +1 -0
- package/dist/tools/fetchSlackProfile.d.ts +1 -0
- package/dist/tools/fetchSlackProfile.js +4 -1
- package/dist/tools/fetchSlackProfile.js.map +1 -1
- package/dist/tools/fileOperations.d.ts +3 -0
- package/dist/tools/fileWatcher.d.ts +2 -0
- package/dist/tools/findFiles.d.ts +1 -0
- package/dist/tools/findRelatedTests.d.ts +1 -0
- package/dist/tools/fixAllLintErrors.d.ts +1 -0
- package/dist/tools/foldingRanges.d.ts +1 -0
- package/dist/tools/formatDocument.d.ts +1 -0
- package/dist/tools/generateTests.d.ts +1 -0
- package/dist/tools/getAIComments.d.ts +1 -0
- package/dist/tools/getAnalyticsReport.d.ts +1 -0
- package/dist/tools/getArchitectureContext.d.ts +1 -0
- package/dist/tools/getBufferContent.d.ts +1 -0
- package/dist/tools/getChangeImpact.d.ts +1 -0
- package/dist/tools/getClaudeTaskStatus.d.ts +2 -0
- package/dist/tools/getClaudeTaskStatus.js +1 -0
- package/dist/tools/getClaudeTaskStatus.js.map +1 -1
- package/dist/tools/getCodeCoverage.d.ts +1 -0
- package/dist/tools/getCommitsForIssue.d.ts +1 -0
- package/dist/tools/getConnectorStatus.d.ts +1 -0
- package/dist/tools/getCurrentSelection.d.ts +2 -0
- package/dist/tools/getDebugState.d.ts +1 -0
- package/dist/tools/getDependencyTree.d.ts +1 -0
- package/dist/tools/getDiagnostics.d.ts +1 -0
- package/dist/tools/getDiffFromHandoff.d.ts +1 -0
- package/dist/tools/getDocumentSymbols.d.ts +25 -0
- package/dist/tools/getDocumentSymbols.js +74 -8
- package/dist/tools/getDocumentSymbols.js.map +1 -1
- package/dist/tools/getFileTree.d.ts +1 -0
- package/dist/tools/getGitDiff.d.ts +1 -0
- package/dist/tools/getGitHotspots.d.ts +1 -0
- package/dist/tools/getGitLog.d.ts +1 -0
- package/dist/tools/getGitStatus.d.ts +1 -0
- package/dist/tools/getImportTree.d.ts +1 -0
- package/dist/tools/getImportedSignatures.d.ts +1 -0
- package/dist/tools/getOpenEditors.d.ts +1 -0
- package/dist/tools/getPRTemplate.d.ts +1 -0
- package/dist/tools/getProjectContext.d.ts +1 -0
- package/dist/tools/getProjectInfo.d.ts +1 -0
- package/dist/tools/getSecurityAdvisories.d.ts +1 -0
- package/dist/tools/getSecurityAdvisories.js +10 -1
- package/dist/tools/getSecurityAdvisories.js.map +1 -1
- package/dist/tools/getSessionUsage.d.ts +4 -0
- package/dist/tools/getSessionUsage.js +3 -0
- package/dist/tools/getSessionUsage.js.map +1 -1
- package/dist/tools/getSymbolHistory.d.ts +1 -0
- package/dist/tools/getToolCapabilities.d.ts +1 -0
- package/dist/tools/getTypeSignature.d.ts +1 -0
- package/dist/tools/getWorkspaceFolders.d.ts +1 -0
- package/dist/tools/getWorkspaceSettings.d.ts +1 -0
- package/dist/tools/gitHistory.d.ts +2 -0
- package/dist/tools/gitWrite.d.ts +11 -0
- package/dist/tools/github/actions.d.ts +2 -0
- package/dist/tools/github/actions.js +4 -2
- package/dist/tools/github/actions.js.map +1 -1
- package/dist/tools/github/composite.d.ts +342 -0
- package/dist/tools/github/composite.js +343 -0
- package/dist/tools/github/composite.js.map +1 -0
- package/dist/tools/github/index.d.ts +1 -0
- package/dist/tools/github/index.js +1 -0
- package/dist/tools/github/index.js.map +1 -1
- package/dist/tools/github/issues.d.ts +4 -0
- package/dist/tools/github/issues.js +8 -4
- package/dist/tools/github/issues.js.map +1 -1
- package/dist/tools/github/pr.d.ts +7 -0
- package/dist/tools/github/pr.js +50 -12
- package/dist/tools/github/pr.js.map +1 -1
- package/dist/tools/handoffNote.d.ts +4 -0
- package/dist/tools/handoffNote.js +2 -0
- package/dist/tools/handoffNote.js.map +1 -1
- package/dist/tools/hoverAtCursor.d.ts +1 -0
- package/dist/tools/httpClient.d.ts +2 -0
- package/dist/tools/index.d.ts +8 -0
- package/dist/tools/index.js +47 -8
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/inlayHints.d.ts +1 -0
- package/dist/tools/launchQuickTask.d.ts +2 -0
- package/dist/tools/launchQuickTask.js +1 -0
- package/dist/tools/launchQuickTask.js.map +1 -1
- package/dist/tools/listClaudeTasks.d.ts +2 -0
- package/dist/tools/listClaudeTasks.js +1 -0
- package/dist/tools/listClaudeTasks.js.map +1 -1
- package/dist/tools/listTerminals.d.ts +1 -0
- package/dist/tools/lsp.d.ts +14 -0
- package/dist/tools/navigateToSymbolByName.d.ts +1 -0
- package/dist/tools/openDiff.d.ts +1 -0
- package/dist/tools/openFile.d.ts +1 -0
- package/dist/tools/openInBrowser.d.ts +1 -0
- package/dist/tools/organizeImports.d.ts +1 -0
- package/dist/tools/performanceReport.d.ts +1 -0
- package/dist/tools/planPersistence.d.ts +5 -0
- package/dist/tools/previewEdit.d.ts +1 -0
- package/dist/tools/refactorAnalyze.d.ts +1 -0
- package/dist/tools/refactorPreview.d.ts +2 -0
- package/dist/tools/refactorPreview.js +1 -0
- package/dist/tools/refactorPreview.js.map +1 -1
- package/dist/tools/replaceBlock.d.ts +1 -0
- package/dist/tools/resumeClaudeTask.d.ts +2 -0
- package/dist/tools/resumeClaudeTask.js +1 -0
- package/dist/tools/resumeClaudeTask.js.map +1 -1
- package/dist/tools/runClaudeTask.d.ts +2 -0
- package/dist/tools/runClaudeTask.js +1 -0
- package/dist/tools/runClaudeTask.js.map +1 -1
- package/dist/tools/runCommand.d.ts +1 -0
- package/dist/tools/runTests.d.ts +1 -0
- package/dist/tools/saveDocument.d.ts +1 -0
- package/dist/tools/screenshotAndAnnotate.d.ts +1 -0
- package/dist/tools/searchAndReplace.d.ts +1 -0
- package/dist/tools/searchTools.d.ts +1 -0
- package/dist/tools/searchTools.js +1 -1
- package/dist/tools/searchTools.js.map +1 -1
- package/dist/tools/searchWorkspace.d.ts +1 -0
- package/dist/tools/selectionRanges.d.ts +1 -0
- package/dist/tools/semanticTokens.d.ts +1 -0
- package/dist/tools/setActiveWorkspaceFolder.d.ts +1 -0
- package/dist/tools/signatureHelp.d.ts +1 -0
- package/dist/tools/slackListChannels.d.ts +1 -0
- package/dist/tools/slackListChannels.js.map +1 -1
- package/dist/tools/slackPostMessage.d.ts +1 -0
- package/dist/tools/slackPostMessage.js +11 -6
- package/dist/tools/slackPostMessage.js.map +1 -1
- package/dist/tools/terminal.d.ts +6 -0
- package/dist/tools/testTraceToSource.d.ts +1 -0
- package/dist/tools/testTraceToSource.js +2 -2
- package/dist/tools/testTraceToSource.js.map +1 -1
- package/dist/tools/transaction.d.ts +23 -0
- package/dist/tools/transaction.js +29 -0
- package/dist/tools/transaction.js.map +1 -1
- package/dist/tools/typeHierarchy.d.ts +1 -0
- package/dist/tools/updateLinearIssue.d.ts +1 -0
- package/dist/tools/updateLinearIssue.js +20 -6
- package/dist/tools/updateLinearIssue.js.map +1 -1
- package/dist/tools/utils.d.ts +2 -0
- package/dist/tools/utils.js.map +1 -1
- package/dist/tools/vscodeCommands.d.ts +2 -0
- package/dist/tools/vscodeTasks.d.ts +2 -0
- package/dist/tools/workspaceSettings.d.ts +1 -0
- package/dist/traceEncryption.d.ts +46 -0
- package/dist/traceEncryption.js +124 -0
- package/dist/traceEncryption.js.map +1 -0
- package/dist/transport.d.ts +46 -1
- package/dist/transport.js +173 -19
- package/dist/transport.js.map +1 -1
- package/package.json +30 -8
- package/scripts/mcp-stdio-shim.cjs +19 -3
- package/scripts/start-all.sh +30 -1
- package/templates/automation-policies/recipe-authoring.json +25 -0
- package/templates/automation-policy.example.json +6 -0
- package/templates/co.patchwork-os.bridge.plist +34 -0
- package/templates/policies/README.md +72 -0
- package/templates/policies/conservative.json +14 -0
- package/templates/policies/developer.json +14 -0
- package/templates/policies/headless-ci.json +24 -0
- package/templates/policies/personal-assistant.json +15 -0
- package/templates/policies/regulated-industry.json +18 -0
- package/templates/recipes/lint-on-save.yaml +1 -2
- package/templates/recipes/morning-brief-slack.yaml +57 -0
- package/templates/recipes/morning-brief.yaml +2 -2
- package/templates/recipes/project-health-check.yaml +50 -0
- package/templates/recipes/webhook/README.md +70 -0
- package/templates/recipes/webhook/capture-thought.yaml +26 -0
- package/templates/recipes/webhook/customer-escalation.yaml +49 -0
- package/templates/recipes/webhook/incident-intake.yaml +46 -0
- package/templates/recipes/webhook/meeting-prep.yaml +48 -0
- package/templates/recipes/webhook/morning-brief.yaml +57 -0
package/dist/automation.js
CHANGED
|
@@ -88,8 +88,26 @@ function expandDiscriminatedHook(policy, unifiedKey, discriminatorKey, valueA, s
|
|
|
88
88
|
const hook = p[unifiedKey];
|
|
89
89
|
if (hook === undefined)
|
|
90
90
|
return;
|
|
91
|
+
// Array form: [{state:"error",...},{state:"cleared",...}] — expand each entry.
|
|
92
|
+
if (Array.isArray(hook)) {
|
|
93
|
+
p[unifiedKey] = undefined;
|
|
94
|
+
for (const entry of hook) {
|
|
95
|
+
if (typeof entry !== "object" || entry === null) {
|
|
96
|
+
throw new Error(`Each entry in "${unifiedKey}[]" must be an object`);
|
|
97
|
+
}
|
|
98
|
+
const disc = entry[discriminatorKey];
|
|
99
|
+
const { [discriminatorKey]: _d, ...rest } = entry;
|
|
100
|
+
if (disc === valueA)
|
|
101
|
+
p[slotA] = rest;
|
|
102
|
+
else if (disc === valueB)
|
|
103
|
+
p[slotB] = rest;
|
|
104
|
+
else
|
|
105
|
+
throw new Error(`"${unifiedKey}[].${discriminatorKey}" must be "${valueA}" or "${valueB}" (got ${JSON.stringify(disc)})`);
|
|
106
|
+
}
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
91
109
|
if (typeof hook !== "object" || hook === null) {
|
|
92
|
-
throw new Error(`"${unifiedKey}" must be an object`);
|
|
110
|
+
throw new Error(`"${unifiedKey}" must be an object or array`);
|
|
93
111
|
}
|
|
94
112
|
const discriminator = hook[discriminatorKey];
|
|
95
113
|
if (discriminator !== valueA && discriminator !== valueB) {
|
|
@@ -383,6 +401,28 @@ export function loadPolicy(filePath) {
|
|
|
383
401
|
}
|
|
384
402
|
fc.cooldownMs = Math.max(fc.cooldownMs, MIN_COOLDOWN_MS);
|
|
385
403
|
}
|
|
404
|
+
// Validate onRecipeSave
|
|
405
|
+
if (policy.onRecipeSave !== undefined) {
|
|
406
|
+
const rs = policy.onRecipeSave;
|
|
407
|
+
if (typeof rs !== "object" || rs === null) {
|
|
408
|
+
throw new Error(`"onRecipeSave" must be an object`);
|
|
409
|
+
}
|
|
410
|
+
if (typeof rs.enabled !== "boolean") {
|
|
411
|
+
throw new Error(`"onRecipeSave.enabled" must be a boolean`);
|
|
412
|
+
}
|
|
413
|
+
// cooldownMs is optional; default applied at parse time
|
|
414
|
+
if (rs.cooldownMs !== undefined) {
|
|
415
|
+
expectType(rs.cooldownMs, "number", "onRecipeSave.cooldownMs");
|
|
416
|
+
if (!Number.isFinite(rs.cooldownMs)) {
|
|
417
|
+
throw new Error(`"onRecipeSave.cooldownMs" must be a finite number`);
|
|
418
|
+
}
|
|
419
|
+
rs.cooldownMs = Math.max(rs.cooldownMs, MIN_COOLDOWN_MS);
|
|
420
|
+
}
|
|
421
|
+
// prompt/promptName optional — default prompt used when absent
|
|
422
|
+
if (rs.prompt !== undefined || rs.promptName !== undefined) {
|
|
423
|
+
validatePromptSource("onRecipeSave", rs);
|
|
424
|
+
}
|
|
425
|
+
}
|
|
386
426
|
// Validate onInstructionsLoaded (special: cooldownMs optional, min 5000)
|
|
387
427
|
if (policy.onInstructionsLoaded !== undefined) {
|
|
388
428
|
const il = policy.onInstructionsLoaded;
|
|
@@ -534,6 +574,68 @@ export class AutomationHooks {
|
|
|
534
574
|
}
|
|
535
575
|
}
|
|
536
576
|
}
|
|
577
|
+
/**
|
|
578
|
+
* Tracks whether `_lastRunPromise` represents a still-running interpreter
|
|
579
|
+
* call. When false, we know the prior promise is settled and can start the
|
|
580
|
+
* next run synchronously (preserving start-sync semantics tests depend on).
|
|
581
|
+
* When true, we chain via `.then()` so the new run reads the post-state of
|
|
582
|
+
* the prior one — fixing the race where two concurrent events both observed
|
|
583
|
+
* stale `_automationState` and the second writer clobbered the first.
|
|
584
|
+
*/
|
|
585
|
+
_chainBusy = false;
|
|
586
|
+
/**
|
|
587
|
+
* Enqueue an interpreter run, serializing it after any prior in-flight run.
|
|
588
|
+
*
|
|
589
|
+
* Concurrent events (e.g. a file save and a diagnostic update in the same
|
|
590
|
+
* tick) used to overwrite `_lastRunPromise`, so both runs read the same
|
|
591
|
+
* stale `_automationState` and the second writer's `updatedState` clobbered
|
|
592
|
+
* the first's. Cooldown/dedup writes from one event were silently lost;
|
|
593
|
+
* orphaned tasks accumulated in `activeTasks`.
|
|
594
|
+
*
|
|
595
|
+
* Chain through `_lastRunPromise` so each run sees the post-state of the
|
|
596
|
+
* previous one. We start the next run synchronously when the chain is idle
|
|
597
|
+
* (preserves the contract that `_runInterpreter` body executes up to its
|
|
598
|
+
* first await before this call returns); only when a run is in flight do
|
|
599
|
+
* we defer via `.then()`.
|
|
600
|
+
*/
|
|
601
|
+
_enqueueRun(eventType, eventData) {
|
|
602
|
+
if (this._chainBusy) {
|
|
603
|
+
this._lastRunPromise = this._lastRunPromise
|
|
604
|
+
.catch(() => { })
|
|
605
|
+
.then(() => {
|
|
606
|
+
this._chainBusy = true;
|
|
607
|
+
return this._runInterpreter(eventType, eventData);
|
|
608
|
+
})
|
|
609
|
+
.finally(() => {
|
|
610
|
+
this._chainBusy = false;
|
|
611
|
+
});
|
|
612
|
+
}
|
|
613
|
+
else {
|
|
614
|
+
this._chainBusy = true;
|
|
615
|
+
this._lastRunPromise = this._runInterpreter(eventType, eventData).finally(() => {
|
|
616
|
+
this._chainBusy = false;
|
|
617
|
+
});
|
|
618
|
+
}
|
|
619
|
+
}
|
|
620
|
+
/**
|
|
621
|
+
* Enqueue a synchronous state mutation to run after any in-flight
|
|
622
|
+
* interpreter call. Without this, handler-side `_automationState =
|
|
623
|
+
* setLatestDiagnostics(...)` writes done synchronously between
|
|
624
|
+
* `_enqueueRun` calls would be overwritten when the first run's
|
|
625
|
+
* `result.value.updatedState` writeback fires (the writeback replaces
|
|
626
|
+
* the full state, including the handler's incremental change).
|
|
627
|
+
*
|
|
628
|
+
* When the chain is idle, run the mutation synchronously to preserve
|
|
629
|
+
* test ergonomics that assume state is observable on the next line.
|
|
630
|
+
*/
|
|
631
|
+
_enqueueMutation(fn) {
|
|
632
|
+
if (this._chainBusy) {
|
|
633
|
+
this._lastRunPromise = this._lastRunPromise.catch(() => { }).then(fn);
|
|
634
|
+
}
|
|
635
|
+
else {
|
|
636
|
+
fn();
|
|
637
|
+
}
|
|
638
|
+
}
|
|
537
639
|
async _runInterpreter(eventType, eventData) {
|
|
538
640
|
if (!this._programAST || !this._interpreterBackend)
|
|
539
641
|
return;
|
|
@@ -613,7 +715,9 @@ export class AutomationHooks {
|
|
|
613
715
|
const rank = severityToNum[d.severity] ?? 3;
|
|
614
716
|
return rank < min ? rank : min;
|
|
615
717
|
}, 4); // 4 = no diagnostics / below hint
|
|
616
|
-
this.
|
|
718
|
+
this._enqueueMutation(() => {
|
|
719
|
+
this._automationState = setLatestDiagnostics(this._automationState, normalizedFile, maxSeverityNum, diagnostics.length);
|
|
720
|
+
});
|
|
617
721
|
// Build diagnostics text for {{diagnostics}} placeholder (capped at 20)
|
|
618
722
|
const diagsForPrompt = diagnostics.slice(0, 20);
|
|
619
723
|
const overflow = diagnostics.length - diagsForPrompt.length;
|
|
@@ -629,37 +733,26 @@ export class AutomationHooks {
|
|
|
629
733
|
.filter(Boolean)
|
|
630
734
|
.join(",");
|
|
631
735
|
const diagnosticSig = diagnosticSignature(diagnostics);
|
|
632
|
-
// Fire onDiagnosticsCleared if transitioning from non-zero → zero
|
|
633
|
-
//
|
|
736
|
+
// Fire onDiagnosticsCleared if transitioning from non-zero → zero. Two
|
|
737
|
+
// consecutive _enqueueRun calls append to the chain in order, so cleared
|
|
738
|
+
// settles before error and state is observed correctly.
|
|
634
739
|
if (prevErrorCount > 0 && currentErrorCount === 0) {
|
|
635
|
-
this.
|
|
636
|
-
file: normalizedFile,
|
|
637
|
-
}).then(() => this._runInterpreter("onDiagnosticsError", {
|
|
638
|
-
file: normalizedFile,
|
|
639
|
-
diagnostics: diagnosticsText,
|
|
640
|
-
diagnosticSources,
|
|
641
|
-
diagnosticSig,
|
|
642
|
-
count: String(diagnostics.length),
|
|
643
|
-
}));
|
|
644
|
-
}
|
|
645
|
-
else {
|
|
646
|
-
this._lastRunPromise = this._runInterpreter("onDiagnosticsError", {
|
|
647
|
-
file: normalizedFile,
|
|
648
|
-
diagnostics: diagnosticsText,
|
|
649
|
-
diagnosticSources,
|
|
650
|
-
diagnosticSig,
|
|
651
|
-
count: String(diagnostics.length),
|
|
652
|
-
});
|
|
740
|
+
this._enqueueRun("onDiagnosticsCleared", { file: normalizedFile });
|
|
653
741
|
}
|
|
742
|
+
this._enqueueRun("onDiagnosticsError", {
|
|
743
|
+
file: normalizedFile,
|
|
744
|
+
diagnostics: diagnosticsText,
|
|
745
|
+
diagnosticSources,
|
|
746
|
+
diagnosticSig,
|
|
747
|
+
count: String(diagnostics.length),
|
|
748
|
+
});
|
|
654
749
|
}
|
|
655
750
|
/**
|
|
656
751
|
* Called when Claude Code fires a CwdChanged hook (Claude Code 2.1.83+).
|
|
657
752
|
* Fires when CC's working directory changes — useful for re-snapshotting workspace context.
|
|
658
753
|
*/
|
|
659
754
|
handleCwdChanged(newCwd) {
|
|
660
|
-
this.
|
|
661
|
-
cwd: newCwd,
|
|
662
|
-
});
|
|
755
|
+
this._enqueueRun("onCwdChanged", { cwd: newCwd });
|
|
663
756
|
}
|
|
664
757
|
/**
|
|
665
758
|
* Called when Claude Code fires a PreCompact hook.
|
|
@@ -667,29 +760,31 @@ export class AutomationHooks {
|
|
|
667
760
|
* write a handoff note before Claude loses context.
|
|
668
761
|
*/
|
|
669
762
|
handlePreCompact() {
|
|
670
|
-
this.
|
|
763
|
+
this._enqueueRun("onPreCompact", {});
|
|
671
764
|
}
|
|
672
765
|
/**
|
|
673
766
|
* Called when Claude Code fires a PostCompact hook (Claude Code 2.1.76+).
|
|
674
767
|
* Re-enqueues the configured prompt so Claude can re-snapshot IDE state after losing context.
|
|
675
768
|
*/
|
|
676
769
|
handlePostCompact() {
|
|
677
|
-
this.
|
|
770
|
+
this._enqueueRun("onPostCompact", {});
|
|
678
771
|
}
|
|
679
772
|
/**
|
|
680
773
|
* Called when Claude Code fires an InstructionsLoaded hook (Claude Code 2.1.76+).
|
|
681
774
|
* Fires once per session; injects bridge status / tool capability summary at start.
|
|
682
775
|
*/
|
|
683
776
|
handleInstructionsLoaded() {
|
|
684
|
-
this.
|
|
777
|
+
this._enqueueRun("onInstructionsLoaded", {});
|
|
685
778
|
}
|
|
686
779
|
handleFileSaved(_id, type, file) {
|
|
687
780
|
if (type !== "save")
|
|
688
781
|
return;
|
|
689
782
|
const normalizedFile = path.resolve(file);
|
|
690
|
-
this.
|
|
691
|
-
|
|
692
|
-
|
|
783
|
+
this._enqueueRun("onFileSave", { file: normalizedFile });
|
|
784
|
+
// Also fire onRecipeSave for .yaml files
|
|
785
|
+
if (normalizedFile.endsWith(".yaml") || normalizedFile.endsWith(".yml")) {
|
|
786
|
+
this._enqueueRun("onRecipeSave", { file: normalizedFile });
|
|
787
|
+
}
|
|
693
788
|
}
|
|
694
789
|
/**
|
|
695
790
|
* Called when the VS Code extension reports a file-changed event (type === "change").
|
|
@@ -700,9 +795,7 @@ export class AutomationHooks {
|
|
|
700
795
|
if (type !== "change")
|
|
701
796
|
return;
|
|
702
797
|
const normalizedFile = path.resolve(file);
|
|
703
|
-
this.
|
|
704
|
-
file: normalizedFile,
|
|
705
|
-
});
|
|
798
|
+
this._enqueueRun("onFileChanged", { file: normalizedFile });
|
|
706
799
|
}
|
|
707
800
|
/**
|
|
708
801
|
* Called after every runTests tool invocation completes.
|
|
@@ -717,8 +810,11 @@ export class AutomationHooks {
|
|
|
717
810
|
for (const runner of result.runners) {
|
|
718
811
|
const prev = this.lastTestOutcomeByRunner.get(runner);
|
|
719
812
|
this.lastTestOutcomeByRunner.set(runner, current);
|
|
720
|
-
// Feed interpreter state
|
|
721
|
-
|
|
813
|
+
// Feed interpreter state through the chain so the writeback from any
|
|
814
|
+
// in-flight `_runInterpreter` doesn't clobber it.
|
|
815
|
+
this._enqueueMutation(() => {
|
|
816
|
+
this._automationState = setTestRunnerStatus(this._automationState, runner, current);
|
|
817
|
+
});
|
|
722
818
|
if (prev === "fail" && current === "pass") {
|
|
723
819
|
passAfterFailRunners.push(runner);
|
|
724
820
|
}
|
|
@@ -731,26 +827,20 @@ export class AutomationHooks {
|
|
|
731
827
|
failures: JSON.stringify(result.failures.slice(0, 100)),
|
|
732
828
|
durationMs: String(result.summary.durationMs ?? ""),
|
|
733
829
|
};
|
|
734
|
-
//
|
|
735
|
-
//
|
|
736
|
-
//
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
for (const runner of passAfterFailRunners) {
|
|
740
|
-
chain = chain.then(() => this._runInterpreter("onTestPassAfterFailure", { runner }));
|
|
741
|
-
}
|
|
742
|
-
this._lastRunPromise = chain.then(() => this._runInterpreter("onTestRun", testRunEventData));
|
|
743
|
-
}
|
|
744
|
-
else {
|
|
745
|
-
this._lastRunPromise = this._runInterpreter("onTestRun", testRunEventData);
|
|
830
|
+
// Enqueue per-runner pass-after-fail transitions first so their cooldown
|
|
831
|
+
// state is visible to the subsequent onTestRun. Each _enqueueRun appends
|
|
832
|
+
// to the shared chain in order.
|
|
833
|
+
for (const runner of passAfterFailRunners) {
|
|
834
|
+
this._enqueueRun("onTestPassAfterFailure", { runner });
|
|
746
835
|
}
|
|
836
|
+
this._enqueueRun("onTestRun", testRunEventData);
|
|
747
837
|
}
|
|
748
838
|
/**
|
|
749
839
|
* Called after a successful gitCommit tool call.
|
|
750
840
|
* Fires the onGitCommit automation hook if configured.
|
|
751
841
|
*/
|
|
752
842
|
async handleGitCommit(result) {
|
|
753
|
-
this.
|
|
843
|
+
this._enqueueRun("onGitCommit", {
|
|
754
844
|
hash: result.hash,
|
|
755
845
|
branch: result.branch,
|
|
756
846
|
message: result.message,
|
|
@@ -763,7 +853,7 @@ export class AutomationHooks {
|
|
|
763
853
|
* Fires the onGitPush automation hook if configured.
|
|
764
854
|
*/
|
|
765
855
|
handleGitPush(result) {
|
|
766
|
-
this.
|
|
856
|
+
this._enqueueRun("onGitPush", {
|
|
767
857
|
branch: result.branch,
|
|
768
858
|
remote: result.remote,
|
|
769
859
|
hash: result.hash,
|
|
@@ -773,7 +863,7 @@ export class AutomationHooks {
|
|
|
773
863
|
* Fires the onGitPull automation hook if configured.
|
|
774
864
|
*/
|
|
775
865
|
handleGitPull(result) {
|
|
776
|
-
this.
|
|
866
|
+
this._enqueueRun("onGitPull", {
|
|
777
867
|
branch: result.branch,
|
|
778
868
|
remote: result.remote,
|
|
779
869
|
});
|
|
@@ -783,7 +873,7 @@ export class AutomationHooks {
|
|
|
783
873
|
* Fires the onBranchCheckout automation hook if configured.
|
|
784
874
|
*/
|
|
785
875
|
handleBranchCheckout(result) {
|
|
786
|
-
this.
|
|
876
|
+
this._enqueueRun("onBranchCheckout", {
|
|
787
877
|
branch: result.branch,
|
|
788
878
|
previousBranch: result.previousBranch ?? "(detached HEAD)",
|
|
789
879
|
created: String(result.created),
|
|
@@ -793,7 +883,7 @@ export class AutomationHooks {
|
|
|
793
883
|
* Fires the onPullRequest automation hook if configured.
|
|
794
884
|
*/
|
|
795
885
|
handlePullRequest(result) {
|
|
796
|
-
this.
|
|
886
|
+
this._enqueueRun("onPullRequest", {
|
|
797
887
|
title: result.title,
|
|
798
888
|
url: result.url,
|
|
799
889
|
branch: result.branch,
|
|
@@ -801,13 +891,13 @@ export class AutomationHooks {
|
|
|
801
891
|
});
|
|
802
892
|
}
|
|
803
893
|
handleTaskCreated(result) {
|
|
804
|
-
this.
|
|
894
|
+
this._enqueueRun("onTaskCreated", {
|
|
805
895
|
taskId: result.taskId,
|
|
806
896
|
prompt: result.prompt,
|
|
807
897
|
});
|
|
808
898
|
}
|
|
809
899
|
handlePermissionDenied(result) {
|
|
810
|
-
this.
|
|
900
|
+
this._enqueueRun("onPermissionDenied", {
|
|
811
901
|
tool: result.tool,
|
|
812
902
|
reason: result.reason,
|
|
813
903
|
});
|
|
@@ -817,7 +907,7 @@ export class AutomationHooks {
|
|
|
817
907
|
* Called internally by handleDiagnosticsChanged.
|
|
818
908
|
*/
|
|
819
909
|
handleDiagnosticsCleared(normalizedFile) {
|
|
820
|
-
this.
|
|
910
|
+
this._enqueueRun("onDiagnosticsCleared", {
|
|
821
911
|
file: normalizedFile,
|
|
822
912
|
diagnosticSig: "",
|
|
823
913
|
});
|
|
@@ -827,7 +917,7 @@ export class AutomationHooks {
|
|
|
827
917
|
* Call from bridge.ts when a task transitions to done.
|
|
828
918
|
*/
|
|
829
919
|
handleTaskSuccess(result) {
|
|
830
|
-
this.
|
|
920
|
+
this._enqueueRun("onTaskSuccess", {
|
|
831
921
|
taskId: result.taskId,
|
|
832
922
|
output: result.output,
|
|
833
923
|
});
|
|
@@ -837,7 +927,7 @@ export class AutomationHooks {
|
|
|
837
927
|
* Fires the onDebugSessionEnd automation hook if configured.
|
|
838
928
|
*/
|
|
839
929
|
async handleDebugSessionEnd(result) {
|
|
840
|
-
this.
|
|
930
|
+
this._enqueueRun("onDebugSessionEnd", {
|
|
841
931
|
sessionName: result.sessionName,
|
|
842
932
|
sessionType: result.sessionType,
|
|
843
933
|
});
|
|
@@ -847,7 +937,7 @@ export class AutomationHooks {
|
|
|
847
937
|
* Fires the onDebugSessionStart automation hook if configured.
|
|
848
938
|
*/
|
|
849
939
|
async handleDebugSessionStart(result) {
|
|
850
|
-
this.
|
|
940
|
+
this._enqueueRun("onDebugSessionStart", {
|
|
851
941
|
sessionName: result.sessionName,
|
|
852
942
|
sessionType: result.sessionType,
|
|
853
943
|
breakpointCount: String(result.breakpointCount),
|
|
@@ -983,6 +1073,12 @@ export class AutomationHooks {
|
|
|
983
1073
|
cooldownMs: p.onDebugSessionStart.cooldownMs,
|
|
984
1074
|
}
|
|
985
1075
|
: null,
|
|
1076
|
+
onRecipeSave: p.onRecipeSave
|
|
1077
|
+
? {
|
|
1078
|
+
enabled: p.onRecipeSave.enabled,
|
|
1079
|
+
cooldownMs: p.onRecipeSave.cooldownMs ?? 10_000,
|
|
1080
|
+
}
|
|
1081
|
+
: null,
|
|
986
1082
|
unwiredEnabledHooks,
|
|
987
1083
|
defaultModel: p.defaultModel ?? "claude-haiku-4-5-20251001",
|
|
988
1084
|
maxTasksPerHour: p.maxTasksPerHour ?? 20,
|
|
@@ -1016,6 +1112,7 @@ export class AutomationHooks {
|
|
|
1016
1112
|
"onTaskSuccess",
|
|
1017
1113
|
"onDebugSessionStart",
|
|
1018
1114
|
"onDebugSessionEnd",
|
|
1115
|
+
"onRecipeSave",
|
|
1019
1116
|
];
|
|
1020
1117
|
const hooksEnabled = hookKeys.filter((k) => {
|
|
1021
1118
|
const hook = this.policy[k];
|
package/dist/automation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automation.js","sourceRoot":"","sources":["../src/automation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"automation.js","sourceRoot":"","sources":["../src/automation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* automationSuggestions — pattern-mine the activity log + run history to
|
|
3
|
+
* surface "you've been doing X by hand; want to make a recipe?" hints.
|
|
4
|
+
*
|
|
5
|
+
* From docs/strategic/2026-05-02/memory-ecosystem-report.md §6. Three of
|
|
6
|
+
* the four query-catalog patterns ship here; the fourth ("repeated
|
|
7
|
+
* manual workflow" via PrefixSpan-lite sequence mining) is deferred to
|
|
8
|
+
* a follow-up — the agent flagged it as the only entry in the catalog
|
|
9
|
+
* that requires a new ~50-line primitive (`mineSequences`), and shipping
|
|
10
|
+
* it without dashboard rendering would be premature.
|
|
11
|
+
*
|
|
12
|
+
* 1. **Co-occurring pairs** — tools that often run within W minutes of
|
|
13
|
+
* each other but don't already appear together in any successful
|
|
14
|
+
* recipe → "create a recipe?" suggestion.
|
|
15
|
+
* 2. **Installed but unused** — tools registered with the bridge but
|
|
16
|
+
* never called → "review your installed tool list" suggestion.
|
|
17
|
+
* 3. **Recipe trust graduation** — recipes with ≥ 10 runs all status
|
|
18
|
+
* "done" → "consider auto-approving" suggestion (does NOT auto-
|
|
19
|
+
* change policy; this is purely a hint).
|
|
20
|
+
*
|
|
21
|
+
* Pure function over (ActivityLog, RecipeRunLog, ToolRegistry). No I/O
|
|
22
|
+
* of its own; tested in isolation by feeding mock instances. The CLI
|
|
23
|
+
* `patchwork suggest` is a thin printer over this output.
|
|
24
|
+
*/
|
|
25
|
+
import type { ActivityLog } from "./activityLog.js";
|
|
26
|
+
import type { RecipeRunLog } from "./runLog.js";
|
|
27
|
+
export interface AutomationSuggestion {
|
|
28
|
+
kind: "co_occurring_pair" | "installed_but_unused" | "recipe_trust_graduation";
|
|
29
|
+
/** Human-facing one-liner — suitable for CLI print or dashboard row. */
|
|
30
|
+
label: string;
|
|
31
|
+
/** Optional structured payload so the dashboard can render specific UIs. */
|
|
32
|
+
details?: {
|
|
33
|
+
/** For co_occurring_pair: ["toolA", "toolB"]. */
|
|
34
|
+
pair?: [string, string];
|
|
35
|
+
/** For co_occurring_pair: how often they co-occurred in the window. */
|
|
36
|
+
count?: number;
|
|
37
|
+
/** For installed_but_unused: list of tool ids that are unused. */
|
|
38
|
+
unusedTools?: string[];
|
|
39
|
+
/** For recipe_trust_graduation: which recipe and its run count. */
|
|
40
|
+
recipeName?: string;
|
|
41
|
+
runCount?: number;
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
export interface AutomationSuggestionDeps {
|
|
45
|
+
activityLog: ActivityLog;
|
|
46
|
+
recipeRunLog?: RecipeRunLog;
|
|
47
|
+
/**
|
|
48
|
+
* Test seam — defaults to the global tool registry. Tests can pass an
|
|
49
|
+
* empty-aware version to assert the "no tools registered" branch.
|
|
50
|
+
*/
|
|
51
|
+
listToolNamesFn?: () => string[];
|
|
52
|
+
/**
|
|
53
|
+
* Window for co-occurrence detection (ms). Strategic-plan §6 sample
|
|
54
|
+
* uses 5 minutes; we pick 5 minutes for "tight workflow" patterns and
|
|
55
|
+
* support overrides for tests.
|
|
56
|
+
*/
|
|
57
|
+
coOccurrenceWindowMs?: number;
|
|
58
|
+
/**
|
|
59
|
+
* Minimum count before a co-occurring pair is suggested. The agent's
|
|
60
|
+
* sample uses 5; tests can lower this to assert wiring.
|
|
61
|
+
*/
|
|
62
|
+
coOccurrenceMinCount?: number;
|
|
63
|
+
/**
|
|
64
|
+
* Lookback for activity-mining. Default 7 days — fresh enough to
|
|
65
|
+
* reflect current habits, long enough that 5+ co-occurrences is real
|
|
66
|
+
* signal not noise.
|
|
67
|
+
*/
|
|
68
|
+
activitySinceMs?: number;
|
|
69
|
+
/**
|
|
70
|
+
* Min runs before a recipe qualifies for trust-graduation suggestion.
|
|
71
|
+
* Default 10. Lower for tests.
|
|
72
|
+
*/
|
|
73
|
+
trustGraduationMinRuns?: number;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Compute the full suggestion set. Returns at most 30 suggestions
|
|
77
|
+
* (10 of each kind) sorted by salience within each bucket.
|
|
78
|
+
*/
|
|
79
|
+
export declare function computeAutomationSuggestions(deps: AutomationSuggestionDeps): AutomationSuggestion[];
|