@markjaquith/agency 2.71.1 → 2.71.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@markjaquith/agency",
3
- "version": "2.71.1",
3
+ "version": "2.71.2",
4
4
  "description": "Manage agentic work across repositories with durable workbases",
5
5
  "keywords": [
6
6
  "agents",
@@ -394,6 +394,15 @@ describe("work command", () => {
394
394
  target: "execution-unit:task/example",
395
395
  override: true,
396
396
  })
397
+ expect(forced.materializeOptions[0]?.validationAlreadyPerformed).toBe(false)
398
+ })
399
+
400
+ test("reuses successful readiness validation during materialization", async () => {
401
+ const harness = createHarness()
402
+
403
+ await harness.run({ taskId: "example", opencode: true })
404
+
405
+ expect(harness.materializeOptions[0]?.validationAlreadyPerformed).toBe(true)
397
406
  })
398
407
 
399
408
  test("reopens forced terminal tasks through open before launching as working", async () => {
@@ -237,6 +237,7 @@ export const work = (
237
237
  if (!target) return
238
238
  }
239
239
  yield* readiness.guardWorkTarget(targetNodeId(target), root, options.force)
240
+ const validationAlreadyPerformed = !options.force
240
241
 
241
242
  const continuing =
242
243
  target.kind !== "epic" &&
@@ -257,7 +258,10 @@ export const work = (
257
258
  const phaseId = target.kind === "phase" ? target.phaseId : undefined
258
259
  progress.start("Preparing workspace...")
259
260
  const workspace = yield* worktrees
260
- .materialize(taskId, phaseId, root, options)
261
+ .materialize(taskId, phaseId, root, {
262
+ ...options,
263
+ validationAlreadyPerformed,
264
+ })
261
265
  .pipe(
262
266
  Effect.tap(() =>
263
267
  Effect.sync(() => progress.succeed("Workspace ready")),