patchwork-os 0.2.0-beta.13.canary.261 → 0.2.0-beta.13.canary.262
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/dist/recipes/compiler.js
CHANGED
|
@@ -78,14 +78,14 @@ function bucketForRisk(risk) {
|
|
|
78
78
|
return "ask";
|
|
79
79
|
}
|
|
80
80
|
export function compileRecipe(recipe) {
|
|
81
|
-
const { hookType, patterns } = mapTrigger(recipe.trigger, recipe.name);
|
|
81
|
+
const { hookType, patterns, extras } = mapTrigger(recipe.trigger, recipe.name);
|
|
82
82
|
const prompt = buildPrompt(recipe);
|
|
83
83
|
let program = hook({
|
|
84
84
|
hookType,
|
|
85
85
|
enabled: true,
|
|
86
86
|
patterns,
|
|
87
87
|
promptSource: { kind: "inline", prompt },
|
|
88
|
-
extras: { kind: "none" },
|
|
88
|
+
extras: extras ?? { kind: "none" },
|
|
89
89
|
});
|
|
90
90
|
// retry wrapper
|
|
91
91
|
const retryCount = recipe.on_error?.retry;
|
|
@@ -102,6 +102,14 @@ function mapTrigger(trigger, recipeName) {
|
|
|
102
102
|
switch (trigger.type) {
|
|
103
103
|
case "file_watch":
|
|
104
104
|
return { hookType: "onFileSave", patterns: trigger.patterns };
|
|
105
|
+
case "on_file_save":
|
|
106
|
+
// Runtime-facing alias of file_watch. `glob` is optional — when absent
|
|
107
|
+
// the interpreter's patterns check is skipped, so the hook fires on every
|
|
108
|
+
// save (parity with how the bridge dispatches onFileSave from IDE events).
|
|
109
|
+
return {
|
|
110
|
+
hookType: "onFileSave",
|
|
111
|
+
patterns: trigger.glob ? [trigger.glob] : undefined,
|
|
112
|
+
};
|
|
105
113
|
case "git_hook":
|
|
106
114
|
switch (trigger.event) {
|
|
107
115
|
case "post-commit":
|
|
@@ -112,6 +120,23 @@ function mapTrigger(trigger, recipeName) {
|
|
|
112
120
|
return { hookType: "onGitPull" };
|
|
113
121
|
}
|
|
114
122
|
break;
|
|
123
|
+
case "on_test_run":
|
|
124
|
+
// Mirror loadPolicy's onTestRun.filter normalization so a recipe trigger
|
|
125
|
+
// fires the SAME hook a policy-file entry would:
|
|
126
|
+
// - "failure" → onTestRun gated on a non-zero failure count
|
|
127
|
+
// - "pass-after-fail" → the dedicated fail→pass transition hook
|
|
128
|
+
// - "any" / absent → onTestRun on every run
|
|
129
|
+
switch (trigger.filter) {
|
|
130
|
+
case "failure":
|
|
131
|
+
return {
|
|
132
|
+
hookType: "onTestRun",
|
|
133
|
+
extras: { kind: "testRun", onFailureOnly: true },
|
|
134
|
+
};
|
|
135
|
+
case "pass-after-fail":
|
|
136
|
+
return { hookType: "onTestPassAfterFailure" };
|
|
137
|
+
default:
|
|
138
|
+
return { hookType: "onTestRun" };
|
|
139
|
+
}
|
|
115
140
|
case "webhook":
|
|
116
141
|
throw new RecipeCompileError(`recipe '${recipeName}': webhook triggers fire via POST /hooks/* (server.webhookFn) and bypass the automation interpreter — installer.ts skips compileRecipeFull for them. Reaching this branch means a non-bypass caller invoked compileTrigger directly; check the call site.`);
|
|
117
142
|
case "cron":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../src/recipes/compiler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../src/recipes/compiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,12 +10,11 @@ import { parseRecipe } from "./parser.js";
|
|
|
10
10
|
* a native automation hook the bridge already fires.
|
|
11
11
|
*
|
|
12
12
|
* `compileRecipe` (compiler.ts) maps:
|
|
13
|
-
* - `file_watch` → onFileSave
|
|
14
|
-
* - `git_hook`
|
|
13
|
+
* - `file_watch` / `on_file_save` → onFileSave
|
|
14
|
+
* - `git_hook` → onGitCommit / onGitPush / onGitPull
|
|
15
|
+
* - `on_test_run` → onTestRun / onTestPassAfterFailure (by filter)
|
|
15
16
|
* and THROWS for cron/webhook/manual/chained (those route through the cron
|
|
16
|
-
* scheduler / POST /hooks / CLI / chained runner respectively).
|
|
17
|
-
* `on_file_save` / `on_test_run` trigger types have no compiler case yet, so
|
|
18
|
-
* they are intentionally excluded here and tracked as a follow-up.
|
|
17
|
+
* scheduler / POST /hooks / CLI / chained runner respectively).
|
|
19
18
|
*
|
|
20
19
|
* Before this collector existed, these compiled programs were never registered
|
|
21
20
|
* into AutomationHooks — a recipe with `trigger: { type: file_watch }` parsed,
|
|
@@ -29,6 +28,8 @@ import { parseRecipe } from "./parser.js";
|
|
|
29
28
|
const COMPILABLE_EVENT_TRIGGERS = new Set([
|
|
30
29
|
"file_watch",
|
|
31
30
|
"git_hook",
|
|
31
|
+
"on_file_save",
|
|
32
|
+
"on_test_run",
|
|
32
33
|
]);
|
|
33
34
|
export function collectEventTriggerPrograms(recipesDir, opts = {}) {
|
|
34
35
|
const programs = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eventTriggerPrograms.js","sourceRoot":"","sources":["../../src/recipes/eventTriggerPrograms.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C
|
|
1
|
+
{"version":3,"file":"eventTriggerPrograms.js","sourceRoot":"","sources":["../../src/recipes/eventTriggerPrograms.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,yBAAyB,GAAwB,IAAI,GAAG,CAAC;IAC7D,YAAY;IACZ,UAAU;IACV,cAAc;IACd,aAAa;CACd,CAAC,CAAC;AAuBH,MAAM,UAAU,2BAA2B,CACzC,UAAkB,EAClB,OAAuB,EAAE;IAEzB,MAAM,QAAQ,GAAwB,EAAE,CAAC;IACzC,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,QAAQ,GACZ,IAAI,CAAC,eAAe,KAAK,SAAS;QAChC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC;QAC/B,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAE1B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC9C,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC;YACH,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QAED,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,IAAI,KAAK,EAAE,CAAC;YACV,wEAAwE;YACxE,IAAI,oBAAoB,CAAC,QAAQ,CAAC;gBAAE,SAAS;YAC7C,QAAQ,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,QAAQ,GAAG,QAAQ,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,QAAQ;YAAE,SAAS;QAExB,MAAM,OAAO,GAAG,eAAe,CAC7B,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,IAAI,CAAC,MAAM,CACZ,CAAC;QACF,IAAI,OAAO;YAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,iBAAiB;IACxB,IAAI,CAAC;QACH,OAAO,sBAAsB,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QAAE,OAAO,KAAK,CAAC;IACrD,OAAO,CACL,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED;iEACiE;AACjE,SAAS,wBAAwB,CAAC,UAAkB;IAClD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAC1D,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAEvD,CAAC;YACF,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;gBACpB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACxD,IAAI,UAAU,CAAC,SAAS,CAAC;oBAAE,OAAO,SAAS,CAAC;YAC9C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;QAC5D,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtE,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,iCAAiC;IACnC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CACtB,QAAgB,EAChB,QAAqB,EACrB,WAAqB,EACrB,MAAsB;IAEtB,IAAI,MAAsC,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1E,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,yEAAyE;QACzE,MAAM,EAAE,IAAI,EAAE,CACZ,6BAA6B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CACxE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACrE,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,EAAE,IAAI,EAAE,CACZ,+CAA+C,MAAM,CAAC,IAAI,GAAG,CAC9D,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;QACtC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,EAAE,IAAI,EAAE,CACZ,wCAAwC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,EAAE,CACxE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,GAAY;IAC1B,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC"}
|
|
@@ -31,17 +31,15 @@ export function installRecipeFromFile(sourcePath, opts) {
|
|
|
31
31
|
// respectively. Synthesize an empty CompiledRecipe stub so the caller API
|
|
32
32
|
// stays uniform; file_watch and git_hook still run through compile.
|
|
33
33
|
//
|
|
34
|
-
// `chained
|
|
35
|
-
//
|
|
36
|
-
//
|
|
37
|
-
//
|
|
38
|
-
//
|
|
34
|
+
// `chained` is a runtime-only trigger (ChainedRecipeRunner / yamlRunner) the
|
|
35
|
+
// recipe→AutomationProgram compiler does not model, so it bypasses compile.
|
|
36
|
+
// `on_file_save` / `on_test_run` DO compile now — mapTrigger maps them to
|
|
37
|
+
// onFileSave / onTestRun / onTestPassAfterFailure — so they install with a
|
|
38
|
+
// real AutomationProgram + suggestedPermissions instead of a bypass stub.
|
|
39
39
|
const bypassCompile = recipe.trigger.type === "manual" ||
|
|
40
40
|
recipe.trigger.type === "cron" ||
|
|
41
41
|
recipe.trigger.type === "webhook" ||
|
|
42
|
-
recipe.trigger.type === "chained"
|
|
43
|
-
recipe.trigger.type === "on_file_save" ||
|
|
44
|
-
recipe.trigger.type === "on_test_run";
|
|
42
|
+
recipe.trigger.type === "chained";
|
|
45
43
|
const compiled = bypassCompile
|
|
46
44
|
? {
|
|
47
45
|
program: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/recipes/installer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AA4B1C,MAAM,UAAU,qBAAqB,CACnC,UAAkB,EAClB,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;IACnD,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CACb,8BAA8B,GAAG,IAAI,QAAQ,SAAS,UAAU,mCAAmC,CACpG,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1E,mEAAmE;IACnE,gEAAgE;IAChE,kCAAkC;IAClC,MAAM,SAAS,GACb,EAAE,CAAC,SAAS;QACZ,CAAC,CAAC,MAAc,EAAE,OAAe,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9E,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAE7E,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;IAClC,MAAM,GAAG,GACP,GAAG,KAAK,OAAO;QACb,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAa;QAC/B,CAAC,CAAE,SAAS,CAAC,IAAI,CAAa,CAAC;IACnC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAChC,0EAA0E;IAC1E,qEAAqE;IACrE,uEAAuE;IACvE,uDAAuD;IACvD,yEAAyE;IACzE,qEAAqE;IACrE,0EAA0E;IAC1E,oEAAoE;IACpE,EAAE;IACF,
|
|
1
|
+
{"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/recipes/installer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "patchwork-os",
|
|
3
|
-
"version": "0.2.0-beta.13.canary.
|
|
3
|
+
"version": "0.2.0-beta.13.canary.262",
|
|
4
4
|
"description": "Your personal AI runtime, local-first. Patchwork OS gives any AI model a consistent set of tools, YAML recipes, a delegation policy with approval queue, and a durable trace memory — all on your machine, all under your policy.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|