@krapht/ork 1.0.0-alpha.17 → 1.0.0-alpha.18

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 (40) hide show
  1. package/dist/{__build_info__-C1Nm0hlJ.mjs → __build_info__-B8TNbFtN.mjs} +2 -2
  2. package/dist/{attach-EP374oMP.mjs → attach-CU4Pk42S.mjs} +5 -5
  3. package/dist/{attach-RQx__RzH.mjs → attach-qvfyaQXC.mjs} +1 -1
  4. package/dist/bin.mjs +35 -35
  5. package/dist/{brief-Bs3cMQU0.mjs → brief-Bh1FnAHv.mjs} +4 -4
  6. package/dist/{builtin-files-yYaNTQRU.mjs → builtin-files-dnTP2GaX.mjs} +1 -1
  7. package/dist/{completion-DIXWlnAl.mjs → completion-CzXUGSVn.mjs} +4 -4
  8. package/dist/{context-Dq-VM_sq.mjs → context-b4_gPlv3.mjs} +3 -3
  9. package/dist/{find-k489laBa.mjs → find-P-VV4B47.mjs} +1 -1
  10. package/dist/{flags-B4ZZWspN.mjs → flags-CqjJ44uW.mjs} +1 -1
  11. package/dist/{follow-ups-DD8NTPe6.mjs → follow-ups-B_c1DSpA.mjs} +8 -8
  12. package/dist/{format-DQc9A_ei.mjs → format-BS1qzpkf.mjs} +1 -1
  13. package/dist/{in-a-run-D_9GlAlS.mjs → in-a-run-DKoMGTNE.mjs} +2 -2
  14. package/dist/{install-PVlV2QPq.mjs → install-B743Bwzz.mjs} +1 -1
  15. package/dist/{limits-CHqBO7wb.mjs → limits-DrsKCqaN.mjs} +1 -1
  16. package/dist/{mcp-D38Ajb0b.mjs → mcp-BMwekw38.mjs} +6 -6
  17. package/dist/{once-DuUzpzL2.mjs → once-6L8gciJV.mjs} +3 -3
  18. package/dist/{pause-Bx3ePGrn.mjs → pause-8gnVgICR.mjs} +3 -3
  19. package/dist/{post-2CaJz_mV.mjs → post-y1qL1Fnj.mjs} +2 -2
  20. package/dist/{print-n2qetUHc.mjs → print-DLe4MHn-.mjs} +1 -1
  21. package/dist/{project-records-Cune1l6I.mjs → project-records-CsILxwfI.mjs} +1 -1
  22. package/dist/{relay-D7RN4m68.mjs → relay-Bvm9JEoN.mjs} +1 -1
  23. package/dist/{run-OOWQIKMJ.mjs → run-D4yuTmmJ.mjs} +10 -10
  24. package/dist/{run-BfxdsQJk.mjs → run-y8jI7bAI.mjs} +1 -1
  25. package/dist/{send-CKth_vgn.mjs → send-BV9eIxQ7.mjs} +2 -2
  26. package/dist/{src-DmmrX2_C.mjs → src-CVeA4tAw.mjs} +2 -2
  27. package/dist/{src-DOjTY2ET.mjs → src-DWAcd3Sy.mjs} +6 -6
  28. package/dist/{src-DLsFsmOD.mjs → src-Frwpx3WF.mjs} +39 -5
  29. package/dist/{src-BHod38UQ.mjs → src-ygFMh2eP.mjs} +391 -244
  30. package/dist/{store-DACH768X.mjs → store-B0nGqnPq.mjs} +1 -1
  31. package/dist/ui/assets/{app-CN3acQ-1.js → app-C4yxmYQR.js} +1 -1
  32. package/dist/ui/assets/{index-B2uGxA4W.js → index-CcbJWo5C.js} +2 -2
  33. package/dist/ui/index.html +1 -1
  34. package/dist/{ui-CJ-BX12n.mjs → ui-BZ9BhFw8.mjs} +3 -3
  35. package/dist/{usage-DxZ6JGd4.mjs → usage-BIs4j5Rw.mjs} +4 -4
  36. package/dist/{validate-BS0nCccW.mjs → validate-Xn2ZbJQC.mjs} +3 -3
  37. package/dist/{watch-Dp7IB4FR.mjs → watch-9VM3DFTp.mjs} +5 -5
  38. package/dist/{workflows-Djo1edlK.mjs → workflows-CBYtycIy.mjs} +2 -2
  39. package/dist/{worktrees-Drof_Nyx.mjs → worktrees-C7vfh7y5.mjs} +4 -4
  40. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { C as compareVersions, T as parseVersion, w as isNewer } from "./src-DLsFsmOD.mjs";
1
+ import { C as compareVersions, T as parseVersion, w as isNewer } from "./src-Frwpx3WF.mjs";
2
2
  import path from "node:path";
3
3
  import { mkdirSync, readFileSync, renameSync, writeFileSync } from "node:fs";
4
4
  import { homedir } from "node:os";
@@ -355,5 +355,5 @@ const registryShown = (registry) => {
355
355
  * fails when it is stale.
356
356
  */
357
357
  const ORK_NAME = "@krapht/ork";
358
- const ORK_VERSION = "1.0.0-alpha.17";
358
+ const ORK_VERSION = "1.0.0-alpha.18";
359
359
  export { dueCause as _, registryShown as a, githubDraftRefusal as b, fetchLatest as c, readUpdateCache as d, refreshUpdateCache as f, changeFollowUp as g, nodeSession as h, registryOf as i, newerVersion as l, writeUpdateCache as m, ORK_VERSION as n, updateSwitchOff as o, updateCachePath as p, isSwitchedOn as r, checkDue as s, ORK_NAME as t, pendingNotice as u, findFollowUp as v, isGithubIssueUrl as x, followUpActions as y };
@@ -1,9 +1,9 @@
1
- import "./src-DLsFsmOD.mjs";
2
- import { l as createTerminalHuman, t as attachRun } from "./attach-RQx__RzH.mjs";
3
- import { t as findRun } from "./find-k489laBa.mjs";
1
+ import "./src-Frwpx3WF.mjs";
2
+ import { l as createTerminalHuman, t as attachRun } from "./attach-qvfyaQXC.mjs";
3
+ import { t as findRun } from "./find-P-VV4B47.mjs";
4
4
  import { c as write, l as writeErr, s as style } from "./output-B1kwo0YU.mjs";
5
- import { n as attachRefusal } from "./in-a-run-D_9GlAlS.mjs";
6
- import { t as withStore } from "./store-DACH768X.mjs";
5
+ import { n as attachRefusal } from "./in-a-run-DKoMGTNE.mjs";
6
+ import { t as withStore } from "./store-B0nGqnPq.mjs";
7
7
  import { defineCommand } from "citty";
8
8
  // src/commands/attach.ts
9
9
  /**
@@ -1,4 +1,4 @@
1
- import { Ft as slotWaitLine, I as isNodeEvent, Kn as endOf, Yn as END_KINDS, kt as lockWaitLine, nt as answerDecision, qn as outcomeEnd, rt as pendingDecisions, tt as followRunTree, ut as followEvents, yr as maskSecrets } from "./src-DLsFsmOD.mjs";
1
+ import { Ft as slotWaitLine, I as isNodeEvent, Kn as endOf, Yn as END_KINDS, kt as lockWaitLine, nt as answerDecision, qn as outcomeEnd, rt as pendingDecisions, tt as followRunTree, ut as followEvents, yr as maskSecrets } from "./src-Frwpx3WF.mjs";
2
2
  import { t as applyFilters } from "./apply-Mb0fNpCX.mjs";
3
3
  import { C as termOf, D as wrap, E as widthOf, O as readKeys, _ as interrupt, a as plain, b as canKey, g as createRegion, h as paint, m as bold, n as cost, p as apply, r as costOf, s as style, u as confirmOrStop, v as readLine, w as cut, x as plainEnv, y as withdrawn } from "./output-B1kwo0YU.mjs";
4
4
  import { n as chip, r as nodeChip, t as CHIP_LABELS } from "./chips-BqcT58qr.mjs";
package/dist/bin.mjs CHANGED
@@ -1,25 +1,25 @@
1
1
  #!/usr/bin/env node
2
- import { $n as FEEDBACK_TARGETS, An as liveStatus, Ar as loadAgents, Bt as decisionListTable, Ci as AGENT_TOOL_LAYOUTS, Cr as linkTools, Dr as deleteAgent, Ei as DRIVER_IDS, Er as createAgent, F as activeTree, Fr as placeFor, H as listOrkWorktrees, Kt as applyClean, L as openStore, Mr as inRepoPlace, Nn as runStatus, On as requestStop, Or as AGENT_SOURCES, Pr as placeFiles, Qn as FEEDBACK_SEVERITIES, Qr as renameNodeTypes, Rr as shownPath, Si as readyDriver, Sr as planMoveInto, Tr as toolsInUse, Un as loadProject, Ut as runListTable, V as createdWorktrees, Vn as PROJECT_FILE, Vt as feedbackListTable, Yt as planClean, Zn as FEEDBACK_KINDS, b as runningRunIds, br as planAgentMigration, cr as normalizeTitle, kn as tellLiveRun, kr as catalogAgent, li as settingsOf, ni as parseWorkflow, nt as answerDecision, oi as WorkflowSchema, ot as detachResume, ri as serializeWorkflow, rn as modelDriver, rr as sendPost, rt as pendingDecisions, st as resumable, tn as clearGitLocalEnv, tr as planPost, v as planUpgrade, w as isNewer, wi as ORK_LAYOUT, wr as toolLinks, x as runningScript, xi as driverChecks, xr as applySteps, y as releaseNotes, zn as nestItems } from "./src-DLsFsmOD.mjs";
3
- import { a as unknownNode, i as logListTable, l as createTerminalHuman, n as askStored, r as followRun, u as readText } from "./attach-RQx__RzH.mjs";
4
- import { a as onInterrupt, c as runWorkflowFile, g as machineSlotLedger, h as sweepLocks, i as loadRuntime, m as machineLocksDir, n as flagValues, o as run, p as resumeChat, r as isDriver, s as terminalHuman, t as badDriver } from "./run-OOWQIKMJ.mjs";
5
- import { a as acceptItem, c as feedbackActions, i as recordNote, l as openFixRun, n as previewPost, r as checkNote, s as placeOf, t as runInstall } from "./install-PVlV2QPq.mjs";
6
- import { c as fetchLatest, d as readUpdateCache, h as nodeSession, i as registryOf, m as writeUpdateCache, n as ORK_VERSION, p as updateCachePath, t as ORK_NAME } from "./__build_info__-C1Nm0hlJ.mjs";
2
+ import { $n as FEEDBACK_TARGETS, An as liveStatus, Ar as loadAgents, Bt as decisionListTable, Ci as AGENT_TOOL_LAYOUTS, Cr as linkTools, Dr as deleteAgent, Ei as DRIVER_IDS, Er as createAgent, F as activeTree, Fr as placeFor, H as listOrkWorktrees, Kt as applyClean, L as openStore, Mr as inRepoPlace, Nn as runStatus, On as requestStop, Or as AGENT_SOURCES, Pr as placeFiles, Qn as FEEDBACK_SEVERITIES, Qr as renameNodeTypes, Rr as shownPath, Si as readyDriver, Sr as planMoveInto, Tr as toolsInUse, Un as loadProject, Ut as runListTable, V as createdWorktrees, Vn as PROJECT_FILE, Vt as feedbackListTable, Yt as planClean, Zn as FEEDBACK_KINDS, b as runningRunIds, br as planAgentMigration, cr as normalizeTitle, kn as tellLiveRun, kr as catalogAgent, li as settingsOf, ni as parseWorkflow, nt as answerDecision, oi as WorkflowSchema, ot as detachResume, ri as serializeWorkflow, rn as modelDriver, rr as sendPost, rt as pendingDecisions, st as resumable, tn as clearGitLocalEnv, tr as planPost, v as planUpgrade, w as isNewer, wi as ORK_LAYOUT, wr as toolLinks, x as runningScript, xi as driverChecks, xr as applySteps, y as releaseNotes, zn as nestItems } from "./src-Frwpx3WF.mjs";
3
+ import { a as unknownNode, i as logListTable, l as createTerminalHuman, n as askStored, r as followRun, u as readText } from "./attach-qvfyaQXC.mjs";
4
+ import { a as onInterrupt, c as runWorkflowFile, g as machineSlotLedger, h as sweepLocks, i as loadRuntime, m as machineLocksDir, n as flagValues, o as run, p as resumeChat, r as isDriver, s as terminalHuman, t as badDriver } from "./run-D4yuTmmJ.mjs";
5
+ import { a as acceptItem, c as feedbackActions, i as recordNote, l as openFixRun, n as previewPost, r as checkNote, s as placeOf, t as runInstall } from "./install-B743Bwzz.mjs";
6
+ import { c as fetchLatest, d as readUpdateCache, h as nodeSession, i as registryOf, m as writeUpdateCache, n as ORK_VERSION, p as updateCachePath, t as ORK_NAME } from "./__build_info__-B8TNbFtN.mjs";
7
7
  import { t as applyFilters } from "./apply-Mb0fNpCX.mjs";
8
- import { n as builtinWorkflowFile, t as builtinProblem } from "./builtin-files-yYaNTQRU.mjs";
9
- import { t as findRun } from "./find-k489laBa.mjs";
8
+ import { n as builtinWorkflowFile, t as builtinProblem } from "./builtin-files-dnTP2GaX.mjs";
9
+ import { t as findRun } from "./find-P-VV4B47.mjs";
10
10
  import { n as groupedEntries, t as groupOf } from "./help-groups-hB6kY34d.mjs";
11
11
  import { a as publicArgs, o as resolved, r as argsOf, s as subcommandsOf } from "./command-tree-BkSYWmYJ.mjs";
12
12
  import { C as termOf, D as wrap, E as widthOf, S as takePlainFlag, T as hang, a as plain, b as canKey, c as write, h as paint, l as writeErr, m as bold, s as style, t as confirm, w as cut } from "./output-B1kwo0YU.mjs";
13
13
  import { n as chip, r as nodeChip, t as CHIP_LABELS } from "./chips-BqcT58qr.mjs";
14
- import { c as registeredProjects, n as WORKFLOW_SUFFIX, s as projectAt, t as WORKFLOW_DIR } from "./workflows-Djo1edlK.mjs";
15
- import { C as startUpdateCheck, S as showUpdateNotice, _ as runChecks, a as formatReport, c as checksHere, g as orkCheck, h as headWarning, m as experimentsCheck, n as validate, p as exec, r as validateFile, v as socketCheck, w as updateCheckOff, x as runUpdateChild, y as triggerChecks } from "./validate-BS0nCccW.mjs";
16
- import { a as decideRefusal, r as chatRefusal } from "./in-a-run-D_9GlAlS.mjs";
17
- import { t as context } from "./context-Dq-VM_sq.mjs";
18
- import { i as readListArgs, n as filterArgs, o as allAlias, r as projectScope, t as fail$1 } from "./flags-B4ZZWspN.mjs";
19
- import { t as printList } from "./print-n2qetUHc.mjs";
20
- import { a as formatRegistered, i as formatProjects, n as move, o as recordInRepo, r as withStore, s as registerProject, t as forget } from "./project-records-Cune1l6I.mjs";
21
- import { i as listedStatus, n as formatRuns, r as formatTreeView, t as ago } from "./format-DQc9A_ei.mjs";
22
- import { t as withStore$1 } from "./store-DACH768X.mjs";
14
+ import { c as registeredProjects, n as WORKFLOW_SUFFIX, s as projectAt, t as WORKFLOW_DIR } from "./workflows-CBYtycIy.mjs";
15
+ import { C as startUpdateCheck, S as showUpdateNotice, _ as runChecks, a as formatReport, c as checksHere, g as orkCheck, h as headWarning, m as experimentsCheck, n as validate, p as exec, r as validateFile, v as socketCheck, w as updateCheckOff, x as runUpdateChild, y as triggerChecks } from "./validate-Xn2ZbJQC.mjs";
16
+ import { a as decideRefusal, r as chatRefusal } from "./in-a-run-DKoMGTNE.mjs";
17
+ import { t as context } from "./context-b4_gPlv3.mjs";
18
+ import { i as readListArgs, n as filterArgs, o as allAlias, r as projectScope, t as fail$1 } from "./flags-CqjJ44uW.mjs";
19
+ import { t as printList } from "./print-DLe4MHn-.mjs";
20
+ import { a as formatRegistered, i as formatProjects, n as move, o as recordInRepo, r as withStore, s as registerProject, t as forget } from "./project-records-CsILxwfI.mjs";
21
+ import { i as listedStatus, n as formatRuns, r as formatTreeView, t as ago } from "./format-BS1qzpkf.mjs";
22
+ import { t as withStore$1 } from "./store-B0nGqnPq.mjs";
23
23
  import path from "node:path";
24
24
  import { stringify } from "yaml";
25
25
  import { z } from "zod";
@@ -727,7 +727,7 @@ const formatCheck = (result, term = termOf(process.stdout)) => {
727
727
  * folder. Says nothing when there were none. `bin` is the `cmd` program.
728
728
  */
729
729
  const leaseChecks = async (place, env = process.env, bin = "cmd") => {
730
- const { cleanStaleLeases, leaseLedger } = await import("./src-BHod38UQ.mjs");
730
+ const { cleanStaleLeases, leaseLedger } = await import("./src-ygFMh2eP.mjs");
731
731
  const { cleaned, failed } = await cleanStaleLeases({
732
732
  bin,
733
733
  ledger: leaseLedger(placeFiles(place).runs),
@@ -2992,31 +2992,31 @@ const main = defineCommand({
2992
2992
  run,
2993
2993
  ps,
2994
2994
  logs,
2995
- attach: () => import("./attach-EP374oMP.mjs").then((module) => module.attach),
2995
+ attach: () => import("./attach-CU4Pk42S.mjs").then((module) => module.attach),
2996
2996
  tree,
2997
- usage: () => import("./usage-DxZ6JGd4.mjs").then((module) => module.usage),
2998
- prune: () => import("./usage-DxZ6JGd4.mjs").then((module) => module.prune),
2997
+ usage: () => import("./usage-BIs4j5Rw.mjs").then((module) => module.usage),
2998
+ prune: () => import("./usage-BIs4j5Rw.mjs").then((module) => module.prune),
2999
2999
  decide,
3000
- relay: () => import("./relay-D7RN4m68.mjs").then((module) => module.relay),
3001
- pause: () => import("./pause-Bx3ePGrn.mjs").then((module) => module.pause),
3002
- continue: () => import("./pause-Bx3ePGrn.mjs").then((module) => module.continueRun),
3000
+ relay: () => import("./relay-Bvm9JEoN.mjs").then((module) => module.relay),
3001
+ pause: () => import("./pause-8gnVgICR.mjs").then((module) => module.pause),
3002
+ continue: () => import("./pause-8gnVgICR.mjs").then((module) => module.continueRun),
3003
3003
  stop,
3004
3004
  chat,
3005
- once: () => import("./once-DuUzpzL2.mjs").then((module) => module.once),
3006
- send: () => import("./send-CKth_vgn.mjs").then((module) => module.send),
3005
+ once: () => import("./once-6L8gciJV.mjs").then((module) => module.once),
3006
+ send: () => import("./send-BV9eIxQ7.mjs").then((module) => module.send),
3007
3007
  resume,
3008
3008
  feedback,
3009
- "follow-ups": () => import("./follow-ups-DD8NTPe6.mjs").then((module) => module.followUps),
3009
+ "follow-ups": () => import("./follow-ups-B_c1DSpA.mjs").then((module) => module.followUps),
3010
3010
  context,
3011
- worktrees: () => import("./worktrees-Drof_Nyx.mjs").then((module) => module.worktrees),
3012
- wt: () => import("./worktrees-Drof_Nyx.mjs").then((module) => module.worktrees),
3013
- watch: () => import("./watch-Dp7IB4FR.mjs").then((module) => module.watch),
3014
- mcp: () => import("./mcp-D38Ajb0b.mjs").then((module) => module.mcp),
3015
- ui: () => import("./ui-CJ-BX12n.mjs").then((module) => module.ui),
3011
+ worktrees: () => import("./worktrees-C7vfh7y5.mjs").then((module) => module.worktrees),
3012
+ wt: () => import("./worktrees-C7vfh7y5.mjs").then((module) => module.worktrees),
3013
+ watch: () => import("./watch-9VM3DFTp.mjs").then((module) => module.watch),
3014
+ mcp: () => import("./mcp-BMwekw38.mjs").then((module) => module.mcp),
3015
+ ui: () => import("./ui-BZ9BhFw8.mjs").then((module) => module.ui),
3016
3016
  doctor,
3017
3017
  upgrade,
3018
- completion: () => import("./completion-DIXWlnAl.mjs").then((module) => module.completion),
3019
- __complete: () => import("./completion-DIXWlnAl.mjs").then((module) => module.completeCommand(main))
3018
+ completion: () => import("./completion-CzXUGSVn.mjs").then((module) => module.completion),
3019
+ __complete: () => import("./completion-CzXUGSVn.mjs").then((module) => module.completeCommand(main))
3020
3020
  }
3021
3021
  });
3022
3022
  // src/bin.ts
@@ -3036,7 +3036,7 @@ const main = defineCommand({
3036
3036
  clearGitLocalEnv();
3037
3037
  const argv = takePlainFlag(process.argv.slice(2));
3038
3038
  if (argv[0] === "__complete") {
3039
- const { printCompletions } = await import("./completion-DIXWlnAl.mjs");
3039
+ const { printCompletions } = await import("./completion-CzXUGSVn.mjs");
3040
3040
  await printCompletions(main, argv.slice(1));
3041
3041
  } else if (process.env["ORK_UPDATE_CHECK_CHILD"] === "1") await runUpdateChild();
3042
3042
  else {
@@ -3049,7 +3049,7 @@ else {
3049
3049
  const dash = argv.indexOf("--");
3050
3050
  const askedHelp = argv.slice(1, dash === -1 ? 0 : dash).some((arg) => arg === "--help" || arg === "-h");
3051
3051
  if (argv[0] === "once" && dash !== -1 && !askedHelp) try {
3052
- const { once } = await import("./once-DuUzpzL2.mjs");
3052
+ const { once } = await import("./once-6L8gciJV.mjs");
3053
3053
  await runCommand(once, { rawArgs: argv.slice(1) });
3054
3054
  } catch (error) {
3055
3055
  console.error(error);
@@ -1,8 +1,8 @@
1
- import { _n as takeFollowUps, nr as runGh } from "./src-DLsFsmOD.mjs";
2
- import { f as refreshDue, l as briefOf, n as flagValues, u as checkTakeable } from "./run-OOWQIKMJ.mjs";
3
- import { n as newRunId } from "./find-k489laBa.mjs";
1
+ import { _n as takeFollowUps, nr as runGh } from "./src-Frwpx3WF.mjs";
2
+ import { f as refreshDue, l as briefOf, n as flagValues, u as checkTakeable } from "./run-D4yuTmmJ.mjs";
3
+ import { n as newRunId } from "./find-P-VV4B47.mjs";
4
4
  import { l as writeErr } from "./output-B1kwo0YU.mjs";
5
- import { t as loadWorkflow } from "./validate-BS0nCccW.mjs";
5
+ import { t as loadWorkflow } from "./validate-Xn2ZbJQC.mjs";
6
6
  // src/follow-ups/brief.ts
7
7
  /**
8
8
  * @file `ork run --follow-ups <ids>`: the `agent` follow-ups become the run's
@@ -1,4 +1,4 @@
1
- import { Gr as plainPathInside, Kr as writePlainFile, Pr as placeFiles, Wr as guardedBase } from "./src-DLsFsmOD.mjs";
1
+ import { Gr as plainPathInside, Kr as writePlainFile, Pr as placeFiles, Wr as guardedBase } from "./src-Frwpx3WF.mjs";
2
2
  import path from "node:path";
3
3
  import { existsSync, readFileSync } from "node:fs";
4
4
  import { createHash } from "node:crypto";
@@ -1,10 +1,10 @@
1
- import { An as liveStatus, Fr as placeFor, L as openStore, Pr as placeFiles, R as storePath, Ti as AGENT_DRIVERS, mi as NodeIdSchema, rt as pendingDecisions } from "./src-DLsFsmOD.mjs";
2
- import { a as isBuiltinArg, i as builtinWorkflowText, r as builtinWorkflowNames } from "./builtin-files-yYaNTQRU.mjs";
3
- import { t as findRun } from "./find-k489laBa.mjs";
1
+ import { An as liveStatus, Fr as placeFor, L as openStore, Pr as placeFiles, R as storePath, Ti as AGENT_DRIVERS, mi as NodeIdSchema, rt as pendingDecisions } from "./src-Frwpx3WF.mjs";
2
+ import { a as isBuiltinArg, i as builtinWorkflowText, r as builtinWorkflowNames } from "./builtin-files-dnTP2GaX.mjs";
3
+ import { t as findRun } from "./find-P-VV4B47.mjs";
4
4
  import { a as SHELL_SCRIPTS, i as SHELLS, n as groupedEntries, r as COMPLETE_COMMAND, t as groupOf } from "./help-groups-hB6kY34d.mjs";
5
5
  import { i as findEntry, n as argInfoOf, s as subcommandsOf } from "./command-tree-BkSYWmYJ.mjs";
6
6
  import { l as writeErr } from "./output-B1kwo0YU.mjs";
7
- import { a as resolveWorkflowArg, n as WORKFLOW_SUFFIX } from "./workflows-Djo1edlK.mjs";
7
+ import { a as resolveWorkflowArg, n as WORKFLOW_SUFFIX } from "./workflows-CBYtycIy.mjs";
8
8
  import path from "node:path";
9
9
  import { parse } from "yaml";
10
10
  import { existsSync, readFileSync, readdirSync, statSync } from "node:fs";
@@ -1,7 +1,7 @@
1
- import { Hr as LESSON_CAP_TOKENS, gt as explainSession } from "./src-DLsFsmOD.mjs";
1
+ import { Hr as LESSON_CAP_TOKENS, gt as explainSession } from "./src-Frwpx3WF.mjs";
2
2
  import { c as write, s as style } from "./output-B1kwo0YU.mjs";
3
- import { i as refusedBuiltin, o as workflowArg } from "./workflows-Djo1edlK.mjs";
4
- import { a as formatReport, t as loadWorkflow } from "./validate-BS0nCccW.mjs";
3
+ import { i as refusedBuiltin, o as workflowArg } from "./workflows-CBYtycIy.mjs";
4
+ import { a as formatReport, t as loadWorkflow } from "./validate-Xn2ZbJQC.mjs";
5
5
  import { defineCommand } from "citty";
6
6
  // src/commands/context.ts
7
7
  /**
@@ -1,4 +1,4 @@
1
- import { Fr as placeFor } from "./src-DLsFsmOD.mjs";
1
+ import { Fr as placeFor } from "./src-Frwpx3WF.mjs";
2
2
  import { randomUUID } from "node:crypto";
3
3
  // ../core/src/remote/find.ts
4
4
  /**
@@ -1,4 +1,4 @@
1
- import "./src-DLsFsmOD.mjs";
1
+ import "./src-Frwpx3WF.mjs";
2
2
  import { n as parseLimit, t as parseFilters } from "./parse-BzWpMN-a.mjs";
3
3
  import { t as INTERNAL } from "./command-tree-BkSYWmYJ.mjs";
4
4
  import { l as writeErr } from "./output-B1kwo0YU.mjs";
@@ -1,13 +1,13 @@
1
- import { Fr as placeFor, Ht as followUpListTable, hn as recordPublished, mn as markDue, nr as runGh, vn as deliverFollowUp, yn as followUpProblem } from "./src-DLsFsmOD.mjs";
2
- import { d as followUpsRule, f as refreshDue, n as flagValues } from "./run-OOWQIKMJ.mjs";
3
- import { g as changeFollowUp, v as findFollowUp, x as isGithubIssueUrl, y as followUpActions } from "./__build_info__-C1Nm0hlJ.mjs";
4
- import { t as postFollowUpMessage } from "./post-2CaJz_mV.mjs";
1
+ import { Fr as placeFor, Ht as followUpListTable, hn as recordPublished, mn as markDue, nr as runGh, vn as deliverFollowUp, yn as followUpProblem } from "./src-Frwpx3WF.mjs";
2
+ import { d as followUpsRule, f as refreshDue, n as flagValues } from "./run-D4yuTmmJ.mjs";
3
+ import { g as changeFollowUp, v as findFollowUp, x as isGithubIssueUrl, y as followUpActions } from "./__build_info__-B8TNbFtN.mjs";
4
+ import { t as postFollowUpMessage } from "./post-y1qL1Fnj.mjs";
5
5
  import { t as applyFilters } from "./apply-Mb0fNpCX.mjs";
6
- import { t as findRun } from "./find-k489laBa.mjs";
6
+ import { t as findRun } from "./find-P-VV4B47.mjs";
7
7
  import { a as plain, c as write, l as writeErr, s as style } from "./output-B1kwo0YU.mjs";
8
- import { i as readListArgs, n as filterArgs, o as allAlias } from "./flags-B4ZZWspN.mjs";
9
- import { t as printList } from "./print-n2qetUHc.mjs";
10
- import { t as withStore } from "./store-DACH768X.mjs";
8
+ import { i as readListArgs, n as filterArgs, o as allAlias } from "./flags-CqjJ44uW.mjs";
9
+ import { t as printList } from "./print-DLe4MHn-.mjs";
10
+ import { t as withStore } from "./store-B0nGqnPq.mjs";
11
11
  import { homedir } from "node:os";
12
12
  import { defineCommand } from "citty";
13
13
  // src/follow-ups/command.ts
@@ -1,4 +1,4 @@
1
- import { An as liveStatus, Nn as runStatus, Pn as slotWaitsOf, Rn as isItem, jn as lockWaitsOf, kt as lockWaitLine } from "./src-DLsFsmOD.mjs";
1
+ import { An as liveStatus, Nn as runStatus, Pn as slotWaitsOf, Rn as isItem, jn as lockWaitsOf, kt as lockWaitLine } from "./src-Frwpx3WF.mjs";
2
2
  import { C as termOf, E as widthOf, n as cost, o as shortCount, r as costOf, s as style, w as cut } from "./output-B1kwo0YU.mjs";
3
3
  import { i as statusChip, n as chip } from "./chips-BqcT58qr.mjs";
4
4
  import { n as nodeVerdict } from "./verdict-CMvPCpWC.mjs";
@@ -1,5 +1,5 @@
1
- import { R as storePath } from "./src-DLsFsmOD.mjs";
2
- import { g as storeGuarded, h as runMarkerIn } from "./src-DmmrX2_C.mjs";
1
+ import { R as storePath } from "./src-Frwpx3WF.mjs";
2
+ import { g as storeGuarded, h as runMarkerIn } from "./src-CVeA4tAw.mjs";
3
3
  // src/commands/in-a-run.ts
4
4
  /**
5
5
  * @file The commands that act as the user refuse a program or an agent in a run
@@ -1,4 +1,4 @@
1
- import { Br as inside, Fr as placeFor, Gr as plainPathInside, Hr as LESSON_CAP_TOKENS, Kr as writePlainFile, Pr as placeFiles, Qn as FEEDBACK_SEVERITIES, Ur as estimateTokens, Wr as guardedBase, Zn as FEEDBACK_KINDS, ir as publishPost, lr as targetOf, sr as fingerprint, yr as maskSecrets } from "./src-DLsFsmOD.mjs";
1
+ import { Br as inside, Fr as placeFor, Gr as plainPathInside, Hr as LESSON_CAP_TOKENS, Kr as writePlainFile, Pr as placeFiles, Qn as FEEDBACK_SEVERITIES, Ur as estimateTokens, Wr as guardedBase, Zn as FEEDBACK_KINDS, ir as publishPost, lr as targetOf, sr as fingerprint, yr as maskSecrets } from "./src-Frwpx3WF.mjs";
2
2
  import path from "node:path";
3
3
  import { existsSync, readFileSync, realpathSync } from "node:fs";
4
4
  import { spawn } from "node:child_process";
@@ -1,4 +1,4 @@
1
- import { _ as capsHere, dt as NOT_STARTED, ft as limitsNow, pt as limitsReport } from "./src-DLsFsmOD.mjs";
1
+ import { _ as capsHere, dt as NOT_STARTED, ft as limitsNow, pt as limitsReport } from "./src-Frwpx3WF.mjs";
2
2
  // src/run/limits.ts
3
3
  /**
4
4
  * @file The limits across runs that apply here (RFC-007): the user's settings
@@ -1,8 +1,8 @@
1
- import { w as isNewer } from "./src-DLsFsmOD.mjs";
2
- import { n as ORK_VERSION } from "./__build_info__-C1Nm0hlJ.mjs";
3
- import { h as runMarkerIn } from "./src-DmmrX2_C.mjs";
4
- import { n as explainNode } from "./context-Dq-VM_sq.mjs";
5
- import { a as openMcp, c as refused, o as tool, s as answer } from "./src-DOjTY2ET.mjs";
1
+ import { w as isNewer } from "./src-Frwpx3WF.mjs";
2
+ import { n as ORK_VERSION } from "./__build_info__-B8TNbFtN.mjs";
3
+ import { h as runMarkerIn } from "./src-CVeA4tAw.mjs";
4
+ import { n as explainNode } from "./context-b4_gPlv3.mjs";
5
+ import { a as openMcp, c as refused, o as tool, s as answer } from "./src-DWAcd3Sy.mjs";
6
6
  import { z } from "zod";
7
7
  import { defineCommand } from "citty";
8
8
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
@@ -43,7 +43,7 @@ const orkMcpServer = (options = {}) => {
43
43
  ...options.script === void 0 ? {} : { script: options.script }
44
44
  });
45
45
  const all = [...opened.tools, explainTool(opened, options.home)];
46
- const tools = options.expects !== void 0 && isNewer(options.expects, "1.0.0-alpha.17") ? tooOld(all, options.expects) : all;
46
+ const tools = options.expects !== void 0 && isNewer(options.expects, "1.0.0-alpha.18") ? tooOld(all, options.expects) : all;
47
47
  const server = new McpServer({
48
48
  name: "ork",
49
49
  version: ORK_VERSION
@@ -1,7 +1,7 @@
1
- import "./src-DLsFsmOD.mjs";
2
- import { t as runOnce } from "./run-BfxdsQJk.mjs";
1
+ import "./src-Frwpx3WF.mjs";
2
+ import { t as runOnce } from "./run-y8jI7bAI.mjs";
3
3
  import { c as write, l as writeErr, s as style } from "./output-B1kwo0YU.mjs";
4
- import { t as ago } from "./format-DQc9A_ei.mjs";
4
+ import { t as ago } from "./format-BS1qzpkf.mjs";
5
5
  import { spawn } from "node:child_process";
6
6
  import { defineCommand, parseArgs } from "citty";
7
7
  // src/commands/once.ts
@@ -1,7 +1,7 @@
1
- import { Dn as requestPause, En as requestContinue, L as openStore } from "./src-DLsFsmOD.mjs";
2
- import { t as findRun } from "./find-k489laBa.mjs";
1
+ import { Dn as requestPause, En as requestContinue, L as openStore } from "./src-Frwpx3WF.mjs";
2
+ import { t as findRun } from "./find-P-VV4B47.mjs";
3
3
  import { c as write, l as writeErr, s as style } from "./output-B1kwo0YU.mjs";
4
- import { i as continueRefusal } from "./in-a-run-D_9GlAlS.mjs";
4
+ import { i as continueRefusal } from "./in-a-run-DKoMGTNE.mjs";
5
5
  import { defineCommand } from "citty";
6
6
  // src/commands/pause.ts
7
7
  /**
@@ -1,5 +1,5 @@
1
- import { ar as redact } from "./src-DLsFsmOD.mjs";
2
- import { b as githubDraftRefusal } from "./__build_info__-C1Nm0hlJ.mjs";
1
+ import { ar as redact } from "./src-Frwpx3WF.mjs";
2
+ import { b as githubDraftRefusal } from "./__build_info__-B8TNbFtN.mjs";
3
3
  // ../core/src/follow-ups/post.ts
4
4
  /** Posts `f`'s draft as a GitHub comment once `confirmed`, and marks it done. */
5
5
  const postFollowUpMessage = async (f, options) => {
@@ -1,5 +1,5 @@
1
1
  import { c as write } from "./output-B1kwo0YU.mjs";
2
- import { a as refuseIdsWithJson } from "./flags-B4ZZWspN.mjs";
2
+ import { a as refuseIdsWithJson } from "./flags-CqjJ44uW.mjs";
3
3
  // src/list/print.ts
4
4
  /**
5
5
  * Prints `rows`: `--ids` their ids (`table.id`) comma-separated; `--json` the
@@ -1,4 +1,4 @@
1
- import { Ir as projectsHome, L as openStore, Mr as inRepoPlace, Nr as newProjectId, Pr as placeFiles, Rr as shownPath, Vr as projectRootOf, jr as hasInRepoFiles } from "./src-DLsFsmOD.mjs";
1
+ import { Ir as projectsHome, L as openStore, Mr as inRepoPlace, Nr as newProjectId, Pr as placeFiles, Rr as shownPath, Vr as projectRootOf, jr as hasInRepoFiles } from "./src-Frwpx3WF.mjs";
2
2
  import { C as termOf, c as write, l as writeErr, s as style, w as cut } from "./output-B1kwo0YU.mjs";
3
3
  import { n as chip } from "./chips-BqcT58qr.mjs";
4
4
  import path from "node:path";
@@ -1,4 +1,4 @@
1
- import { L as openStore, Sn as addressOf, Tn as unlinkNodes, wn as linkNodes } from "./src-DLsFsmOD.mjs";
1
+ import { L as openStore, Sn as addressOf, Tn as unlinkNodes, wn as linkNodes } from "./src-Frwpx3WF.mjs";
2
2
  import { c as write, l as writeErr, s as style } from "./output-B1kwo0YU.mjs";
3
3
  import { defineCommand } from "citty";
4
4
  // src/commands/relay.ts
@@ -1,13 +1,13 @@
1
- import { $r as beforeOf, $t as git, An as liveStatus, Br as inside, Cn as endLinksOf, Ct as startRun, Ei as DRIVER_IDS, Fn as templateOf, G as parseInputPairs, Gn as createSignals, Hn as gitRulesOf, K as resolveInputs, Kn as endOf, L as openStore, Lr as runDirOf, Pr as placeFiles, Qt as inspectProject, R as storePath, Si as readyDriver, St as walkSummary, Ti as AGENT_DRIVERS, Tt as userMessageText, U as createReplay, Un as loadProject, W as replayLoopAnswers, Wn as machineRulesOf, _n as takeFollowUps, _t as planNodeSession, an as sessionDriver, at as adoptedCalls, ct as DETACHED_ENV, di as isClaudeNode, dr as parseTemplate, dt as NOT_STARTED, et as createRelay, fn as createFollowUps, fr as renderTemplate, hi as retiredDriverHint, hr as socketPath, it as createCalls, lt as detachRun, m as resolveBase, mr as serveRun, n as resumedOptions, nr as runGh, or as createFeedback, pn as checkFollowUpsDue, t as createWorkspace, vn as deliverFollowUp, vr as maskReplacer } from "./src-DLsFsmOD.mjs";
2
- import { c as callsShown, d as createDecisionQueue, l as createTerminalHuman, o as formatEvent, s as formatRunEvent, t as attachRun } from "./attach-RQx__RzH.mjs";
3
- import { h as nodeSession, n as ORK_VERSION, v as findFollowUp } from "./__build_info__-C1Nm0hlJ.mjs";
4
- import { n as newRunId } from "./find-k489laBa.mjs";
1
+ import { $r as beforeOf, $t as git, An as liveStatus, Br as inside, Cn as endLinksOf, Ct as startRun, Ei as DRIVER_IDS, Fn as templateOf, G as parseInputPairs, Gn as createSignals, Hn as gitRulesOf, K as resolveInputs, Kn as endOf, L as openStore, Lr as runDirOf, Pr as placeFiles, Qt as inspectProject, R as storePath, Si as readyDriver, St as walkSummary, Ti as AGENT_DRIVERS, Tt as userMessageText, U as createReplay, Un as loadProject, W as replayLoopAnswers, Wn as machineRulesOf, _n as takeFollowUps, _t as planNodeSession, an as sessionDriver, at as adoptedCalls, ct as DETACHED_ENV, di as isClaudeNode, dr as parseTemplate, dt as NOT_STARTED, et as createRelay, fn as createFollowUps, fr as renderTemplate, hi as retiredDriverHint, hr as socketPath, it as createCalls, lt as detachRun, m as resolveBase, mr as serveRun, n as resumedOptions, nr as runGh, or as createFeedback, pn as checkFollowUpsDue, t as createWorkspace, vn as deliverFollowUp, vr as maskReplacer } from "./src-Frwpx3WF.mjs";
2
+ import { c as callsShown, d as createDecisionQueue, l as createTerminalHuman, o as formatEvent, s as formatRunEvent, t as attachRun } from "./attach-qvfyaQXC.mjs";
3
+ import { h as nodeSession, n as ORK_VERSION, v as findFollowUp } from "./__build_info__-B8TNbFtN.mjs";
4
+ import { n as newRunId } from "./find-P-VV4B47.mjs";
5
5
  import { c as write, i as detachHint, l as writeErr, s as style } from "./output-B1kwo0YU.mjs";
6
- import { _ as clearOutputFiles, a as builtinExecutors, d as maskedEnv, f as maskedNamesOfRun, i as onPath, l as clearStateFiles, m as sessionEnv, n as missingProgramMessage, p as runScrubber, r as missingPrograms, t as envProblems, v as namedMcpEntries, y as resultOf } from "./src-DmmrX2_C.mjs";
7
- import { i as refusedBuiltin, o as workflowArg } from "./workflows-Djo1edlK.mjs";
8
- import { a as formatReport, c as checksHere, d as runReadyDriver, f as unfitLines, i as walkLoaded, l as chooseReadyDriver, o as warningLines, s as budgetWarningLines, t as loadWorkflow, u as overrideRefusal } from "./validate-BS0nCccW.mjs";
6
+ import { _ as clearOutputFiles, a as builtinExecutors, d as maskedEnv, f as maskedNamesOfRun, i as onPath, l as clearStateFiles, m as sessionEnv, n as missingProgramMessage, p as runScrubber, r as missingPrograms, t as envProblems, v as namedMcpEntries, y as resultOf } from "./src-CVeA4tAw.mjs";
7
+ import { i as refusedBuiltin, o as workflowArg } from "./workflows-CBYtycIy.mjs";
8
+ import { a as formatReport, c as checksHere, d as runReadyDriver, f as unfitLines, i as walkLoaded, l as chooseReadyDriver, o as warningLines, s as budgetWarningLines, t as loadWorkflow, u as overrideRefusal } from "./validate-Xn2ZbJQC.mjs";
9
9
  import { a as createView, o as styler } from "./verdict-CMvPCpWC.mjs";
10
- import { i as runLimits, r as limitsRefusal, t as chatNotice } from "./limits-CHqBO7wb.mjs";
10
+ import { i as runLimits, r as limitsRefusal, t as chatNotice } from "./limits-DrsKCqaN.mjs";
11
11
  import path from "node:path";
12
12
  import { appendFileSync, existsSync, linkSync, mkdirSync, readFileSync, readdirSync, renameSync, rmSync, writeFileSync } from "node:fs";
13
13
  import { createHash, randomUUID } from "node:crypto";
@@ -1252,7 +1252,7 @@ const isDriver = (value) => AGENT_DRIVERS.some((d) => d.id === value);
1252
1252
  /** Why `--driver` refuses a value: a retired id names its replacement. */
1253
1253
  const badDriver = (value) => `--${retiredDriverHint(value) ?? `driver must be one of ${AGENT_DRIVERS.map((d) => d.id).join(", ")}, got \`${value}\``}`;
1254
1254
  /** Loads the drivers only when a run starts, so other commands stay fast. */
1255
- const loadRuntime = async (driver, runs) => (await import("./src-BHod38UQ.mjs")).createRuntime(driver, sessionEnv(process.env), runs);
1255
+ const loadRuntime = async (driver, runs) => (await import("./src-ygFMh2eP.mjs")).createRuntime(driver, sessionEnv(process.env), runs);
1256
1256
  /**
1257
1257
  * Ctrl-C asks the run to stop, and so does a terminal closing or a polite kill,
1258
1258
  * so that the run ends tidily and leaves no result unscrubbed.
@@ -1374,7 +1374,7 @@ const run = defineCommand({
1374
1374
  process.exitCode = 1;
1375
1375
  return;
1376
1376
  }
1377
- const { prepareFollowUps: prepare, followUpsFlagFine: flagFine } = await import("./brief-Bs3cMQU0.mjs");
1377
+ const { prepareFollowUps: prepare, followUpsFlagFine: flagFine } = await import("./brief-Bh1FnAHv.mjs");
1378
1378
  const cwd = process.cwd();
1379
1379
  if (refusedBuiltin([args.workflow], cwd) || !flagFine(rawArgs)) return;
1380
1380
  const target = workflowArg(args.workflow, cwd);
@@ -1,4 +1,4 @@
1
- import { $t as git, en as gitOk } from "./src-DLsFsmOD.mjs";
1
+ import { $t as git, en as gitOk } from "./src-Frwpx3WF.mjs";
2
2
  import path from "node:path";
3
3
  import { copyFileSync, existsSync, mkdirSync, mkdtempSync, readFileSync, readdirSync, renameSync, rmSync, writeFileSync } from "node:fs";
4
4
  import { createHash, randomUUID } from "node:crypto";
@@ -1,6 +1,6 @@
1
- import { $ as sendFromScript, L as openStore, Q as scriptRefusal, Z as TOO_LONG } from "./src-DLsFsmOD.mjs";
1
+ import { $ as sendFromScript, L as openStore, Q as scriptRefusal, Z as TOO_LONG } from "./src-Frwpx3WF.mjs";
2
2
  import { l as writeErr } from "./output-B1kwo0YU.mjs";
3
- import { u as inheritedScrubber } from "./src-DmmrX2_C.mjs";
3
+ import { u as inheritedScrubber } from "./src-CVeA4tAw.mjs";
4
4
  import { defineCommand } from "citty";
5
5
  // src/commands/send.ts
6
6
  /**
@@ -1,5 +1,5 @@
1
- import { $r as beforeOf, At as endedWith, Bn as countedTokens, Dt as runScope, Et as heldTimeout, It as lowerChild, Jn as END_DETAIL_LIMIT, Kn as endOf, Mt as stoppedEnd, Nt as declaredProblem, Ot as calledWorkflows, Pt as slotClock, R as storePath, Rt as startAt, Ti as AGENT_DRIVERS, Xn as endFor, Y as sessionRefusals, _i as INTEGRATIONS, _t as planNodeSession, an as sessionDriver, cn as MCP_FILE, di as isClaudeNode, dr as parseTemplate, ei as programsRunBy, fi as isToolNode, fr as renderTemplate, gi as timeoutMs, ii as markValue, jt as failedWith, ln as mcpNotText, mt as planReason, nn as envReadsOf, qn as outcomeEnd, sn as declaredOutputOf, un as serversIn, ur as evaluate, vi as TOOL_PREFIX, yi as integrationFor, yt as reportSchemaFor } from "./src-DLsFsmOD.mjs";
2
- import { t as runOnce } from "./run-BfxdsQJk.mjs";
1
+ import { $r as beforeOf, At as endedWith, Bn as countedTokens, Dt as runScope, Et as heldTimeout, It as lowerChild, Jn as END_DETAIL_LIMIT, Kn as endOf, Mt as stoppedEnd, Nt as declaredProblem, Ot as calledWorkflows, Pt as slotClock, R as storePath, Rt as startAt, Ti as AGENT_DRIVERS, Xn as endFor, Y as sessionRefusals, _i as INTEGRATIONS, _t as planNodeSession, an as sessionDriver, cn as MCP_FILE, di as isClaudeNode, dr as parseTemplate, ei as programsRunBy, fi as isToolNode, fr as renderTemplate, gi as timeoutMs, ii as markValue, jt as failedWith, ln as mcpNotText, mt as planReason, nn as envReadsOf, qn as outcomeEnd, sn as declaredOutputOf, un as serversIn, ur as evaluate, vi as TOOL_PREFIX, yi as integrationFor, yt as reportSchemaFor } from "./src-Frwpx3WF.mjs";
2
+ import { t as runOnce } from "./run-y8jI7bAI.mjs";
3
3
  import { n as holdGuard, r as orphanGuard, t as KILL_AFTER_MS } from "./orphan-guard-BFKg8VSd.mjs";
4
4
  import path from "node:path";
5
5
  import { accessSync, constants, lstatSync, mkdirSync, readFileSync, realpathSync, rmSync, writeFileSync } from "node:fs";
@@ -1,11 +1,11 @@
1
- import { An as liveStatus, Ar as loadAgents, Br as inside, Bt as decisionListTable, D as triggersReport, Dn as requestPause, En as requestContinue, F as activeTree, Fr as placeFor, Gt as worktreeListTable, Hr as LESSON_CAP_TOKENS, Ht as followUpListTable, I as isNodeEvent, In as processAlive, Jr as WorkflowEditSchema, Jt as keyOf, Kn as endOf, Kt as applyClean, L as openStore, Lr as runDirOf, Mn as pausedOf, Nn as runStatus, On as requestStop, Pr as placeFiles, R as storePath, S as detectInstaller, St as walkSummary, Tn as unlinkNodes, Un as loadProject, Ut as runListTable, Vt as feedbackListTable, Wt as usageListTable, Xr as newWorkflowText, Xt as stepActs, Yn as END_KINDS, Yr as applyEdits, Yt as planClean, Zr as readDocument, Zt as stepPrunes, _ as capsHere, a as planRemove, ai as EdgeInputSchema, b as runningRunIds, bn as liveSessionOf, bt as checkWorkflowText, ci as expandEdge, d as planLine, er as DISCUSSIONS, f as removeRefusal, g as usageReport, gn as startFollowUpChecks, ht as explainWorkflowText, i as lostWork, kn as tellLiveRun, l as labelOf, lt as detachRun, ni as parseWorkflow, nr as runGh, nt as answerDecision, o as projectHead, on as nodeSays, ot as detachResume, p as stateParts, pn as checkFollowUpsDue, pr as readCondition, pt as limitsReport, qr as skillsIn, qt as cleanStep, r as applyRemove, rr as sendPost, rt as pendingDecisions, s as readWorktrees, st as resumable, ti as renderJsonSchema, tr as planPost, u as mergeStateOf, ui as NodeSchema, ut as followEvents, v as planUpgrade, wn as linkNodes, x as runningScript, xn as DEFAULT_FOLLOW_UPS_RULE, xt as walkChecks, y as releaseNotes, zn as nestItems, zr as workflowDirOf, zt as LIST_TABLES } from "./src-DLsFsmOD.mjs";
2
- import { a as acceptItem, c as feedbackActions, i as recordNote, l as openFixRun, n as previewPost, o as lessonPlaceOf, s as placeOf$1, t as runInstall } from "./install-PVlV2QPq.mjs";
3
- import { _ as dueCause, a as registryShown, c as fetchLatest, d as readUpdateCache, f as refreshUpdateCache, g as changeFollowUp, h as nodeSession, i as registryOf, l as newerVersion, m as writeUpdateCache, o as updateSwitchOff, p as updateCachePath, s as checkDue, v as findFollowUp, y as followUpActions } from "./__build_info__-C1Nm0hlJ.mjs";
4
- import { t as postFollowUpMessage } from "./post-2CaJz_mV.mjs";
1
+ import { An as liveStatus, Ar as loadAgents, Br as inside, Bt as decisionListTable, D as triggersReport, Dn as requestPause, En as requestContinue, F as activeTree, Fr as placeFor, Gt as worktreeListTable, Hr as LESSON_CAP_TOKENS, Ht as followUpListTable, I as isNodeEvent, In as processAlive, Jr as WorkflowEditSchema, Jt as keyOf, Kn as endOf, Kt as applyClean, L as openStore, Lr as runDirOf, Mn as pausedOf, Nn as runStatus, On as requestStop, Pr as placeFiles, R as storePath, S as detectInstaller, St as walkSummary, Tn as unlinkNodes, Un as loadProject, Ut as runListTable, Vt as feedbackListTable, Wt as usageListTable, Xr as newWorkflowText, Xt as stepActs, Yn as END_KINDS, Yr as applyEdits, Yt as planClean, Zr as readDocument, Zt as stepPrunes, _ as capsHere, a as planRemove, ai as EdgeInputSchema, b as runningRunIds, bn as liveSessionOf, bt as checkWorkflowText, ci as expandEdge, d as planLine, er as DISCUSSIONS, f as removeRefusal, g as usageReport, gn as startFollowUpChecks, ht as explainWorkflowText, i as lostWork, kn as tellLiveRun, l as labelOf, lt as detachRun, ni as parseWorkflow, nr as runGh, nt as answerDecision, o as projectHead, on as nodeSays, ot as detachResume, p as stateParts, pn as checkFollowUpsDue, pr as readCondition, pt as limitsReport, qr as skillsIn, qt as cleanStep, r as applyRemove, rr as sendPost, rt as pendingDecisions, s as readWorktrees, st as resumable, ti as renderJsonSchema, tr as planPost, u as mergeStateOf, ui as NodeSchema, ut as followEvents, v as planUpgrade, wn as linkNodes, x as runningScript, xn as DEFAULT_FOLLOW_UPS_RULE, xt as walkChecks, y as releaseNotes, zn as nestItems, zr as workflowDirOf, zt as LIST_TABLES } from "./src-Frwpx3WF.mjs";
2
+ import { a as acceptItem, c as feedbackActions, i as recordNote, l as openFixRun, n as previewPost, o as lessonPlaceOf, s as placeOf$1, t as runInstall } from "./install-B743Bwzz.mjs";
3
+ import { _ as dueCause, a as registryShown, c as fetchLatest, d as readUpdateCache, f as refreshUpdateCache, g as changeFollowUp, h as nodeSession, i as registryOf, l as newerVersion, m as writeUpdateCache, o as updateSwitchOff, p as updateCachePath, s as checkDue, v as findFollowUp, y as followUpActions } from "./__build_info__-B8TNbFtN.mjs";
4
+ import { t as postFollowUpMessage } from "./post-y1qL1Fnj.mjs";
5
5
  import { t as applyFilters } from "./apply-Mb0fNpCX.mjs";
6
6
  import { t as parseFilters } from "./parse-BzWpMN-a.mjs";
7
- import { t as builtinProblem } from "./builtin-files-yYaNTQRU.mjs";
8
- import { n as newRunId, t as findRun } from "./find-k489laBa.mjs";
7
+ import { t as builtinProblem } from "./builtin-files-dnTP2GaX.mjs";
8
+ import { n as newRunId, t as findRun } from "./find-P-VV4B47.mjs";
9
9
  import path from "node:path";
10
10
  import { z } from "zod";
11
11
  import { chmodSync, existsSync, lstatSync, mkdirSync, readFileSync, readdirSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
@@ -1,7 +1,7 @@
1
1
  import path from "node:path";
2
2
  import { LineCounter, YAMLMap, YAMLSeq, isAlias, isCollection, isMap, isNode, isPair, isScalar, isSeq, parseDocument, stringify, visit } from "yaml";
3
3
  import { z } from "zod";
4
- import { appendFileSync, closeSync, cpSync, existsSync, lstatSync, mkdirSync, mkdtempSync, openSync, readFileSync, readdirSync, readlinkSync, realpathSync, renameSync, rmSync, rmdirSync, statSync, symlinkSync, unlinkSync, writeFileSync } from "node:fs";
4
+ import { appendFileSync, chmodSync, closeSync, cpSync, existsSync, lstatSync, mkdirSync, mkdtempSync, openSync, readFileSync, readdirSync, readlinkSync, realpathSync, renameSync, rmSync, rmdirSync, statSync, symlinkSync, unlinkSync, writeFileSync } from "node:fs";
5
5
  import { createHash, randomBytes, randomUUID } from "node:crypto";
6
6
  import { constants as constants$1, homedir, setPriority, tmpdir } from "node:os";
7
7
  import { createConnection, createServer } from "node:net";
@@ -3990,7 +3990,10 @@ const messageOf$3 = (line) => {
3990
3990
  };
3991
3991
  /** Listens on the run's socket; resolves once it is listening. */
3992
3992
  const serveRun = async (options) => {
3993
- mkdirSync(path.dirname(options.path), { recursive: true });
3993
+ mkdirSync(path.dirname(options.path), {
3994
+ recursive: true,
3995
+ mode: 448
3996
+ });
3994
3997
  rmSync(options.path, { force: true });
3995
3998
  const followers = /* @__PURE__ */ new Set();
3996
3999
  const server = createServer((socket) => {
@@ -6308,18 +6311,27 @@ const sameFiles = (a, b) => a.length === b.length && a.toSorted().join("\n") ===
6308
6311
  * title.
6309
6312
  */
6310
6313
  const sameFollowUp = (kept, input) => (kept.status === "waiting" || kept.status === "due") && kept.for === input.for && sameFiles(kept.where, input.where) && nearTitle(kept.title, input.title);
6314
+ /** Who a follow-up is for, its name scrubbed and its kind kept. */
6315
+ const scrubFor = (to, scrub) => {
6316
+ if (to.startsWith("project:")) return `project:${scrub(to.slice(8))}`;
6317
+ if (to.startsWith("person:")) return `person:${scrub(to.slice(7))}`;
6318
+ return to;
6319
+ };
6311
6320
  /** `input` with what shouldn't be kept or leave the machine taken out. */
6312
6321
  const scrubFollowUp = (input, options) => {
6313
6322
  const scrub = (text) => redact(text, options);
6314
6323
  return {
6315
6324
  ...input,
6325
+ for: scrubFor(input.for, scrub),
6316
6326
  title: scrub(input.title),
6327
+ ...input.ref === void 0 ? {} : { ref: scrub(input.ref) },
6317
6328
  ...input.body === void 0 ? {} : { body: scrub(input.body) },
6318
6329
  ...input.where === void 0 ? {} : { where: input.where.map(scrub) },
6319
6330
  ...input.draft === void 0 ? {} : { draft: {
6320
6331
  ...input.draft,
6321
6332
  to: scrub(input.draft.to),
6322
- text: scrub(input.draft.text)
6333
+ text: scrub(input.draft.text),
6334
+ ...input.draft.channel === void 0 ? {} : { channel: scrub(input.draft.channel) }
6323
6335
  } },
6324
6336
  ...input.steps === void 0 ? {} : { steps: input.steps.map((step) => ({
6325
6337
  text: scrub(step.text),
@@ -13614,6 +13626,13 @@ const STANDARD = /* @__PURE__ */ new Set([
13614
13626
  "artifacts",
13615
13627
  "branch"
13616
13628
  ]);
13629
+ /**
13630
+ * A name git takes as a branch (`git check-ref-format --branch`'s rules), and
13631
+ * nothing a command would read as an option or a refspec: no leading `-`, no
13632
+ * `:` or `+`, no space or control character. A reported branch reaches tool
13633
+ * arguments, so one that isn't a plain branch name is dropped.
13634
+ */
13635
+ const isBranchName = (name) => name !== "" && name !== "@" && !name.startsWith("-") && !name.startsWith("/") && !name.endsWith("/") && !name.endsWith(".") && !name.endsWith(".lock") && !name.includes("..") && !name.includes("//") && !name.includes("@{") && !name.includes("/.") && !name.startsWith(".") && !/[\u0000-\u0020\u007F~^:?*[\\+]/u.test(name);
13617
13636
  /** Reads a driver's structured output as a report, or `null` if it is not one. */
13618
13637
  const parseReport = (value) => {
13619
13638
  if (value === null || typeof value !== "object" || Array.isArray(value)) return null;
@@ -13630,7 +13649,7 @@ const parseReport = (value) => {
13630
13649
  artifacts: paths,
13631
13650
  fields: Object.fromEntries(Object.entries(record).filter(([key]) => !STANDARD.has(key)))
13632
13651
  };
13633
- if (typeof branch === "string" && branch !== "") report.branch = branch;
13652
+ if (typeof branch === "string" && isBranchName(branch)) report.branch = branch;
13634
13653
  return report;
13635
13654
  };
13636
13655
  // ../core/src/run/brief.ts
@@ -17210,10 +17229,25 @@ const openReadOnly = (file) => {
17210
17229
  throw error;
17211
17230
  }
17212
17231
  };
17232
+ /**
17233
+ * Keeps Ork's folder for the person alone: `~/.ork` holds every run's prompts
17234
+ * and output, its sockets and its locks, so it is made 0700, and one an older
17235
+ * Ork made with the umask's mode is narrowed. A store elsewhere (a test's) only
17236
+ * gets its folder made.
17237
+ */
17238
+ const keepPrivate = (dir) => {
17239
+ mkdirSync(dir, {
17240
+ recursive: true,
17241
+ mode: 448
17242
+ });
17243
+ if (path.basename(dir) !== ".ork") return;
17244
+ if ((statSync(dir).mode & 63) !== 0) chmodSync(dir, 448);
17245
+ };
17213
17246
  /** A database opened for writing: created, in WAL mode, migrated. */
17214
17247
  const openWritable = (file) => {
17215
- if (file !== ":memory:") mkdirSync(path.dirname(file), { recursive: true });
17248
+ if (file !== ":memory:") keepPrivate(path.dirname(file));
17216
17249
  const db = new DatabaseSync(file);
17250
+ if (file !== ":memory:") chmodSync(file, 384);
17217
17251
  db.exec("PRAGMA busy_timeout = 5000");
17218
17252
  db.exec("PRAGMA journal_mode = WAL");
17219
17253
  db.exec("PRAGMA synchronous = NORMAL");