@action-llama/action-llama 0.14.1 → 0.16.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.
Files changed (193) hide show
  1. package/dist/agents/feedback-monitor.d.ts +56 -0
  2. package/dist/agents/feedback-monitor.d.ts.map +1 -0
  3. package/dist/agents/feedback-monitor.js +176 -0
  4. package/dist/agents/feedback-monitor.js.map +1 -0
  5. package/dist/agents/feedback-runner.d.ts +28 -0
  6. package/dist/agents/feedback-runner.d.ts.map +1 -0
  7. package/dist/agents/feedback-runner.js +138 -0
  8. package/dist/agents/feedback-runner.js.map +1 -0
  9. package/dist/agents/runner.d.ts +4 -0
  10. package/dist/agents/runner.d.ts.map +1 -1
  11. package/dist/agents/runner.js +11 -0
  12. package/dist/agents/runner.js.map +1 -1
  13. package/dist/build-info.json +1 -1
  14. package/dist/cli/commands/agent.d.ts.map +1 -1
  15. package/dist/cli/commands/agent.js +46 -0
  16. package/dist/cli/commands/agent.js.map +1 -1
  17. package/dist/cli/commands/doctor.d.ts +1 -0
  18. package/dist/cli/commands/doctor.d.ts.map +1 -1
  19. package/dist/cli/commands/doctor.js +101 -4
  20. package/dist/cli/commands/doctor.js.map +1 -1
  21. package/dist/cli/commands/start.js +1 -1
  22. package/dist/cli/commands/start.js.map +1 -1
  23. package/dist/cli/commands/webhook.d.ts +11 -0
  24. package/dist/cli/commands/webhook.d.ts.map +1 -0
  25. package/dist/cli/commands/webhook.js +271 -0
  26. package/dist/cli/commands/webhook.js.map +1 -0
  27. package/dist/cli/main.js +17 -0
  28. package/dist/cli/main.js.map +1 -1
  29. package/dist/docker/local-runtime.d.ts.map +1 -1
  30. package/dist/docker/local-runtime.js +36 -7
  31. package/dist/docker/local-runtime.js.map +1 -1
  32. package/dist/docker/runtime.d.ts +4 -0
  33. package/dist/docker/runtime.d.ts.map +1 -1
  34. package/dist/gateway/index.d.ts +2 -0
  35. package/dist/gateway/index.d.ts.map +1 -1
  36. package/dist/gateway/index.js +1 -1
  37. package/dist/gateway/index.js.map +1 -1
  38. package/dist/gateway/routes/control.d.ts +2 -0
  39. package/dist/gateway/routes/control.d.ts.map +1 -1
  40. package/dist/gateway/routes/control.js +56 -0
  41. package/dist/gateway/routes/control.js.map +1 -1
  42. package/dist/gateway/routes/dashboard.d.ts.map +1 -1
  43. package/dist/gateway/routes/dashboard.js +89 -3
  44. package/dist/gateway/routes/dashboard.js.map +1 -1
  45. package/dist/gateway/routes/webhooks.d.ts +2 -1
  46. package/dist/gateway/routes/webhooks.d.ts.map +1 -1
  47. package/dist/gateway/routes/webhooks.js +3 -2
  48. package/dist/gateway/routes/webhooks.js.map +1 -1
  49. package/dist/gateway/views/agent-detail-page.d.ts +2 -0
  50. package/dist/gateway/views/agent-detail-page.d.ts.map +1 -1
  51. package/dist/gateway/views/agent-detail-page.js +115 -2
  52. package/dist/gateway/views/agent-detail-page.js.map +1 -1
  53. package/dist/gateway/views/dashboard-page.d.ts.map +1 -1
  54. package/dist/gateway/views/dashboard-page.js +36 -2
  55. package/dist/gateway/views/dashboard-page.js.map +1 -1
  56. package/dist/gateway/views/instance-detail-page.d.ts +6 -0
  57. package/dist/gateway/views/instance-detail-page.d.ts.map +1 -1
  58. package/dist/gateway/views/instance-detail-page.js +95 -12
  59. package/dist/gateway/views/instance-detail-page.js.map +1 -1
  60. package/dist/gateway/views/project-config-page.d.ts +12 -0
  61. package/dist/gateway/views/project-config-page.d.ts.map +1 -0
  62. package/dist/gateway/views/project-config-page.js +199 -0
  63. package/dist/gateway/views/project-config-page.js.map +1 -0
  64. package/dist/remote/push.d.ts.map +1 -1
  65. package/dist/remote/push.js +11 -2
  66. package/dist/remote/push.js.map +1 -1
  67. package/dist/scheduler/event-queue-unified.d.ts +50 -0
  68. package/dist/scheduler/event-queue-unified.d.ts.map +1 -0
  69. package/dist/scheduler/event-queue-unified.js +280 -0
  70. package/dist/scheduler/event-queue-unified.js.map +1 -0
  71. package/dist/scheduler/execution.d.ts +2 -1
  72. package/dist/scheduler/execution.d.ts.map +1 -1
  73. package/dist/scheduler/execution.js +48 -8
  74. package/dist/scheduler/execution.js.map +1 -1
  75. package/dist/scheduler/gateway-setup.d.ts +2 -1
  76. package/dist/scheduler/gateway-setup.d.ts.map +1 -1
  77. package/dist/scheduler/gateway-setup.js +20 -1
  78. package/dist/scheduler/gateway-setup.js.map +1 -1
  79. package/dist/scheduler/index.d.ts.map +1 -1
  80. package/dist/scheduler/index.js +75 -1
  81. package/dist/scheduler/index.js.map +1 -1
  82. package/dist/scheduler/lifecycle/agent-lifecycle.d.ts +114 -0
  83. package/dist/scheduler/lifecycle/agent-lifecycle.d.ts.map +1 -0
  84. package/dist/scheduler/lifecycle/agent-lifecycle.js +236 -0
  85. package/dist/scheduler/lifecycle/agent-lifecycle.js.map +1 -0
  86. package/dist/scheduler/lifecycle/index.d.ts +60 -0
  87. package/dist/scheduler/lifecycle/index.d.ts.map +1 -0
  88. package/dist/scheduler/lifecycle/index.js +103 -0
  89. package/dist/scheduler/lifecycle/index.js.map +1 -0
  90. package/dist/scheduler/lifecycle/instance-lifecycle.d.ts +88 -0
  91. package/dist/scheduler/lifecycle/instance-lifecycle.d.ts.map +1 -0
  92. package/dist/scheduler/lifecycle/instance-lifecycle.js +142 -0
  93. package/dist/scheduler/lifecycle/instance-lifecycle.js.map +1 -0
  94. package/dist/scheduler/types.d.ts +2 -0
  95. package/dist/scheduler/types.d.ts.map +1 -1
  96. package/dist/scheduler/webhook-setup.d.ts +1 -0
  97. package/dist/scheduler/webhook-setup.d.ts.map +1 -1
  98. package/dist/scheduler/webhook-setup.js +14 -2
  99. package/dist/scheduler/webhook-setup.js.map +1 -1
  100. package/dist/shared/config.d.ts +27 -0
  101. package/dist/shared/config.d.ts.map +1 -1
  102. package/dist/shared/config.js +51 -2
  103. package/dist/shared/config.js.map +1 -1
  104. package/dist/shared/constants.d.ts +16 -0
  105. package/dist/shared/constants.d.ts.map +1 -1
  106. package/dist/shared/constants.js +54 -0
  107. package/dist/shared/constants.js.map +1 -1
  108. package/dist/shared/default-feedback-agent.d.ts +10 -0
  109. package/dist/shared/default-feedback-agent.d.ts.map +1 -0
  110. package/dist/shared/default-feedback-agent.js +114 -0
  111. package/dist/shared/default-feedback-agent.js.map +1 -0
  112. package/dist/shared/persistence/adapters/state-store.d.ts +24 -0
  113. package/dist/shared/persistence/adapters/state-store.d.ts.map +1 -0
  114. package/dist/shared/persistence/adapters/state-store.js +32 -0
  115. package/dist/shared/persistence/adapters/state-store.js.map +1 -0
  116. package/dist/shared/persistence/adapters/stats-store.d.ts +49 -0
  117. package/dist/shared/persistence/adapters/stats-store.d.ts.map +1 -0
  118. package/dist/shared/persistence/adapters/stats-store.js +213 -0
  119. package/dist/shared/persistence/adapters/stats-store.js.map +1 -0
  120. package/dist/shared/persistence/backends/memory.d.ts +39 -0
  121. package/dist/shared/persistence/backends/memory.d.ts.map +1 -0
  122. package/dist/shared/persistence/backends/memory.js +214 -0
  123. package/dist/shared/persistence/backends/memory.js.map +1 -0
  124. package/dist/shared/persistence/backends/sqlite.d.ts +38 -0
  125. package/dist/shared/persistence/backends/sqlite.d.ts.map +1 -0
  126. package/dist/shared/persistence/backends/sqlite.js +250 -0
  127. package/dist/shared/persistence/backends/sqlite.js.map +1 -0
  128. package/dist/shared/persistence/event-store.d.ts +77 -0
  129. package/dist/shared/persistence/event-store.d.ts.map +1 -0
  130. package/dist/shared/persistence/event-store.js +139 -0
  131. package/dist/shared/persistence/event-store.js.map +1 -0
  132. package/dist/shared/persistence/index.d.ts +119 -0
  133. package/dist/shared/persistence/index.d.ts.map +1 -0
  134. package/dist/shared/persistence/index.js +93 -0
  135. package/dist/shared/persistence/index.js.map +1 -0
  136. package/dist/shared/persistence/migration.d.ts +47 -0
  137. package/dist/shared/persistence/migration.d.ts.map +1 -0
  138. package/dist/shared/persistence/migration.js +297 -0
  139. package/dist/shared/persistence/migration.js.map +1 -0
  140. package/dist/shared/usage.d.ts.map +1 -1
  141. package/dist/shared/usage.js +52 -7
  142. package/dist/shared/usage.js.map +1 -1
  143. package/dist/shared/validation.d.ts +61 -0
  144. package/dist/shared/validation.d.ts.map +1 -0
  145. package/dist/shared/validation.js +280 -0
  146. package/dist/shared/validation.js.map +1 -0
  147. package/dist/stats/event-store.d.ts +37 -0
  148. package/dist/stats/event-store.d.ts.map +1 -0
  149. package/dist/stats/event-store.js +366 -0
  150. package/dist/stats/event-store.js.map +1 -0
  151. package/dist/tui/App.d.ts +2 -1
  152. package/dist/tui/App.d.ts.map +1 -1
  153. package/dist/tui/App.js +132 -5
  154. package/dist/tui/App.js.map +1 -1
  155. package/dist/tui/render.d.ts +1 -1
  156. package/dist/tui/render.d.ts.map +1 -1
  157. package/dist/tui/render.js +2 -2
  158. package/dist/tui/render.js.map +1 -1
  159. package/dist/tui/status-tracker.d.ts +31 -0
  160. package/dist/tui/status-tracker.d.ts.map +1 -1
  161. package/dist/tui/status-tracker.js +117 -1
  162. package/dist/tui/status-tracker.js.map +1 -1
  163. package/dist/webhooks/providers/github.d.ts +1 -1
  164. package/dist/webhooks/providers/github.d.ts.map +1 -1
  165. package/dist/webhooks/providers/github.js +2 -2
  166. package/dist/webhooks/providers/github.js.map +1 -1
  167. package/dist/webhooks/providers/linear.d.ts +1 -1
  168. package/dist/webhooks/providers/linear.d.ts.map +1 -1
  169. package/dist/webhooks/providers/linear.js +2 -2
  170. package/dist/webhooks/providers/linear.js.map +1 -1
  171. package/dist/webhooks/providers/mintlify.d.ts +1 -1
  172. package/dist/webhooks/providers/mintlify.d.ts.map +1 -1
  173. package/dist/webhooks/providers/mintlify.js +2 -2
  174. package/dist/webhooks/providers/mintlify.js.map +1 -1
  175. package/dist/webhooks/providers/sentry.d.ts +1 -1
  176. package/dist/webhooks/providers/sentry.d.ts.map +1 -1
  177. package/dist/webhooks/providers/sentry.js +2 -2
  178. package/dist/webhooks/providers/sentry.js.map +1 -1
  179. package/dist/webhooks/providers/test.d.ts +1 -1
  180. package/dist/webhooks/providers/test.d.ts.map +1 -1
  181. package/dist/webhooks/providers/test.js +1 -1
  182. package/dist/webhooks/providers/test.js.map +1 -1
  183. package/dist/webhooks/registry.d.ts +8 -2
  184. package/dist/webhooks/registry.d.ts.map +1 -1
  185. package/dist/webhooks/registry.js +155 -3
  186. package/dist/webhooks/registry.js.map +1 -1
  187. package/dist/webhooks/types.d.ts +28 -1
  188. package/dist/webhooks/types.d.ts.map +1 -1
  189. package/dist/webhooks/validation.d.ts +7 -6
  190. package/dist/webhooks/validation.d.ts.map +1 -1
  191. package/dist/webhooks/validation.js +11 -9
  192. package/dist/webhooks/validation.js.map +1 -1
  193. package/package.json +1 -1
@@ -21,16 +21,18 @@ export class WebhookRegistry {
21
21
  this.bindings = this.bindings.filter(b => b.agentName !== agentName);
22
22
  return before - this.bindings.length;
23
23
  }
24
- dispatch(source, headers, rawBody, secrets) {
24
+ dispatch(source, headers, rawBody, webhookConfig) {
25
25
  const provider = this.providers.get(source);
26
26
  if (!provider) {
27
27
  this.logger.warn({ source }, "dispatch: no provider for source");
28
28
  return { ok: false, matched: 0, skipped: 0, errors: [`unknown source: ${source}`] };
29
29
  }
30
+ const { secrets } = webhookConfig;
31
+ const allowUnsigned = webhookConfig.config?.allowUnsigned ?? false;
30
32
  // Validate request signature — returns the matched instance name or null
31
- const matchedSource = provider.validateRequest(headers, rawBody, secrets);
33
+ const matchedSource = provider.validateRequest(headers, rawBody, secrets, allowUnsigned);
32
34
  if (matchedSource === null) {
33
- this.logger.warn({ source, secretCount: secrets ? Object.keys(secrets).length : 0 }, "webhook signature validation failed");
35
+ this.logger.warn({ source, secretCount: secrets ? Object.keys(secrets).length : 0, allowUnsigned }, "webhook signature validation failed");
34
36
  return { ok: false, matched: 0, skipped: 0, errors: ["signature validation failed"] };
35
37
  }
36
38
  // Parse the event — handle both JSON and form-encoded payloads
@@ -96,5 +98,155 @@ export class WebhookRegistry {
96
98
  }
97
99
  return { ok: true, matched, skipped, matchedSource };
98
100
  }
101
+ dryRunDispatch(source, headers, rawBody, secrets) {
102
+ const provider = this.providers.get(source);
103
+ if (!provider) {
104
+ return {
105
+ ok: false,
106
+ context: null,
107
+ validationResult: null,
108
+ parseError: `unknown source: ${source}`,
109
+ bindings: []
110
+ };
111
+ }
112
+ // Validate request signature — returns the matched instance name or null
113
+ const matchedSource = provider.validateRequest(headers, rawBody, secrets);
114
+ if (matchedSource === null) {
115
+ return {
116
+ ok: false,
117
+ context: null,
118
+ validationResult: "signature validation failed",
119
+ bindings: []
120
+ };
121
+ }
122
+ // Parse the event — handle both JSON and form-encoded payloads
123
+ let body;
124
+ const contentType = headers["content-type"] || "";
125
+ try {
126
+ if (contentType.includes("application/x-www-form-urlencoded")) {
127
+ const params = new URLSearchParams(rawBody);
128
+ const payload = params.get("payload");
129
+ if (!payload) {
130
+ return {
131
+ ok: false,
132
+ context: null,
133
+ validationResult: matchedSource,
134
+ parseError: "missing payload in form body",
135
+ bindings: []
136
+ };
137
+ }
138
+ body = JSON.parse(payload);
139
+ }
140
+ else {
141
+ body = JSON.parse(rawBody);
142
+ }
143
+ }
144
+ catch (err) {
145
+ return {
146
+ ok: false,
147
+ context: null,
148
+ validationResult: matchedSource,
149
+ parseError: `invalid JSON body: ${err.message}`,
150
+ bindings: []
151
+ };
152
+ }
153
+ const context = provider.parseEvent(headers, body);
154
+ if (!context) {
155
+ return {
156
+ ok: true,
157
+ context: null,
158
+ validationResult: matchedSource,
159
+ parseError: "webhook event could not be parsed (parseEvent returned null)",
160
+ bindings: []
161
+ };
162
+ }
163
+ // Check all bindings and collect detailed match information
164
+ const bindings = [];
165
+ for (const binding of this.bindings) {
166
+ const result = {
167
+ agentName: binding.agentName,
168
+ matched: false,
169
+ reasons: []
170
+ };
171
+ // Check if binding is for this provider type
172
+ if (binding.type !== source) {
173
+ result.reasons.push(`Type mismatch: binding expects '${binding.type}', webhook is '${source}'`);
174
+ bindings.push(result);
175
+ continue;
176
+ }
177
+ // Check if binding source matches the validated credential instance
178
+ if (binding.source && binding.source !== matchedSource) {
179
+ result.reasons.push(`Source mismatch: binding expects '${binding.source}', webhook matched '${matchedSource}'`);
180
+ bindings.push(result);
181
+ continue;
182
+ }
183
+ // Check filter match with detailed breakdown
184
+ if (binding.filter) {
185
+ const filterMatches = provider.matchesFilter(context, binding.filter);
186
+ // Create detailed filter breakdown
187
+ result.filterDetails = this.getFilterDetails(context, binding.filter, provider);
188
+ if (!filterMatches) {
189
+ result.reasons.push("Filter conditions not met");
190
+ bindings.push(result);
191
+ continue;
192
+ }
193
+ }
194
+ // If we get here, the binding matches
195
+ result.matched = true;
196
+ result.reasons.push("All conditions satisfied");
197
+ bindings.push(result);
198
+ }
199
+ return {
200
+ ok: true,
201
+ context,
202
+ validationResult: matchedSource,
203
+ bindings,
204
+ matchedSource
205
+ };
206
+ }
207
+ getFilterDetails(context, filter, provider) {
208
+ const details = {
209
+ type: true, // Provider type already matched at this point
210
+ source: true // Source already matched at this point
211
+ };
212
+ // Check specific filter conditions based on the filter properties
213
+ if ('events' in filter && filter.events) {
214
+ details.event = filter.events.includes(context.event);
215
+ }
216
+ if ('actions' in filter && filter.actions) {
217
+ details.action = context.action ? filter.actions.includes(context.action) : false;
218
+ }
219
+ if ('repos' in filter && filter.repos) {
220
+ details.repo = filter.repos.includes(context.repo);
221
+ }
222
+ if ('org' in filter && filter.org) {
223
+ details.org = context.repo.startsWith(`${filter.org}/`);
224
+ }
225
+ if ('orgs' in filter && filter.orgs) {
226
+ details.org = filter.orgs.some((org) => context.repo.startsWith(`${org}/`));
227
+ }
228
+ if ('organizations' in filter && filter.organizations) {
229
+ details.org = filter.organizations.some((org) => context.repo.startsWith(`${org}/`));
230
+ }
231
+ if ('labels' in filter && filter.labels && context.labels) {
232
+ details.label = filter.labels.some((label) => context.labels?.includes(label));
233
+ }
234
+ if ('assignee' in filter && filter.assignee) {
235
+ details.assignee = context.assignee === filter.assignee;
236
+ }
237
+ if ('author' in filter && filter.author) {
238
+ details.author = context.author === filter.author;
239
+ }
240
+ if ('branches' in filter && filter.branches) {
241
+ details.branch = context.branch ? filter.branches.includes(context.branch) : false;
242
+ }
243
+ if ('conclusions' in filter && filter.conclusions) {
244
+ details.conclusion = context.conclusion ? filter.conclusions.includes(context.conclusion) : false;
245
+ }
246
+ if ('resources' in filter && filter.resources) {
247
+ details.resource = filter.resources.some((resource) => context.event?.includes(resource) || context.action?.includes(resource));
248
+ }
249
+ return details;
250
+ }
99
251
  }
100
252
  //# sourceMappingURL=registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/webhooks/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/webhooks/registry.ts"],"names":[],"mappings":"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"}
@@ -62,7 +62,7 @@ export interface WebhookTrigger {
62
62
  }
63
63
  export interface WebhookProvider {
64
64
  source: string;
65
- validateRequest(headers: Record<string, string | undefined>, rawBody: string, secrets?: Record<string, string>): string | null;
65
+ validateRequest(headers: Record<string, string | undefined>, rawBody: string, secrets?: Record<string, string>, allowUnsigned?: boolean): string | null;
66
66
  parseEvent(headers: Record<string, string | undefined>, body: any): WebhookContext | null;
67
67
  matchesFilter(context: WebhookContext, filter: WebhookFilter): boolean;
68
68
  }
@@ -80,4 +80,31 @@ export interface DispatchResult {
80
80
  errors?: string[];
81
81
  matchedSource?: string;
82
82
  }
83
+ export interface DryRunBindingResult {
84
+ agentName: string;
85
+ matched: boolean;
86
+ reasons: string[];
87
+ filterDetails?: {
88
+ type: boolean;
89
+ source: boolean;
90
+ event?: boolean;
91
+ action?: boolean;
92
+ repo?: boolean;
93
+ org?: boolean;
94
+ label?: boolean;
95
+ assignee?: boolean;
96
+ author?: boolean;
97
+ branch?: boolean;
98
+ conclusion?: boolean;
99
+ resource?: boolean;
100
+ };
101
+ }
102
+ export interface DryRunResult {
103
+ ok: boolean;
104
+ context: WebhookContext | null;
105
+ validationResult: string | null;
106
+ parseError?: string;
107
+ bindings: DryRunBindingResult[];
108
+ matchedSource?: string;
109
+ }
83
110
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/webhooks/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/webhooks/types.ts"],"names":[],"mappings":"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"}
@@ -6,12 +6,13 @@ export declare function truncateEventText(text: string | undefined | null, max?:
6
6
  * Validate an HMAC-SHA256 webhook signature against one or more secrets.
7
7
  *
8
8
  * Returns the instance name of the matching secret, "_unsigned" if no secrets
9
- * are configured (unsigned webhooks allowed), or null if validation fails.
9
+ * are configured and allowUnsigned is true, or null if validation fails.
10
10
  *
11
- * @param rawBody - The raw request body string
12
- * @param signature - The signature header value (e.g. "sha256=abc123" or just "abc123")
13
- * @param secrets - Map of instance name → secret value
14
- * @param prefix - Optional prefix the provider prepends to the HMAC hex (e.g. "sha256=" for GitHub)
11
+ * @param rawBody - The raw request body string
12
+ * @param signature - The signature header value (e.g. "sha256=abc123" or just "abc123")
13
+ * @param secrets - Map of instance name → secret value
14
+ * @param prefix - Optional prefix the provider prepends to the HMAC hex (e.g. "sha256=" for GitHub)
15
+ * @param allowUnsigned - Allow unsigned webhooks when no secrets configured (default: false)
15
16
  */
16
- export declare function validateHmacSignature(rawBody: string, signature: string | undefined, secrets: Record<string, string> | undefined, prefix?: string): string | null;
17
+ export declare function validateHmacSignature(rawBody: string, signature: string | undefined, secrets: Record<string, string> | undefined, prefix?: string, allowUnsigned?: boolean): string | null;
17
18
  //# sourceMappingURL=validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/webhooks/validation.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAAE,GAAG,SAAkB,GAAG,MAAM,GAAG,SAAS,CAG5G;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC3C,MAAM,SAAK,GACV,MAAM,GAAG,IAAI,CAef"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/webhooks/validation.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAAE,GAAG,SAAkB,GAAG,MAAM,GAAG,SAAS,CAG5G;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC3C,MAAM,SAAK,EACX,aAAa,UAAQ,GACpB,MAAM,GAAG,IAAI,CAiBf"}
@@ -12,17 +12,19 @@ export function truncateEventText(text, max = MAX_TEXT_LENGTH) {
12
12
  * Validate an HMAC-SHA256 webhook signature against one or more secrets.
13
13
  *
14
14
  * Returns the instance name of the matching secret, "_unsigned" if no secrets
15
- * are configured (unsigned webhooks allowed), or null if validation fails.
15
+ * are configured and allowUnsigned is true, or null if validation fails.
16
16
  *
17
- * @param rawBody - The raw request body string
18
- * @param signature - The signature header value (e.g. "sha256=abc123" or just "abc123")
19
- * @param secrets - Map of instance name → secret value
20
- * @param prefix - Optional prefix the provider prepends to the HMAC hex (e.g. "sha256=" for GitHub)
17
+ * @param rawBody - The raw request body string
18
+ * @param signature - The signature header value (e.g. "sha256=abc123" or just "abc123")
19
+ * @param secrets - Map of instance name → secret value
20
+ * @param prefix - Optional prefix the provider prepends to the HMAC hex (e.g. "sha256=" for GitHub)
21
+ * @param allowUnsigned - Allow unsigned webhooks when no secrets configured (default: false)
21
22
  */
22
- export function validateHmacSignature(rawBody, signature, secrets, prefix = "") {
23
- // If no secrets configured, skip validation (allow unsigned webhooks)
24
- if (!secrets || Object.keys(secrets).length === 0)
25
- return "_unsigned";
23
+ export function validateHmacSignature(rawBody, signature, secrets, prefix = "", allowUnsigned = false) {
24
+ // If no secrets configured, check allowUnsigned policy
25
+ if (!secrets || Object.keys(secrets).length === 0) {
26
+ return allowUnsigned ? "_unsigned" : null;
27
+ }
26
28
  if (!signature)
27
29
  return null;
28
30
  // Try each configured secret — different orgs/repos may use different secrets
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/webhooks/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAErD,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAA+B,EAAE,GAAG,GAAG,eAAe;IACtF,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,SAA6B,EAC7B,OAA2C,EAC3C,MAAM,GAAG,EAAE;IAEX,sEAAsE;IACtE,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC;IAEtE,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,8EAA8E;IAC9E,KAAK,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrF,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAC3G,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/webhooks/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAErD,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAA+B,EAAE,GAAG,GAAG,eAAe;IACtF,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,SAA6B,EAC7B,OAA2C,EAC3C,MAAM,GAAG,EAAE,EACX,aAAa,GAAG,KAAK;IAErB,uDAAuD;IACvD,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;IAED,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,8EAA8E;IAC9E,KAAK,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrF,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAC3G,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@action-llama/action-llama",
3
- "version": "0.14.1",
3
+ "version": "0.16.0",
4
4
  "description": "Automated development agents triggered by cron or webhooks. BYOM — bring your own model.",
5
5
  "type": "module",
6
6
  "license": "MIT",