pi-subagents 0.75.0 → 0.76.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/docs/agents.md +1 -1
- package/docs/configuration.md +4 -2
- package/docs/extension-api.md +1 -1
- package/docs/missions.md +12 -2
- package/docs/tool-reference.md +21 -6
- package/docs/workflows.md +1 -1
- package/package.json +2 -1
- package/src/agents/agent-memory.js +3 -3
- package/src/agents/agent-memory.js.map +1 -1
- package/src/agents/agent-serializer.d.ts.map +1 -1
- package/src/agents/agent-serializer.js +8 -1
- package/src/agents/agent-serializer.js.map +1 -1
- package/src/agents/agents.d.ts.map +1 -1
- package/src/agents/agents.js +101 -121
- package/src/agents/agents.js.map +1 -1
- package/src/extension/index.d.ts.map +1 -1
- package/src/extension/index.js +37 -4
- package/src/extension/index.js.map +1 -1
- package/src/extension/reply-workflow-script.d.ts.map +1 -1
- package/src/extension/reply-workflow-script.js +20 -11
- package/src/extension/reply-workflow-script.js.map +1 -1
- package/src/extension/schemas.d.ts +1 -1
- package/src/extension/schemas.js +8 -8
- package/src/extension/schemas.js.map +1 -1
- package/src/extension/tool-description.js +1 -1
- package/src/extension/tool-description.js.map +1 -1
- package/src/intercom/result-intercom.d.ts.map +1 -1
- package/src/intercom/result-intercom.js +2 -1
- package/src/intercom/result-intercom.js.map +1 -1
- package/src/profiles/profiles.d.ts.map +1 -1
- package/src/profiles/profiles.js +25 -22
- package/src/profiles/profiles.js.map +1 -1
- package/src/runs/background/active-async-capacity.d.ts +15 -1
- package/src/runs/background/active-async-capacity.d.ts.map +1 -1
- package/src/runs/background/active-async-capacity.js +51 -6
- package/src/runs/background/active-async-capacity.js.map +1 -1
- package/src/runs/background/async-job-tracker.d.ts +3 -2
- package/src/runs/background/async-job-tracker.d.ts.map +1 -1
- package/src/runs/background/async-job-tracker.js +2 -1
- package/src/runs/background/async-job-tracker.js.map +1 -1
- package/src/runs/background/calendar-schedule.d.ts +27 -0
- package/src/runs/background/calendar-schedule.d.ts.map +1 -0
- package/src/runs/background/calendar-schedule.js +94 -0
- package/src/runs/background/calendar-schedule.js.map +1 -0
- package/src/runs/background/notify.d.ts +6 -0
- package/src/runs/background/notify.d.ts.map +1 -1
- package/src/runs/background/notify.js +24 -4
- package/src/runs/background/notify.js.map +1 -1
- package/src/runs/background/result-watcher.d.ts +5 -1
- package/src/runs/background/result-watcher.d.ts.map +1 -1
- package/src/runs/background/result-watcher.js +44 -7
- package/src/runs/background/result-watcher.js.map +1 -1
- package/src/runs/background/run-child-session.d.ts +2 -0
- package/src/runs/background/run-child-session.d.ts.map +1 -1
- package/src/runs/background/run-child-session.js +12 -1
- package/src/runs/background/run-child-session.js.map +1 -1
- package/src/runs/background/scheduled-runs.d.ts +3 -1
- package/src/runs/background/scheduled-runs.d.ts.map +1 -1
- package/src/runs/background/scheduled-runs.js +184 -47
- package/src/runs/background/scheduled-runs.js.map +1 -1
- package/src/runs/background/subagent-runner.d.ts +1 -0
- package/src/runs/background/subagent-runner.d.ts.map +1 -1
- package/src/runs/background/subagent-runner.js +14 -6
- package/src/runs/background/subagent-runner.js.map +1 -1
- package/src/runs/background/wait-completions.d.ts.map +1 -1
- package/src/runs/background/wait-completions.js +1 -0
- package/src/runs/background/wait-completions.js.map +1 -1
- package/src/runs/background/workflow-terminal-proof.d.ts +14 -1
- package/src/runs/background/workflow-terminal-proof.d.ts.map +1 -1
- package/src/runs/background/workflow-terminal-proof.js +41 -28
- package/src/runs/background/workflow-terminal-proof.js.map +1 -1
- package/src/runs/foreground/execution.d.ts.map +1 -1
- package/src/runs/foreground/execution.js +23 -3
- package/src/runs/foreground/execution.js.map +1 -1
- package/src/runs/foreground/foreground-history.d.ts.map +1 -1
- package/src/runs/foreground/foreground-history.js +1 -0
- package/src/runs/foreground/foreground-history.js.map +1 -1
- package/src/runs/foreground/subagent-executor.d.ts +1 -1
- package/src/runs/foreground/subagent-executor.d.ts.map +1 -1
- package/src/runs/foreground/subagent-executor.js +44 -6
- package/src/runs/foreground/subagent-executor.js.map +1 -1
- package/src/runs/shared/child-session.d.ts.map +1 -1
- package/src/runs/shared/child-session.js +10 -2
- package/src/runs/shared/child-session.js.map +1 -1
- package/src/runs/shared/mcp-direct-tool-allowlist.d.ts.map +1 -1
- package/src/runs/shared/mcp-direct-tool-allowlist.js +5 -3
- package/src/runs/shared/mcp-direct-tool-allowlist.js.map +1 -1
- package/src/runs/shared/parallel-handoff.d.ts +10 -4
- package/src/runs/shared/parallel-handoff.d.ts.map +1 -1
- package/src/runs/shared/parallel-handoff.js +53 -6
- package/src/runs/shared/parallel-handoff.js.map +1 -1
- package/src/runs/shared/partial-output.d.ts +18 -0
- package/src/runs/shared/partial-output.d.ts.map +1 -0
- package/src/runs/shared/partial-output.js +29 -0
- package/src/runs/shared/partial-output.js.map +1 -0
- package/src/runs/shared/worktree-cleanup-apply.d.ts +37 -0
- package/src/runs/shared/worktree-cleanup-apply.d.ts.map +1 -0
- package/src/runs/shared/worktree-cleanup-apply.js +179 -0
- package/src/runs/shared/worktree-cleanup-apply.js.map +1 -0
- package/src/runs/shared/worktree-cleanup-plan.d.ts +7 -0
- package/src/runs/shared/worktree-cleanup-plan.d.ts.map +1 -1
- package/src/runs/shared/worktree-cleanup-plan.js +41 -19
- package/src/runs/shared/worktree-cleanup-plan.js.map +1 -1
- package/src/runs/shared/worktree-lock.d.ts +6 -0
- package/src/runs/shared/worktree-lock.d.ts.map +1 -0
- package/src/runs/shared/worktree-lock.js +41 -0
- package/src/runs/shared/worktree-lock.js.map +1 -0
- package/src/runs/shared/worktree.d.ts +3 -0
- package/src/runs/shared/worktree.d.ts.map +1 -1
- package/src/runs/shared/worktree.js +9 -1
- package/src/runs/shared/worktree.js.map +1 -1
- package/src/shared/file-lease.d.ts +5 -0
- package/src/shared/file-lease.d.ts.map +1 -0
- package/src/shared/file-lease.js +101 -0
- package/src/shared/file-lease.js.map +1 -0
- package/src/shared/settings-file-lease.d.ts +5 -0
- package/src/shared/settings-file-lease.d.ts.map +1 -0
- package/src/shared/settings-file-lease.js +39 -0
- package/src/shared/settings-file-lease.js.map +1 -0
- package/src/shared/types.d.ts +10 -0
- package/src/shared/types.d.ts.map +1 -1
- package/src/shared/types.js.map +1 -1
- package/src/tui/render.d.ts.map +1 -1
- package/src/tui/render.js +7 -2
- package/src/tui/render.js.map +1 -1
- package/src/watchdog/diff-tool.js +2 -2
- package/src/watchdog/diff-tool.js.map +1 -1
- package/src/watchdog/register-main.js +1 -2
- package/src/watchdog/register-main.js.map +1 -1
- package/src/watchdog/runtime.d.ts +3 -3
- package/src/watchdog/runtime.d.ts.map +1 -1
- package/src/watchdog/runtime.js +7 -3
- package/src/watchdog/runtime.js.map +1 -1
- package/src/watchdog/settings.d.ts.map +1 -1
- package/src/watchdog/settings.js +22 -17
- package/src/watchdog/settings.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-child-session.js","sourceRoot":"","sources":["../../../../src/runs/background/run-child-session.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,cAAc,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAC;AAE1I,OAAO,EACN,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,0BAA0B,GAI1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAuD,MAAM,8BAA8B,CAAC;AAC1H,OAAO,EAAE,oCAAoC,EAAE,MAAM,+BAA+B,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AAC/H,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACjH,OAAO,EAAE,+BAA+B,EAA6B,MAAM,2BAA2B,CAAC;AACvG,OAAO,EAAE,6BAA6B,EAAE,+BAA+B,EAAuE,MAAM,4BAA4B,CAAC;AACjL,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AA4GjF,6FAA6F;AAC7F,SAAS,uBAAuB,CAAC,KAA8B;IAC9D,OAAO,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC;AACxC,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAgB;IAChD,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;WACjC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAE,IAA0B,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAgB;IAChD,OAAQ,OAAmC,CAAC,UAAU,KAAK,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;AACxG,CAAC;AAED,SAAS,UAAU;IAClB,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AAChF,CAAC;AAED,SAAS,aAAa,CAAmB,KAAQ;IAChD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAmB,EAAE,CAAC;QACxD,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,MAAM,cAAc,GAAG,IAAI,CAAC;AAC5B,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B,MAAM,UAAU,eAAe,CAAC,KAA2B;IAC1D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;QAC3B,IAAI,KAAyB,CAAC;QAC9B,IAAI,KAAyB,CAAC;QAC9B,IAAI,cAAkC,CAAC;QACvC,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,uBAAuB,GAAG,KAAK,CAAC;QACpC,IAAI,2BAA2B,GAAG,KAAK,CAAC;QACxC,IAAI,iCAAqD,CAAC;QAC1D,IAAI,WAA+B,CAAC;QACpC,IAAI,eAAmC,CAAC;QACxC,IAAI,WAA+B,CAAC;QACpC,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,OAAiC,CAAC;QACtC,IAAI,eAAmC,CAAC;QACxC,MAAM,cAAc,GAAmD,EAAE,CAAC;QAC1E,IAAI,WAAqC,CAAC;QAC1C,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,kCAAkC,GAAG,KAAK,CAAC;QAC/C,IAAI,oBAAoB,GAAG,KAAK,CAAC;QACjC,IAAI,eAAe,GAAG,KAAK,CAAC;QAC5B,IAAI,yBAAyB,GAAG,KAAK,CAAC;QACtC,IAAI,yBAAyB,GAAG,KAAK,CAAC;QACtC,IAAI,eAA2C,CAAC;QAChD,IAAI,oBAAgD,CAAC;QACrD,IAAI,iBAA6C,CAAC;QAClD,IAAI,gBAA4C,CAAC;QACjD,IAAI,kBAA0D,CAAC;QAC/D,MAAM,mBAAmB,GAAwB,EAAE,qBAAqB,EAAE,KAAK,EAAE,CAAC;QAClF,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,cAAc,IAAI,qBAAqB,CAAC;QAC3E,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,WAAW,IAAI,2BAA2B,CAAC;QAG3E,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,MAAM,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;QAC1D,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAoB,CAAC;QACzD,MAAM,kBAAkB,GAAG,GAAS,EAAE;YACrC,MAAM,MAAM,GAAG,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,WAAW,GAAG,MAAM,EAAE,IAAI,CAAC;YAC3B,eAAe,GAAG,MAAM,EAAE,IAAI,CAAC;YAC/B,WAAW,GAAG,MAAM,EAAE,IAAI,CAAC;QAC5B,CAAC,CAAC;QACF,MAAM,oBAAoB,GAAG,CAAC,KAAiF,EAAQ,EAAE;YACxH,MAAM,GAAG,GAAG,kBAAkB,CAAC,KAAK,EAAE,EAAE,kBAAkB,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,aAAa,CAAC;gBAC5B,GAAG;gBACH,IAAI,EAAE,KAAK,CAAC,QAAQ;gBACpB,IAAI,EAAE,sBAAsB,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;gBAC9C,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC;aACpD,CAAC,CAAC;YACH,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACjC,MAAM,IAAI,GAAG,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACzD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACf,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5C,kBAAkB,EAAE,CAAC;QACtB,CAAC,CAAC;QACF,MAAM,oBAAoB,GAAG,CAAC,KAAmD,EAAQ,EAAE;YAC1F,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBAC9E,CAAC,CAAC,MAAM,KAAK,CAAC,UAAU,EAAE;gBAC1B,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;oBACnC,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC/C,CAAC,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC;wBAC3B,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;wBAChC,CAAC,CAAC,SAAS,CAAC;YACf,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;YACnG,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBAAE,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;;gBAC5D,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9C,kBAAkB,EAAE,CAAC;QACtB,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,GAAS,EAAE;YAC7B,IAAI,OAAO,IAAI,aAAa;gBAAE,OAAO;YACrC,0FAA0F;YAC1F,6FAA6F;YAC7F,KAAK,OAAO,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gBAChC,4FAA4F;YAC7F,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACvB,gBAAgB,GAAG,UAAU,CAAC,GAAG,EAAE;oBAClC,gBAAgB,GAAG,SAAS,CAAC;oBAC7B,IAAI,CAAC,OAAO,IAAI,CAAC,aAAa;wBAAE,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACzD,CAAC,EAAE,eAAe,CAAC,CAAC;gBACpB,gBAAgB,CAAC,KAAK,EAAE,EAAE,CAAC;YAC5B,CAAC;QACF,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE;YACxC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,IAAI,IAAI,CAAC,IAAI,EAAE;oBAAE,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC9C,CAAC;QACF,CAAC,CAAC;QACF,MAAM,gBAAgB,GAAG,CAAC,KAA8B,EAAE,EAAE;YAC3D,IAAI,CAAC,KAAK,CAAC,iBAAiB;gBAAE,OAAO;YACrC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC;gBAAE,OAAO;YAC5C,KAAK,CAAC,gBAAgB,CAAC;gBACtB,GAAG,KAAK;gBACR,cAAc,EAAE,OAAO;gBACvB,aAAa,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK;gBAC5C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS;gBACpD,aAAa,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK;gBAC5C,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,sBAAsB,GAAG,GAAS,EAAE;YACzC,IAAI,iBAAiB,EAAE,CAAC;gBACvB,YAAY,CAAC,iBAAiB,CAAC,CAAC;gBAChC,iBAAiB,GAAG,SAAS,CAAC;YAC/B,CAAC;QACF,CAAC,CAAC;QACF,MAAM,qBAAqB,GAAG,GAAS,EAAE;YACxC,IAAI,eAAe,EAAE,CAAC;gBACrB,YAAY,CAAC,eAAe,CAAC,CAAC;gBAC9B,eAAe,GAAG,SAAS,CAAC;YAC7B,CAAC;YACD,IAAI,oBAAoB,EAAE,CAAC;gBAC1B,YAAY,CAAC,oBAAoB,CAAC,CAAC;gBACnC,oBAAoB,GAAG,SAAS,CAAC;YAClC,CAAC;QACF,CAAC,CAAC;QACF,SAAS,eAAe;YACvB,IAAI,CAAC,CAAC,kCAAkC,IAAI,CAAC,oBAAoB,CAAC,IAAI,iBAAiB,IAAI,OAAO,IAAI,aAAa;gBAAE,OAAO;YAC5H,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;gBACnC,iBAAiB,GAAG,SAAS,CAAC;gBAC9B,kBAAkB,GAAG;oBACpB,KAAK,EAAE,OAAO;oBACd,GAAG,EAAE,CAAC,kBAAkB,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC;oBACvC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;oBACtB,MAAM,EAAE,6BAA6B;oBACrC,QAAQ,EAAE,IAAI;iBACd,CAAC;gBACF,eAAe,EAAE,CAAC;YACnB,CAAC,EAAE,KAAK,CAAC,aAAa,EAAE,qBAAqB,IAAI,OAAO,CAAC,CAAC;YAC1D,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC;QAC7B,CAAC;QACD,0EAA0E;QAC1E,6EAA6E;QAC7E,MAAM,sBAAsB,GAAG,GAAY,EAAE;YAC5C,IAAI,6BAA6B,CAAC,OAAO,CAAC;gBAAE,eAAe,GAAG,IAAI,CAAC;YACnE,OAAO,eAAe,CAAC;QACxB,CAAC,CAAC;QACF,SAAS,eAAe;YACvB,IAAI,qBAAqB,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBAC/C,eAAe,EAAE,CAAC;gBAClB,OAAO;YACR,CAAC;YACD,IAAI,aAAa,IAAI,eAAe,IAAI,OAAO;gBAAE,OAAO;YACxD,IAAI,sBAAsB,EAAE;gBAAE,OAAO;YACrC,kBAAkB,EAAE,CAAC;QACtB,CAAC;QACD,SAAS,kBAAkB;YAC1B,IAAI,aAAa,IAAI,eAAe,IAAI,OAAO;gBAAE,OAAO;YACxD,eAAe,GAAG,UAAU,CAAC,GAAG,EAAE;gBACjC,IAAI,OAAO,IAAI,aAAa;oBAAE,OAAO;gBACrC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,sBAAsB,EAAE,EAAE,CAAC;oBACvE,eAAe,GAAG,SAAS,CAAC;oBAC5B,kBAAkB,EAAE,CAAC;oBACrB,OAAO;gBACR,CAAC;gBACD,iBAAiB,GAAG,IAAI,CAAC;gBACzB,IAAI,CAAC,kCAAkC,IAAI,CAAC,oBAAoB,IAAI,CAAC,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;oBAC/F,KAAK,GAAG,0CAA0C,mBAAmB,2CAA2C,CAAC;gBAClH,CAAC;gBACD,UAAU,EAAE,CAAC;gBACb,oBAAoB,GAAG,UAAU,CAAC,GAAG,EAAE;oBACtC,IAAI,OAAO,IAAI,aAAa;wBAAE,OAAO;oBACrC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACzB,CAAC,EAAE,cAAc,CAAC,CAAC;gBACnB,oBAAoB,CAAC,KAAK,EAAE,EAAE,CAAC;YAChC,CAAC,EAAE,mBAAmB,CAAC,CAAC;YACxB,eAAe,CAAC,KAAK,EAAE,EAAE,CAAC;QAC3B,CAAC;QACD,MAAM,mBAAmB,GAAG,CAAC,MAA4B,EAAQ,EAAE;YAClE,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;gBAC/B,kCAAkC,GAAG,KAAK,CAAC;gBAC3C,oBAAoB,GAAG,KAAK,CAAC;gBAC7B,qBAAqB,EAAE,CAAC;gBACxB,sBAAsB,EAAE,CAAC;gBACzB,OAAO;YACR,CAAC;YACD,IAAI,MAAM,KAAK,aAAa;gBAAE,eAAe,EAAE,CAAC;QACjD,CAAC,CAAC;QAEF,IAAI,mBAAmB,GAAG,CAAC,CAAC;QAC5B,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAsE,CAAC;QACzG,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAoB,CAAC;QAChE,MAAM,oBAAoB,GAAG,CAAC,GAAW,EAAQ,EAAE;YAClD,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC3B,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,IAAI,GAAG,2BAA2B,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9G,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBAAE,2BAA2B,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;;gBACvE,2BAA2B,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1D,CAAC,CAAC;QACF,MAAM,sBAAsB,GAAG,CAAC,KAAmD,EAAQ,EAAE;YAC5F,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBAC9E,CAAC,CAAC,MAAM,KAAK,CAAC,UAAU,EAAE;gBAC1B,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;oBACnC,CAAC,CAAC,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;oBACtD,CAAC,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAC;wBAC9B,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;wBACnC,CAAC,CAAC,SAAS,CAAC;YACf,IAAI,GAAG;gBAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC,CAAC;QACF,MAAM,oBAAoB,GAAG,GAAS,EAAE;YACvC,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,kBAAkB,CAAC,IAAI,EAAE,CAAC;gBAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC7E,CAAC,CAAC;QACF,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAQ,EAAE;YACrD,IAAI,OAAO,IAAI,aAAa,IAAI,QAAQ,IAAI,OAAO;gBAAE,OAAO;YAC5D,QAAQ,GAAG,IAAI,CAAC;YAChB,WAAW,GAAG,KAAK,CAAC;YACpB,KAAK,GAAG,OAAO,CAAC;YAChB,UAAU,EAAE,CAAC;QACd,CAAC,CAAC;QACF,MAAM,cAAc,GAAG,CAAC,KAAiD,EAAQ,EAAE;YAClF,MAAM,cAAc,GAAG,sBAAsB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YACnF,IAAI,cAAc,KAAK,SAAS;gBAAE,OAAO;YACzC,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACnH,IAAI,YAAY,KAAK,SAAS,IAAI,cAAc,IAAI,YAAY;gBAAE,OAAO;YACzE,MAAM,GAAG,GAAG,kBAAkB,CAAC,KAAK,EAAE,EAAE,mBAAmB,CAAC,CAAC;YAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;YAChC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC7B,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBAC1B,mBAAmB,CAAC,wBAAwB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;YACzE,CAAC,EAAE,cAAc,CAAC,CAAC;YACnB,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;YAChB,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,2BAA2B,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACf,2BAA2B,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,CAAC,GAAsB,EAAQ,EAAE;YACrD,IAAI,OAAO;gBAAE,OAAO;YACpB,MAAM,KAAK,GAAG,GAAqC,CAAC;YACpD,gBAAgB,CAAC,+BAA+B,CAAC,GAAG,CAA4B,CAAC,CAAC;YAClF,KAAK,CAAC,gBAAgB,EAAE,eAAe,CAAC,+BAA+B,CAAC,GAAG,CAAe,CAAC,CAAC;YAC5F,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACvC,yBAAyB,GAAG,IAAI,CAAC;gBACjC,IAAI,oBAAoB;oBAAE,yBAAyB,GAAG,IAAI,CAAC;YAC5D,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;gBACjE,yBAAyB,GAAG,KAAK,CAAC;gBAClC,yBAAyB,GAAG,KAAK,CAAC;YACnC,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACtG,eAAe,GAAG,KAAK,CAAC;YACzB,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACvE,yBAAyB,GAAG,KAAK,CAAC;gBAClC,yBAAyB,GAAG,KAAK,CAAC;YACnC,CAAC;YACD,MAAM,eAAe,GAAG,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC;YACjF,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,eAAe,KAAK,aAAa,EAAE,CAAC;gBACzE,oBAAoB,GAAG,IAAI,CAAC;gBAC5B,yBAAyB,GAAG,yBAAyB,CAAC;YACvD,CAAC;YACD,mBAAmB,CAAC,eAAe,CAAC,CAAC;YAErC,IAAI,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,IAAI,CAAC,KAAK,CAAC,aAAa;oBAAE,OAAO;gBACjC,MAAM,IAAI,GAAG,wBAAwB,CAAC;oBACrC,OAAO,EAAE,kBAAkB;oBAC3B,KAAK;oBACL,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;wBAC7B,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK;wBACpC,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK;wBACpC,UAAU,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS;qBAC7C,CAAC,CAAC,CAAC,EAAE,CAAC;iBACP,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI;oBAAE,OAAO;gBAClB,kBAAkB,GAAG,IAAI,CAAC;gBAC1B,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC;gBAC5B,IAAI,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjC,qBAAqB,EAAE,CAAC;oBACxB,eAAe,EAAE,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACP,sBAAsB,EAAE,CAAC;oBACzB,IAAI,kCAAkC,IAAI,oBAAoB;wBAAE,eAAe,EAAE,CAAC;gBACnF,CAAC;gBACD,OAAO;YACR,CAAC;YAED,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC;YAE5B,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;gBACzC,sBAAsB,CAAC,KAAK,CAAC,CAAC;gBAC9B,oBAAoB,CAAC,KAAK,CAAC,CAAC;gBAC5B,OAAO;YACR,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAsB,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC7D,SAAS,IAAI,CAAC,CAAC;gBACf,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9G,cAAc,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC3E,oBAAoB,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACjG,IAAI,KAAK,CAAC,QAAQ,KAAK,mBAAmB,EAAE,CAAC;oBAC5C,2BAA2B,GAAG,IAAI,CAAC;oBACnC,iCAAiC,GAAG,QAAQ,CAAC,MAAM,CAAC;gBACrD,CAAC;gBACD,uBAAuB,GAAG,uBAAuB,IAAI,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;gBACnH,MAAM,OAAO,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;gBACjD,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAClF,OAAO;YACR,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACzF,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;oBACtC,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBAC9B,oBAAoB,CAAC;wBACpB,UAAU,EAAG,KAAK,CAAC,OAAoC,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU;wBACtF,QAAQ,EAAG,KAAK,CAAC,OAAkC,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ;qBAC9E,CAAC,CAAC;gBACJ,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC7B,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC3D,IAAI,IAAI;oBAAE,eAAe,CAAC,IAAI,CAAC,CAAC;gBAChC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC;oBAC3E,MAAM,OAAO,GAAG,yBAAyB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;oBAChE,IAAI,OAAO,EAAE,CAAC;wBACb,KAAK,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;4BACvC,KAAK,EAAE,WAAW;4BAClB,cAAc,EAAE,WAAW;4BAC3B,OAAO,EAAE,oCAAoC;yBAC7C,CAAC,CAAC;oBACJ,CAAC;gBACF,CAAC;gBAED,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBACzD,MAAM,IAAI,GAAG,yBAAyB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC1E,IAAI,IAAI;wBAAE,kBAAkB,GAAG,IAAI,CAAC;gBACrC,CAAC;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW;oBAAE,OAAO;gBAC/E,MAAM,WAAW,GAAG,uBAAuB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC3D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBACzB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBAC5B,IAAI,KAAK,CAAC,4BAA4B,IAAI,CAAC,WAAW,EAAE,CAAC;wBACxD,MAAM,sBAAsB,GAAG,oCAAoC,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,oBAAoB,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;wBACnN,IAAI,sBAAsB,IAAI,CAAC,KAAK;4BAAE,KAAK,GAAG,sBAAsB,CAAC;oBACtE,CAAC;gBACF,CAAC;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY;oBAAE,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;qBACvE,IAAI,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAChE,8EAA8E;oBAC9E,cAAc,GAAG,SAAS,CAAC;gBAC5B,CAAC;gBACD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBACvC,IAAI,UAAU,EAAE,CAAC;oBAChB,KAAK,CAAC,KAAK,EAAE,CAAC;oBACd,KAAK,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC;oBAC/D,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,YAAY,IAAI,CAAC,CAAC;oBAClE,KAAK,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,IAAI,CAAC,CAAC;oBAC7C,KAAK,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,IAAI,CAAC,CAAC;oBAC/C,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC;gBAC3C,CAAC;gBACD,IAAI,uBAAuB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,IAAI,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE;wBAAE,cAAc,GAAG,SAAS,CAAC;oBACpH,kCAAkC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;oBACnE,oBAAoB,EAAE,CAAC;oBACvB,eAAe,CAAC,KAAK,EAAE,CAAC;oBACxB,oBAAoB,CAAC,KAAK,EAAE,CAAC;oBAC7B,kBAAkB,EAAE,CAAC;oBACrB,mBAAmB,CAAC,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC;gBAC9E,CAAC;YACF,CAAC;QACF,CAAC,CAAC;QAEF,gFAAgF;QAChF,MAAM,MAAM,GAAG,KAAK,IAAiC,EAAE;YACtD,qBAAqB,EAAE,CAAC;YACxB,sBAAsB,EAAE,CAAC;YACzB,oBAAoB,EAAE,CAAC;YACvB,IAAI,gBAAgB,EAAE,CAAC;gBACtB,YAAY,CAAC,gBAAgB,CAAC,CAAC;gBAC/B,gBAAgB,GAAG,SAAS,CAAC;YAC9B,CAAC;YACD,KAAK,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC,CAAC;YACrC,KAAK,CAAC,eAAe,EAAE,CAAC,SAAS,CAAC,CAAC;YACnC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC;YAChC,KAAK,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC;YACjC,KAAK,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,CAAC;YAC1C,WAAW,EAAE,EAAE,CAAC;YAChB,IAAI,YAAgC,CAAC;YACrC,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC3C,IAAI,CAAC;oBAAC,MAAM,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC;gBAAC,CAAC;gBAC1C,OAAO,KAAK,EAAE,CAAC;oBAAC,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAAC,CAAC;YACzF,CAAC;YACD,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC9E,OAAO,YAAY,CAAC;QACrB,CAAC,CAAC;QAEF,8GAA8G;QAC9G,MAAM,oBAAoB,GAAG,GAAS,EAAE;YACvC,KAAK,MAAM,KAAK,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9C,KAAK,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChH,CAAC;QACF,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,WAAoB,EAAE,MAAM,GAAG,KAAK,EAAQ,EAAE;YAC7D,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,oBAAoB,EAAE,CAAC;YACvB,MAAM,aAAa,GAAG,OAAO,IAAI,eAAe,KAAK,SAAS;gBAC7D,CAAC,CAAC,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,eAAe,CAAC;gBACjE,CAAC,CAAC,KAAK,CAAC;YACT,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;YACxB,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,UAAU,GAAG,KAAK,IAAI,cAAc,CAAC;YACzC,MAAM,kBAAkB,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC5I,IAAI,CAAC,UAAU,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;gBACrD,UAAU,GAAG,kBAAkB,CAAC;YACjC,CAAC;YACD,sEAAsE;YACtE,4EAA4E;YAC5E,sEAAsE;YACtE,mDAAmD;YACnD,IAAI,kBAAkB,KAAK,SAAS;mBAChC,UAAU,KAAK,kBAAkB;mBACjC,6BAA6B,CAAC,kBAAkB,CAAC;mBACjD,QAAQ,CAAC,MAAM,KAAK,CAAC;mBACrB,aAAa,CAAC,KAAK,KAAK,CAAC;mBACzB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC7C,UAAU,GAAG,GAAG,kBAAkB,OAAO,oCAAoC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;YACtO,CAAC;YACD,MAAM,4BAA4B,GAAG,CAAC,MAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,kCAAkC,IAAI,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC;YAClJ,MAAM,6BAA6B,GAAG,4BAA4B,IAAI,iCAAiC,CAAC,QAAQ,CAAC,CAAC;YAClH,IAAI,CAAC,UAAU,IAAI,MAAM,IAAI,CAAC,4BAA4B,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;gBACrG,UAAU,GAAG,uDAAuD,CAAC;YACtE,CAAC;YACD,IAAI,QAAQ,GAAG,QAAQ,IAAI,OAAO;gBACjC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,WAAW,IAAI,CAAC,4BAA4B,IAAI,CAAC,6BAA6B,CAAC;oBAChF,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,UAAU,IAAI,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;gBACjC,IAAI,YAAY,EAAE,CAAC;oBAAC,UAAU,KAAK,YAAY,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;gBAChE,MAAM,MAAM,GAA0B,aAAa,CAAC;oBACnD,QAAQ;oBACR,QAAQ;oBACR,KAAK,EAAE,aAAa;oBACpB,SAAS;oBACT,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;oBAClC,KAAK;oBACL,aAAa,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;oBAC7S,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,4BAA4B,IAAI,CAAC,6BAA6B,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;oBACnM,WAAW,EAAE,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW;oBAC/H,WAAW,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;oBACtD,WAAW,EAAE,WAAW,IAAI,SAAS;oBACrC,QAAQ,EAAE,QAAQ,IAAI,SAAS;oBAC/B,OAAO,EAAE,OAAO,IAAI,SAAS;oBAC7B,uBAAuB;oBACvB,2BAA2B;oBAC3B,iCAAiC;oBACjC,QAAQ,EAAE,kBAAkB;oBAC5B,WAAW,EAAE,OAAO,EAAE,WAAW;oBACjC,WAAW;oBACX,eAAe;oBACf,WAAW;oBACX,yBAAyB,EAAE,yBAAyB,IAAI,SAAS;iBACjE,CAAC,CAAC;gBACH,OAAO,CAAC,MAAM,CAAC,CAAC;YACjB,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,KAAK,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE;YAC9B,IAAI,OAAO,IAAI,aAAa,IAAI,QAAQ,IAAI,OAAO;gBAAE,OAAO;YAC5D,WAAW,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC,KAAK;gBAAE,KAAK,GAAG,gDAAgD,CAAC;YACrE,UAAU,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACrE,KAAK,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE;YACzB,IAAI,OAAO,IAAI,aAAa,IAAI,QAAQ,IAAI,OAAO;gBAAE,OAAO;YAC5D,OAAO,GAAG,IAAI,CAAC;YACf,WAAW,GAAG,KAAK,CAAC;YACpB,KAAK,GAAG,WAAW,EAAE,CAAC;YACtB,UAAU,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,KAAK,IAAI,EAAE;YAChB,IAAI,CAAC;gBACJ,MAAM,WAAW,GAAG,+BAA+B,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAC1F,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACxD,IAAI,OAAO,EAAE,CAAC;oBACb,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;oBAC/C,OAAO;gBACR,CAAC;gBACD,OAAO,GAAG,OAAO,CAAC;gBAClB,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS;oBAAE,KAAK,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBACxF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChD,OAAO,CAAC,KAAK,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE;oBAC9B,IAAI,kCAAkC,IAAI,oBAAoB;wBAAE,eAAe,GAAG,IAAI,CAAC;oBACvF,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC,CAAC;gBACF,OAAO,CAAC,QAAQ,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE;oBACjC,IAAI,kCAAkC,IAAI,oBAAoB;wBAAE,eAAe,GAAG,IAAI,CAAC;oBACvF,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC,CAAC;gBACF,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;gBAC9C,KAAK,CAAC,sBAAsB,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAqC,CAAC,CAAC,CAAC;gBAC/F,KAAK,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;oBACvC,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;oBACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC;oBAC9C,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oBACnC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC9B,MAAM,MAAM,GAAkB;wBAC7B,KAAK,EAAE,QAAQ;wBACf,cAAc,EAAE,QAAQ;wBACxB,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,iCAAiC;qBACxF,CAAC;oBACF,IAAI,CAAC;wBACJ,IAAI,QAAQ;4BAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;;4BACtC,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAChC,CAAC;oBAAC,OAAO,UAAU,EAAE,CAAC;wBACrB,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;wBAC/C,IAAI,KAAK,IAAI,CAAC;4BAAE,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;wBAChD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC5G,CAAC;oBACD,OAAO,MAAM,CAAC;gBACf,CAAC,CAAC,CAAC;gBACH,IAAI,WAAW,IAAI,QAAQ,IAAI,OAAO;oBAAE,UAAU,EAAE,CAAC;gBACrD,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC1C,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACnC,aAAa,GAAG,IAAI,CAAC;gBACrB,MAAM,CAAC,SAAS,CAAC,CAAC;YACnB,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACtB,aAAa,GAAG,IAAI,CAAC;gBACrB,MAAM,CAAC,WAAW,IAAI,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;YAC3D,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;IACN,CAAC,CAAC,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"run-child-session.js","sourceRoot":"","sources":["../../../../src/runs/background/run-child-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import type { ExtensionContext } from "@earendil-works/pi-coding-agent";
|
|
|
3
3
|
import type { Details, ExtensionConfig } from "../../shared/types.ts";
|
|
4
4
|
import type { SubagentParamsLike } from "../foreground/subagent-executor.ts";
|
|
5
5
|
import type { ResolvedSubagentCapabilityCeiling } from "../shared/capability-ceiling.ts";
|
|
6
|
+
import { type CalendarTrigger } from "./calendar-schedule.ts";
|
|
6
7
|
export declare const SCHEDULED_RUN_ACTIONS: readonly ["schedule.create", "schedule.list", "schedule.show", "schedule.history", "schedule.pause", "schedule.resume", "schedule.run", "schedule.run-due", "schedule.delete"];
|
|
7
8
|
type ScheduledRunTimers = Pick<typeof globalThis, "setTimeout" | "clearTimeout">;
|
|
8
9
|
export type ScheduledRunAction = typeof SCHEDULED_RUN_ACTIONS[number];
|
|
@@ -17,7 +18,7 @@ export type ScheduleTrigger = {
|
|
|
17
18
|
everyMs: number;
|
|
18
19
|
anchorAt: string;
|
|
19
20
|
nextRunAt: string;
|
|
20
|
-
};
|
|
21
|
+
} | CalendarTrigger;
|
|
21
22
|
export type ScheduleTarget = {
|
|
22
23
|
workflowScript: string;
|
|
23
24
|
args: Record<string, unknown>;
|
|
@@ -108,6 +109,7 @@ export declare class ScheduledRunManager {
|
|
|
108
109
|
private resolve;
|
|
109
110
|
private requireStore;
|
|
110
111
|
private requireContext;
|
|
112
|
+
private activeRun;
|
|
111
113
|
private timerKey;
|
|
112
114
|
private clearTimer;
|
|
113
115
|
private stopTimers;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduled-runs.d.ts","sourceRoot":"","sources":["../../../../src/runs/background/scheduled-runs.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"scheduled-runs.d.ts","sourceRoot":"","sources":["../../../../src/runs/background/scheduled-runs.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import * as fs from "node:fs";
|
|
|
4
4
|
import * as path from "node:path";
|
|
5
5
|
import { getProjectSubagentsDir } from "../../shared/artifacts.js";
|
|
6
6
|
import { writePrivateAtomicJson } from "../../shared/atomic-json.js";
|
|
7
|
+
import { withFileLease } from "../../shared/file-lease.js";
|
|
7
8
|
import { shortenPath } from "../../shared/formatters.js";
|
|
8
9
|
import { validateExecutionAcceptance } from "../shared/acceptance.js";
|
|
9
10
|
import { previewSimpleWorkflowRun } from "../../workflows/scripted-workflow.js";
|
|
@@ -12,6 +13,7 @@ import { getConfigDirName } from "../../shared/utils.js";
|
|
|
12
13
|
import { normalizeWorktreeBaseRef } from "../shared/worktree.js";
|
|
13
14
|
import { deepFreezeWorkflowArgs, normalizeWorkflowArgs } from "../../workflows/workflow-resources.js";
|
|
14
15
|
import { readMission, resolveMissionStoreLocation, validateMissionId } from "../../missions/store.js";
|
|
16
|
+
import { calendarDateAfter, latestCalendarOccurrence, nextCalendarOccurrence, normalizeCalendarRule, restoreCalendarTrigger } from "./calendar-schedule.js";
|
|
15
17
|
export const SCHEDULED_RUN_ACTIONS = [
|
|
16
18
|
"schedule.create",
|
|
17
19
|
"schedule.list",
|
|
@@ -294,6 +296,9 @@ function parseSchedule(value, file) {
|
|
|
294
296
|
if (typeof record.trigger.every !== "string" || typeof record.trigger.everyMs !== "number" || typeof record.trigger.anchorAt !== "string" || typeof record.trigger.nextRunAt !== "string")
|
|
295
297
|
throw new Error(`Schedule record '${file}' has an invalid interval trigger.`);
|
|
296
298
|
}
|
|
299
|
+
else if (record.trigger.kind === "calendar") {
|
|
300
|
+
restoreCalendarTrigger(record.trigger); // Validate without rewriting during read-only list/show.
|
|
301
|
+
}
|
|
297
302
|
else
|
|
298
303
|
throw new Error(`Schedule record '${file}' has an unsupported trigger.`);
|
|
299
304
|
if (record.sessionOnly !== undefined && typeof record.sessionOnly !== "boolean")
|
|
@@ -356,13 +361,30 @@ class ScheduleStore {
|
|
|
356
361
|
throw new Error(`Schedule history '${file}' has invalid fields.`);
|
|
357
362
|
return value.runs;
|
|
358
363
|
}
|
|
364
|
+
/** The run's own receipt; it is written before history.json and is never trimmed. */
|
|
365
|
+
getRun(id, runId) {
|
|
366
|
+
if (!SCHEDULE_ID.test(runId))
|
|
367
|
+
throw new Error(`Invalid schedule run id '${runId}'.`);
|
|
368
|
+
const file = path.join(scheduleDir(this.root, id, false, this.projectCwd), "runs", `${runId}.json`);
|
|
369
|
+
if (!fs.existsSync(file))
|
|
370
|
+
return undefined;
|
|
371
|
+
const run = readJson(file, "schedule run");
|
|
372
|
+
if (run?.id !== runId || run.scheduleId !== id)
|
|
373
|
+
throw new Error(`Schedule run '${file}' has invalid fields.`);
|
|
374
|
+
return run;
|
|
375
|
+
}
|
|
359
376
|
writeRun(schedule, run, event) {
|
|
360
377
|
const dir = scheduleDir(this.root, schedule.id, true, this.projectCwd);
|
|
361
378
|
writePrivateAtomicJson(path.join(dir, "runs", `${run.id}.json`), run);
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
379
|
+
// Sessions sharing this project update history.json from their own snapshots.
|
|
380
|
+
withFileLease(path.join(dir, "history.json"), () => {
|
|
381
|
+
// An earlier update may have timed out; a run's own receipt is newer than a "running" entry.
|
|
382
|
+
const earlier = this.history(schedule.id).filter((item) => item.id !== run.id)
|
|
383
|
+
.map((item) => item.state === "running" ? this.getRun(schedule.id, item.id) ?? item : item);
|
|
384
|
+
const runs = [run, ...earlier].slice(0, MAX_HISTORY);
|
|
385
|
+
writePrivateAtomicJson(path.join(dir, "history.json"), { schemaVersion: 1, runs });
|
|
386
|
+
fs.appendFileSync(path.join(dir, "events.jsonl"), `${JSON.stringify({ schemaVersion: 1, timestamp: new Date().toISOString(), event, scheduleId: schedule.id, runId: run.id, state: run.state })}\n`, { encoding: "utf-8", mode: 0o600 });
|
|
387
|
+
});
|
|
366
388
|
}
|
|
367
389
|
appendEvent(schedule, event) {
|
|
368
390
|
const dir = scheduleDir(this.root, schedule.id, true, this.projectCwd);
|
|
@@ -379,11 +401,14 @@ function hasPendingScheduleWork(schedule) {
|
|
|
379
401
|
}
|
|
380
402
|
function nextAfter(trigger, plannedAt, now) {
|
|
381
403
|
if (trigger.kind === "once")
|
|
382
|
-
return undefined;
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
404
|
+
return { ...trigger, nextRunAt: undefined };
|
|
405
|
+
if (trigger.kind === "calendar")
|
|
406
|
+
return {
|
|
407
|
+
...trigger,
|
|
408
|
+
...nextCalendarOccurrence(trigger, Math.max(plannedAt, now), calendarDateAfter(trigger, plannedAt, trigger.nextLocalDate)),
|
|
409
|
+
};
|
|
410
|
+
const next = plannedAt + (Math.floor(Math.max(0, now - plannedAt) / trigger.everyMs) + 1) * trigger.everyMs;
|
|
411
|
+
return { ...trigger, nextRunAt: timestamp(next) };
|
|
387
412
|
}
|
|
388
413
|
function nextRunAt(schedule) {
|
|
389
414
|
const value = schedule.trigger.nextRunAt;
|
|
@@ -396,9 +421,18 @@ function nextRunAt(schedule) {
|
|
|
396
421
|
}
|
|
397
422
|
function duePlannedAt(schedule, now) {
|
|
398
423
|
const next = nextRunAt(schedule);
|
|
399
|
-
if (next === undefined || next > now || schedule.catchUp !== "latest"
|
|
424
|
+
if (next === undefined || next > now || schedule.catchUp !== "latest")
|
|
400
425
|
return next;
|
|
401
|
-
|
|
426
|
+
if (schedule.trigger.kind === "calendar")
|
|
427
|
+
return Date.parse(latestCalendarOccurrence(schedule.trigger, now, schedule.trigger.nextLocalDate).nextRunAt);
|
|
428
|
+
if (schedule.trigger.kind === "interval")
|
|
429
|
+
return next + Math.floor((now - next) / schedule.trigger.everyMs) * schedule.trigger.everyMs;
|
|
430
|
+
return next;
|
|
431
|
+
}
|
|
432
|
+
function triggerLabel(trigger) {
|
|
433
|
+
if (trigger.kind === "calendar")
|
|
434
|
+
return `every ${trigger.every}${trigger.on ? ` (${trigger.on.join(", ")})` : ""} at ${trigger.at} ${trigger.timezone}`;
|
|
435
|
+
return trigger.kind === "once" ? `at ${trigger.at}` : `every ${trigger.every}`;
|
|
402
436
|
}
|
|
403
437
|
function textResult(text, schedules, runs, isError = false) {
|
|
404
438
|
const publicSchedules = schedules?.map(publicScheduleRecord);
|
|
@@ -585,8 +619,10 @@ export class ScheduledRunManager {
|
|
|
585
619
|
for (const id of ids) {
|
|
586
620
|
try {
|
|
587
621
|
const schedule = store.get(id);
|
|
588
|
-
const
|
|
589
|
-
|
|
622
|
+
const listed = store.history(id).find((item) => item.asyncId === asyncId) ?? this.activeRun(store, schedule);
|
|
623
|
+
// history.json can lag the run's receipt when its update timed out.
|
|
624
|
+
const run = listed && (store.getRun(id, listed.id) ?? listed);
|
|
625
|
+
if (run?.asyncId !== asyncId || run.state !== "running")
|
|
590
626
|
continue;
|
|
591
627
|
this.finishRun(store, schedule, run, data.success === true, typeof data.summary === "string" ? data.summary : undefined);
|
|
592
628
|
return;
|
|
@@ -604,7 +640,8 @@ export class ScheduledRunManager {
|
|
|
604
640
|
return textResult(target.error, undefined, undefined, true);
|
|
605
641
|
const at = params.at?.trim();
|
|
606
642
|
const every = params.every?.trim();
|
|
607
|
-
|
|
643
|
+
const calendar = every === "day" || every === "week";
|
|
644
|
+
if (!calendar && Boolean(at) === Boolean(every))
|
|
608
645
|
return textResult("schedule.create requires exactly one trigger: at or every.", undefined, undefined, true);
|
|
609
646
|
if (params.overlap !== undefined && params.overlap !== "skip")
|
|
610
647
|
return textResult("This first recurring slice supports overlap='skip' only.", undefined, undefined, true);
|
|
@@ -612,11 +649,11 @@ export class ScheduledRunManager {
|
|
|
612
649
|
return textResult("catchUp must be 'none' or 'latest'.", undefined, undefined, true);
|
|
613
650
|
if (params.mission !== undefined || params.missionUpdate !== undefined || params.missionStatus !== undefined || params.missionScope !== undefined)
|
|
614
651
|
return textResult("Schedules accept only an existing missionId; mission creation and updates are unsupported.", undefined, undefined, true);
|
|
615
|
-
if (params.on !== undefined || params.timezone !== undefined
|
|
616
|
-
return textResult("
|
|
652
|
+
if (!calendar && (params.on !== undefined || params.timezone !== undefined))
|
|
653
|
+
return textResult("on and timezone require every:'day' or every:'week'.", undefined, undefined, true);
|
|
617
654
|
if (params.quiet !== undefined && typeof params.quiet !== "boolean")
|
|
618
655
|
return textResult("quiet must be a boolean.", undefined, undefined, true);
|
|
619
|
-
if (at && params.quiet === true)
|
|
656
|
+
if (!calendar && at && params.quiet === true)
|
|
620
657
|
return textResult("quiet is only supported for recurring schedules.", undefined, undefined, true);
|
|
621
658
|
const sessionOnly = params.sessionOnly === true;
|
|
622
659
|
if (sessionOnly && params.cwd !== undefined && !samePath(params.cwd, ctx.cwd))
|
|
@@ -639,7 +676,11 @@ export class ScheduledRunManager {
|
|
|
639
676
|
return textResult(`Schedule '${id}' already exists.`, undefined, undefined, true);
|
|
640
677
|
const now = this.now();
|
|
641
678
|
let trigger;
|
|
642
|
-
if (
|
|
679
|
+
if (calendar) {
|
|
680
|
+
const rule = normalizeCalendarRule({ every, at, on: params.on, timezone: params.timezone });
|
|
681
|
+
trigger = { kind: "calendar", ...rule, ...nextCalendarOccurrence(rule, now) };
|
|
682
|
+
}
|
|
683
|
+
else if (at) {
|
|
643
684
|
const planned = parseScheduledRunTime(at, now);
|
|
644
685
|
trigger = { kind: "once", at, nextRunAt: timestamp(planned) };
|
|
645
686
|
}
|
|
@@ -660,14 +701,14 @@ export class ScheduledRunManager {
|
|
|
660
701
|
...(params.timeoutMs === undefined ? {} : { timeoutMs: params.timeoutMs }),
|
|
661
702
|
paused: false,
|
|
662
703
|
...(sessionOnly ? { sessionOnly: true, ownerSessionFile: path.resolve(ownerSessionFile) } : {}),
|
|
663
|
-
...(trigger.kind
|
|
704
|
+
...(trigger.kind !== "once" && params.quiet === true ? { quiet: true } : {}),
|
|
664
705
|
createdAt: timestamp(now),
|
|
665
706
|
updatedAt: timestamp(now),
|
|
666
707
|
};
|
|
667
708
|
store.write(schedule);
|
|
668
709
|
store.appendEvent(schedule, "schedule.created");
|
|
669
710
|
this.arm(schedule, store);
|
|
670
|
-
return textResult(`Created schedule ${id}.\nName: ${schedule.name}\nTrigger: ${
|
|
711
|
+
return textResult(`Created schedule ${id}.\nName: ${schedule.name}\nTrigger: ${triggerLabel(trigger)}\nSession only: ${schedule.sessionOnly === true ? "yes" : "no"}\nQuiet: ${schedule.quiet === true ? "yes" : "no"}\nNext: ${schedule.trigger.nextRunAt}\nTarget: ${targetLabel(schedule.target)}${schedule.target.missionId === undefined ? "" : `\nMission: ${schedule.target.missionId}`}`, [schedule]);
|
|
671
712
|
}
|
|
672
713
|
list() {
|
|
673
714
|
const schedules = this.requireStore().list().sort((a, b) => (a.trigger.nextRunAt ?? "").localeCompare(b.trigger.nextRunAt ?? ""));
|
|
@@ -677,7 +718,7 @@ export class ScheduledRunManager {
|
|
|
677
718
|
}
|
|
678
719
|
show(params) {
|
|
679
720
|
const schedule = this.resolve(params);
|
|
680
|
-
return textResult([`Schedule: ${schedule.id}`, `Name: ${schedule.name}`, `State: ${schedule.paused ? "paused" : schedule.activeRunId ? "running" : "scheduled"}`, `Session only: ${schedule.sessionOnly === true ? "yes" : "no"}`, `Quiet: ${schedule.quiet === true ? "yes" : "no"}`, `Target: ${targetLabel(schedule.target)}`, schedule.target.missionId === undefined ? undefined : `Mission: ${schedule.target.missionId}`, `CWD: ${shortenPath(schedule.cwd)}`, `Next: ${schedule.trigger.nextRunAt ?? "none"}`, `Catch up: ${schedule.catchUp}`, schedule.activeRunId ? `Active run: ${schedule.activeRunId}` : undefined].filter(Boolean).join("\n"), [schedule]);
|
|
721
|
+
return textResult([`Schedule: ${schedule.id}`, `Name: ${schedule.name}`, `State: ${schedule.paused ? "paused" : schedule.activeRunId ? "running" : "scheduled"}`, `Session only: ${schedule.sessionOnly === true ? "yes" : "no"}`, `Quiet: ${schedule.quiet === true ? "yes" : "no"}`, `Target: ${targetLabel(schedule.target)}`, schedule.target.missionId === undefined ? undefined : `Mission: ${schedule.target.missionId}`, `CWD: ${shortenPath(schedule.cwd)}`, `Trigger: ${triggerLabel(schedule.trigger)}`, `Next: ${schedule.trigger.nextRunAt ?? "none"}`, `Catch up: ${schedule.catchUp}`, schedule.activeRunId ? `Active run: ${schedule.activeRunId}` : undefined].filter(Boolean).join("\n"), [schedule]);
|
|
681
722
|
}
|
|
682
723
|
history(params) {
|
|
683
724
|
const schedule = this.resolve(params);
|
|
@@ -708,11 +749,20 @@ export class ScheduledRunManager {
|
|
|
708
749
|
}
|
|
709
750
|
if (params.quiet !== undefined && typeof params.quiet !== "boolean")
|
|
710
751
|
return textResult("quiet must be a boolean.", undefined, undefined, true);
|
|
752
|
+
const manualTrigger = schedule.trigger;
|
|
711
753
|
const run = await this.launch(store, schedule, this.now(), "manual", false, params.quiet === true);
|
|
712
754
|
const updated = store.get(schedule.id);
|
|
713
755
|
if (run.state === "running") {
|
|
714
756
|
const now = this.now();
|
|
715
|
-
if (updated.trigger.kind === "
|
|
757
|
+
if (updated.trigger.kind === "calendar") {
|
|
758
|
+
if (manualTrigger.kind !== "calendar")
|
|
759
|
+
throw new Error("Schedule trigger changed during manual launch.");
|
|
760
|
+
const consumed = latestCalendarOccurrence(manualTrigger, now, manualTrigger.nextLocalDate)?.nextRunAt ?? manualTrigger.nextRunAt;
|
|
761
|
+
const advanced = nextAfter(manualTrigger, Date.parse(consumed), now);
|
|
762
|
+
if (advanced.nextLocalDate > updated.trigger.nextLocalDate)
|
|
763
|
+
updated.trigger = advanced;
|
|
764
|
+
}
|
|
765
|
+
else if (updated.trigger.kind === "interval")
|
|
716
766
|
updated.trigger.nextRunAt = timestamp(now + updated.trigger.everyMs);
|
|
717
767
|
else
|
|
718
768
|
updated.trigger.nextRunAt = undefined;
|
|
@@ -741,7 +791,7 @@ export class ScheduledRunManager {
|
|
|
741
791
|
const schedule = this.resolve(params);
|
|
742
792
|
const store = this.requireStore();
|
|
743
793
|
if (schedule.activeRunId) {
|
|
744
|
-
const run =
|
|
794
|
+
const run = this.activeRun(store, schedule);
|
|
745
795
|
let terminal = false;
|
|
746
796
|
if (run?.scheduleId === schedule.id && run.state === "running" && run.asyncId && run.asyncDir) {
|
|
747
797
|
const status = readJson(path.join(run.asyncDir, "status.json"), "async status");
|
|
@@ -762,8 +812,16 @@ export class ScheduledRunManager {
|
|
|
762
812
|
restoreOne(store, schedule, notBefore, rearm = true) {
|
|
763
813
|
if (!scheduleBelongsToSession(schedule, this.requireContext(store)))
|
|
764
814
|
return;
|
|
815
|
+
if (schedule.trigger.kind === "calendar") {
|
|
816
|
+
const refreshed = restoreCalendarTrigger(schedule.trigger);
|
|
817
|
+
if (JSON.stringify(refreshed) !== JSON.stringify(schedule.trigger)) {
|
|
818
|
+
schedule.trigger = refreshed;
|
|
819
|
+
schedule.updatedAt = timestamp(this.now());
|
|
820
|
+
store.write(schedule);
|
|
821
|
+
}
|
|
822
|
+
}
|
|
765
823
|
if (schedule.activeRunId) {
|
|
766
|
-
const run =
|
|
824
|
+
const run = this.activeRun(store, schedule);
|
|
767
825
|
if (run?.state === "running" && run.asyncId)
|
|
768
826
|
this.observedAsyncIds.add(run.asyncId);
|
|
769
827
|
const startedAt = run?.startedAt ? Date.parse(run.startedAt) : Number.NaN;
|
|
@@ -833,9 +891,9 @@ export class ScheduledRunManager {
|
|
|
833
891
|
if (!schedule)
|
|
834
892
|
return;
|
|
835
893
|
const now = this.now();
|
|
836
|
-
const planned = schedule.trigger.kind
|
|
837
|
-
const notBefore = planned !== undefined && planned <= now ? Date.parse(nextAfter(schedule.trigger, planned, now)) : undefined;
|
|
838
|
-
this.restoreOne(store, schedule, notBefore, schedule.trigger.kind
|
|
894
|
+
const planned = schedule.trigger.kind !== "once" ? duePlannedAt(schedule, now) : undefined;
|
|
895
|
+
const notBefore = planned !== undefined && planned <= now ? Date.parse(nextAfter(schedule.trigger, planned, now).nextRunAt) : undefined;
|
|
896
|
+
this.restoreOne(store, schedule, notBefore, schedule.trigger.kind !== "once");
|
|
839
897
|
}
|
|
840
898
|
catch (error) {
|
|
841
899
|
console.warn(`[pi-subagents] Scheduled run '${id}' could not be restored after fire failure: ${error instanceof Error ? error.message : String(error)}`);
|
|
@@ -862,12 +920,13 @@ export class ScheduledRunManager {
|
|
|
862
920
|
async launch(store, schedule, planned, dueReason, advance, quiet) {
|
|
863
921
|
const now = this.now();
|
|
864
922
|
const nextRunAtBeforeClaim = schedule.trigger.nextRunAt;
|
|
923
|
+
const nextLocalDateBeforeClaim = schedule.trigger.kind === "calendar" ? schedule.trigger.nextLocalDate : undefined;
|
|
865
924
|
const run = { schemaVersion: 1, id: this.randomId(), scheduleId: schedule.id, plannedAt: timestamp(planned), dueReason, state: "running", startedAt: timestamp(now) };
|
|
866
925
|
if (schedule.activeRunId) {
|
|
867
926
|
run.state = "skipped";
|
|
868
927
|
run.completedAt = timestamp(now);
|
|
869
928
|
if (advance) {
|
|
870
|
-
schedule.trigger
|
|
929
|
+
schedule.trigger = nextAfter(schedule.trigger, planned, now);
|
|
871
930
|
schedule.updatedAt = timestamp(now);
|
|
872
931
|
store.write(schedule);
|
|
873
932
|
}
|
|
@@ -884,26 +943,75 @@ export class ScheduledRunManager {
|
|
|
884
943
|
fs.closeSync(lock);
|
|
885
944
|
}
|
|
886
945
|
catch (error) {
|
|
946
|
+
if (lock !== undefined) {
|
|
947
|
+
// An empty or partial claim would make every later launch skip. Keep the
|
|
948
|
+
// descriptor open until the inode check so a replacement owner's lock survives.
|
|
949
|
+
try {
|
|
950
|
+
// Bigint stats: Windows file ids exceed 2^53, so number inodes of nearby files can compare equal.
|
|
951
|
+
const owned = fs.fstatSync(lock, { bigint: true });
|
|
952
|
+
const current = fs.lstatSync(lockPath, { bigint: true });
|
|
953
|
+
if (owned.ino !== 0n && owned.dev === current.dev && owned.ino === current.ino)
|
|
954
|
+
fs.rmSync(lockPath);
|
|
955
|
+
}
|
|
956
|
+
catch { /* Preserve the original error. */ }
|
|
957
|
+
try {
|
|
958
|
+
fs.closeSync(lock);
|
|
959
|
+
}
|
|
960
|
+
catch { /* Preserve the original error. */ }
|
|
961
|
+
throw error;
|
|
962
|
+
}
|
|
887
963
|
if (error.code !== "EEXIST")
|
|
888
964
|
throw error;
|
|
889
965
|
run.state = "skipped";
|
|
890
966
|
run.completedAt = timestamp(now);
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
967
|
+
// Losing the claim gives this snapshot no authority to change the owner.
|
|
968
|
+
const latest = store.find(schedule.id);
|
|
969
|
+
if (!latest) {
|
|
970
|
+
this.clearTimer(store, schedule.id);
|
|
971
|
+
return run;
|
|
972
|
+
}
|
|
973
|
+
store.writeRun(latest, run, "schedule.skipped_overlap");
|
|
974
|
+
if (latest.trigger.kind === "once") {
|
|
975
|
+
this.clearTimer(store, latest.id);
|
|
976
|
+
}
|
|
977
|
+
else {
|
|
978
|
+
// The owner may hold the lock before persisting its cursor. Back off
|
|
979
|
+
// locally without consuming that pending occurrence on disk.
|
|
980
|
+
const next = nextRunAt(latest);
|
|
981
|
+
const notBefore = next !== undefined && next <= now
|
|
982
|
+
? Date.parse(nextAfter(latest.trigger, duePlannedAt(latest, now) ?? planned, now).nextRunAt)
|
|
983
|
+
: undefined;
|
|
984
|
+
this.arm(latest, store, notBefore);
|
|
895
985
|
}
|
|
896
|
-
store.writeRun(schedule, run, "schedule.skipped_overlap");
|
|
897
|
-
this.arm(schedule, store);
|
|
898
986
|
return run;
|
|
899
987
|
}
|
|
900
988
|
schedule.activeRunId = run.id;
|
|
901
989
|
schedule.lastRunId = run.id;
|
|
902
990
|
if (advance)
|
|
903
|
-
schedule.trigger
|
|
991
|
+
schedule.trigger = nextAfter(schedule.trigger, planned, now);
|
|
904
992
|
schedule.updatedAt = timestamp(now);
|
|
905
|
-
|
|
906
|
-
|
|
993
|
+
try {
|
|
994
|
+
store.write(schedule);
|
|
995
|
+
store.writeRun(schedule, run, "schedule.run.started");
|
|
996
|
+
}
|
|
997
|
+
catch (error) {
|
|
998
|
+
// No child has launched: release this run's claim, then report the original error.
|
|
999
|
+
// Another session may already have recovered the claim and launched its own run.
|
|
1000
|
+
try {
|
|
1001
|
+
const latest = store.find(schedule.id);
|
|
1002
|
+
if (latest?.activeRunId === run.id) {
|
|
1003
|
+
latest.activeRunId = undefined;
|
|
1004
|
+
latest.updatedAt = timestamp(this.now());
|
|
1005
|
+
store.write(latest);
|
|
1006
|
+
}
|
|
1007
|
+
if (fs.readFileSync(lockPath, "utf-8") === run.id)
|
|
1008
|
+
fs.rmSync(lockPath);
|
|
1009
|
+
}
|
|
1010
|
+
catch (cleanupError) {
|
|
1011
|
+
console.warn(`[pi-subagents] Could not release schedule claim '${run.id}': ${cleanupError instanceof Error ? cleanupError.message : String(cleanupError)}`);
|
|
1012
|
+
}
|
|
1013
|
+
throw error;
|
|
1014
|
+
}
|
|
907
1015
|
try {
|
|
908
1016
|
const result = await this.deps.launch(executionParams(schedule, dueReason === "manual" ? quiet === true : schedule.quiet === true), this.requireContext(store), new AbortController().signal);
|
|
909
1017
|
const asyncId = result.details?.asyncId ?? result.details?.runId;
|
|
@@ -917,27 +1025,45 @@ export class ScheduledRunManager {
|
|
|
917
1025
|
return run;
|
|
918
1026
|
}
|
|
919
1027
|
catch (error) {
|
|
1028
|
+
// The child is running, so its claim stays until completion.
|
|
1029
|
+
if (run.asyncId)
|
|
1030
|
+
throw new Error(`Scheduled run '${run.id}' attached to async run '${run.asyncId}', but recording it failed: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
|
|
920
1031
|
run.state = "failed_launch";
|
|
921
1032
|
run.completedAt = timestamp(this.now());
|
|
922
1033
|
run.error = error instanceof Error ? error.message : String(error);
|
|
923
1034
|
const latest = store.get(schedule.id);
|
|
924
1035
|
latest.activeRunId = undefined;
|
|
925
|
-
if (!advance && nextRunAtBeforeClaim)
|
|
926
|
-
latest.trigger.
|
|
1036
|
+
if (!advance && nextRunAtBeforeClaim) {
|
|
1037
|
+
if (latest.trigger.kind === "calendar") {
|
|
1038
|
+
// An overlapping timer may have advanced both cursor fields while
|
|
1039
|
+
// this manual attachment was pending. Failure satisfies neither.
|
|
1040
|
+
if (nextLocalDateBeforeClaim !== undefined) {
|
|
1041
|
+
latest.trigger.nextLocalDate = nextLocalDateBeforeClaim;
|
|
1042
|
+
latest.trigger.nextRunAt = nextRunAtBeforeClaim;
|
|
1043
|
+
}
|
|
1044
|
+
}
|
|
1045
|
+
else
|
|
1046
|
+
latest.trigger.nextRunAt = nextRunAtBeforeClaim;
|
|
1047
|
+
}
|
|
927
1048
|
latest.updatedAt = timestamp(this.now());
|
|
928
1049
|
store.write(latest);
|
|
929
|
-
store.writeRun(latest, run, "schedule.run.failed");
|
|
930
1050
|
fs.rmSync(lockPath, { force: true });
|
|
931
|
-
|
|
1051
|
+
try {
|
|
1052
|
+
store.writeRun(latest, run, "schedule.run.failed");
|
|
1053
|
+
}
|
|
1054
|
+
finally {
|
|
1055
|
+
this.arm(latest, store);
|
|
1056
|
+
}
|
|
932
1057
|
return run;
|
|
933
1058
|
}
|
|
934
1059
|
}
|
|
935
1060
|
finishRun(store, schedule, run, success, error) {
|
|
936
1061
|
const now = this.now();
|
|
937
1062
|
const next = nextRunAt(schedule);
|
|
1063
|
+
let skipped;
|
|
938
1064
|
if (next !== undefined && next <= now) {
|
|
939
1065
|
const planned = duePlannedAt(schedule, now);
|
|
940
|
-
|
|
1066
|
+
skipped = {
|
|
941
1067
|
schemaVersion: 1,
|
|
942
1068
|
id: this.randomId(),
|
|
943
1069
|
scheduleId: schedule.id,
|
|
@@ -946,8 +1072,7 @@ export class ScheduledRunManager {
|
|
|
946
1072
|
state: "skipped",
|
|
947
1073
|
completedAt: timestamp(now),
|
|
948
1074
|
};
|
|
949
|
-
schedule.trigger
|
|
950
|
-
store.writeRun(schedule, skipped, "schedule.skipped_overlap");
|
|
1075
|
+
schedule.trigger = nextAfter(schedule.trigger, planned, now);
|
|
951
1076
|
}
|
|
952
1077
|
if (run.asyncId)
|
|
953
1078
|
this.observedAsyncIds.delete(run.asyncId);
|
|
@@ -959,8 +1084,15 @@ export class ScheduledRunManager {
|
|
|
959
1084
|
schedule.updatedAt = timestamp(now);
|
|
960
1085
|
store.write(schedule);
|
|
961
1086
|
fs.rmSync(path.join(store.directory(schedule.id), "active.lock"), { force: true });
|
|
962
|
-
|
|
963
|
-
|
|
1087
|
+
// The schedule is already released; a history.json timeout must not leave it unarmed.
|
|
1088
|
+
try {
|
|
1089
|
+
store.writeRun(schedule, run, success ? "schedule.run.completed" : "schedule.run.failed");
|
|
1090
|
+
if (skipped)
|
|
1091
|
+
store.writeRun(schedule, skipped, "schedule.skipped_overlap");
|
|
1092
|
+
}
|
|
1093
|
+
finally {
|
|
1094
|
+
this.arm(schedule, store);
|
|
1095
|
+
}
|
|
964
1096
|
}
|
|
965
1097
|
recordMissed(store, schedule, planned, dueReason) {
|
|
966
1098
|
const run = {
|
|
@@ -972,7 +1104,7 @@ export class ScheduledRunManager {
|
|
|
972
1104
|
state: "missed",
|
|
973
1105
|
completedAt: timestamp(this.now()),
|
|
974
1106
|
};
|
|
975
|
-
schedule.trigger
|
|
1107
|
+
schedule.trigger = nextAfter(schedule.trigger, planned, this.now());
|
|
976
1108
|
schedule.updatedAt = timestamp(this.now());
|
|
977
1109
|
store.write(schedule);
|
|
978
1110
|
store.writeRun(schedule, run, "schedule.missed");
|
|
@@ -1018,6 +1150,11 @@ export class ScheduledRunManager {
|
|
|
1018
1150
|
throw new Error("Schedule runtime context is unavailable.");
|
|
1019
1151
|
return ctx;
|
|
1020
1152
|
}
|
|
1153
|
+
activeRun(store, schedule) {
|
|
1154
|
+
if (!schedule.activeRunId)
|
|
1155
|
+
return undefined;
|
|
1156
|
+
return store.getRun(schedule.id, schedule.activeRunId) ?? store.history(schedule.id).find((run) => run.id === schedule.activeRunId);
|
|
1157
|
+
}
|
|
1021
1158
|
timerKey(store, id) {
|
|
1022
1159
|
return `${store.root}\0${id}`;
|
|
1023
1160
|
}
|