@cluesmith/codev 3.3.1 → 3.3.3
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/dashboard-dist/assets/{index-D3XaKpZW.js → index-CUIjS_Vb.js} +41 -41
- package/dashboard-dist/assets/index-CUIjS_Vb.js.map +1 -0
- package/dashboard-dist/assets/index-DnYLy5C_.css +32 -0
- package/dashboard-dist/index.html +2 -2
- package/dist/agent-farm/cli.d.ts.map +1 -1
- package/dist/agent-farm/cli.js +52 -1
- package/dist/agent-farm/cli.js.map +1 -1
- package/dist/agent-farm/commands/inbox.d.ts.map +1 -1
- package/dist/agent-farm/commands/inbox.js +67 -10
- package/dist/agent-farm/commands/inbox.js.map +1 -1
- package/dist/agent-farm/commands/interrupt.d.ts +4 -1
- package/dist/agent-farm/commands/interrupt.d.ts.map +1 -1
- package/dist/agent-farm/commands/interrupt.js +6 -3
- package/dist/agent-farm/commands/interrupt.js.map +1 -1
- package/dist/agent-farm/commands/reset/constants.d.ts +118 -0
- package/dist/agent-farm/commands/reset/constants.d.ts.map +1 -1
- package/dist/agent-farm/commands/reset/constants.js +118 -0
- package/dist/agent-farm/commands/reset/constants.js.map +1 -1
- package/dist/agent-farm/commands/reset/context.d.ts +18 -0
- package/dist/agent-farm/commands/reset/context.d.ts.map +1 -1
- package/dist/agent-farm/commands/reset/context.js +41 -0
- package/dist/agent-farm/commands/reset/context.js.map +1 -1
- package/dist/agent-farm/commands/reset/receipt.d.ts.map +1 -1
- package/dist/agent-farm/commands/reset/receipt.js +16 -5
- package/dist/agent-farm/commands/reset/receipt.js.map +1 -1
- package/dist/agent-farm/commands/reset/reorient.d.ts +1 -1
- package/dist/agent-farm/commands/reset/reorient.d.ts.map +1 -1
- package/dist/agent-farm/commands/reset/reorient.js +8 -1
- package/dist/agent-farm/commands/reset/reorient.js.map +1 -1
- package/dist/agent-farm/commands/reset/self.d.ts +335 -0
- package/dist/agent-farm/commands/reset/self.d.ts.map +1 -0
- package/dist/agent-farm/commands/reset/self.js +636 -0
- package/dist/agent-farm/commands/reset/self.js.map +1 -0
- package/dist/agent-farm/commands/reset.d.ts +4 -1
- package/dist/agent-farm/commands/reset.d.ts.map +1 -1
- package/dist/agent-farm/commands/reset.js +29 -21
- package/dist/agent-farm/commands/reset.js.map +1 -1
- package/dist/agent-farm/commands/self-refresh.d.ts +60 -0
- package/dist/agent-farm/commands/self-refresh.d.ts.map +1 -0
- package/dist/agent-farm/commands/self-refresh.js +506 -0
- package/dist/agent-farm/commands/self-refresh.js.map +1 -0
- package/dist/agent-farm/commands/send.d.ts +28 -0
- package/dist/agent-farm/commands/send.d.ts.map +1 -1
- package/dist/agent-farm/commands/send.js +90 -7
- package/dist/agent-farm/commands/send.js.map +1 -1
- package/dist/agent-farm/commands/spawn.d.ts +7 -0
- package/dist/agent-farm/commands/spawn.d.ts.map +1 -1
- package/dist/agent-farm/commands/spawn.js +13 -1
- package/dist/agent-farm/commands/spawn.js.map +1 -1
- package/dist/agent-farm/db/index.d.ts +3 -1
- package/dist/agent-farm/db/index.d.ts.map +1 -1
- package/dist/agent-farm/db/index.js +8 -443
- package/dist/agent-farm/db/index.js.map +1 -1
- package/dist/agent-farm/db/mailbox.d.ts +47 -7
- package/dist/agent-farm/db/mailbox.d.ts.map +1 -1
- package/dist/agent-farm/db/mailbox.js +56 -12
- package/dist/agent-farm/db/mailbox.js.map +1 -1
- package/dist/agent-farm/db/migrations.d.ts +57 -0
- package/dist/agent-farm/db/migrations.d.ts.map +1 -0
- package/dist/agent-farm/db/migrations.js +530 -0
- package/dist/agent-farm/db/migrations.js.map +1 -0
- package/dist/agent-farm/db/schema.d.ts +1 -1
- package/dist/agent-farm/db/schema.d.ts.map +1 -1
- package/dist/agent-farm/db/schema.js +1 -0
- package/dist/agent-farm/db/schema.js.map +1 -1
- package/dist/agent-farm/db/types.d.ts +22 -0
- package/dist/agent-farm/db/types.d.ts.map +1 -1
- package/dist/agent-farm/db/types.js.map +1 -1
- package/dist/agent-farm/lib/tower-client.d.ts +12 -0
- package/dist/agent-farm/lib/tower-client.d.ts.map +1 -1
- package/dist/agent-farm/lib/tower-client.js +12 -0
- package/dist/agent-farm/lib/tower-client.js.map +1 -1
- package/dist/agent-farm/lib/tunnel-client.d.ts.map +1 -1
- package/dist/agent-farm/lib/tunnel-client.js +43 -14
- package/dist/agent-farm/lib/tunnel-client.js.map +1 -1
- package/dist/agent-farm/servers/cron-delivery.d.ts +7 -1
- package/dist/agent-farm/servers/cron-delivery.d.ts.map +1 -1
- package/dist/agent-farm/servers/cron-delivery.js +2 -1
- package/dist/agent-farm/servers/cron-delivery.js.map +1 -1
- package/dist/agent-farm/servers/gate-profiles.d.ts +21 -0
- package/dist/agent-farm/servers/gate-profiles.d.ts.map +1 -1
- package/dist/agent-farm/servers/gate-profiles.js +36 -4
- package/dist/agent-farm/servers/gate-profiles.js.map +1 -1
- package/dist/agent-farm/servers/mailbox-delivery.d.ts +218 -15
- package/dist/agent-farm/servers/mailbox-delivery.d.ts.map +1 -1
- package/dist/agent-farm/servers/mailbox-delivery.js +259 -27
- package/dist/agent-farm/servers/mailbox-delivery.js.map +1 -1
- package/dist/agent-farm/servers/mailbox-wiring.d.ts +66 -11
- package/dist/agent-farm/servers/mailbox-wiring.d.ts.map +1 -1
- package/dist/agent-farm/servers/mailbox-wiring.js +202 -48
- package/dist/agent-farm/servers/mailbox-wiring.js.map +1 -1
- package/dist/agent-farm/servers/message-write.d.ts +58 -18
- package/dist/agent-farm/servers/message-write.d.ts.map +1 -1
- package/dist/agent-farm/servers/message-write.js +73 -28
- package/dist/agent-farm/servers/message-write.js.map +1 -1
- package/dist/agent-farm/servers/render-gate.d.ts +37 -1
- package/dist/agent-farm/servers/render-gate.d.ts.map +1 -1
- package/dist/agent-farm/servers/render-gate.js +71 -12
- package/dist/agent-farm/servers/render-gate.js.map +1 -1
- package/dist/agent-farm/servers/session-submit.d.ts +220 -27
- package/dist/agent-farm/servers/session-submit.d.ts.map +1 -1
- package/dist/agent-farm/servers/session-submit.js +333 -42
- package/dist/agent-farm/servers/session-submit.js.map +1 -1
- package/dist/agent-farm/servers/tower-cron.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-cron.js +3 -2
- package/dist/agent-farm/servers/tower-cron.js.map +1 -1
- package/dist/agent-farm/servers/tower-instances.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-instances.js +11 -3
- package/dist/agent-farm/servers/tower-instances.js.map +1 -1
- package/dist/agent-farm/servers/tower-routes.d.ts +32 -0
- package/dist/agent-farm/servers/tower-routes.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-routes.js +245 -36
- package/dist/agent-farm/servers/tower-routes.js.map +1 -1
- package/dist/agent-farm/servers/tower-server.js +15 -2
- package/dist/agent-farm/servers/tower-server.js.map +1 -1
- package/dist/agent-farm/servers/tower-terminals.d.ts +21 -0
- package/dist/agent-farm/servers/tower-terminals.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-terminals.js +53 -5
- package/dist/agent-farm/servers/tower-terminals.js.map +1 -1
- package/dist/agent-farm/servers/tower-tunnel.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-tunnel.js +14 -0
- package/dist/agent-farm/servers/tower-tunnel.js.map +1 -1
- package/dist/agent-farm/servers/tower-utils.d.ts +35 -0
- package/dist/agent-farm/servers/tower-utils.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-utils.js +39 -0
- package/dist/agent-farm/servers/tower-utils.js.map +1 -1
- package/dist/agent-farm/servers/tower-websocket.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-websocket.js +8 -1
- package/dist/agent-farm/servers/tower-websocket.js.map +1 -1
- package/dist/agent-farm/types.d.ts +36 -1
- package/dist/agent-farm/types.d.ts.map +1 -1
- package/dist/agent-farm/utils/message-format.d.ts +136 -4
- package/dist/agent-farm/utils/message-format.d.ts.map +1 -1
- package/dist/agent-farm/utils/message-format.js +212 -22
- package/dist/agent-farm/utils/message-format.js.map +1 -1
- package/dist/agent-farm/utils/server-utils.d.ts +8 -2
- package/dist/agent-farm/utils/server-utils.d.ts.map +1 -1
- package/dist/agent-farm/utils/server-utils.js +19 -2
- package/dist/agent-farm/utils/server-utils.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +3 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/doctor.js +2 -2
- package/dist/commands/generate-image.d.ts +20 -1
- package/dist/commands/generate-image.d.ts.map +1 -1
- package/dist/commands/generate-image.js +188 -1
- package/dist/commands/generate-image.js.map +1 -1
- package/dist/commands/porch/context-refresh.d.ts +181 -0
- package/dist/commands/porch/context-refresh.d.ts.map +1 -0
- package/dist/commands/porch/context-refresh.js +270 -0
- package/dist/commands/porch/context-refresh.js.map +1 -0
- package/dist/commands/porch/index.d.ts +6 -0
- package/dist/commands/porch/index.d.ts.map +1 -1
- package/dist/commands/porch/index.js +46 -0
- package/dist/commands/porch/index.js.map +1 -1
- package/dist/commands/porch/next.d.ts +0 -9
- package/dist/commands/porch/next.d.ts.map +1 -1
- package/dist/commands/porch/next.js +133 -4
- package/dist/commands/porch/next.js.map +1 -1
- package/dist/commands/porch/prompts.d.ts.map +1 -1
- package/dist/commands/porch/prompts.js +18 -2
- package/dist/commands/porch/prompts.js.map +1 -1
- package/dist/commands/porch/protocol.d.ts.map +1 -1
- package/dist/commands/porch/protocol.js +102 -0
- package/dist/commands/porch/protocol.js.map +1 -1
- package/dist/commands/porch/types.d.ts +61 -0
- package/dist/commands/porch/types.d.ts.map +1 -1
- package/dist/lib/forge-contracts.d.ts +66 -5
- package/dist/lib/forge-contracts.d.ts.map +1 -1
- package/dist/lib/forge-contracts.js.map +1 -1
- package/dist/lib/forge.d.ts +1 -1
- package/dist/lib/forge.d.ts.map +1 -1
- package/dist/lib/forge.js +33 -11
- package/dist/lib/forge.js.map +1 -1
- package/dist/lib/self-refresh-invocation.d.ts +60 -0
- package/dist/lib/self-refresh-invocation.d.ts.map +1 -0
- package/dist/lib/self-refresh-invocation.js +64 -0
- package/dist/lib/self-refresh-invocation.js.map +1 -0
- package/dist/lib/test-env.d.ts +50 -0
- package/dist/lib/test-env.d.ts.map +1 -1
- package/dist/lib/test-env.js +76 -0
- package/dist/lib/test-env.js.map +1 -1
- package/dist/terminal/pty-manager.d.ts +10 -1
- package/dist/terminal/pty-manager.d.ts.map +1 -1
- package/dist/terminal/pty-manager.js +38 -9
- package/dist/terminal/pty-manager.js.map +1 -1
- package/dist/terminal/pty-session.d.ts +52 -4
- package/dist/terminal/pty-session.d.ts.map +1 -1
- package/dist/terminal/pty-session.js +157 -18
- package/dist/terminal/pty-session.js.map +1 -1
- package/dist/terminal/shellper-client.d.ts +73 -0
- package/dist/terminal/shellper-client.d.ts.map +1 -1
- package/dist/terminal/shellper-client.js +151 -0
- package/dist/terminal/shellper-client.js.map +1 -1
- package/dist/terminal/shellper-main.js +20 -3
- package/dist/terminal/shellper-main.js.map +1 -1
- package/dist/terminal/shellper-process.d.ts +2 -0
- package/dist/terminal/shellper-process.d.ts.map +1 -1
- package/dist/terminal/shellper-process.js +17 -1
- package/dist/terminal/shellper-process.js.map +1 -1
- package/dist/terminal/shellper-protocol.d.ts +28 -0
- package/dist/terminal/shellper-protocol.d.ts.map +1 -1
- package/dist/terminal/shellper-protocol.js.map +1 -1
- package/package.json +4 -4
- package/scripts/forge/gitea/_lib.sh +214 -0
- package/scripts/forge/gitea/issue-comment.sh +8 -1
- package/scripts/forge/gitea/issue-view.sh +95 -4
- package/scripts/forge/gitea/pr-create.sh +155 -0
- package/scripts/forge/gitea/pr-exists.sh +32 -4
- package/scripts/forge/gitea/pr-list.sh +40 -31
- package/scripts/forge/gitea/pr-view.sh +65 -4
- package/scripts/forge/gitea/recently-merged.sh +91 -21
- package/scripts/forge/gitea/user-identity.sh +30 -1
- package/scripts/forge/github/issue-view.sh +5 -2
- package/scripts/forge/github/pr-create.sh +47 -0
- package/scripts/forge/github/pr-search.sh +3 -1
- package/scripts/forge/gitlab/issue-view.sh +24 -4
- package/scripts/forge/gitlab/pr-create.sh +53 -0
- package/scripts/forge/gitlab/pr-search.sh +3 -1
- package/scripts/forge/linear/issue-view.sh +13 -2
- package/skeleton/.claude/skills/arch-save/SKILL.md +8 -2
- package/skeleton/.claude/skills/builder-refresh/SKILL.md +138 -0
- package/skeleton/.claude/skills/generate-image/SKILL.md +22 -1
- package/skeleton/.codex/skills/arch-save/SKILL.md +8 -2
- package/skeleton/.codex/skills/builder-refresh/SKILL.md +138 -0
- package/skeleton/.codex/skills/generate-image/SKILL.md +22 -1
- package/skeleton/protocol-schema.json +17 -0
- package/skeleton/protocols/air/prompts/pr.md +6 -1
- package/skeleton/protocols/air/protocol.json +1 -1
- package/skeleton/protocols/aspir/prompts/review.md +6 -1
- package/skeleton/protocols/aspir/protocol.json +5 -1
- package/skeleton/protocols/bugfix/prompts/pr.md +6 -1
- package/skeleton/protocols/bugfix/protocol.json +1 -1
- package/skeleton/protocols/bugfix/protocol.md +2 -1
- package/skeleton/protocols/experiment/protocol.json +1 -1
- package/skeleton/protocols/maintain/prompts/review.md +6 -1
- package/skeleton/protocols/maintain/protocol.json +1 -1
- package/skeleton/protocols/pir/prompts/review.md +10 -7
- package/skeleton/protocols/pir/protocol.json +1 -1
- package/skeleton/protocols/protocol-schema.json +17 -0
- package/skeleton/protocols/research/protocol.json +1 -1
- package/skeleton/protocols/spike/protocol.json +1 -1
- package/skeleton/protocols/spir/prompts/review.md +6 -1
- package/skeleton/protocols/spir/protocol.json +5 -1
- package/skeleton/resources/commands/agent-farm.md +1 -1
- package/templates/tower.html +16 -1
- package/dashboard-dist/assets/index-BZRTEMtH.css +0 -32
- package/dashboard-dist/assets/index-D3XaKpZW.js.map +0 -1
|
@@ -18,6 +18,7 @@ import { buildPhasePrompt } from './prompts.js';
|
|
|
18
18
|
import { parseVerdict, allApprove } from './verdict.js';
|
|
19
19
|
import { loadCheckOverrides, resolveConsultationModels } from './config.js';
|
|
20
20
|
import { getResolver } from './artifacts.js';
|
|
21
|
+
import { acknowledgeRefreshes, buildRefreshTask, declaresEnter, declaresPlanPhaseAdvance, enterBoundary, planPhaseBoundary, recordRefresh, shouldRefresh, } from './context-refresh.js';
|
|
21
22
|
/**
|
|
22
23
|
* Find review files for the current iteration in the project directory.
|
|
23
24
|
* Review files are created by the `consult` CLI and follow the pattern:
|
|
@@ -126,6 +127,35 @@ function buildReviewContext(workspaceRoot, state) {
|
|
|
126
127
|
* State is only mutated when completed work is detected (filesystem-as-truth).
|
|
127
128
|
* If called twice without filesystem changes, returns the same output.
|
|
128
129
|
*/
|
|
130
|
+
/**
|
|
131
|
+
* Fold a context-refresh boundary into a pending transition (Spec 1470).
|
|
132
|
+
*
|
|
133
|
+
* Called by every transition site AFTER the phase fields are mutated but BEFORE
|
|
134
|
+
* `writeStateAndCommit`, so the boundary record and the transition land in one
|
|
135
|
+
* write. That atomicity is the whole at-most-once mechanism: there is no moment
|
|
136
|
+
* at which the state says "transitioned" but not "refreshed here".
|
|
137
|
+
*
|
|
138
|
+
* Returns the response to hand back when a refresh fires, or `null` to continue
|
|
139
|
+
* the normal path. A firing boundary returns INSTEAD of recursing into `next()`,
|
|
140
|
+
* so a single `porch next` no longer chains several transitions at once — each
|
|
141
|
+
* refresh gets its own turn, which is the point.
|
|
142
|
+
*
|
|
143
|
+
* Uses `status: 'tasks'` rather than a new status variant: dashboards, the VS Code
|
|
144
|
+
* tree and any other consumer parse the existing set, and a refresh IS actionable
|
|
145
|
+
* work, so it needs no new category.
|
|
146
|
+
*/
|
|
147
|
+
function refreshResponse(state, boundary, declared) {
|
|
148
|
+
if (!shouldRefresh(state, declared, boundary))
|
|
149
|
+
return null;
|
|
150
|
+
recordRefresh(state, boundary, new Date().toISOString());
|
|
151
|
+
return {
|
|
152
|
+
status: 'tasks',
|
|
153
|
+
phase: state.phase,
|
|
154
|
+
iteration: state.iteration,
|
|
155
|
+
plan_phase: state.current_plan_phase || undefined,
|
|
156
|
+
tasks: [buildRefreshTask(boundary)],
|
|
157
|
+
};
|
|
158
|
+
}
|
|
129
159
|
export async function next(workspaceRoot, projectId) {
|
|
130
160
|
const statusPath = findStatusPath(workspaceRoot, projectId);
|
|
131
161
|
if (!statusPath) {
|
|
@@ -207,6 +237,23 @@ export async function next(workspaceRoot, projectId) {
|
|
|
207
237
|
state.iteration = 1;
|
|
208
238
|
state.build_complete = false;
|
|
209
239
|
state.history = [];
|
|
240
|
+
// NO context refresh here, deliberately: a SKIP IS NOT WORK.
|
|
241
|
+
//
|
|
242
|
+
// This branch only runs at iteration 1 with `build_complete` false —
|
|
243
|
+
// i.e. before the builder has done anything in the phase being
|
|
244
|
+
// skipped. There is no context to refresh, and firing anyway is
|
|
245
|
+
// actively harmful in this repo's documented default shape ("Approved
|
|
246
|
+
// specs and plans need frontmatter and must be committed to main
|
|
247
|
+
// before spawning"): a project whose spec AND plan are both
|
|
248
|
+
// pre-approved skips two phases on consecutive `porch next` calls, so
|
|
249
|
+
// firing at each would clear the builder twice back to back with no
|
|
250
|
+
// work in between. That violates the spec's "never emitted twice in a
|
|
251
|
+
// row", and at both moments the context is near-empty, so the
|
|
252
|
+
// >=1000-byte save gate would either be padded or abort.
|
|
253
|
+
//
|
|
254
|
+
// The boundary that matters is not lost: whenever the builder
|
|
255
|
+
// actually writes the plan, `enter:implement` fires from the
|
|
256
|
+
// gate-approved transition below.
|
|
210
257
|
await writeStateAndCommit(statusPath, state, `chore(porch): ${state.id} skip pre-approved ${state.phase}`);
|
|
211
258
|
// Recurse to compute tasks for the new phase
|
|
212
259
|
return next(workspaceRoot, projectId);
|
|
@@ -260,11 +307,44 @@ export async function next(workspaceRoot, projectId) {
|
|
|
260
307
|
}
|
|
261
308
|
}
|
|
262
309
|
}
|
|
310
|
+
// Post-approval, per the spec: the gate outcome is durable in status.yaml
|
|
311
|
+
// before any refresh fires, so a refreshed builder cannot mistake
|
|
312
|
+
// "waiting at a gate" for "approved".
|
|
313
|
+
const gateBoundary = enterBoundary(nextPhase.id);
|
|
314
|
+
const gateRefresh = refreshResponse(state, gateBoundary, declaresEnter(protocol, nextPhase.id));
|
|
263
315
|
await writeStateAndCommit(statusPath, state, `chore(porch): ${state.id} ${state.phase} phase-transition`);
|
|
316
|
+
if (gateRefresh)
|
|
317
|
+
return gateRefresh;
|
|
264
318
|
return next(workspaceRoot, projectId);
|
|
265
319
|
}
|
|
266
320
|
}
|
|
267
321
|
// Handle build_verify / per_plan_phase phases
|
|
322
|
+
// Reaching here means the builder came back and asked for work — which is the
|
|
323
|
+
// only evidence porch has that a refresh completed. Record it once per
|
|
324
|
+
// boundary, so a boundary that is recorded but never acknowledged means
|
|
325
|
+
// nobody returned. This is the ONLY write on the normal path, and it happens
|
|
326
|
+
// at most once per refresh rather than once per call.
|
|
327
|
+
if (acknowledgeRefreshes(state, new Date().toISOString())) {
|
|
328
|
+
try {
|
|
329
|
+
await writeStateAndCommit(statusPath, state, `chore(porch): ${state.id} acknowledge context refresh`);
|
|
330
|
+
}
|
|
331
|
+
catch {
|
|
332
|
+
// Swallowed DELIBERATELY, and this is the only place in `next()` where
|
|
333
|
+
// that is right.
|
|
334
|
+
//
|
|
335
|
+
// `writeStateAndCommit` commits and pushes, and throws on failure. This
|
|
336
|
+
// acknowledgment is the ONLY write on the normal task-emission path, so
|
|
337
|
+
// without this catch a network blip during a push would make `porch next`
|
|
338
|
+
// fail outright — and a builder would be unable to get its next task
|
|
339
|
+
// because a VISIBILITY record could not be filed. Bookkeeping must never
|
|
340
|
+
// gate the work it is bookkeeping for.
|
|
341
|
+
//
|
|
342
|
+
// Losing it is cheap and self-healing: the boundary stays unacknowledged,
|
|
343
|
+
// the next `porch next` tries again, and the only cost of a persistent
|
|
344
|
+
// failure is a stall warning for a builder that is in fact fine — which is
|
|
345
|
+
// the safe direction for this particular signal.
|
|
346
|
+
}
|
|
347
|
+
}
|
|
268
348
|
if (isBuildVerify(protocol, state.phase)) {
|
|
269
349
|
return await handleBuildVerify(workspaceRoot, projectId, state, protocol, phaseConfig, statusPath, resolver);
|
|
270
350
|
}
|
|
@@ -421,7 +501,7 @@ async function handleBuildVerify(workspaceRoot, projectId, state, protocol, phas
|
|
|
421
501
|
// All reviews in — parse verdicts and decide
|
|
422
502
|
if (allApprove(reviews)) {
|
|
423
503
|
// All approve — advance
|
|
424
|
-
return await handleVerifyApproved(workspaceRoot, projectId, state, protocol, statusPath, reviews);
|
|
504
|
+
return await handleVerifyApproved(workspaceRoot, projectId, state, protocol, statusPath, reviews, resolver);
|
|
425
505
|
}
|
|
426
506
|
// At least one reviewer returned REQUEST_CHANGES (allApprove above
|
|
427
507
|
// already advanced when verdicts were all APPROVE-or-COMMENT, per
|
|
@@ -459,7 +539,7 @@ async function handleBuildVerify(workspaceRoot, projectId, state, protocol, phas
|
|
|
459
539
|
at: new Date().toISOString(),
|
|
460
540
|
};
|
|
461
541
|
await writeStateAndCommit(statusPath, state, `chore(porch): ${state.id} ${state.phase} force-advance (safety ceiling reached at iter ${state.iteration})`);
|
|
462
|
-
const response = await handleVerifyApproved(workspaceRoot, projectId, state, protocol, statusPath, reviews);
|
|
542
|
+
const response = await handleVerifyApproved(workspaceRoot, projectId, state, protocol, statusPath, reviews, resolver);
|
|
463
543
|
// Prepend the force-advance notice to whatever the approval path emitted.
|
|
464
544
|
const ceilingNotice = `⚠️ FORCE-ADVANCE: REQUEST_CHANGES persisted for ${state.iteration} iterations ` +
|
|
465
545
|
`(safety ceiling = ${maxIterations}). Latest rebuttal preserved as audit trail: ${path.basename(rebuttalFile)}. ` +
|
|
@@ -526,7 +606,7 @@ async function handleBuildVerify(workspaceRoot, projectId, state, protocol, phas
|
|
|
526
606
|
* Handle the case where all reviewers approve.
|
|
527
607
|
* Advances plan phase or requests gate.
|
|
528
608
|
*/
|
|
529
|
-
async function handleVerifyApproved(workspaceRoot, projectId, state, protocol, statusPath, reviews) {
|
|
609
|
+
async function handleVerifyApproved(workspaceRoot, projectId, state, protocol, statusPath, reviews, resolver) {
|
|
530
610
|
const gateName = getPhaseGate(protocol, state.phase);
|
|
531
611
|
// For per_plan_phase: advance to next plan phase (no gate between phases)
|
|
532
612
|
if (isPhased(protocol, state.phase) && state.plan_phases.length > 0) {
|
|
@@ -539,16 +619,40 @@ async function handleVerifyApproved(workspaceRoot, projectId, state, protocol, s
|
|
|
539
619
|
// Preserve history across plan phases for audit trail
|
|
540
620
|
// (plan_phase field on each entry disambiguates iterations)
|
|
541
621
|
if (moveToReview) {
|
|
542
|
-
// All plan phases done — move to review
|
|
622
|
+
// All plan phases done — move to review.
|
|
623
|
+
//
|
|
624
|
+
// This boundary is a QUALITY feature as much as a context one: a builder
|
|
625
|
+
// that enters review in a fresh context reads its own diff cold, without
|
|
626
|
+
// the memory of intending the code to be correct.
|
|
627
|
+
//
|
|
628
|
+
// NOTE the coupling: the successor phase is hardcoded `'review'` here
|
|
629
|
+
// (pre-existing), and the boundary id is derived from the same literal.
|
|
630
|
+
// Record and event therefore cannot disagree — but a protocol whose
|
|
631
|
+
// per_plan_phase phase transitions to a differently-named successor
|
|
632
|
+
// would silently mis-target BOTH. Change them together, or derive both
|
|
633
|
+
// from `getNextPhase`.
|
|
543
634
|
state.phase = 'review';
|
|
544
635
|
state.current_plan_phase = null;
|
|
636
|
+
const reviewRefresh = refreshResponse(state, enterBoundary('review'), declaresEnter(protocol, 'review'));
|
|
545
637
|
await writeStateAndCommit(statusPath, state, `chore(porch): ${state.id} all plan phases complete → review`);
|
|
638
|
+
if (reviewRefresh)
|
|
639
|
+
return reviewRefresh;
|
|
546
640
|
return next(workspaceRoot, projectId);
|
|
547
641
|
}
|
|
548
642
|
// Next plan phase
|
|
549
643
|
const newCurrent = getCurrentPlanPhase(state.plan_phases);
|
|
550
644
|
state.current_plan_phase = newCurrent?.id || null;
|
|
645
|
+
// Fires on ADVANCE BETWEEN plan phases, which excludes the first one by
|
|
646
|
+
// construction: entering `implement` IS entering plan phase 1, and this
|
|
647
|
+
// code only runs when a phase completes and hands off to a successor. So
|
|
648
|
+
// two refresh tasks can never fire back to back at that moment, without a
|
|
649
|
+
// dedup rule anyone has to remember.
|
|
650
|
+
const advanceRefresh = state.current_plan_phase
|
|
651
|
+
? refreshResponse(state, planPhaseBoundary(state.current_plan_phase), declaresPlanPhaseAdvance(protocol))
|
|
652
|
+
: null;
|
|
551
653
|
await writeStateAndCommit(statusPath, state, `chore(porch): ${state.id} advance plan phase → ${state.current_plan_phase}`);
|
|
654
|
+
if (advanceRefresh)
|
|
655
|
+
return advanceRefresh;
|
|
552
656
|
return next(workspaceRoot, projectId);
|
|
553
657
|
}
|
|
554
658
|
}
|
|
@@ -589,7 +693,32 @@ async function handleVerifyApproved(workspaceRoot, projectId, state, protocol, s
|
|
|
589
693
|
state.iteration = 1;
|
|
590
694
|
state.build_complete = false;
|
|
591
695
|
state.history = [];
|
|
696
|
+
// Extract plan phases when entering a per_plan_phase phase.
|
|
697
|
+
//
|
|
698
|
+
// PRE-EXISTING BUG, fixed here because Spec 1470 depends on it: the gated
|
|
699
|
+
// (`next()`) and pre-approved paths both do this, but this ungated path did
|
|
700
|
+
// not. ASPIR has no spec/plan gates, so plan→implement ALWAYS comes through
|
|
701
|
+
// here — meaning ASPIR entered `implement` with an empty `plan_phases` and
|
|
702
|
+
// never reached the per-plan-phase advance branch at all. That silently cost
|
|
703
|
+
// ASPIR its per-phase iteration long before this project; it surfaces now
|
|
704
|
+
// because ASPIR's declared `plan-phase:*` refresh boundaries could never fire
|
|
705
|
+
// without it.
|
|
706
|
+
if (isPhased(protocol, nextPhase.id)) {
|
|
707
|
+
const planContent = (resolver ?? getResolver(workspaceRoot)).getPlanContent(state.id, state.title);
|
|
708
|
+
if (planContent) {
|
|
709
|
+
state.plan_phases = extractPlanPhases(planContent);
|
|
710
|
+
if (state.plan_phases.length > 0) {
|
|
711
|
+
state.current_plan_phase = state.plan_phases[0].id;
|
|
712
|
+
}
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
// ASPIR's path: no spec/plan gates, so the transition happens here rather than
|
|
716
|
+
// on gate approval. Same boundary, same atomicity — and this is the protocol
|
|
717
|
+
// that runs UNSUPERVISED, which is the case the fail-safes exist for.
|
|
718
|
+
const directRefresh = refreshResponse(state, enterBoundary(nextPhase.id), declaresEnter(protocol, nextPhase.id));
|
|
592
719
|
await writeStateAndCommit(statusPath, state, `chore(porch): ${state.id} ${state.phase} phase-transition`);
|
|
720
|
+
if (directRefresh)
|
|
721
|
+
return directRefresh;
|
|
593
722
|
return next(workspaceRoot, projectId);
|
|
594
723
|
}
|
|
595
724
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next.js","sourceRoot":"","sources":["../../../src/commands/porch/next.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"next.js","sourceRoot":"","sources":["../../../src/commands/porch/next.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAA6C,MAAM,YAAY,CAAC;AAIpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAA6C,MAAM,YAAY,CAAC;AAIpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAMvD;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAyC/H;AA6ID;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAUjE;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,OAAO,CAAC,MAAM,CAAC,CAoFjB"}
|
|
@@ -13,6 +13,7 @@ import { getPhaseConfig, isPhased, isBuildVerify, getBuildConfig } from './proto
|
|
|
13
13
|
import { findPlanFile, getCurrentPlanPhase, getPhaseContent } from './plan.js';
|
|
14
14
|
import { getProjectDir, resolveArtifactBaseName } from './state.js';
|
|
15
15
|
import { fetchIssue } from '../../lib/github.js';
|
|
16
|
+
import { getForgeCommand, loadForgeConfig } from '../../lib/forge.js';
|
|
16
17
|
import { resolveCodevFile, resolveCodevIncludes } from '../../lib/skeleton.js';
|
|
17
18
|
import { readHotTierFiles } from '../../lib/managed-block.js';
|
|
18
19
|
/**
|
|
@@ -81,16 +82,31 @@ function loadPromptFile(workspaceRoot, protocolName, promptFile) {
|
|
|
81
82
|
// committed copy. Mirrors the spawn-side protocol.md inlining. #1011.
|
|
82
83
|
return resolveCodevIncludes(fs.readFileSync(resolved, 'utf-8'), workspaceRoot);
|
|
83
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* Resolve the `pr-create` concept command for the PR-opening prompts.
|
|
87
|
+
*
|
|
88
|
+
* Mirrors the `pr-merge` injection in porch/next.ts. Prompts must not hardcode
|
|
89
|
+
* `gh pr create`: a project with `forge.provider` set would otherwise shell out
|
|
90
|
+
* to `gh` at the single most important write in the protocol (#1455).
|
|
91
|
+
*/
|
|
92
|
+
function resolvePrCreateCommand(workspaceRoot) {
|
|
93
|
+
const command = getForgeCommand('pr-create', loadForgeConfig(workspaceRoot));
|
|
94
|
+
// The disabled form must FAIL, not comment: a `# …` line is valid shell that
|
|
95
|
+
// exits 0, so an agent running the block would read "PR opened" from silence.
|
|
96
|
+
return (command ??
|
|
97
|
+
"{ echo 'pr-create is disabled for this forge — open the PR manually' >&2; false; }");
|
|
98
|
+
}
|
|
84
99
|
/**
|
|
85
100
|
* Substitute template variables in a prompt.
|
|
86
101
|
*/
|
|
87
|
-
function substituteVariables(prompt, state, artifactBaseName, planPhase, summary) {
|
|
102
|
+
function substituteVariables(prompt, state, artifactBaseName, workspaceRoot, planPhase, summary) {
|
|
88
103
|
const variables = {
|
|
89
104
|
project_id: state.id,
|
|
90
105
|
title: state.title,
|
|
91
106
|
artifact_name: artifactBaseName,
|
|
92
107
|
current_state: state.phase,
|
|
93
108
|
protocol: state.protocol,
|
|
109
|
+
pr_create_command: resolvePrCreateCommand(workspaceRoot),
|
|
94
110
|
};
|
|
95
111
|
// Add summary/goal if available
|
|
96
112
|
if (summary) {
|
|
@@ -233,7 +249,7 @@ export async function buildPhasePrompt(workspaceRoot, state, protocol, resolver)
|
|
|
233
249
|
const promptFileName = buildConfig?.prompt || `${state.phase}.md`;
|
|
234
250
|
const promptContent = loadPromptFile(workspaceRoot, state.protocol, promptFileName);
|
|
235
251
|
if (promptContent) {
|
|
236
|
-
let result = substituteVariables(promptContent, state, artifactBaseName, currentPlanPhase, summary);
|
|
252
|
+
let result = substituteVariables(promptContent, state, artifactBaseName, workspaceRoot, currentPlanPhase, summary);
|
|
237
253
|
// Add goal/summary header if available
|
|
238
254
|
if (summary) {
|
|
239
255
|
result = `## Goal\n\n${summary}\n\n---\n\n` + result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/commands/porch/prompts.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/commands/porch/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,aAAqB,EAAE,SAAiB,EAAE,YAAqB;IACrG,mFAAmF;IACnF,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;IAC1C,IAAI,KAAK,EAAE,KAAK,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,KAAK,CAAC;IACrB,CAAC;IAED,iDAAiD;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACvC,iEAAiE;YACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;gBAC9B,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,OAAO,KAAK,CAAC;gBACrC,4EAA4E;gBAC5E,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACnC,IAAI,CAAC,QAAQ;oBAAE,OAAO,KAAK,CAAC;gBAC5B,MAAM,gBAAgB,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;gBAC/D,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;gBACzD,OAAO,gBAAgB,KAAK,YAAY,CAAC;YAC3C,CAAC,CAAC,CAAC;YACH,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;gBACxE,wBAAwB;gBACxB,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBACxE,IAAI,YAAY,EAAE,CAAC;oBACjB,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8CAA8C;QAChD,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,aAAqB,EAAE,YAAoB,EAAE,UAAkB;IACrF,MAAM,YAAY,GAAG,aAAa,YAAY,YAAY,UAAU,EAAE,CAAC;IACvE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAC/D,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,2EAA2E;IAC3E,wEAAwE;IACxE,sEAAsE;IACtE,sEAAsE;IACtE,OAAO,oBAAoB,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AACjF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAAC,aAAqB;IACnD,MAAM,OAAO,GAAG,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,OAAO,CACL,OAAO;QACP,oFAAoF,CACrF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAC1B,MAAc,EACd,KAAmB,EACnB,gBAAwB,EACxB,aAAqB,EACrB,SAA4B,EAC5B,OAAuB;IAEvB,MAAM,SAAS,GAA2B;QACxC,UAAU,EAAE,KAAK,CAAC,EAAE;QACpB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,aAAa,EAAE,gBAAgB;QAC/B,aAAa,EAAE,KAAK,CAAC,KAAK;QAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,iBAAiB,EAAE,sBAAsB,CAAC,aAAa,CAAC;KACzD,CAAC;IAEF,gCAAgC;IAChC,IAAI,OAAO,EAAE,CAAC;QACZ,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;QAC5B,SAAS,CAAC,IAAI,GAAG,OAAO,CAAC,CAAE,wBAAwB;IACrD,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,SAAS,CAAC,aAAa,GAAG,SAAS,CAAC,EAAE,CAAC;QACvC,SAAS,CAAC,gBAAgB,GAAG,SAAS,CAAC,KAAK,CAAC;IAC/C,CAAC;IAED,mCAAmC;IACnC,OAAO,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACzD,OAAO,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,OAA0B,EAAE,gBAAwB,EAAE,KAAmB,EAAE,aAAqB;IAC1H,MAAM,KAAK,GAAa;QACtB,qBAAqB;QACrB,EAAE;QACF,qBAAqB,gBAAgB,yDAAyD;QAC9F,EAAE;QACF,8EAA8E;QAC9E,EAAE;QACF,wBAAwB;QACxB,EAAE;KACH,CAAC;IAEF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QAChD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3B,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACpC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;gBACvD,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,QAAQ,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC9B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;IACxE,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;IAC/D,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;IAC7F,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,4BAA4B;IAC5B,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACvE,MAAM,KAAK,GAAG,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,KAAK,CAAC;IACtD,MAAM,gBAAgB,GAAG,GAAG,KAAK,CAAC,EAAE,IAAI,KAAK,QAAQ,gBAAgB,GAAG,CAAC,eAAe,CAAC;IACzF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;IAE7D,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IACrD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,sGAAsG,CAAC,CAAC;IACnH,KAAK,CAAC,IAAI,CAAC,6BAA6B,YAAY,IAAI,CAAC,CAAC;IAC1D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IACzD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;IAC9D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;IAChF,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IAClF,KAAK,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;IACvF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,aAAqB;IACvD,MAAM,KAAK,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,CACL,gDAAgD;QAChD,wEAAwE;QACxE,sFAAsF;QACtF,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;QAClB,aAAa,CACd,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,aAAqB,EACrB,KAAmB,EACnB,QAAkB,EAClB,QAA2B;IAE3B,wEAAwE;IACxE,MAAM,OAAO,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAEnD,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACzD,CAAC;IAED,mEAAmE;IACnE,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAE9E,8CAA8C;IAC9C,IAAI,gBAAgB,GAAqB,IAAI,CAAC;IAE9C,IAAI,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpE,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;IAED,oDAAoD;IACpD,iFAAiF;IACjF,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,SAAS,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5F,MAAM,YAAY,GAAG,KAAK,CAAC,kBAAkB,IAAI,SAAS,CAAC;QAC3D,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CACvC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC,KAAK,YAAY,CAClD,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,aAAa,GAAG,kBAAkB,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,IAAI,kBAAkB,GAAG,EAAE,CAAC;IAC5B,IAAI,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;QAChC,kBAAkB,GAAG,uCAAuC,KAAK,CAAC,OAAO,CAAC,YAAY,aAAa,CAAC;IACtG,CAAC;IAED,mFAAmF;IACnF,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAEjG,uDAAuD;IACvD,CAAC;QACC,yEAAyE;QACzE,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,WAAW,EAAE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,KAAK,CAAC;QAElE,MAAM,aAAa,GAAG,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACpF,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,MAAM,GAAG,mBAAmB,CAAC,aAAa,EAAE,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;YAEnH,uCAAuC;YACvC,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,GAAG,cAAc,OAAO,aAAa,GAAG,MAAM,CAAC;YACvD,CAAC;YAED,wDAAwD;YACxD,IAAI,kBAAkB,EAAE,CAAC;gBACvB,MAAM,GAAG,kBAAkB,GAAG,MAAM,CAAC;YACvC,CAAC;YAED,uCAAuC;YACvC,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,GAAG,mBAAmB,CAAC,aAAa,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YACzF,CAAC;YAED,qCAAqC;YACrC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,GAAG,aAAa,GAAG,aAAa,GAAG,MAAM,CAAC;YAClD,CAAC;YAED,OAAO,OAAO,GAAG,MAAM,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,yDAAyD;IACzD,IAAI,QAAQ,GAAG,mBAAmB,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAEvF,qCAAqC;IACrC,IAAI,aAAa,EAAE,CAAC;QAClB,QAAQ,GAAG,aAAa,GAAG,aAAa,GAAG,QAAQ,CAAC;IACtD,CAAC;IAED,OAAO,OAAO,GAAG,QAAQ,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAC1B,aAAqB,EACrB,KAAmB,EACnB,SAAoB,EACpB,MAAc,EACd,QAA2B;IAE3B,+DAA+D;IAC/D,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,QAAQ,EAAE,CAAC;QACb,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;SAAM,CAAC;QACN,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACpE,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBAAC,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,eAAe,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,MAAM,GAAG,0CAA0C,SAAS,CAAC,EAAE,KAAK,SAAS,CAAC,KAAK,SAAS,YAAY,IAAI,CAAC;QACtH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,6BAA6B;IAC/B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAGD;;GAEG;AACH,SAAS,mBAAmB,CAC1B,KAAmB,EACnB,SAAiB,EACjB,SAA4B,EAC5B,OAAuB;IAEvB,IAAI,MAAM,GAAG,YAAY,SAAS;;wBAEZ,SAAS,iBAAiB,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE;;;;oBAI1D,KAAK,CAAC,EAAE;uBACL,KAAK,CAAC,KAAK;kBAChB,KAAK,CAAC,QAAQ;CAC/B,CAAC;IAEA,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,qBAAqB,SAAS,CAAC,EAAE,MAAM,SAAS,CAAC,KAAK,IAAI,CAAC;IACvE,CAAC;IAED,4CAA4C;IAC5C,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,gBAAgB,OAAO,IAAI,CAAC;IACxC,CAAC;IAED,MAAM,IAAI;;;;;CAKX,CAAC;IAEA,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/protocol.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/protocol.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,EAAwB,MAAM,YAAY,CAAC;AAOvJ;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,QAAQ,CAoBlF;AA+TD;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAExF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAM7F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,cAAc,GACzB,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAwC1B;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG/E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAGrE;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,QAAQ,EAClB,SAAS,CAAC,EAAE,cAAc,GACzB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA2BxB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAG1E;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAGtF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAGxF;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAG5E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAGhG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAG9E"}
|
|
@@ -73,6 +73,107 @@ function findProtocolFile(workspaceRoot, protocolName) {
|
|
|
73
73
|
}
|
|
74
74
|
return null;
|
|
75
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* Parse and validate a protocol's `context_refresh` block (Spec 1470).
|
|
78
|
+
*
|
|
79
|
+
* ## Why this rejects rather than ignores
|
|
80
|
+
*
|
|
81
|
+
* There is no runtime schema validation anywhere in porch — `loadProtocol` is
|
|
82
|
+
* `JSON.parse` plus this hand-rolled normalizer, and `protocol-schema.json` is
|
|
83
|
+
* editor tooling that validates nothing at run time. So an unresolvable
|
|
84
|
+
* declaration has no other layer to catch it: a boundary naming a phase the
|
|
85
|
+
* protocol does not have would simply never match a transition, and the protocol
|
|
86
|
+
* author would see a feature that is configured, reports no error, and silently
|
|
87
|
+
* never fires.
|
|
88
|
+
*
|
|
89
|
+
* A context refresh that does not happen is invisible by nature — the builder
|
|
90
|
+
* just keeps accumulating context — so this is the ONLY place the mistake can
|
|
91
|
+
* be made loud. Every rejection names the offending value, because "invalid
|
|
92
|
+
* context_refresh" sends the author back to guess which of several keys is wrong.
|
|
93
|
+
*
|
|
94
|
+
* @param raw The `context_refresh` value as it appears in protocol.json
|
|
95
|
+
* @param phases Already-normalized phases, used to prove each boundary resolves
|
|
96
|
+
* @param protocolName For error messages
|
|
97
|
+
*/
|
|
98
|
+
function normalizeContextRefresh(raw, phases, protocolName) {
|
|
99
|
+
// ONLY `undefined` means "omitted". An explicit `null` is a configuration
|
|
100
|
+
// act that would silently do nothing, which is the same silent no-op this
|
|
101
|
+
// function exists to reject — and all three schemas type this key as an
|
|
102
|
+
// object, so `null` violates them too. An author who wants no refreshes omits
|
|
103
|
+
// the key.
|
|
104
|
+
if (raw === undefined)
|
|
105
|
+
return undefined;
|
|
106
|
+
const fail = (msg) => {
|
|
107
|
+
throw new Error(`Invalid protocol '${protocolName}': context_refresh ${msg}`);
|
|
108
|
+
};
|
|
109
|
+
if (raw === null) {
|
|
110
|
+
return fail('is null; omit the key entirely to declare no refresh boundaries');
|
|
111
|
+
}
|
|
112
|
+
if (typeof raw !== 'object' || Array.isArray(raw)) {
|
|
113
|
+
return fail(`must be an object, got ${Array.isArray(raw) ? 'array' : typeof raw}`);
|
|
114
|
+
}
|
|
115
|
+
const obj = raw;
|
|
116
|
+
// Unknown keys are rejected rather than ignored: a typo'd key
|
|
117
|
+
// ("on_entry" for "on_enter") is indistinguishable from "declared nothing"
|
|
118
|
+
// if we skip it, which is the silent-no-op failure this whole function exists
|
|
119
|
+
// to prevent.
|
|
120
|
+
const KNOWN = new Set(['on_enter', 'on_plan_phase_advance']);
|
|
121
|
+
for (const key of Object.keys(obj)) {
|
|
122
|
+
if (!KNOWN.has(key)) {
|
|
123
|
+
return fail(`has unknown key '${key}' (expected one of: ${[...KNOWN].join(', ')})`);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
let on_enter;
|
|
127
|
+
if (obj.on_enter !== undefined) {
|
|
128
|
+
if (!Array.isArray(obj.on_enter)) {
|
|
129
|
+
return fail(`on_enter must be an array of phase ids, got ${typeof obj.on_enter}`);
|
|
130
|
+
}
|
|
131
|
+
const phaseIds = new Set(phases.map(p => p.id));
|
|
132
|
+
for (const entry of obj.on_enter) {
|
|
133
|
+
if (typeof entry !== 'string') {
|
|
134
|
+
return fail(`on_enter entries must be strings, got ${typeof entry}`);
|
|
135
|
+
}
|
|
136
|
+
if (!phaseIds.has(entry)) {
|
|
137
|
+
return fail(`on_enter names phase '${entry}', which this protocol does not have ` +
|
|
138
|
+
`(phases: ${[...phaseIds].join(', ')})`);
|
|
139
|
+
}
|
|
140
|
+
// The protocol's FIRST phase is never transitioned INTO — `porch init`
|
|
141
|
+
// sets it directly as the starting state, and every transition site moves
|
|
142
|
+
// to a SUCCESSOR. So an entry boundary on it would validate cleanly and
|
|
143
|
+
// then never fire: the same silent no-op rejected just above for
|
|
144
|
+
// `on_plan_phase_advance`, and the reason this validator exists.
|
|
145
|
+
if (entry === phases[0]?.id) {
|
|
146
|
+
return fail(`on_enter names '${entry}', which is this protocol's first phase. A project ` +
|
|
147
|
+
`STARTS there rather than transitioning into it, so the boundary could never fire`);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// Duplicates resolve fine but say something the author did not mean — a
|
|
151
|
+
// boundary cannot fire twice on one transition. Rejecting keeps the runtime
|
|
152
|
+
// in step with the schemas' `uniqueItems`, so the two cannot disagree.
|
|
153
|
+
const seen = new Set();
|
|
154
|
+
for (const entry of obj.on_enter) {
|
|
155
|
+
if (seen.has(entry))
|
|
156
|
+
return fail(`on_enter lists phase '${entry}' more than once`);
|
|
157
|
+
seen.add(entry);
|
|
158
|
+
}
|
|
159
|
+
on_enter = obj.on_enter;
|
|
160
|
+
}
|
|
161
|
+
let on_plan_phase_advance;
|
|
162
|
+
if (obj.on_plan_phase_advance !== undefined) {
|
|
163
|
+
if (typeof obj.on_plan_phase_advance !== 'boolean') {
|
|
164
|
+
return fail(`on_plan_phase_advance must be a boolean, got ${typeof obj.on_plan_phase_advance}`);
|
|
165
|
+
}
|
|
166
|
+
// A protocol with no per_plan_phase phase never advances between plan
|
|
167
|
+
// phases, so `true` here is a declaration that can never fire — the exact
|
|
168
|
+
// silent no-op this validator exists to reject.
|
|
169
|
+
if (obj.on_plan_phase_advance && !phases.some(p => p.type === 'per_plan_phase')) {
|
|
170
|
+
return fail(`on_plan_phase_advance is true, but this protocol has no 'per_plan_phase' phase, ` +
|
|
171
|
+
`so the boundary could never fire`);
|
|
172
|
+
}
|
|
173
|
+
on_plan_phase_advance = obj.on_plan_phase_advance;
|
|
174
|
+
}
|
|
175
|
+
return { on_enter, on_plan_phase_advance };
|
|
176
|
+
}
|
|
76
177
|
/**
|
|
77
178
|
* Normalize protocol JSON to our simplified Protocol type
|
|
78
179
|
*/
|
|
@@ -136,6 +237,7 @@ function normalizeProtocol(json) {
|
|
|
136
237
|
phases,
|
|
137
238
|
checks,
|
|
138
239
|
phase_completion,
|
|
240
|
+
context_refresh: normalizeContextRefresh(obj.context_refresh, phases, obj.name),
|
|
139
241
|
};
|
|
140
242
|
}
|
|
141
243
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/commands/porch/protocol.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/commands/porch/protocol.ts"],"names":[],"mappings":"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"}
|