dorfl 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/advance-ci-template.d.ts +3 -3
- package/dist/advance-ci-template.js +1 -1
- package/dist/advance-ci-template.js.map +1 -1
- package/dist/advance-classify.d.ts +5 -5
- package/dist/advance-classify.d.ts.map +1 -1
- package/dist/advance-classify.js +4 -4
- package/dist/advance-drivers.d.ts +7 -7
- package/dist/advance-drivers.d.ts.map +1 -1
- package/dist/advance-drivers.js +5 -5
- package/dist/advance-drivers.js.map +1 -1
- package/dist/advance-isolated.d.ts +3 -3
- package/dist/advance-isolated.d.ts.map +1 -1
- package/dist/advance-isolated.js +1 -1
- package/dist/advance-lifecycle-template.d.ts +2 -2
- package/dist/advance-lifecycle-template.js +9 -9
- package/dist/advance-lifecycle-template.js.map +1 -1
- package/dist/advance-loop-driver.d.ts +3 -3
- package/dist/advance-loop-driver.d.ts.map +1 -1
- package/dist/advance-loop-driver.js +1 -1
- package/dist/advance-treeless-publish.d.ts +1 -1
- package/dist/advance.d.ts +11 -11
- package/dist/advance.d.ts.map +1 -1
- package/dist/advance.js +21 -21
- package/dist/advance.js.map +1 -1
- package/dist/advancing-lock.d.ts +1 -1
- package/dist/advancing-lock.js +5 -5
- package/dist/apply-decide.d.ts +2 -2
- package/dist/apply-decide.js +2 -2
- package/dist/apply-merge-action.d.ts +4 -4
- package/dist/apply-merge-action.js +2 -2
- package/dist/apply-persist.d.ts +5 -5
- package/dist/apply-persist.d.ts.map +1 -1
- package/dist/apply-persist.js +7 -7
- package/dist/apply-persist.js.map +1 -1
- package/dist/buildable-body.d.ts +14 -14
- package/dist/buildable-body.js +9 -9
- package/dist/claim-cas.d.ts +3 -3
- package/dist/claim-cas.js +1 -1
- package/dist/claim-cas.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +76 -76
- package/dist/cli.js.map +1 -1
- package/dist/close-job-template.d.ts +3 -3
- package/dist/close-job-template.js +8 -8
- package/dist/close-job.d.ts +8 -8
- package/dist/close-job.js +25 -25
- package/dist/close-job.js.map +1 -1
- package/dist/complete.d.ts +3 -3
- package/dist/complete.js +8 -8
- package/dist/complete.js.map +1 -1
- package/dist/concurrency.d.ts +1 -1
- package/dist/concurrency.js +1 -1
- package/dist/config.d.ts +32 -32
- package/dist/config.js +5 -5
- package/dist/config.js.map +1 -1
- package/dist/continue-branch.d.ts +1 -1
- package/dist/continue-branch.js +1 -1
- package/dist/cwd-section.js +1 -1
- package/dist/cwd-section.js.map +1 -1
- package/dist/decision-engine.d.ts +2 -2
- package/dist/do-autopick.d.ts +6 -6
- package/dist/do-autopick.d.ts.map +1 -1
- package/dist/do-autopick.js +5 -5
- package/dist/do-autopick.js.map +1 -1
- package/dist/do-config.d.ts +3 -3
- package/dist/do-config.js +3 -3
- package/dist/do-config.js.map +1 -1
- package/dist/do-remote-auto.d.ts +2 -2
- package/dist/do-remote-auto.js +1 -1
- package/dist/do.d.ts +25 -25
- package/dist/do.d.ts.map +1 -1
- package/dist/do.js +20 -20
- package/dist/do.js.map +1 -1
- package/dist/drop-source.d.ts +2 -2
- package/dist/env-config.js +8 -8
- package/dist/env-config.js.map +1 -1
- package/dist/format.js +3 -3
- package/dist/format.js.map +1 -1
- package/dist/frontmatter.d.ts +14 -13
- package/dist/frontmatter.d.ts.map +1 -1
- package/dist/frontmatter.js +12 -24
- package/dist/frontmatter.js.map +1 -1
- package/dist/install-ci-branch-protection.d.ts +1 -1
- package/dist/install-ci-branch-protection.js +1 -1
- package/dist/install-ci-capabilities/advance-lifecycle.d.ts +1 -1
- package/dist/install-ci-capabilities/advance-lifecycle.js +1 -1
- package/dist/install-ci-capabilities/close-job.d.ts +1 -1
- package/dist/install-ci-capabilities/close-job.js +1 -1
- package/dist/install-ci-capabilities/example-noop.d.ts +1 -1
- package/dist/install-ci-capabilities/example-noop.js +1 -1
- package/dist/install-ci-capabilities/intake.d.ts +2 -2
- package/dist/install-ci-capabilities/intake.js +2 -2
- package/dist/install-ci-capabilities/verify.d.ts +1 -1
- package/dist/install-ci-capabilities/verify.js +1 -1
- package/dist/install-ci-core.d.ts +3 -3
- package/dist/install-ci-core.js +2 -2
- package/dist/install-ci-core.js.map +1 -1
- package/dist/install-ci-github.d.ts +1 -1
- package/dist/install-ci-github.js +1 -1
- package/dist/install-ci.d.ts +1 -1
- package/dist/install-ci.js +4 -4
- package/dist/install-ci.js.map +1 -1
- package/dist/intake-event.d.ts +6 -6
- package/dist/intake-event.js +6 -6
- package/dist/intake-marker.d.ts +3 -3
- package/dist/intake-marker.d.ts.map +1 -1
- package/dist/intake-triage.d.ts +1 -1
- package/dist/intake-triage.js +2 -2
- package/dist/intake-trigger-template.d.ts +8 -8
- package/dist/intake-trigger-template.d.ts.map +1 -1
- package/dist/intake-trigger-template.js +16 -16
- package/dist/intake-trigger-template.js.map +1 -1
- package/dist/intake.d.ts +50 -50
- package/dist/intake.d.ts.map +1 -1
- package/dist/intake.js +70 -70
- package/dist/intake.js.map +1 -1
- package/dist/integration-core.d.ts +17 -17
- package/dist/integration-core.js +17 -17
- package/dist/integration-core.js.map +1 -1
- package/dist/isolation.d.ts +3 -3
- package/dist/issue-provider.d.ts +4 -4
- package/dist/issue-provider.js +1 -1
- package/dist/item-lock.d.ts +21 -21
- package/dist/item-lock.d.ts.map +1 -1
- package/dist/item-lock.js +16 -16
- package/dist/item-path.d.ts +2 -2
- package/dist/item-path.js +2 -2
- package/dist/ledger-lint.d.ts +9 -9
- package/dist/ledger-lint.js +9 -9
- package/dist/ledger-read.d.ts +57 -57
- package/dist/ledger-read.d.ts.map +1 -1
- package/dist/ledger-read.js +24 -24
- package/dist/ledger-read.js.map +1 -1
- package/dist/ledger-write.d.ts +2 -2
- package/dist/ledger-write.js +1 -1
- package/dist/lifecycle-gather.d.ts +1 -1
- package/dist/lifecycle-gather.js +16 -16
- package/dist/lifecycle-gather.js.map +1 -1
- package/dist/lifecycle-pools.d.ts +4 -4
- package/dist/lifecycle-pools.js +1 -1
- package/dist/merge-question-surfacer.d.ts +3 -3
- package/dist/merge-question-surfacer.js +2 -2
- package/dist/merge-question-surfacer.js.map +1 -1
- package/dist/mint-adr.js +4 -4
- package/dist/mirror-pool-scan.d.ts +2 -2
- package/dist/mirror-pool-scan.js +3 -3
- package/dist/mirror-pool-scan.js.map +1 -1
- package/dist/needs-attention.d.ts +13 -13
- package/dist/needs-attention.d.ts.map +1 -1
- package/dist/needs-attention.js +11 -11
- package/dist/needs-attention.js.map +1 -1
- package/dist/orphan-sidecar.d.ts +2 -2
- package/dist/placement.d.ts +6 -6
- package/dist/placement.js +2 -2
- package/dist/prompt.d.ts +16 -19
- package/dist/prompt.d.ts.map +1 -1
- package/dist/prompt.js +17 -19
- package/dist/prompt.js.map +1 -1
- package/dist/readiness.d.ts +1 -1
- package/dist/recover-isolated.js +1 -1
- package/dist/repo-config.js +12 -12
- package/dist/repo-config.js.map +1 -1
- package/dist/review-gate.d.ts +3 -3
- package/dist/review-gate.d.ts.map +1 -1
- package/dist/review-gate.js +11 -10
- package/dist/review-gate.js.map +1 -1
- package/dist/review-verdict.d.ts +2 -2
- package/dist/review-verdict.d.ts.map +1 -1
- package/dist/review-verdict.js +1 -1
- package/dist/run.d.ts +1 -1
- package/dist/run.js +4 -4
- package/dist/run.js.map +1 -1
- package/dist/scan.d.ts +10 -10
- package/dist/scan.d.ts.map +1 -1
- package/dist/scan.js +8 -8
- package/dist/scan.js.map +1 -1
- package/dist/select-order.d.ts +1 -1
- package/dist/select-priority.d.ts +12 -12
- package/dist/select-priority.d.ts.map +1 -1
- package/dist/select-priority.js +5 -5
- package/dist/select-priority.js.map +1 -1
- package/dist/sidecar.d.ts +2 -2
- package/dist/sidecar.js +2 -2
- package/dist/sidecar.js.map +1 -1
- package/dist/slug-namespace.d.ts +1 -1
- package/dist/slug-namespace.js +3 -3
- package/dist/slug-namespace.js.map +1 -1
- package/dist/spec-complete.js +2 -2
- package/dist/spec-complete.js.map +1 -1
- package/dist/start.d.ts +1 -1
- package/dist/start.js +3 -3
- package/dist/start.js.map +1 -1
- package/dist/status.d.ts +3 -3
- package/dist/status.js +4 -4
- package/dist/status.js.map +1 -1
- package/dist/surface-gate.d.ts +2 -2
- package/dist/surface-gate.d.ts.map +1 -1
- package/dist/surface-persist.d.ts +2 -2
- package/dist/surface-persist.d.ts.map +1 -1
- package/dist/tasker-review-loop.d.ts +8 -8
- package/dist/tasker-review-loop.d.ts.map +1 -1
- package/dist/tasker-review-loop.js +8 -8
- package/dist/tasker-review-loop.js.map +1 -1
- package/dist/tasking-eligibility.d.ts +21 -21
- package/dist/tasking-eligibility.d.ts.map +1 -1
- package/dist/tasking-eligibility.js +10 -10
- package/dist/tasking-lock.d.ts +8 -8
- package/dist/tasking-lock.d.ts.map +1 -1
- package/dist/tasking-lock.js +20 -21
- package/dist/tasking-lock.js.map +1 -1
- package/dist/tasking.d.ts +33 -33
- package/dist/tasking.d.ts.map +1 -1
- package/dist/tasking.js +88 -86
- package/dist/tasking.js.map +1 -1
- package/dist/triage-gate.d.ts +1 -1
- package/dist/triage-persist.d.ts +5 -5
- package/dist/triage-persist.js +15 -15
- package/dist/triage-persist.js.map +1 -1
- package/dist/verify-workflow-template.d.ts +1 -1
- package/dist/verify-workflow-template.js +2 -2
- package/dist/work-layout.d.ts +9 -7
- package/dist/work-layout.d.ts.map +1 -1
- package/dist/work-layout.js +9 -7
- package/dist/work-layout.js.map +1 -1
- package/dist/workspace.d.ts +1 -1
- package/package.json +1 -1
- package/src/advance-ci-template.ts +4 -4
- package/src/advance-classify.ts +5 -5
- package/src/advance-drivers.ts +10 -10
- package/src/advance-isolated.ts +3 -3
- package/src/advance-lifecycle-template.ts +9 -9
- package/src/advance-loop-driver.ts +3 -3
- package/src/advance-treeless-publish.ts +1 -1
- package/src/advance.ts +30 -30
- package/src/advancing-lock.ts +6 -6
- package/src/apply-decide.ts +2 -2
- package/src/apply-merge-action.ts +5 -5
- package/src/apply-persist.ts +8 -8
- package/src/buildable-body.ts +14 -14
- package/src/claim-cas.ts +4 -4
- package/src/cli.ts +83 -83
- package/src/close-job-template.ts +8 -8
- package/src/close-job.ts +26 -26
- package/src/complete.ts +11 -11
- package/src/concurrency.ts +1 -1
- package/src/config.ts +37 -37
- package/src/continue-branch.ts +1 -1
- package/src/cwd-section.ts +1 -1
- package/src/decision-engine.ts +3 -3
- package/src/do-autopick.ts +9 -9
- package/src/do-config.ts +6 -6
- package/src/do-remote-auto.ts +2 -2
- package/src/do.ts +47 -47
- package/src/drop-source.ts +2 -2
- package/src/env-config.ts +8 -8
- package/src/format.ts +3 -3
- package/src/frontmatter.ts +23 -33
- package/src/install-ci-branch-protection.ts +1 -1
- package/src/install-ci-capabilities/advance-lifecycle.ts +1 -1
- package/src/install-ci-capabilities/close-job.ts +1 -1
- package/src/install-ci-capabilities/example-noop.ts +1 -1
- package/src/install-ci-capabilities/intake.ts +2 -2
- package/src/install-ci-capabilities/verify.ts +1 -1
- package/src/install-ci-core.ts +4 -4
- package/src/install-ci-github.ts +1 -1
- package/src/install-ci.ts +4 -4
- package/src/intake-event.ts +6 -6
- package/src/intake-marker.ts +3 -3
- package/src/intake-triage.ts +2 -2
- package/src/intake-trigger-template.ts +17 -17
- package/src/intake.ts +97 -97
- package/src/integration-core.ts +35 -35
- package/src/isolation.ts +3 -3
- package/src/issue-provider.ts +4 -4
- package/src/item-lock.ts +21 -21
- package/src/item-path.ts +2 -2
- package/src/ledger-lint.ts +9 -9
- package/src/ledger-read.ts +81 -81
- package/src/ledger-write.ts +3 -3
- package/src/lifecycle-gather.ts +16 -16
- package/src/lifecycle-pools.ts +4 -4
- package/src/merge-question-surfacer.ts +4 -4
- package/src/mint-adr.ts +4 -4
- package/src/mirror-pool-scan.ts +5 -5
- package/src/needs-attention.ts +22 -22
- package/src/orphan-sidecar.ts +2 -2
- package/src/placement.ts +6 -6
- package/src/prompt.ts +20 -25
- package/src/readiness.ts +1 -1
- package/src/recover-isolated.ts +1 -1
- package/src/repo-config.ts +12 -12
- package/src/review-gate.ts +12 -11
- package/src/review-verdict.ts +2 -2
- package/src/run.ts +5 -5
- package/src/scan.ts +15 -15
- package/src/select-order.ts +1 -1
- package/src/select-priority.ts +13 -13
- package/src/sidecar.ts +3 -3
- package/src/slug-namespace.ts +3 -3
- package/src/spec-complete.ts +2 -2
- package/src/start.ts +4 -4
- package/src/status.ts +7 -7
- package/src/surface-gate.ts +2 -2
- package/src/surface-persist.ts +2 -2
- package/src/tasker-review-loop.ts +15 -15
- package/src/tasking-eligibility.ts +21 -21
- package/src/tasking-lock.ts +27 -28
- package/src/tasking.ts +123 -121
- package/src/triage-gate.ts +1 -1
- package/src/triage-persist.ts +16 -16
- package/src/verify-workflow-template.ts +2 -2
- package/src/work-layout.ts +9 -7
- package/src/workspace.ts +1 -1
package/dist/tasking.js
CHANGED
|
@@ -19,7 +19,7 @@ const DEFAULT_LOCK_SEAM = {
|
|
|
19
19
|
};
|
|
20
20
|
const DEFAULT_ARBITER = 'origin';
|
|
21
21
|
/**
|
|
22
|
-
* **The STAGED-TASKS dir** (
|
|
22
|
+
* **The STAGED-TASKS dir** (spec `staging-pool-position-gate-and-trust-model`,
|
|
23
23
|
* task `pre-backlog-staging-folder-and-promote-step-a`, governing ADR
|
|
24
24
|
* `placement-is-runner-deterministic-humanonly-is-agent-judgement`). The runner
|
|
25
25
|
* lands the tasker's emitted task files HERE, NOT in `work/tasks/ready/`: an item
|
|
@@ -36,7 +36,7 @@ export const STAGED_TASKS_DIR = workFolderRel('tasks-backlog');
|
|
|
36
36
|
* origin, or an `--tasks-land-in ready` operator override). The agent NEVER
|
|
37
37
|
* writes here — it always writes to {@link STAGED_TASKS_DIR}; the runner
|
|
38
38
|
* redirects the emitted files to the resolved destination at integrate-stage
|
|
39
|
-
* time.
|
|
39
|
+
* time. spec US #4 / the governing ADR: the agent cannot self-place into the
|
|
40
40
|
* pool. Task `runner-deterministic-slice-placement-policy-and-precedence`.
|
|
41
41
|
*/
|
|
42
42
|
const POOL_TASKS_DIR = workFolderRel('tasks-ready');
|
|
@@ -65,7 +65,7 @@ function stagedTaskPath(name) {
|
|
|
65
65
|
return `${STAGED_TASKS_DIR}/${name}`;
|
|
66
66
|
}
|
|
67
67
|
/**
|
|
68
|
-
* Run the `do
|
|
68
|
+
* Run the `do spec:<slug>` tasking path end-to-end. Never throws for the expected
|
|
69
69
|
* gate-refused / lock-lost / agent-failed / stale cases — those are returned with
|
|
70
70
|
* the appropriate exit code and outcome. The runner owns all git; the agent only
|
|
71
71
|
* writes task files.
|
|
@@ -82,18 +82,18 @@ export async function performTask(options) {
|
|
|
82
82
|
const slug = options.slug;
|
|
83
83
|
const doer = options.doer ?? 'agent';
|
|
84
84
|
const lock = options.lock ?? DEFAULT_LOCK_SEAM;
|
|
85
|
-
// 0. The
|
|
85
|
+
// 0. The spec must exist in the checkout (`work/specs/ready/<slug>.md`) — it is the
|
|
86
86
|
// source the agent tasks + the file the lock holds.
|
|
87
87
|
const specPath = workItemPath(cwd, 'specs-ready', slug);
|
|
88
88
|
if (!existsSync(specPath)) {
|
|
89
|
-
const message = `no
|
|
89
|
+
const message = `no spec '${slug}' found at ${workFolderRel('specs-ready')}/${slug}.md.`;
|
|
90
90
|
note(message);
|
|
91
91
|
return { exitCode: 1, outcome: 'usage-error', slug, message };
|
|
92
92
|
}
|
|
93
93
|
const specContent = readFileSync(specPath, 'utf8');
|
|
94
94
|
const specFm = parseFrontmatter(specContent);
|
|
95
95
|
// 1. RESOLVE THE GATE (agent path only). The human path is UNBOUND — a human
|
|
96
|
-
// decides for themselves whether a
|
|
96
|
+
// decides for themselves whether a spec is taskable.
|
|
97
97
|
if (doer === 'agent') {
|
|
98
98
|
const eligibility = resolveAgentGate(cwd, slug, specFm, options.autoTask, options.explicit ?? false);
|
|
99
99
|
if (!eligibility.taskable) {
|
|
@@ -136,9 +136,9 @@ export async function performTask(options) {
|
|
|
136
136
|
}
|
|
137
137
|
// 2b. ONBOARD the agent's tasking work onto a `work/<slug>` BRANCH cut from the
|
|
138
138
|
// freshly-fetched `<arbiter>/main` (task `slice-output-through-integration`).
|
|
139
|
-
// The
|
|
140
|
-
// longer moves it), so the branch's base HOLDS the held
|
|
141
|
-
// stage below moves it `
|
|
139
|
+
// The spec body rests in `work/specs/ready/<slug>.md` on `<arbiter>/main` (the lock no
|
|
140
|
+
// longer moves it), so the branch's base HOLDS the held spec — the lifecycle
|
|
141
|
+
// stage below moves it `specs/ready/ → specs/tasked/` ON THIS BRANCH and the shared integrate core (`--propose`
|
|
142
142
|
// PR / `--merge` main) lands the whole transition, WITHOUT the lock release
|
|
143
143
|
// committing tasks straight to `main`. The agent runs IN-PLACE on this branch
|
|
144
144
|
// (branch ≠ worktree; the isolation seam upgrades it). The HUMAN path stays on
|
|
@@ -146,7 +146,7 @@ export async function performTask(options) {
|
|
|
146
146
|
if (useLock) {
|
|
147
147
|
await switchToWorkBranch(cwd, arbiter, slug, env);
|
|
148
148
|
}
|
|
149
|
-
// 3. INVOKE THE AGENT with the to-task
|
|
149
|
+
// 3. INVOKE THE AGENT with the to-task spec. It WRITES
|
|
150
150
|
// `work/tasks/backlog/*.md` task files (the STAGED area — NOT `work/tasks/ready/`,
|
|
151
151
|
// which is the agent-eligible pool the runner owns the promotion into; task
|
|
152
152
|
// `pre-backlog-staging-folder-and-promote-step-a`); it does NO git. We
|
|
@@ -155,10 +155,10 @@ export async function performTask(options) {
|
|
|
155
155
|
const before = snapshotStagedTasks(cwd);
|
|
156
156
|
// Also snapshot the POOL `work/tasks/ready/` BEFORE the agent runs: the runner's
|
|
157
157
|
// final commit must scrub any agent writes there (an attempt to self-place into
|
|
158
|
-
// the pool,
|
|
158
|
+
// the pool, spec US #4) before `git add -A` would sweep them in.
|
|
159
159
|
const poolBefore = snapshotPool(cwd);
|
|
160
160
|
// Read the parent-spec self-pointer off `specFm.spec` (populated from the
|
|
161
|
-
// `spec:` key
|
|
161
|
+
// `spec:` key).
|
|
162
162
|
const prompt = buildTaskingSpec(slug, specFm.spec);
|
|
163
163
|
let agent;
|
|
164
164
|
try {
|
|
@@ -204,10 +204,10 @@ export async function performTask(options) {
|
|
|
204
204
|
env: agentEnv,
|
|
205
205
|
note,
|
|
206
206
|
});
|
|
207
|
-
// DECOMPOSITION UNCLEAR: emit NO guessed tasks — route the held
|
|
207
|
+
// DECOMPOSITION UNCLEAR: emit NO guessed tasks — route the held spec to
|
|
208
208
|
// needs-attention with the questions as the reason. The lock release amends the
|
|
209
|
-
// `
|
|
210
|
-
// is the stuck lock now — NO folder write; the
|
|
209
|
+
// `spec:<slug>` unified lock `active → stuck` (the tasking needs-attention surface
|
|
210
|
+
// is the stuck lock now — NO folder write; the spec body stays in `work/specs/ready/`).
|
|
211
211
|
if (loopDisposition.outcome === 'decomposition-unclear') {
|
|
212
212
|
const reason = decompositionUnclearReason(slug, loopDisposition.specQuestions);
|
|
213
213
|
if (useLock) {
|
|
@@ -242,7 +242,7 @@ export async function performTask(options) {
|
|
|
242
242
|
}
|
|
243
243
|
}
|
|
244
244
|
// 4. The RUNNER commits the COMPLETING transition: drop the produced backlog
|
|
245
|
-
// tasks IN + move the
|
|
245
|
+
// tasks IN + move the spec specs/ready/ -> specs/tasked/ (residence = tasked-ness) — now
|
|
246
246
|
// through the SHARED integrate core (`--propose` PR / `--merge` main), NOT a
|
|
247
247
|
// direct commit to `main`. The agent never does git. (The backlog snapshot is
|
|
248
248
|
// taken AFTER any loop edits, so the runner integrates the IMPROVED tasks,
|
|
@@ -253,7 +253,7 @@ export async function performTask(options) {
|
|
|
253
253
|
// `runner-deterministic-slice-placement-policy-and-precedence`). Resolve which
|
|
254
254
|
// folder the runner lands the emitted tasks in BEFORE handing them to the
|
|
255
255
|
// shared integrate band: precedence `explicit > untrusted-origin ⇒ staging >
|
|
256
|
-
// tasksLandIn > built-in (staging)`, all from unforgeable inputs (the
|
|
256
|
+
// tasksLandIn > built-in (staging)`, all from unforgeable inputs (the spec's
|
|
257
257
|
// stamped `originTrust:` + the resolved per-repo default + the operator's
|
|
258
258
|
// explicit flag). The agent NEVER influences this; it always writes to
|
|
259
259
|
// `work/tasks/backlog/`, and the runner redirects at `stage()` time.
|
|
@@ -274,11 +274,11 @@ export async function performTask(options) {
|
|
|
274
274
|
if (useLock) {
|
|
275
275
|
// READ-STABILITY BACKSTOP (the lock's content-identity check, now owned at the
|
|
276
276
|
// integrate seam): the OUTPUT no longer rides the lock release, so the band
|
|
277
|
-
// below would otherwise rebase a concurrent edit of the held
|
|
278
|
-
// into
|
|
277
|
+
// below would otherwise rebase a concurrent edit of the held spec body CLEANLY
|
|
278
|
+
// into spec/ (a rename+edit merge) while the tasks were cut from the OLD body —
|
|
279
279
|
// the exact silent stale-task drift the lock forbids
|
|
280
|
-
// (`work/notes/observations/tasking-lock-does-not-stabilise-
|
|
281
|
-
// compare the CURRENTLY held `work/
|
|
280
|
+
// (`work/notes/observations/tasking-lock-does-not-stabilise-spec-content.md`). So we
|
|
281
|
+
// compare the CURRENTLY held `work/specs/ready/<slug>.md` blob on the arbiter against
|
|
282
282
|
// the snapshot the lock TOOK (`lockedBlob`); ANY change ⇒ STALE ⇒ fail loud,
|
|
283
283
|
// touch NOTHING (the lock stays held; a human re-tasks or routes to
|
|
284
284
|
// needs-attention). It is the SAME content-identity check `releaseTaskingLock`
|
|
@@ -287,16 +287,16 @@ export async function performTask(options) {
|
|
|
287
287
|
const stale = await heldSpecIsStale(cwd, arbiter, slug, lockedBlob, env);
|
|
288
288
|
if (stale) {
|
|
289
289
|
const specRel = workItemRel('specs-ready', `${slug}.md`);
|
|
290
|
-
const message = `RELEASE CONFLICT for '${slug}': the
|
|
290
|
+
const message = `RELEASE CONFLICT for '${slug}': the spec was edited (${specRel} ` +
|
|
291
291
|
`changed on ${arbiter}/main) while the tasking lock was held. The tasking is ` +
|
|
292
|
-
`STALE — re-task from the edited
|
|
292
|
+
`STALE — re-task from the edited spec or route it to needs-attention. ` +
|
|
293
293
|
`The arbiter was NOT modified (lock still held).`;
|
|
294
294
|
note(message);
|
|
295
295
|
return { exitCode: 4, outcome: 'stale', slug, message };
|
|
296
296
|
}
|
|
297
297
|
// Route the OUTPUT through the SHARED integrate back-half (task
|
|
298
|
-
// `slice-output-through-integration`): the produced backlog tasks + the
|
|
299
|
-
// lifecycle move (`work/
|
|
298
|
+
// `slice-output-through-integration`): the produced backlog tasks + the spec
|
|
299
|
+
// lifecycle move (`work/specs/ready/ -> work/specs/tasked/`, residence = tasked-ness) integrate
|
|
300
300
|
// via `performIntegration` honoring `--propose` (push the work branch + open a
|
|
301
301
|
// PR, NO `main` touch) / `--merge` (land on `main`). Because the integrate-time
|
|
302
302
|
// args resolve ONCE in the shared core, every `do task:` arg applies here by
|
|
@@ -336,13 +336,13 @@ export async function performTask(options) {
|
|
|
336
336
|
// path's merge-vs-propose decision is the `integration` mode the user typed;
|
|
337
337
|
// `merge` IS the auto-land mode, so a resolved `merge` is never downgraded.
|
|
338
338
|
// The task gate family is `--review`/`--no-review`/`--review-model` only
|
|
339
|
-
// (
|
|
339
|
+
// (spec US #6).
|
|
340
340
|
mode: options.integration ?? 'propose',
|
|
341
341
|
noPR: options.noPR,
|
|
342
342
|
providerInstance: options.providerInstance,
|
|
343
343
|
type: 'tasking',
|
|
344
344
|
lifecycle: {
|
|
345
|
-
// Read the PR title / commit summary from the held
|
|
345
|
+
// Read the PR title / commit summary from the held spec (before it moves).
|
|
346
346
|
titlePath: workItemPath(cwd, 'specs-ready', slug),
|
|
347
347
|
commitTag: 'tasked',
|
|
348
348
|
stage: () => stageTaskingLifecycle({
|
|
@@ -367,9 +367,9 @@ export async function performTask(options) {
|
|
|
367
367
|
// the review BEFORE the stage/integrate and did NOT integrate the tasks
|
|
368
368
|
// (correct). The CORRECT task-path destination is the SAME needs-attention
|
|
369
369
|
// route the lock release owns for the decomposition-unclear verdict: it amends
|
|
370
|
-
// the `
|
|
370
|
+
// the `spec:<slug>` unified lock `active -> stuck` with the block reason (the
|
|
371
371
|
// tasking needs-attention surface is the stuck lock now — NO folder write; the
|
|
372
|
-
//
|
|
372
|
+
// spec body stays in `work/specs/ready/`). So on a block we route the held spec to
|
|
373
373
|
// needs-attention THROUGH the lock release — the set never lands.
|
|
374
374
|
if (core.outcome === 'review-blocked') {
|
|
375
375
|
const reason = taskGateBlockedReason(slug, core.reviewBlockReason);
|
|
@@ -396,9 +396,9 @@ export async function performTask(options) {
|
|
|
396
396
|
}
|
|
397
397
|
if (core.outcome === 'review-unparseable') {
|
|
398
398
|
// The task-set acceptance gate RAN but its verdict was UNPARSEABLE (malformed
|
|
399
|
-
// JSON). Route the held
|
|
399
|
+
// JSON). Route the held spec to needs-attention through the SAME lock-release
|
|
400
400
|
// seam the block path uses (the tasking needs-attention surface is the stuck
|
|
401
|
-
// `
|
|
401
|
+
// `spec:<slug>` lock; no folder write). It is NOT a block (the gate output was
|
|
402
402
|
// unreadable) — record it as the transient-infra-class re-run signal so the
|
|
403
403
|
// stuck reason reads correctly; nothing landed.
|
|
404
404
|
const reason = `The task acceptance gate for '${slug}' produced an UNPARSEABLE verdict ` +
|
|
@@ -425,8 +425,8 @@ export async function performTask(options) {
|
|
|
425
425
|
};
|
|
426
426
|
}
|
|
427
427
|
if (core.outcome === 'completed') {
|
|
428
|
-
// The durable `
|
|
429
|
-
// core (the body moved straight from `work/
|
|
428
|
+
// The durable `specs/ready → specs/tasked` `main` move landed through the shared integrate
|
|
429
|
+
// core (the body moved straight from `work/specs/ready/` — no transient `tasking/`
|
|
430
430
|
// marker). The completing commit is owned by the integrate band, NOT
|
|
431
431
|
// `releaseTaskingLock`, so the unified per-item lock that `acquireTaskingLock`
|
|
432
432
|
// took is released HERE (delete the ref). A
|
|
@@ -443,12 +443,12 @@ export async function performTask(options) {
|
|
|
443
443
|
return integrationToTaskResult(core, { slug, emitted, loop: loopTag });
|
|
444
444
|
}
|
|
445
445
|
// HUMAN, no-lock path: the human commits on `main` directly (the runner does
|
|
446
|
-
// not own the human's git). We report the produced tasks; moving the
|
|
447
|
-
// `work/
|
|
446
|
+
// not own the human's git). We report the produced tasks; moving the spec into
|
|
447
|
+
// `work/specs/tasked/` (residence = tasked-ness) and committing is the human's to
|
|
448
448
|
// do, as with the human `complete`.
|
|
449
449
|
const message = `Tasked '${slug}' -> ${emitted.length} backlog task` +
|
|
450
450
|
`${emitted.length === 1 ? '' : 's'} (human path, no lock). Inspect + commit ` +
|
|
451
|
-
`the produced files (and move the
|
|
451
|
+
`the produced files (and move the spec into work/specs/tasked/) yourself.`;
|
|
452
452
|
note(message);
|
|
453
453
|
return {
|
|
454
454
|
exitCode: 0,
|
|
@@ -485,11 +485,11 @@ function releaseFailureToResult(released, slug) {
|
|
|
485
485
|
* (propose pushed the work branch + opened a PR / merge landed on `main`) the
|
|
486
486
|
* tasking is `tasked`. The band's FAILURE outcomes are reported on the tasking
|
|
487
487
|
* contract: a `rebase-conflict` against a concurrently-advanced `main` maps to
|
|
488
|
-
* `stale` (exit 4) — the tasking analogue of "the held
|
|
488
|
+
* `stale` (exit 4) — the tasking analogue of "the held spec moved under us"; a
|
|
489
489
|
* a `gate-failed` cannot occur (the tasking path passes `skipVerify`) but maps to
|
|
490
490
|
* a usage error defensively. A `review-blocked` (the task-SET ACCEPTANCE GATE
|
|
491
491
|
* blocked the set, task `slice-acceptance-gate`) is handled by `performTask`
|
|
492
|
-
* BEFORE this mapper — it routes the held
|
|
492
|
+
* BEFORE this mapper — it routes the held spec to needs-attention via
|
|
493
493
|
* the lock release (the task-path needs-attention route) — so it never reaches
|
|
494
494
|
* here; it is mapped defensively to a usage error if it ever does.
|
|
495
495
|
*/
|
|
@@ -501,7 +501,7 @@ function integrationToTaskResult(core, ctx) {
|
|
|
501
501
|
: 'opened a PR carrying them (main untouched)';
|
|
502
502
|
const message = `Tasked '${slug}' -> ${emitted.length} backlog task` +
|
|
503
503
|
`${emitted.length === 1 ? '' : 's'}; the runner integrated the transition ` +
|
|
504
|
-
`through the shared core (moved work/
|
|
504
|
+
`through the shared core (moved work/specs/ready/ -> work/specs/tasked/, the ` +
|
|
505
505
|
`tasked resting state) and ${landed}.`;
|
|
506
506
|
return { exitCode: 0, outcome: 'tasked', slug, emitted, loop, message };
|
|
507
507
|
}
|
|
@@ -512,7 +512,7 @@ function integrationToTaskResult(core, ctx) {
|
|
|
512
512
|
slug,
|
|
513
513
|
message: core.reason ??
|
|
514
514
|
`Integrating the tasking of '${slug}' conflicted against the latest ` +
|
|
515
|
-
`${slug} main — the tasking is stale; re-task from the current
|
|
515
|
+
`${slug} main — the tasking is stale; re-task from the current spec.`,
|
|
516
516
|
};
|
|
517
517
|
}
|
|
518
518
|
return {
|
|
@@ -526,16 +526,16 @@ function integrationToTaskResult(core, ctx) {
|
|
|
526
526
|
/**
|
|
527
527
|
* ONBOARD the tasking work onto a `work/<slug>` branch cut from the freshly-
|
|
528
528
|
* fetched `<arbiter>/main` (task `slice-output-through-integration`). Called
|
|
529
|
-
* AFTER the tasking lock is held, so the branch's base HOLDS the
|
|
530
|
-
* `work/
|
|
531
|
-
* it `
|
|
529
|
+
* AFTER the tasking lock is held, so the branch's base HOLDS the spec in
|
|
530
|
+
* `work/specs/ready/` (the lock no longer moves the body) — the lifecycle stage then moves
|
|
531
|
+
* it `specs/ready/ -> specs/tasked/` ON THIS BRANCH and the shared integrate core lands it. A
|
|
532
532
|
* pre-existing local `work/<slug>` (a re-run) is force-recreated off fresh main.
|
|
533
533
|
* The agent runs in-place on this branch (branch ≠ worktree).
|
|
534
534
|
*/
|
|
535
535
|
async function switchToWorkBranch(cwd, arbiter, slug, env) {
|
|
536
536
|
// The tasking path is the parent-spec namespace (`do spec:<slug>`): the branch
|
|
537
537
|
// is `work/spec-<slug>`, distinct from a same-slug task-build's `work/task-<slug>`.
|
|
538
|
-
// MIGRATE step (
|
|
538
|
+
// MIGRATE step (spec `prd-to-spec-vocabulary-cutover-and-migration-command`):
|
|
539
539
|
// MINT the work-branch under the `spec` namespace token (`workBranchRef` still
|
|
540
540
|
// parses the legacy `work/prd-<slug>` form, so in-flight branches keep resolving).
|
|
541
541
|
const branch = workBranchRef('spec', slug);
|
|
@@ -545,8 +545,8 @@ async function switchToWorkBranch(cwd, arbiter, slug, env) {
|
|
|
545
545
|
/**
|
|
546
546
|
* The READ-STABILITY content-identity STALE CHECK (the lock's backstop, owned at
|
|
547
547
|
* the integrate seam now that the OUTPUT no longer rides the lock release): true
|
|
548
|
-
* iff the CURRENTLY held `work/
|
|
549
|
-
* from the snapshot the lock TOOK (`lockedBlob`, read from `work/
|
|
548
|
+
* iff the CURRENTLY held `work/specs/ready/<slug>.md` blob on `<arbiter>/main` DIFFERS
|
|
549
|
+
* from the snapshot the lock TOOK (`lockedBlob`, read from `work/specs/ready/<slug>.md` at
|
|
550
550
|
* acquire). ANY change = a concurrent edit under the lock = the tasking is STALE.
|
|
551
551
|
* Stronger than a textual rebase conflict (which a rename+edit merge can apply
|
|
552
552
|
* CLEANLY). When `lockedBlob` is absent (never, in production) it reads as
|
|
@@ -558,7 +558,7 @@ async function heldSpecIsStale(cwd, arbiter, slug, lockedBlob, env) {
|
|
|
558
558
|
}
|
|
559
559
|
await gitHard(['fetch', '--quiet', arbiter], cwd, env);
|
|
560
560
|
const held = await gitSoft(['rev-parse', `${arbiter}/main:${workFolderRel('specs-ready')}/${slug}.md`], cwd, env);
|
|
561
|
-
// The
|
|
561
|
+
// The spec being absent (already tasked/moved) is NOT this check's concern
|
|
562
562
|
// (the integrate's rebase/push surfaces that); only a CHANGED held blob is stale.
|
|
563
563
|
if (held.status !== 0) {
|
|
564
564
|
return false;
|
|
@@ -567,28 +567,28 @@ async function heldSpecIsStale(cwd, arbiter, slug, lockedBlob, env) {
|
|
|
567
567
|
}
|
|
568
568
|
/**
|
|
569
569
|
* STAGE the tasking lifecycle into the index on the `work/<slug>` branch (the
|
|
570
|
-
* {@link performIntegration} lifecycle seam): move the held
|
|
571
|
-
* `git mv work/
|
|
570
|
+
* {@link performIntegration} lifecycle seam): move the held spec
|
|
571
|
+
* `git mv work/specs/ready/<slug>.md -> work/specs/tasked/<slug>.md` (the TASKED resting
|
|
572
572
|
* state — the build-machine `done/` analogue, the SOURCE OF TRUTH for tasked-ness),
|
|
573
573
|
* and write+`git add` the produced `work/tasks/backlog/*.md` files. The band's subsequent
|
|
574
574
|
* `git add -A` + atomic commit folds this AND the agent's uncommitted backlog writes
|
|
575
575
|
* into ONE runner-owned commit (the agent never does git).
|
|
576
576
|
*
|
|
577
|
-
* TASK `prd-sliced-folder-step-a` (
|
|
578
|
-
* destination is `work/
|
|
577
|
+
* TASK `prd-sliced-folder-step-a` (spec `slicing-coherence` US #8): the lifecycle
|
|
578
|
+
* destination is `work/specs/tasked/` (NOT back to `work/specs/ready/`) — `specs/tasked/`
|
|
579
579
|
* residence IS tasked-ness (like `done/` for tasks, with no `done:` marker). The
|
|
580
580
|
* `tasked:` frontmatter marker was removed entirely in `remove-sliced-marker-step-b`
|
|
581
|
-
* (sequenced last): residence in `work/
|
|
581
|
+
* (sequenced last): residence in `work/specs/tasked/` is now the sole signal.
|
|
582
582
|
*/
|
|
583
583
|
async function stageTaskingLifecycle(params) {
|
|
584
584
|
const { cwd, slug, emitTasks, poolBefore, placementDir, placementReason, note, env, } = params;
|
|
585
585
|
const spec = workItemRel('specs-ready', `${slug}.md`);
|
|
586
586
|
const specTasked = workItemRel('specs-tasked', `${slug}.md`);
|
|
587
587
|
// PROPAGATE the origin-trust PROVENANCE (task
|
|
588
|
-
// `untrusted-origin-forces-build-propose`): read the held
|
|
588
|
+
// `untrusted-origin-forces-build-propose`): read the held spec's `origin`/
|
|
589
589
|
// `originTrust` stamp BEFORE the move, so each emitted task can carry it. A
|
|
590
590
|
// task's risk is its BUILD; the stamp must reach the task so the build
|
|
591
|
-
// transition can force `propose` for untrusted-origin work. An UNSTAMPED
|
|
591
|
+
// transition can force `propose` for untrusted-origin work. An UNSTAMPED spec (a
|
|
592
592
|
// human/local-authored one ⇒ trusted) propagates nothing — the normal path is
|
|
593
593
|
// untouched.
|
|
594
594
|
const specAbs = join(cwd, spec);
|
|
@@ -596,18 +596,18 @@ async function stageTaskingLifecycle(params) {
|
|
|
596
596
|
? parseFrontmatter(readFileSync(specAbs, 'utf8'))
|
|
597
597
|
: { origin: undefined, originTrust: undefined };
|
|
598
598
|
if (placementReason === 'untrusted-origin') {
|
|
599
|
-
note(`Untrusted-origin
|
|
599
|
+
note(`Untrusted-origin spec '${slug}': forcing the emitted tasks STAGED ` +
|
|
600
600
|
`(${placementDir}/) regardless of tasksLandIn (a human promotes ` +
|
|
601
601
|
'them into work/tasks/ready/). Pass --tasks-land-in <where> to override.');
|
|
602
602
|
}
|
|
603
|
-
// Move the held
|
|
604
|
-
// source of truth, like done/ for tasks). This is the DURABLE `
|
|
603
|
+
// Move the held spec specs/ready/ -> specs/tasked/ (the TASKED resting state — folder =
|
|
604
|
+
// source of truth, like done/ for tasks). This is the DURABLE `specs/ready → specs/tasked`
|
|
605
605
|
// success move, owned by THIS transition's commit (the lock no longer moved the
|
|
606
|
-
// body, so the source is `work/
|
|
606
|
+
// body, so the source is `work/specs/ready/`, never `work/tasking/`).
|
|
607
607
|
mkdirSync(dirname(join(cwd, specTasked)), { recursive: true });
|
|
608
608
|
await gitHard(['mv', spec, specTasked], cwd, env);
|
|
609
609
|
await gitHard(['add', '--', specTasked], cwd, env);
|
|
610
|
-
// **POOL-PLACEMENT FENCE (
|
|
610
|
+
// **POOL-PLACEMENT FENCE (spec US #4 / governing ADR
|
|
611
611
|
// `placement-is-runner-deterministic-humanonly-is-agent-judgement`).** The
|
|
612
612
|
// agent ALWAYS writes to the STAGING folder (`work/tasks/backlog/`); the POOL
|
|
613
613
|
// (`work/tasks/ready/`) is the agent-eligible pool the runner owns the promotion
|
|
@@ -644,7 +644,7 @@ async function stageTaskingLifecycle(params) {
|
|
|
644
644
|
* Revert any change/addition the agent made to the POOL `work/tasks/ready/` during a
|
|
645
645
|
* tasking run. The agent's STAGING folder is `work/tasks/backlog/`; a write to the
|
|
646
646
|
* pool is an attempt to self-place into the agent-eligible pool the runner owns
|
|
647
|
-
* the promotion into (
|
|
647
|
+
* the promotion into (spec US #4 / governing ADR). Compared to the `poolBefore`
|
|
648
648
|
* snapshot (the branch-base state of `work/tasks/ready/`, taken BEFORE the agent
|
|
649
649
|
* ran), any new file is removed from the worktree and any changed file is
|
|
650
650
|
* checked back out to HEAD — so the subsequent `git add -A` cannot land it. The
|
|
@@ -692,7 +692,7 @@ async function gitHard(args, cwd, env) {
|
|
|
692
692
|
/**
|
|
693
693
|
* Build the needs-attention REASON for a task-SET ACCEPTANCE GATE block (task
|
|
694
694
|
* `slice-acceptance-gate`): the fresh-context review of the produced set returned
|
|
695
|
-
* `block`, so the
|
|
695
|
+
* `block`, so the spec is routed to `work/needs-attention/` with the review's
|
|
696
696
|
* blocking findings as the body prose and NO tasks landed. Takes the core's
|
|
697
697
|
* structured `reviewBlockReason` (the gate's blocking findings); falls back to a
|
|
698
698
|
* generic line when absent. DISTINCT from the improver loop's
|
|
@@ -700,18 +700,18 @@ async function gitHard(args, cwd, env) {
|
|
|
700
700
|
*/
|
|
701
701
|
function taskGateBlockedReason(slug, findingsReason) {
|
|
702
702
|
const head = `The task acceptance gate (fresh-context review of the produced SET) blocked ` +
|
|
703
|
-
`'${slug}'. The
|
|
703
|
+
`'${slug}'. The spec is routed to needs-attention with no tasks landed; a human ` +
|
|
704
704
|
`must resolve the blocking findings, then re-task.`;
|
|
705
705
|
return findingsReason ? `${head}\n\n${findingsReason}` : head;
|
|
706
706
|
}
|
|
707
707
|
/**
|
|
708
708
|
* Build the needs-attention REASON for a decomposition-unclear loop verdict (the
|
|
709
|
-
*
|
|
710
|
-
* tasks). Prose only — recorded as the
|
|
709
|
+
* spec is routed to `work/needs-attention/` with these open questions, no guessed
|
|
710
|
+
* tasks). Prose only — recorded as the spec's needs-attention body block.
|
|
711
711
|
*/
|
|
712
712
|
function decompositionUnclearReason(slug, questions) {
|
|
713
713
|
const head = `The tasker review→edit loop could not converge on a sound decomposition of ` +
|
|
714
|
-
`'${slug}' (--tasker-loop-max exhausted with unresolved blockers). The
|
|
714
|
+
`'${slug}' (--tasker-loop-max exhausted with unresolved blockers). The spec is routed ` +
|
|
715
715
|
`to needs-attention with no guessed tasks; a human must resolve:`;
|
|
716
716
|
const body = questions.length > 0
|
|
717
717
|
? questions.map((q) => `- ${q}`).join('\n')
|
|
@@ -759,8 +759,8 @@ function appendQuestionsBlock(content, questions) {
|
|
|
759
759
|
/**
|
|
760
760
|
* Resolve the AGENT tasking gate for `slug`: the pure predicate
|
|
761
761
|
* (`needsAnswers !== true && humanOnly !== true && autoTask`) plus the
|
|
762
|
-
* cross-
|
|
763
|
-
* the
|
|
762
|
+
* cross-spec `taskedAfter` ordering, resolved against `work/specs/tasked/` residence of
|
|
763
|
+
* the specs present in the checkout.
|
|
764
764
|
*/
|
|
765
765
|
function resolveAgentGate(cwd, slug, specFm, autoTask, explicit) {
|
|
766
766
|
return resolveTaskingEligibility({
|
|
@@ -772,17 +772,17 @@ function resolveAgentGate(cwd, slug, specFm, autoTask, explicit) {
|
|
|
772
772
|
explicit,
|
|
773
773
|
});
|
|
774
774
|
}
|
|
775
|
-
/** Build an HONEST gate-refusal message naming WHY the agent skipped the
|
|
775
|
+
/** Build an HONEST gate-refusal message naming WHY the agent skipped the spec. */
|
|
776
776
|
function gateRefusalReason(slug, specFm, eligibility, options) {
|
|
777
777
|
const reasons = [];
|
|
778
778
|
if (specFm.humanOnly === true) {
|
|
779
|
-
reasons.push('the
|
|
779
|
+
reasons.push('the spec is humanOnly (a human must drive its tasking)');
|
|
780
780
|
}
|
|
781
781
|
if (specFm.needsAnswers === true) {
|
|
782
|
-
reasons.push('the
|
|
782
|
+
reasons.push('the spec has needsAnswers (open questions block auto-tasking)');
|
|
783
783
|
}
|
|
784
784
|
// The autoTask POLICY only refuses on the NON-explicit (auto-pick pool) path:
|
|
785
|
-
// an explicitly-named `do
|
|
785
|
+
// an explicitly-named `do spec:<slug>` is authorized by the naming itself (the
|
|
786
786
|
// build path's autoBuild precedent), so the policy is never the reason there.
|
|
787
787
|
if (options.explicit !== true &&
|
|
788
788
|
specFm.humanOnly !== true &&
|
|
@@ -791,18 +791,18 @@ function gateRefusalReason(slug, specFm, eligibility, options) {
|
|
|
791
791
|
reasons.push("the repo's autoTask policy is off");
|
|
792
792
|
}
|
|
793
793
|
if (!eligibility.taskedAfter.satisfied) {
|
|
794
|
-
reasons.push(`taskedAfter
|
|
794
|
+
reasons.push(`taskedAfter spec(s) not yet tasked: ${eligibility.taskedAfter.missing.join(', ')}`);
|
|
795
795
|
}
|
|
796
796
|
const why = reasons.length > 0 ? reasons.join('; ') : 'the tasking gate refused';
|
|
797
797
|
return `Skipped tasking '${slug}': ${why}.`;
|
|
798
798
|
}
|
|
799
799
|
/**
|
|
800
|
-
* Read the set of slugs whose
|
|
801
|
-
* in `work/
|
|
802
|
-
* /
|
|
800
|
+
* Read the set of slugs whose specs are already TASKED in this checkout — RESIDENCE
|
|
801
|
+
* in `work/specs/tasked/` (the tasked resting state, task `prd-sliced-folder-step-a`
|
|
802
|
+
* / spec `slicing-coherence` US #9), the build-machine `done/` analogue. The FOLDER
|
|
803
803
|
* is the source of truth; the `tasked:` frontmatter marker was removed entirely in
|
|
804
804
|
* `remove-sliced-marker-step-b` and is NOT consulted. So `taskedAfter` resolves
|
|
805
|
-
* against `
|
|
805
|
+
* against `specs/tasked/` residence
|
|
806
806
|
* (mirroring `blockedBy` -> `done/`). A missing folder reads as empty. The slug is
|
|
807
807
|
* read from each file's frontmatter `slug:`, falling back to the filename — the same
|
|
808
808
|
* shape the task readers use.
|
|
@@ -820,7 +820,7 @@ function readTaskedSlugs(cwd) {
|
|
|
820
820
|
/**
|
|
821
821
|
* Build the tasking PROMPT: instruct a fresh-context agent to apply the
|
|
822
822
|
* **tasking discipline** (`work/protocol/TASKING-PROTOCOL.md`) to the held
|
|
823
|
-
*
|
|
823
|
+
* spec at `work/specs/ready/<slug>.md` and to EMIT tracer-bullet vertical
|
|
824
824
|
* tasks under `work/tasks/backlog/`. The discipline body (the tracer-bullet
|
|
825
825
|
* rules, the two-axis gate guidance, the confidence check, file-orthogonality,
|
|
826
826
|
* the emitted task shape) lives in `TASKING-PROTOCOL.md` — NOT inlined here
|
|
@@ -829,24 +829,26 @@ function readTaskedSlugs(cwd) {
|
|
|
829
829
|
* task-template.md`); the doc DESCRIBES it (D2).
|
|
830
830
|
*
|
|
831
831
|
* This builder owns ONLY the PER-BUILDER framing: who you are (a fresh-context
|
|
832
|
-
* tasker for ONE
|
|
832
|
+
* tasker for ONE spec), where the held spec is, where the emitted task files
|
|
833
833
|
* MUST land (the staging folder, never the pool), and the runner-owns-git
|
|
834
834
|
* boundary on the agent path. The shared discipline body is NOT duplicated
|
|
835
835
|
* here.
|
|
836
836
|
*/
|
|
837
837
|
function buildTaskingSpec(slug, _spec) {
|
|
838
|
+
const specReady = workFolderRel('specs-ready');
|
|
839
|
+
const specTasked = workFolderRel('specs-tasked');
|
|
838
840
|
return [
|
|
839
|
-
`You are a FRESH-CONTEXT tasker for the
|
|
841
|
+
`You are a FRESH-CONTEXT tasker for the spec \`${specReady}/${slug}.md\`.`,
|
|
840
842
|
`Apply the tasking discipline defined in \`work/protocol/TASKING-PROTOCOL.md\``,
|
|
841
843
|
`(the in-band, protocol-native tasking protocol every set-up repo carries; the`,
|
|
842
|
-
`human-facing pointer is \`skills/to-task/SKILL.md\`) to this ONE
|
|
844
|
+
`human-facing pointer is \`skills/to-task/SKILL.md\`) to this ONE spec:`,
|
|
843
845
|
`decompose it into independently-grabbable, tracer-bullet vertical tasks.`,
|
|
844
|
-
`Read the
|
|
846
|
+
`Read the spec fully first.`,
|
|
845
847
|
``,
|
|
846
848
|
`The discipline rules — the tracer-bullet test, the two-axis gate guidance`,
|
|
847
849
|
`(\`humanOnly\` is NARROW; \`needsAnswers\` flags genuine uncertainty), the`,
|
|
848
850
|
`confidence check that REPLACES the human-quiz step when no human is present,`,
|
|
849
|
-
`the file-orthogonality preference, the
|
|
851
|
+
`the file-orthogonality preference, the spec-vs-task gate disjointness, and`,
|
|
850
852
|
`the emitted task shape — ALL live in that doc. Read them there.`,
|
|
851
853
|
``,
|
|
852
854
|
`No human is present, so apply the CONFIDENCE CHECK (\`TASKING-PROTOCOL.md\``,
|
|
@@ -854,7 +856,7 @@ function buildTaskingSpec(slug, _spec) {
|
|
|
854
856
|
`granularity, dependency order, a gate, or a seam is genuinely unresolved, set`,
|
|
855
857
|
`\`needsAnswers: true\` on the specific uncertain task (questions in its body)`,
|
|
856
858
|
`rather than guessing — or, if the whole decomposition is unclear, stop and`,
|
|
857
|
-
`route the
|
|
859
|
+
`route the spec to needs-attention with the questions.`,
|
|
858
860
|
``,
|
|
859
861
|
`WRITE EVERY emitted task file under \`${STAGED_TASKS_DIR}/\` (the STAGING folder)`,
|
|
860
862
|
`— NEVER \`work/tasks/ready/\`. \`work/tasks/ready/\` is the agent-eligible POOL and`,
|
|
@@ -862,12 +864,12 @@ function buildTaskingSpec(slug, _spec) {
|
|
|
862
864
|
`folder is \`work/tasks/backlog/\`. A write outside the staging folder is dropped`,
|
|
863
865
|
`by the runner-deterministic placement resolver.`,
|
|
864
866
|
``,
|
|
865
|
-
`Set each task's \`
|
|
866
|
-
`link back to the
|
|
867
|
+
`Set each task's \`spec:\` field to the source spec slug (\`${slug}\`) so the`,
|
|
868
|
+
`link back to the spec survives.`,
|
|
867
869
|
``,
|
|
868
870
|
`Do NOT perform any git operations — do not stage, commit, push, or move any`,
|
|
869
871
|
`files. The RUNNER owns every git-state transition (it commits the produced`,
|
|
870
|
-
`tasks, releases the tasking lock, and moves the
|
|
872
|
+
`tasks, releases the tasking lock, and moves the spec into \`${specTasked}/\`).`,
|
|
871
873
|
].join('\n');
|
|
872
874
|
}
|
|
873
875
|
/** Run the task agent. Prefers the injected runner; else the harness seam. */
|
package/dist/tasking.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tasking.js","sourceRoot":"","sources":["../src/tasking.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,MAAM,EACN,aAAa,GACb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAC,MAAM,WAAW,CAAC;AAClD,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAC,QAAQ,EAAiB,MAAM,UAAU,CAAC;AAClD,OAAO,EACN,aAAa,EACb,cAAc,EACd,YAAY,EACZ,WAAW,EACX,cAAc,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,kBAAkB,GAElB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACN,yBAAyB,GAEzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACN,kBAAkB,EAClB,kBAAkB,GAKlB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAC,WAAW,EAAe,MAAM,cAAc,CAAC;AACvD,OAAO,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAE,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAC,qBAAqB,EAAE,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAClD,OAAO,EACN,iBAAiB,GAGjB,MAAM,yBAAyB,CAAC;AAyGjC,MAAM,iBAAiB,GAAoB;IAC1C,OAAO,EAAE,kBAAkB;IAC3B,OAAO,EAAE,kBAAkB;CAC3B,CAAC;AAmKF,MAAM,eAAe,GAAG,QAAQ,CAAC;AAEjC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;AAE/D;;;;;;;;GAQG;AACH,MAAM,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;AAEpD,iEAAiE;AACjE,MAAM,oBAAoB,GAAG;IAC5B,OAAO,EAAE,gBAAgB;IACzB,IAAI,EAAE,cAAc;CACX,CAAC;AAEX;;;;;;;GAOG;AACH,SAAS,aAAa,CACrB,OAA4C;IAE5C,IAAI,OAAO,KAAK,aAAa;QAAE,OAAO,SAAS,CAAC;IAChD,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,MAAM,CAAC;IACvC,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,sFAAsF;AACtF,SAAS,cAAc,CAAC,IAAY;IACnC,OAAO,GAAG,gBAAgB,IAAI,IAAI,EAAE,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAChC,OAA2B;IAE3B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,eAAe,CAAC;IACnD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IACxB,8EAA8E;IAC9E,6EAA6E;IAC7E,uEAAuE;IACvE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC;IACrC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,iBAAiB,CAAC;IAE/C,kFAAkF;IAClF,uDAAuD;IACvD,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,WAAW,IAAI,cAAc,aAAa,CAAC,aAAa,CAAC,IAAI,IAAI,MAAM,CAAC;QACxF,IAAI,CAAC,OAAO,CAAC,CAAC;QACd,OAAO,EAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAC,CAAC;IAC7D,CAAC;IACD,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAE7C,6EAA6E;IAC7E,uDAAuD;IACvD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACtB,MAAM,WAAW,GAAG,gBAAgB,CACnC,GAAG,EACH,IAAI,EACJ,MAAM,EACN,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,QAAQ,IAAI,KAAK,CACzB,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YACtE,IAAI,CAAC,OAAO,CAAC,CAAC;YACd,OAAO,EAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAC,CAAC;QAC9D,CAAC;IACF,CAAC;IAED,8EAA8E;IAC9E,sEAAsE;IACtE,IAAI,UAA8B,CAAC;IACnC,MAAM,OAAO,GAAG,IAAI,KAAK,OAAO,CAAC;IACjC,IAAI,OAAO,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAC,CAAC,CAAC;QACrE,IAAI,QAAQ,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YACjC,OAAO;gBACN,QAAQ,EAAE,CAAC;gBACX,OAAO,EAAE,WAAW;gBACpB,IAAI;gBACJ,OAAO,EAAE,QAAQ,CAAC,OAAO;aACzB,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YACtC,OAAO;gBACN,QAAQ,EAAE,CAAC;gBACX,OAAO,EAAE,WAAW;gBACpB,IAAI;gBACJ,OAAO,EAAE,QAAQ,CAAC,OAAO;aACzB,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;gBACN,QAAQ,EAAE,CAAC;gBACX,OAAO,EAAE,aAAa;gBACtB,IAAI;gBACJ,OAAO,EAAE,QAAQ,CAAC,OAAO;aACzB,CAAC;QACH,CAAC;QACD,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;IAClC,CAAC;IAED,gFAAgF;IAChF,kFAAkF;IAClF,yFAAyF;IACzF,gFAAgF;IAChF,0GAA0G;IAC1G,gFAAgF;IAChF,kFAAkF;IAClF,mFAAmF;IACnF,kFAAkF;IAClF,IAAI,OAAO,EAAE,CAAC;QACb,MAAM,kBAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IACnD,CAAC;IAED,sDAAsD;IACtD,sFAAsF;IACtF,+EAA+E;IAC/E,0EAA0E;IAC1E,0EAA0E;IAC1E,0DAA0D;IAC1D,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACxC,iFAAiF;IACjF,gFAAgF;IAChF,gEAAgE;IAChE,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACrC,0EAA0E;IAC1E,uDAAuD;IACvD,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,KAAqC,CAAC;IAC1C,IAAI,CAAC;QACJ,KAAK,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,KAAK,GAAG;YACP,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACxD,CAAC;IACH,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,6BAA6B,IAAI,IAAI,CAAC;QACrE,MAAM,OAAO,GAAG,yBAAyB,IAAI,MAAM,MAAM,IAAI,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,CAAC;QACd,0EAA0E;QAC1E,yEAAyE;QACzE,OAAO,EAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAC,CAAC;IAC9D,CAAC;IAED,iFAAiF;IACjF,iFAAiF;IACjF,kFAAkF;IAClF,+EAA+E;IAC/E,kFAAkF;IAClF,gFAAgF;IAChF,mFAAmF;IACnF,uEAAuE;IACvE,IAAI,eAAoD,CAAC;IACzD,IAAI,OAAO,CAAC,UAAU,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5C,eAAe,GAAG,MAAM,iBAAiB,CAAC;YACzC,IAAI;YACJ,GAAG;YACH,IAAI,EAAE,OAAO,CAAC,UAAU;YACxB,yEAAyE;YACzE,kEAAkE;YAClE,8DAA8D;YAC9D,MAAM;YACN,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,CAAC;YACzC,UAAU,EAAE,OAAO,CAAC,gBAAgB;YACpC,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,yEAAyE;YACzE,GAAG,EAAE,QAAQ;YACb,IAAI;SACJ,CAAC,CAAC;QACH,uEAAuE;QACvE,gFAAgF;QAChF,kFAAkF;QAClF,sFAAsF;QACtF,IAAI,eAAe,CAAC,OAAO,KAAK,uBAAuB,EAAE,CAAC;YACzD,MAAM,MAAM,GAAG,0BAA0B,CACxC,IAAI,EACJ,eAAe,CAAC,aAAa,CAC7B,CAAC;YACF,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;oBACjC,IAAI;oBACJ,GAAG;oBACH,OAAO;oBACP,UAAU;oBACV,qBAAqB,EAAE,EAAC,MAAM,EAAC;oBAC/B,GAAG;oBACH,IAAI;iBACJ,CAAC,CAAC;gBACH,IAAI,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACnC,OAAO,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC7C,CAAC;YACF,CAAC;YACD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAC9B,OAAO;gBACN,QAAQ,EAAE,CAAC;gBACX,OAAO,EAAE,iBAAiB;gBAC1B,IAAI;gBACJ,OAAO,EAAE,eAAe,CAAC,OAAO;aAChC,CAAC;QACH,CAAC;QACD,2EAA2E;QAC3E,yEAAyE;QACzE,gEAAgE;QAChE,IAAI,eAAe,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;YACnD,KAAK,MAAM,SAAS,IAAI,eAAe,CAAC,cAAc,EAAE,CAAC;gBACxD,oBAAoB,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACtE,CAAC;QACF,CAAC;IACF,CAAC;IAED,6EAA6E;IAC7E,qFAAqF;IACrF,gFAAgF;IAChF,iFAAiF;IACjF,8EAA8E;IAC9E,mCAAmC;IACnC,MAAM,aAAa,GAAG,uBAAuB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAC1D,uCAAuC;IACvC,+EAA+E;IAC/E,0EAA0E;IAC1E,6EAA6E;IAC7E,4EAA4E;IAC5E,0EAA0E;IAC1E,uEAAuE;IACvE,qEAAqE;IACrE,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;QAC1C,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACpD,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,iBAAiB,EAAE,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC;KACrD,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,eAAe,CACnC,oBAAoB,EACpB,iBAAiB,CAAC,MAAM,CACxB,CAAC;IACF,6EAA6E;IAC7E,+EAA+E;IAC/E,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAChC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,YAAY,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAC3C,CAAC;IACF,MAAM,OAAO,GACZ,eAAe,EAAE,OAAO,KAAK,WAAW;QACvC,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,eAAe,EAAE,OAAO,KAAK,iBAAiB;YAC/C,CAAC,CAAC,iBAAiB;YACnB,CAAC,CAAC,SAAS,CAAC;IAEf,IAAI,OAAO,EAAE,CAAC;QACb,+EAA+E;QAC/E,4EAA4E;QAC5E,8EAA8E;QAC9E,+EAA+E;QAC/E,qDAAqD;QACrD,oFAAoF;QACpF,qFAAqF;QACrF,6EAA6E;QAC7E,oEAAoE;QACpE,+EAA+E;QAC/E,2EAA2E;QAC3E,yBAAyB;QACzB,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;QACzE,IAAI,KAAK,EAAE,CAAC;YACX,MAAM,OAAO,GAAG,WAAW,CAAC,aAAa,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;YACzD,MAAM,OAAO,GACZ,yBAAyB,IAAI,0BAA0B,OAAO,GAAG;gBACjE,cAAc,OAAO,yDAAyD;gBAC9E,sEAAsE;gBACtE,iDAAiD,CAAC;YACnD,IAAI,CAAC,OAAO,CAAC,CAAC;YACd,OAAO,EAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,CAAC;QACvD,CAAC;QAED,gEAAgE;QAChE,4EAA4E;QAC5E,8FAA8F;QAC9F,+EAA+E;QAC/E,gFAAgF;QAChF,6EAA6E;QAC7E,iFAAiF;QACjF,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC;YACrC,GAAG;YACH,OAAO;YACP,IAAI;YACJ,4EAA4E;YAC5E,yEAAyE;YACzE,MAAM,EAAE,aAAa;YACrB,UAAU,EAAE,KAAK;YACjB,6EAA6E;YAC7E,wEAAwE;YACxE,UAAU,EAAE,IAAI;YAChB,mEAAmE;YACnE,kEAAkE;YAClE,sEAAsE;YACtE,sEAAsE;YACtE,yEAAyE;YACzE,4EAA4E;YAC5E,qEAAqE;YACrE,2DAA2D;YAC3D,6EAA6E;YAC7E,6DAA6D;YAC7D,4EAA4E;YAC5E,mDAAmD;YACnD,0EAA0E;YAC1E,2EAA2E;YAC3E,wEAAwE;YACxE,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,WAAW,EAAE,OAAO,CAAC,qBAAqB;YAC1C,eAAe,EAAE,CAAC;YAClB,wEAAwE;YACxE,2EAA2E;YAC3E,6EAA6E;YAC7E,4EAA4E;YAC5E,yEAAyE;YACzE,eAAe;YACf,IAAI,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;YACtC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,IAAI,EAAE,SAAS;YACf,SAAS,EAAE;gBACV,0EAA0E;gBAC1E,SAAS,EAAE,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC;gBACjD,SAAS,EAAE,QAAQ;gBACnB,KAAK,EAAE,GAAG,EAAE,CACX,qBAAqB,CAAC;oBACrB,GAAG;oBACH,IAAI;oBACJ,SAAS;oBACT,UAAU;oBACV,YAAY;oBACZ,eAAe,EAAE,iBAAiB,CAAC,MAAM;oBACzC,IAAI;oBACJ,GAAG;iBACH,CAAC;aACH;YACD,GAAG;YACH,mEAAmE;YACnE,4DAA4D;YAC5D,QAAQ;YACR,IAAI;SACJ,CAAC,CAAC;QAEH,2EAA2E;QAC3E,6EAA6E;QAC7E,wEAAwE;QACxE,2EAA2E;QAC3E,+EAA+E;QAC/E,6EAA6E;QAC7E,+EAA+E;QAC/E,gFAAgF;QAChF,kEAAkE;QAClE,IAAI,IAAI,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;gBACjC,IAAI;gBACJ,GAAG;gBACH,OAAO;gBACP,UAAU;gBACV,qBAAqB,EAAE,EAAC,MAAM,EAAC;gBAC/B,GAAG;gBACH,IAAI;aACJ,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBACnC,OAAO,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,CAAC;YACb,OAAO;gBACN,QAAQ,EAAE,CAAC;gBACX,OAAO,EAAE,iBAAiB;gBAC1B,IAAI;gBACJ,OAAO,EACN,0DAA0D,IAAI,KAAK;oBACnE,oEAAoE;aACrE,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,oBAAoB,EAAE,CAAC;YAC3C,8EAA8E;YAC9E,6EAA6E;YAC7E,6EAA6E;YAC7E,8EAA8E;YAC9E,4EAA4E;YAC5E,gDAAgD;YAChD,MAAM,MAAM,GACX,iCAAiC,IAAI,oCAAoC;gBACzE,yBAAyB,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;gBACjC,IAAI;gBACJ,GAAG;gBACH,OAAO;gBACP,UAAU;gBACV,qBAAqB,EAAE,EAAC,MAAM,EAAC;gBAC/B,GAAG;gBACH,IAAI;aACJ,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBACnC,OAAO,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,CAAC;YACb,OAAO;gBACN,QAAQ,EAAE,CAAC;gBACX,OAAO,EAAE,iBAAiB;gBAC1B,IAAI;gBACJ,OAAO,EACN,iEAAiE,IAAI,KAAK;oBAC1E,4EAA4E;aAC7E,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YAClC,iFAAiF;YACjF,kFAAkF;YAClF,qEAAqE;YACrE,+EAA+E;YAC/E,4CAA4C;YAC5C,+EAA+E;YAC/E,4EAA4E;YAC5E,0EAA0E;YAC1E,uDAAuD;YACvD,uEAAuE;YACvE,+DAA+D;YAC/D,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,eAAe,CAAC,EAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAC,CAAC,CAAC;YAClE,CAAC;QACF,CAAC;QACD,OAAO,uBAAuB,CAAC,IAAI,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,CAAC,CAAC;IACtE,CAAC;IAED,6EAA6E;IAC7E,8EAA8E;IAC9E,iFAAiF;IACjF,oCAAoC;IACpC,MAAM,OAAO,GACZ,WAAW,IAAI,QAAQ,OAAO,CAAC,MAAM,eAAe;QACpD,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,2CAA2C;QAC7E,wEAAwE,CAAC;IAC1E,IAAI,CAAC,OAAO,CAAC,CAAC;IACd,OAAO;QACN,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,QAAQ;QACjB,IAAI;QACJ,OAAO;QACP,IAAI,EAAE,OAAO;QACb,OAAO;KACP,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAC9B,QAAkC,EAClC,IAAY;IAEZ,IAAI,QAAQ,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAClC,OAAO,EAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAC,CAAC;IACzE,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,KAAK,MAAM,IAAI,QAAQ,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACrE,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,OAAO;YACN,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,WAAW;YACpB,IAAI;YACJ,OAAO,EAAE,QAAQ,CAAC,OAAO;SACzB,CAAC;IACH,CAAC;IACD,OAAO,EAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,uBAAuB,CAC/B,IAA2B,EAC3B,GAIC;IAED,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC,GAAG,GAAG,CAAC;IAClC,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QAClC,MAAM,MAAM,GACX,IAAI,CAAC,WAAW,EAAE,IAAI,KAAK,OAAO;YACjC,CAAC,CAAC,iCAAiC;YACnC,CAAC,CAAC,4CAA4C,CAAC;QACjD,MAAM,OAAO,GACZ,WAAW,IAAI,QAAQ,OAAO,CAAC,MAAM,eAAe;YACpD,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,yCAAyC;YAC3E,4EAA4E;YAC5E,6BAA6B,MAAM,GAAG,CAAC;QACxC,OAAO,EAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC,CAAC;IACvE,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;QACxC,OAAO;YACN,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,OAAO;YAChB,IAAI;YACJ,OAAO,EACN,IAAI,CAAC,MAAM;gBACX,+BAA+B,IAAI,kCAAkC;oBACpE,GAAG,IAAI,6DAA6D;SACtE,CAAC;IACH,CAAC;IACD,OAAO;QACN,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,aAAa;QACtB,IAAI;QACJ,OAAO,EACN,IAAI,CAAC,MAAM;YACX,+BAA+B,IAAI,wBAAwB;KAC5D,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,kBAAkB,CAChC,GAAW,EACX,OAAe,EACf,IAAY,EACZ,GAAkC;IAElC,+EAA+E;IAC/E,oFAAoF;IACpF,6EAA6E;IAC7E,+EAA+E;IAC/E,mFAAmF;IACnF,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,OAAO,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACvD,MAAM,OAAO,CACZ,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,OAAO,CAAC,EACtD,GAAG,EACH,GAAG,CACH,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,eAAe,CAC7B,GAAW,EACX,OAAe,EACf,IAAY,EACZ,UAA8B,EAC9B,GAAkC;IAElC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,OAAO,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,OAAO,CACzB,CAAC,WAAW,EAAE,GAAG,OAAO,SAAS,aAAa,CAAC,aAAa,CAAC,IAAI,IAAI,KAAK,CAAC,EAC3E,GAAG,EACH,GAAG,CACH,CAAC;IACF,0EAA0E;IAC1E,kFAAkF;IAClF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,UAAU,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,qBAAqB,CAAC,MAuBpC;IACA,MAAM,EACL,GAAG,EACH,IAAI,EACJ,SAAS,EACT,UAAU,EACV,YAAY,EACZ,eAAe,EACf,IAAI,EACJ,GAAG,GACH,GAAG,MAAM,CAAC;IACX,MAAM,IAAI,GAAG,WAAW,CAAC,aAAa,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,WAAW,CAAC,cAAc,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;IAC7D,8CAA8C;IAC9C,0EAA0E;IAC1E,4EAA4E;IAC5E,uEAAuE;IACvE,gFAAgF;IAChF,8EAA8E;IAC9E,aAAa;IACb,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAChC,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC;QACzC,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC,CAAC,EAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAC,CAAC;IAC/C,IAAI,eAAe,KAAK,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CACH,yBAAyB,IAAI,sCAAsC;YAClE,IAAI,YAAY,iDAAiD;YACjE,yEAAyE,CAC1E,CAAC;IACH,CAAC;IACD,6EAA6E;IAC7E,iFAAiF;IACjF,gFAAgF;IAChF,qEAAqE;IACrE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;IAC7D,MAAM,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAClD,MAAM,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACnD,oDAAoD;IACpD,2EAA2E;IAC3E,8EAA8E;IAC9E,iFAAiF;IACjF,8EAA8E;IAC9E,4EAA4E;IAC5E,8EAA8E;IAC9E,2EAA2E;IAC3E,+EAA+E;IAC/E,MAAM,cAAc,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;IAC3C,wEAAwE;IACxE,8EAA8E;IAC9E,4EAA4E;IAC5E,+EAA+E;IAC/E,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAC9E,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG,GAAG,YAAY,IAAI,QAAQ,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACnC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;QAC/C,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;QACjE,MAAM,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAChD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACnC,MAAM,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;YAC9B,iEAAiE;YACjE,kCAAkC;YAClC,MAAM,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,cAAc,CAC5B,GAAW,EACX,UAA+B,EAC/B,GAAkC;IAElC,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAC/C,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACJ,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;IACR,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,SAAS;QACV,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC5B,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC1C,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC;gBACtC,SAAS;YACV,CAAC;YACD,oEAAoE;YACpE,MAAM,OAAO,CACZ,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,EAC5D,GAAG,EACH,GAAG,CACH,CAAC;YACF,SAAS;QACV,CAAC;QACD,wDAAwD;QACxD,MAAM,CAAC,GAAG,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;IAC5B,CAAC;AACF,CAAC;AAED,sEAAsE;AACtE,SAAS,OAAO,CACf,IAAc,EACd,GAAW,EACX,GAAkC;IAElC,OAAO,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAC,GAAG,EAAC,CAAC,CAAC;AAC1C,CAAC;AAED,2EAA2E;AAC3E,KAAK,UAAU,OAAO,CACrB,IAAc,EACd,GAAW,EACX,GAAkC;IAElC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAC,GAAG,EAAC,CAAC,CAAC;IACvD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACd,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAC/E,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAC7B,IAAY,EACZ,cAAkC;IAElC,MAAM,IAAI,GACT,8EAA8E;QAC9E,IAAI,IAAI,wEAAwE;QAChF,mDAAmD,CAAC;IACrD,OAAO,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/D,CAAC;AAED;;;;GAIG;AACH,SAAS,0BAA0B,CAAC,IAAY,EAAE,SAAmB;IACpE,MAAM,IAAI,GACT,6EAA6E;QAC7E,IAAI,IAAI,8EAA8E;QACtF,iEAAiE,CAAC;IACnE,MAAM,IAAI,GACT,SAAS,CAAC,MAAM,GAAG,CAAC;QACnB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3C,CAAC,CAAC,0EAA0E,CAAC;IAC/E,OAAO,GAAG,IAAI,KAAK,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,oBAAoB,CAC5B,GAAW,EACX,OAAe,EACf,SAAmB,EACnB,IAA+B;IAE/B,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/C,IACC,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,gBAAgB,GAAG,CAAC;QAC9C,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EACxB,CAAC;QACF,IAAI,CACH,uCAAuC,gBAAgB,MAAM,OAAO,IAAI,CACxE,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAClC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,0DAA0D,OAAO,GAAG,CAAC,CAAC;QAC3E,OAAO;IACR,CAAC;IACD,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpD,aAAa,CAAC,GAAG,EAAE,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,iFAAiF;AACjF,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAEnD;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,OAAe,EAAE,SAAmB;IACjE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,OAAO,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,sBAAsB,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrE,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CACxB,GAAW,EACX,IAAY,EACZ,MAA4E,EAC5E,QAA6B,EAC7B,QAAiB;IAEjB,OAAO,yBAAyB,CAAC;QAChC,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,WAAW,EAAE,eAAe,CAAC,GAAG,CAAC;QACjC,QAAQ,EAAE,QAAQ,IAAI,KAAK;QAC3B,QAAQ;KACR,CAAC,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,SAAS,iBAAiB,CACzB,IAAY,EACZ,MAAqD,EACrD,WAAqC,EACrC,OAA2B;IAE3B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QAClC,OAAO,CAAC,IAAI,CACX,8DAA8D,CAC9D,CAAC;IACH,CAAC;IACD,8EAA8E;IAC9E,8EAA8E;IAC9E,8EAA8E;IAC9E,IACC,OAAO,CAAC,QAAQ,KAAK,IAAI;QACzB,MAAM,CAAC,SAAS,KAAK,IAAI;QACzB,MAAM,CAAC,YAAY,KAAK,IAAI;QAC5B,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,KAAK,IAAI,EACnC,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;QACxC,OAAO,CAAC,IAAI,CACX,sCAAsC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClF,CAAC;IACH,CAAC;IACD,MAAM,GAAG,GACR,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC;IACtE,OAAO,oBAAoB,IAAI,MAAM,GAAG,GAAG,CAAC;AAC7C,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,eAAe,CAAC,GAAW;IACnC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAChD,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,gBAAgB,CAAC,IAAY,EAAE,KAAyB;IAChE,OAAO;QACN,gEAAgE,IAAI,QAAQ;QAC5E,+EAA+E;QAC/E,+EAA+E;QAC/E,uEAAuE;QACvE,0EAA0E;QAC1E,2BAA2B;QAC3B,EAAE;QACF,2EAA2E;QAC3E,4EAA4E;QAC5E,8EAA8E;QAC9E,2EAA2E;QAC3E,iEAAiE;QACjE,EAAE;QACF,6EAA6E;QAC7E,uEAAuE;QACvE,+EAA+E;QAC/E,+EAA+E;QAC/E,4EAA4E;QAC5E,sDAAsD;QACtD,EAAE;QACF,yCAAyC,gBAAgB,0BAA0B;QACnF,qFAAqF;QACrF,+EAA+E;QAC/E,kFAAkF;QAClF,iDAAiD;QACjD,EAAE;QACF,4DAA4D,IAAI,YAAY;QAC5E,gCAAgC;QAChC,EAAE;QACF,6EAA6E;QAC7E,4EAA4E;QAC5E,kFAAkF;KAClF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,KAAK,UAAU,YAAY,CAC1B,OAA2B,EAC3B,GAAW,EACX,MAAc,EACd,IAAY;IAEZ,yEAAyE;IACzE,gFAAgF;IAChF,kCAAkC;IAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC;IACjD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,OAAO,CAAC,KAAK,CAAC,EAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAC,CAAC,CAAC;IAC1D,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,WAAW,EAAE,CAAC;IACrD,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC;QAC9C,OAAO;QACP,GAAG,EAAE,GAAG;QACR,IAAI;QACJ,OAAO,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;QAC/B,MAAM;QACN,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,QAAQ,IAAI,EAAE;QACzB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,GAAG,EAAE,QAAQ;KACb,CAAC,CAAC;IACH,OAAO,EAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAC,CAAC;AACnD,CAAC;AAED,uEAAuE;AACvE,SAAS,mBAAmB,CAAC,GAAW;IACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;GAMG;AACH,SAAS,uBAAuB,CAC/B,GAAW,EACX,MAA2B;IAE3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IACxC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QACtD,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QACpC,CAAC;IACF,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC;AAED,uFAAuF;AACvF,SAAS,YAAY,CAAC,GAAW;IAChC,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,4EAA4E;AAC5E,SAAS,mBAAmB,CAC3B,GAAW,EACX,QAAkB;IAElB,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC5B,GAAG,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,wEAAwE;AACxE,SAAS,YAAY,CAAC,GAAW;IAChC,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACJ,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,CAAC;IACX,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9D,CAAC"}
|
|
1
|
+
{"version":3,"file":"tasking.js","sourceRoot":"","sources":["../src/tasking.ts"],"names":[],"mappings":"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"}
|