patchwork-os 1.2.0-beta.2.canary.813 → 1.2.0-beta.2.canary.815

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.
@@ -25,6 +25,16 @@
25
25
  export type RiskTier = "low" | "medium" | "high";
26
26
  /** CC-native behavior class. Prefer this over RiskTier for new code. */
27
27
  export type ToolBehavior = "readOnly" | "localWrite" | "shellExec" | "externalEffect";
28
+ /**
29
+ * True exactly when `/search[A-Z].*Replace/i` would match, in one linear pass.
30
+ * That regex was a polynomial-ReDoS sink (`.*` backtracks against every later
31
+ * position). Semantics kept deliberately: ASCII-only case folding (`/i`
32
+ * without `u` never folds a non-ASCII char to ASCII, so `toLowerCase()` would
33
+ * be wrong for e.g. the Kelvin sign), and `.` does not cross a line
34
+ * terminator. Pinned against a brute-force oracle in
35
+ * `riskTier.searchReplace.test.ts`.
36
+ */
37
+ export declare function matchesSearchReplace(name: string): boolean;
28
38
  /**
29
39
  * Infer a risk tier from the tool name when the hardcoded map has no entry.
30
40
  * Lets us classify newly-added tools without maintaining a parallel list.
package/dist/riskTier.js CHANGED
@@ -105,6 +105,48 @@ const TIER_MAP = {
105
105
  launchQuickTask: "high", // thin wrapper around runClaudeTask/resumeClaudeTask
106
106
  cancelClaudeTask: "high", // sibling of runClaudeTask/resumeClaudeTask, kept consistent with them
107
107
  };
108
+ const LINE_TERMINATORS = new Set([0x0a, 0x0d, 0x2028, 0x2029]);
109
+ /** Case-insensitive match of an ASCII-lowercase `word` at `at`, ASCII folding only. */
110
+ function asciiEqualsAt(s, at, word) {
111
+ if (at + word.length > s.length)
112
+ return false;
113
+ for (let k = 0; k < word.length; k++) {
114
+ let c = s.charCodeAt(at + k);
115
+ if (c >= 65 && c <= 90)
116
+ c += 32;
117
+ if (c !== word.charCodeAt(k))
118
+ return false;
119
+ }
120
+ return true;
121
+ }
122
+ /**
123
+ * True exactly when `/search[A-Z].*Replace/i` would match, in one linear pass.
124
+ * That regex was a polynomial-ReDoS sink (`.*` backtracks against every later
125
+ * position). Semantics kept deliberately: ASCII-only case folding (`/i`
126
+ * without `u` never folds a non-ASCII char to ASCII, so `toLowerCase()` would
127
+ * be wrong for e.g. the Kelvin sign), and `.` does not cross a line
128
+ * terminator. Pinned against a brute-force oracle in
129
+ * `riskTier.searchReplace.test.ts`.
130
+ */
131
+ export function matchesSearchReplace(name) {
132
+ let armed = false;
133
+ for (let p = 0; p < name.length; p++) {
134
+ if (LINE_TERMINATORS.has(name.charCodeAt(p))) {
135
+ armed = false;
136
+ }
137
+ else if (!armed) {
138
+ const letter = name.charCodeAt(p + 6) | 32;
139
+ if (asciiEqualsAt(name, p, "search") && letter >= 97 && letter <= 122) {
140
+ armed = true;
141
+ p += 6; // "replace" may start only after the letter
142
+ }
143
+ }
144
+ else if (asciiEqualsAt(name, p, "replace")) {
145
+ return true;
146
+ }
147
+ }
148
+ return false;
149
+ }
108
150
  /**
109
151
  * Infer a risk tier from the tool name when the hardcoded map has no entry.
110
152
  * Lets us classify newly-added tools without maintaining a parallel list.
@@ -124,7 +166,7 @@ export function inferTierFromName(toolName) {
124
166
  // Local writes
125
167
  if (/^(edit|write|create|save|format|apply|fix|refactor|rename|organize|stage|commit|add|stash)[A-Z]/.test(n) ||
126
168
  /(^set|^update|^replace)[A-Z]/.test(n) ||
127
- /search[A-Z].*Replace/i.test(n))
169
+ matchesSearchReplace(n))
128
170
  return "medium";
129
171
  // Reads
130
172
  if (/^(get|find|search|list|read|describe|explain|goTo|hover|preview|capture|explore|resolve|probe|check|lookup|parse|classify|compute|compare|render|validate|ping|ready|detect|watch)/.test(n) ||
@@ -1 +1 @@
1
- {"version":3,"file":"riskTier.js","sourceRoot":"","sources":["../src/riskTier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"riskTier.js","sourceRoot":"","sources":["../src/riskTier.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "patchwork-os",
3
- "version": "1.2.0-beta.2.canary.813",
3
+ "version": "1.2.0-beta.2.canary.815",
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",