@mjasnikovs/pi-task 0.38.29 → 0.38.31
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/config/config.d.ts +70 -70
- package/dist/config/config.js +26 -35
- package/dist/config/extension-list.d.ts +6 -5
- package/dist/config/extension-list.js +3 -2
- package/dist/config/reasoning-args.d.ts +9 -7
- package/dist/config/reasoning-args.js +12 -10
- package/dist/config/reasoning.d.ts +44 -105
- package/dist/config/reasoning.js +27 -704
- package/dist/config/register.d.ts +34 -48
- package/dist/config/register.js +41 -51
- package/dist/config/tool-list.d.ts +16 -16
- package/dist/config/tool-list.js +1 -1
- package/dist/index.js +2 -0
- package/dist/remote/bridge.d.ts +19 -10
- package/dist/remote/bridge.js +3 -2
- package/dist/remote/broadcast.js +3 -1
- package/dist/remote/events.js +12 -11
- package/dist/remote/history.d.ts +1 -1
- package/dist/remote/protocol.d.ts +6 -3
- package/dist/remote/protocol.js +2 -1
- package/dist/remote/push.d.ts +16 -16
- package/dist/remote/push.js +27 -27
- package/dist/remote/register.d.ts +3 -3
- package/dist/remote/register.js +17 -19
- package/dist/remote/server.d.ts +9 -8
- package/dist/remote/server.js +15 -14
- package/dist/remote/session-state.d.ts +5 -4
- package/dist/remote/session-state.js +8 -5
- package/dist/remote/sw.d.ts +7 -6
- package/dist/remote/sw.js +7 -6
- package/dist/remote/tailscale.d.ts +4 -2
- package/dist/remote/tailscale.js +4 -2
- package/dist/remote/ui-highlight.js +6 -5
- package/dist/remote/ui-render.js +4 -4
- package/dist/remote/ui-script.js +24 -24
- package/dist/remote/ui-styles.d.ts +1 -1
- package/dist/remote/ui-styles.js +10 -13
- package/dist/remote/ui-tools.js +9 -6
- package/dist/shared/child-extensions.d.ts +29 -17
- package/dist/shared/child-extensions.js +29 -17
- package/dist/shared/child-output.d.ts +30 -24
- package/dist/shared/child-output.js +25 -17
- package/dist/shared/child-process.d.ts +47 -40
- package/dist/shared/child-process.js +50 -59
- package/dist/shared/command-watchdog.d.ts +85 -16
- package/dist/shared/command-watchdog.js +115 -21
- package/dist/shared/fs-text.d.ts +16 -10
- package/dist/shared/fs-text.js +16 -10
- package/dist/shared/git-runner.d.ts +25 -25
- package/dist/shared/git-runner.js +25 -25
- package/dist/shared/leaked-tool-call.d.ts +17 -11
- package/dist/shared/leaked-tool-call.js +23 -15
- package/dist/shared/model-endpoint.d.ts +29 -16
- package/dist/shared/model-endpoint.js +33 -21
- package/dist/shared/pi-invocation.d.ts +7 -4
- package/dist/shared/pi-invocation.js +12 -7
- package/dist/shared/pkg-version.d.ts +13 -5
- package/dist/shared/pkg-version.js +13 -5
- package/dist/shared/reasoning-capability.d.ts +35 -24
- package/dist/shared/reasoning-capability.js +35 -24
- package/dist/shared/stream-watchdog.d.ts +60 -44
- package/dist/shared/stream-watchdog.js +62 -45
- package/dist/task/accept-debt.d.ts +41 -43
- package/dist/task/accept-debt.js +73 -65
- package/dist/task/api-synthesis.d.ts +24 -21
- package/dist/task/api-synthesis.js +32 -26
- package/dist/task/apis-contract.d.ts +32 -64
- package/dist/task/apis-contract.js +32 -64
- package/dist/task/artifact-closure.d.ts +27 -13
- package/dist/task/artifact-closure.js +95 -67
- package/dist/task/auto-commit.d.ts +46 -35
- package/dist/task/auto-commit.js +51 -38
- package/dist/task/auto-io.d.ts +45 -25
- package/dist/task/auto-io.js +57 -29
- package/dist/task/auto-orchestrator.d.ts +26 -24
- package/dist/task/auto-orchestrator.js +192 -165
- package/dist/task/auto-prompts.d.ts +36 -24
- package/dist/task/auto-prompts.js +40 -26
- package/dist/task/autofix-ledger.d.ts +27 -25
- package/dist/task/autofix-ledger.js +29 -26
- package/dist/task/batch-test-task.d.ts +20 -12
- package/dist/task/batch-test-task.js +67 -60
- package/dist/task/boot-probe.d.ts +60 -44
- package/dist/task/boot-probe.js +91 -72
- package/dist/task/cancel-input.d.ts +30 -16
- package/dist/task/cancel-input.js +20 -11
- package/dist/task/cancel-points.d.ts +27 -20
- package/dist/task/cancel-points.js +30 -22
- package/dist/task/child-runner.d.ts +124 -55
- package/dist/task/child-runner.js +298 -90
- package/dist/task/child-status.d.ts +23 -16
- package/dist/task/child-status.js +23 -16
- package/dist/task/clamp-output.js +12 -5
- package/dist/task/command-run.d.ts +31 -28
- package/dist/task/command-run.js +44 -35
- package/dist/task/command-shrink.d.ts +25 -18
- package/dist/task/command-shrink.js +37 -31
- package/dist/task/command-watchdog.d.ts +9 -6
- package/dist/task/command-watchdog.js +21 -15
- package/dist/task/context-attribution.d.ts +34 -26
- package/dist/task/context-attribution.js +34 -26
- package/dist/task/context-silence.d.ts +39 -29
- package/dist/task/context-silence.js +35 -25
- package/dist/task/context-usage.d.ts +16 -9
- package/dist/task/context-usage.js +16 -9
- package/dist/task/contracts.d.ts +8 -4
- package/dist/task/contracts.js +25 -17
- package/dist/task/coverage-loop.d.ts +22 -18
- package/dist/task/coverage-loop.js +35 -30
- package/dist/task/critique-probes.d.ts +13 -14
- package/dist/task/critique-probes.js +50 -39
- package/dist/task/debug-log.d.ts +13 -5
- package/dist/task/debug-log.js +32 -20
- package/dist/task/decompose-fidelity.d.ts +11 -9
- package/dist/task/decompose-fidelity.js +38 -33
- package/dist/task/decompose-granularity.d.ts +41 -38
- package/dist/task/decompose-granularity.js +41 -38
- package/dist/task/deep-render-check.d.ts +22 -14
- package/dist/task/deep-render-check.js +40 -31
- package/dist/task/dropped-input.d.ts +12 -7
- package/dist/task/dropped-input.js +5 -2
- package/dist/task/enforce-attribution.d.ts +38 -47
- package/dist/task/enforce-attribution.js +46 -52
- package/dist/task/enforce-guidelines.d.ts +31 -20
- package/dist/task/enforce-guidelines.js +32 -21
- package/dist/task/enrichment.d.ts +7 -2
- package/dist/task/enrichment.js +26 -14
- package/dist/task/env-notes.d.ts +16 -7
- package/dist/task/env-notes.js +48 -31
- package/dist/task/env-template-closure.d.ts +4 -4
- package/dist/task/env-template-closure.js +42 -34
- package/dist/task/external-context.d.ts +28 -21
- package/dist/task/external-context.js +17 -12
- package/dist/task/failure-classifier.d.ts +4 -5
- package/dist/task/failure-classifier.js +30 -8
- package/dist/task/file-inventory.d.ts +15 -11
- package/dist/task/file-inventory.js +25 -22
- package/dist/task/final-gate-fix.d.ts +74 -86
- package/dist/task/final-gate-fix.js +97 -116
- package/dist/task/final-gate-progress.d.ts +29 -46
- package/dist/task/final-gate-progress.js +40 -51
- package/dist/task/final-gate.d.ts +64 -97
- package/dist/task/final-gate.js +192 -199
- package/dist/task/fix-child.d.ts +21 -27
- package/dist/task/fix-child.js +21 -27
- package/dist/task/foreign-path.d.ts +6 -5
- package/dist/task/foreign-path.js +0 -0
- package/dist/task/frozen-conflict.d.ts +9 -10
- package/dist/task/frozen-conflict.js +61 -64
- package/dist/task/frozen-path-guard.d.ts +35 -14
- package/dist/task/frozen-path-guard.js +56 -39
- package/dist/task/gate-child.d.ts +27 -28
- package/dist/task/gate-child.js +36 -35
- package/dist/task/gate-deps.d.ts +34 -27
- package/dist/task/gate-deps.js +169 -159
- package/dist/task/gate-tally.d.ts +77 -80
- package/dist/task/gate-tally.js +65 -68
- package/dist/task/git-state-guard.d.ts +15 -11
- package/dist/task/git-state-guard.js +76 -66
- package/dist/task/impl-widget.d.ts +25 -16
- package/dist/task/impl-widget.js +27 -17
- package/dist/task/implementation-guards.d.ts +26 -0
- package/dist/task/implementation-guards.js +177 -0
- package/dist/task/implementation-thinking.d.ts +33 -31
- package/dist/task/implementation-thinking.js +5 -6
- package/dist/task/implementation-turn.d.ts +39 -31
- package/dist/task/implementation-turn.js +41 -28
- package/dist/task/inline-markdown.d.ts +20 -7
- package/dist/task/inline-markdown.js +15 -6
- package/dist/task/launch-config-gap.js +25 -39
- package/dist/task/launch-contract.d.ts +18 -21
- package/dist/task/launch-contract.js +28 -30
- package/dist/task/launch-manifest.d.ts +6 -2
- package/dist/task/launch-manifest.js +35 -34
- package/dist/task/ledger.js +16 -14
- package/dist/task/lint-fix.d.ts +6 -8
- package/dist/task/lint-fix.js +67 -69
- package/dist/task/loop-detector.d.ts +27 -8
- package/dist/task/loop-detector.js +38 -14
- package/dist/task/mid-run-input.d.ts +17 -15
- package/dist/task/mid-run-input.js +17 -15
- package/dist/task/orchestrator.d.ts +24 -28
- package/dist/task/orchestrator.js +89 -66
- package/dist/task/orientation.d.ts +18 -23
- package/dist/task/orientation.js +24 -31
- package/dist/task/owned-freeze-conflict.d.ts +21 -20
- package/dist/task/owned-freeze-conflict.js +52 -85
- package/dist/task/owned-freeze-reassign.d.ts +40 -60
- package/dist/task/owned-freeze-reassign.js +41 -61
- package/dist/task/parsers.d.ts +4 -2
- package/dist/task/parsers.js +4 -4
- package/dist/task/phases.d.ts +41 -48
- package/dist/task/phases.js +196 -252
- package/dist/task/plan-io.d.ts +6 -7
- package/dist/task/plan-io.js +6 -7
- package/dist/task/plan-orchestrator.d.ts +10 -8
- package/dist/task/plan-orchestrator.js +14 -10
- package/dist/task/plan-prompts.d.ts +6 -5
- package/dist/task/plan-prompts.js +6 -5
- package/dist/task/plan-readonly.d.ts +4 -5
- package/dist/task/plan-readonly.js +4 -5
- package/dist/task/plan-rounds.d.ts +17 -29
- package/dist/task/plan-rounds.js +21 -34
- package/dist/task/plan-session.d.ts +58 -72
- package/dist/task/plan-session.js +61 -83
- package/dist/task/probe-gaming.d.ts +28 -27
- package/dist/task/probe-gaming.js +0 -0
- package/dist/task/prohibition-probe.d.ts +14 -16
- package/dist/task/prompts.d.ts +3 -4
- package/dist/task/prompts.js +17 -26
- package/dist/task/qa-transcript.d.ts +15 -22
- package/dist/task/qa-transcript.js +15 -21
- package/dist/task/question-box.d.ts +17 -13
- package/dist/task/question-box.js +19 -15
- package/dist/task/question-dedup.d.ts +6 -7
- package/dist/task/question-dedup.js +13 -14
- package/dist/task/question-dialog.d.ts +22 -32
- package/dist/task/question-dialog.js +22 -32
- package/dist/task/question-source.d.ts +18 -44
- package/dist/task/question-source.js +22 -51
- package/dist/task/refuted-constraint.d.ts +11 -31
- package/dist/task/refuted-constraint.js +27 -51
- package/dist/task/regenerable-artifacts.d.ts +12 -31
- package/dist/task/regenerable-artifacts.js +12 -31
- package/dist/task/render-check.d.ts +11 -22
- package/dist/task/render-check.js +33 -46
- package/dist/task/repo-health-check.d.ts +10 -14
- package/dist/task/repo-health-check.js +17 -23
- package/dist/task/requirements.d.ts +38 -71
- package/dist/task/requirements.js +78 -126
- package/dist/task/research-fanout-budget.d.ts +51 -88
- package/dist/task/research-fanout-budget.js +51 -88
- package/dist/task/research-worker.d.ts +29 -39
- package/dist/task/research-worker.js +37 -61
- package/dist/task/resume-gap.d.ts +14 -15
- package/dist/task/root-cause-repair.d.ts +9 -9
- package/dist/task/root-cause-repair.js +28 -40
- package/dist/task/run-bracket.d.ts +10 -13
- package/dist/task/run-end.d.ts +12 -22
- package/dist/task/run-end.js +8 -16
- package/dist/task/run-final-gate.d.ts +19 -21
- package/dist/task/run-final-gate.js +62 -80
- package/dist/task/runner-globs.d.ts +12 -13
- package/dist/task/runner-globs.js +12 -13
- package/dist/task/runner-resolve.d.ts +9 -9
- package/dist/task/runner-resolve.js +22 -23
- package/dist/task/script-escape.d.ts +10 -12
- package/dist/task/script-escape.js +13 -14
- package/dist/task/serve-entry.d.ts +1 -1
- package/dist/task/serve-entry.js +22 -25
- package/dist/task/service-blocks.js +4 -2
- package/dist/task/shipped-source.d.ts +11 -29
- package/dist/task/shipped-source.js +11 -29
- package/dist/task/skip-escape.js +10 -14
- package/dist/task/spec-urls.d.ts +26 -65
- package/dist/task/spec-urls.js +26 -65
- package/dist/task/spec-validation.d.ts +17 -20
- package/dist/task/spec-validation.js +17 -20
- package/dist/task/stall-detector.d.ts +23 -30
- package/dist/task/stall-detector.js +23 -30
- package/dist/task/stream-watchdog.d.ts +14 -12
- package/dist/task/stream-watchdog.js +14 -12
- package/dist/task/substitution-probe.d.ts +17 -20
- package/dist/task/substitution-probe.js +17 -20
- package/dist/task/task-gates.d.ts +36 -41
- package/dist/task/task-gates.js +95 -106
- package/dist/task/task-io.d.ts +4 -4
- package/dist/task/task-io.js +4 -4
- package/dist/task/task-parsers.js +4 -3
- package/dist/task/task-provenance.d.ts +2 -2
- package/dist/task/task-provenance.js +11 -13
- package/dist/task/task-types.d.ts +4 -3
- package/dist/task/terminal-outcome.d.ts +14 -16
- package/dist/task/terminal-outcome.js +12 -14
- package/dist/task/test-assembly.d.ts +13 -20
- package/dist/task/test-assembly.js +13 -20
- package/dist/task/timings.d.ts +5 -3
- package/dist/task/timings.js +5 -3
- package/dist/task/title-label.d.ts +9 -4
- package/dist/task/title-label.js +9 -4
- package/dist/task/type-only-answer.d.ts +44 -52
- package/dist/task/type-only-answer.js +44 -52
- package/dist/task/unfailable-command.d.ts +18 -24
- package/dist/task/unfailable-command.js +21 -27
- package/dist/task/unknown-routing.d.ts +10 -4
- package/dist/task/unknown-routing.js +10 -4
- package/dist/task/user-directives.d.ts +5 -8
- package/dist/task/user-directives.js +5 -8
- package/dist/task/verify-quality.d.ts +18 -22
- package/dist/task/verify-quality.js +45 -46
- package/dist/task/verify-reconcile.d.ts +15 -10
- package/dist/task/verify-reconcile.js +45 -43
- package/dist/task/verify-resolution.d.ts +24 -20
- package/dist/task/verify-resolution.js +51 -50
- package/dist/task/verify-work.d.ts +59 -66
- package/dist/task/verify-work.js +101 -138
- package/dist/task/widget.d.ts +15 -14
- package/dist/task/widget.js +22 -17
- package/dist/task/wiring-claims.d.ts +25 -32
- package/dist/task/wiring-claims.js +30 -35
- package/dist/task/write-guard.d.ts +39 -39
- package/dist/task/write-guard.js +48 -51
- package/dist/task/yolo.d.ts +34 -30
- package/dist/task/yolo.js +42 -37
- package/dist/workers/abstention.d.ts +21 -41
- package/dist/workers/abstention.js +27 -48
- package/dist/workers/brave-search.d.ts +4 -3
- package/dist/workers/brave-search.js +5 -2
- package/dist/workers/brave-warning.d.ts +7 -4
- package/dist/workers/brave-warning.js +19 -7
- package/dist/workers/ddg-search.d.ts +6 -6
- package/dist/workers/ddg-search.js +18 -12
- package/dist/workers/docs-cache.js +5 -2
- package/dist/workers/docs-chunk.d.ts +30 -37
- package/dist/workers/docs-chunk.js +37 -41
- package/dist/workers/docs-core.d.ts +28 -44
- package/dist/workers/docs-core.js +25 -44
- package/dist/workers/docs-index.js +4 -3
- package/dist/workers/docs-lookup.d.ts +15 -22
- package/dist/workers/docs-lookup.js +12 -21
- package/dist/workers/docs-project.d.ts +15 -9
- package/dist/workers/docs-project.js +17 -10
- package/dist/workers/docs-resolve.d.ts +19 -20
- package/dist/workers/docs-resolve.js +35 -32
- package/dist/workers/docs-retrieve.d.ts +5 -6
- package/dist/workers/docs-retrieve.js +18 -15
- package/dist/workers/exa-search.d.ts +9 -6
- package/dist/workers/exa-search.js +23 -12
- package/dist/workers/fetch-core.d.ts +13 -16
- package/dist/workers/fetch-core.js +23 -23
- package/dist/workers/focused-extractor.d.ts +13 -12
- package/dist/workers/focused-extractor.js +27 -19
- package/dist/workers/html-clean.js +24 -14
- package/dist/workers/http-request.d.ts +28 -20
- package/dist/workers/http-request.js +22 -17
- package/dist/workers/npm-version.d.ts +28 -11
- package/dist/workers/npm-version.js +24 -15
- package/dist/workers/phantom-imports.d.ts +15 -12
- package/dist/workers/phantom-imports.js +30 -24
- package/dist/workers/pi-worker-core.d.ts +65 -96
- package/dist/workers/pi-worker-core.js +93 -181
- package/dist/workers/pi-worker-docs.d.ts +24 -19
- package/dist/workers/pi-worker-docs.js +67 -76
- package/dist/workers/pi-worker-fetch.d.ts +7 -3
- package/dist/workers/pi-worker-fetch.js +27 -19
- package/dist/workers/pi-worker-search.js +12 -8
- package/dist/workers/pi-worker.d.ts +9 -4
- package/dist/workers/pi-worker.js +21 -14
- package/dist/workers/reasoning-warning.d.ts +18 -17
- package/dist/workers/reasoning-warning.js +22 -20
- package/dist/workers/research-cache.js +50 -78
- package/dist/workers/search-core.js +7 -5
- package/dist/workers/search-types.d.ts +10 -9
- package/dist/workers/search-types.js +9 -8
- package/dist/workers/session-hint.d.ts +13 -14
- package/dist/workers/session-hint.js +8 -9
- package/dist/workers/shared.d.ts +21 -25
- package/dist/workers/shared.js +0 -0
- package/dist/workers/single-read-extension.d.ts +14 -7
- package/dist/workers/single-read-extension.js +14 -7
- package/dist/workers/single-read-guard.d.ts +27 -30
- package/dist/workers/single-read-guard.js +36 -36
- package/dist/workers/typeonly-log.d.ts +12 -9
- package/dist/workers/typeonly-log.js +29 -33
- package/dist/workers/worker-channels.d.ts +15 -23
- package/dist/workers/worker-channels.js +15 -23
- package/dist/workers/worker-failure.d.ts +38 -46
- package/dist/workers/worker-failure.js +31 -39
- package/dist/workers/worker-kill.d.ts +25 -26
- package/dist/workers/worker-kill.js +16 -19
- package/dist/workers/worker-profiles.d.ts +54 -56
- package/dist/workers/worker-profiles.js +63 -39
- package/package.json +10 -8
|
@@ -3,17 +3,17 @@
|
|
|
3
3
|
*
|
|
4
4
|
* WHY THIS EXISTS
|
|
5
5
|
* ---------------
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
6
|
+
* `CHILD_BASE_ARGS` (shared/child-process.ts) passes no `--thinking`, so every
|
|
7
|
+
* pi-task child inherits `defaultThinkingLevel` from the host's
|
|
8
|
+
* `~/.pi/agent/settings.json`. That is one level for children whose jobs are
|
|
9
|
+
* nothing alike: a planner that must reason to produce a plan at all, and a
|
|
10
|
+
* label-compressor that emits four words.
|
|
11
|
+
*
|
|
12
|
+
* `--thinking <level>` is pi's own flag. For a Qwen model it reaches the server
|
|
13
|
+
* as `enable_thinking` — either a top-level parameter or inside
|
|
14
|
+
* `chat_template_kwargs`, depending on the model's declared thinking format
|
|
15
|
+
* (pi-ai `api/openai-completions.js`). Prompt text cannot reach that kwarg, so
|
|
16
|
+
* the flag is the only lever on it.
|
|
17
17
|
*
|
|
18
18
|
* PURE MODULE — no imports with runtime side effects, so `config.ts` can import
|
|
19
19
|
* the table and the sanitizers during its own module evaluation. `getConfig()`
|
|
@@ -28,21 +28,17 @@ import type { PiTaskConfig } from './config.js';
|
|
|
28
28
|
*
|
|
29
29
|
* Grouped by JOB, not by spawn mechanism — two children that both go through
|
|
30
30
|
* `runWorker` (a research worker and a verify gate) want different amounts of
|
|
31
|
-
* thinking, while
|
|
32
|
-
*
|
|
31
|
+
* thinking, while `refine` in phases.ts and `compress-label` in title-label.ts
|
|
32
|
+
* want the same amount and share the `phase` cell.
|
|
33
33
|
*
|
|
34
|
-
* - `research` the ad-hoc `pi-worker` subagent tool, and the
|
|
34
|
+
* - `research` the ad-hoc `pi-worker` subagent tool, and the fallback the four
|
|
35
35
|
* research workers use when their own cell is unset
|
|
36
36
|
* - `research:files` / `research:apis` / `research:context` / `research:tooling`
|
|
37
|
-
* one cell per research worker
|
|
38
|
-
*
|
|
39
|
-
* every one of the 40.7 wasted research minutes was a restart
|
|
40
|
-
* in `tooling` or `context`, and `files` and `apis` never
|
|
41
|
-
* restarted once. A single `research` cell cannot be set to
|
|
42
|
-
* pay for thinking where it is needed without also paying for
|
|
43
|
-
* it where it measurably is not.
|
|
37
|
+
* one cell per research worker, so a level can be paid for in
|
|
38
|
+
* one worker without paying for it in the other three
|
|
44
39
|
* - `phase` refine, verify-tooling, grill, compose, critique, compress-label
|
|
45
|
-
* - `planning` /task-auto's clarify
|
|
40
|
+
* - `planning` /task-auto's planning children — clarify, decompose, and the
|
|
41
|
+
* extract/coverage passes around them
|
|
46
42
|
* - `plan` /task-plan's question and answer children
|
|
47
43
|
* - `gate` enforce, verify, lint-fix, final-fix, recommend
|
|
48
44
|
* - `extraction` the --no-tools focused docs/fetch extractors
|
|
@@ -52,7 +48,7 @@ export type ReasoningGroup = 'research' | 'research:files' | 'research:apis' | '
|
|
|
52
48
|
export declare const REASONING_GROUPS: readonly ReasoningGroup[];
|
|
53
49
|
/**
|
|
54
50
|
* The four profiles offered by /task-config.
|
|
55
|
-
* - `default` the
|
|
51
|
+
* - `default` the per-group table below
|
|
56
52
|
* - `on` one level everywhere ({@link REASONING_ON_LEVEL})
|
|
57
53
|
* - `off` no thinking anywhere
|
|
58
54
|
* - `custom` the user's own per-group table
|
|
@@ -63,87 +59,35 @@ export declare const REASONING_MODES: readonly ReasoningMode[];
|
|
|
63
59
|
* What one group is set to.
|
|
64
60
|
*
|
|
65
61
|
* `inherit` is NOT a pi thinking level — it means EMIT NO FLAG, so the child
|
|
66
|
-
* falls back to `settings.json
|
|
67
|
-
*
|
|
68
|
-
* `inherit`, every child's argv is byte-identical to the version before it.
|
|
62
|
+
* falls back to `settings.json`. With every cell at `inherit` this whole table
|
|
63
|
+
* is a no-op and every child's argv is byte-identical to a build without it.
|
|
69
64
|
*/
|
|
70
65
|
export type GroupSetting = 'inherit' | 'off' | 'minimal' | 'low' | 'medium' | 'high';
|
|
71
66
|
/**
|
|
72
|
-
* The settings offered in /task-config: `inherit` plus pi's
|
|
73
|
-
*
|
|
67
|
+
* The settings offered in /task-config: `inherit` plus the standard part of pi's
|
|
68
|
+
* own thinking cycle.
|
|
74
69
|
*
|
|
75
|
-
* `xhigh` and `max` are DELIBERATELY ABSENT. pi
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* answers an unknown effort with HTTP 500, not a clamp. Offering a level that pi's
|
|
80
|
-
* own UI does not is how you ship a `--thinking` that hard-fails on some models.
|
|
81
|
-
* This machine already reaches xhigh through `"high": "xhigh"` in its map.
|
|
70
|
+
* `xhigh` and `max` are DELIBERATELY ABSENT. pi-ai's `getSupportedThinkingLevels`
|
|
71
|
+
* accepts the standard levels for any reasoning model, but offers `xhigh` and
|
|
72
|
+
* `max` only when the model declares them in its `thinkingLevelMap`. Offering
|
|
73
|
+
* them here would put a level in this UI that pi's own UI may not have.
|
|
82
74
|
*/
|
|
83
75
|
export declare const REASONING_SETTINGS: readonly GroupSetting[];
|
|
84
|
-
/**
|
|
85
|
-
* The level mode `on` uses, and the treatment arm of the A/B that fills in
|
|
86
|
-
* {@link DEFAULT_REASONING_TABLE}. ONE constant so the shipped config and the
|
|
87
|
-
* measurement behind it can never drift apart.
|
|
88
|
-
*/
|
|
76
|
+
/** The level mode `on` uses. */
|
|
89
77
|
export declare const REASONING_ON_LEVEL: GroupSetting;
|
|
90
78
|
/**
|
|
91
79
|
* The per-group table used by mode `default`.
|
|
92
80
|
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
* {@link REASONING_ON_LEVEL}) carrying its date, model, counts and RUNG in the
|
|
97
|
-
* comment beside it. A cell filled in from intuition is WORSE than `inherit`:
|
|
98
|
-
* `inherit` is honest about knowing nothing, while a wrong cell is a
|
|
99
|
-
* measurement nobody took, wearing the authority of a default.
|
|
100
|
-
*
|
|
101
|
-
* THE RUNG IS PART OF THE RESULT, so read it before trusting a cell. The
|
|
102
|
-
* harness returns a two-way verdict — `off` or {@link REASONING_ON_LEVEL},
|
|
103
|
-
* never a tie — down a three-rung ladder: rung 1 a significant quality
|
|
104
|
-
* difference, rung 2 quality level and a significant speed difference, rung 3
|
|
105
|
-
* nothing separated the arms and the cheaper level carries it by a stated
|
|
106
|
-
* prior. A rung-3 cell is a DECISION, not a finding: it says "no reason found
|
|
107
|
-
* to pay for thinking", not "thinking was shown not to help". At n=20/arm the
|
|
108
|
-
* run is only powered for large effects, so rung 3 is the common outcome and
|
|
109
|
-
* an absent effect and an undetected one look identical from here.
|
|
110
|
-
*
|
|
111
|
-
* NOTHING IS ALREADY ON THE RECORD, and the belief that something was is worth
|
|
112
|
-
* writing down. This docstring used to say magicknumbers.md had measured the
|
|
113
|
-
* decompose child "with one knob, `enable_thinking` — off answered 1/10, on
|
|
114
|
-
* answered 8/8", and treated that as the split the A/B had to reproduce.
|
|
115
|
-
*
|
|
116
|
-
* VERIFIED 2026-08-27: the string "8/8" does not appear in magicknumbers.md, and
|
|
117
|
-
* never has (`git log -S`; the phrase was introduced by THIS file's own commit,
|
|
118
|
-
* `0b91f71`). What that page records is
|
|
119
|
-
*
|
|
120
|
-
* "Measured, captured decompose request, REASONING OFF, n=10 per cell:
|
|
121
|
-
* 1/10 → 7/10 (stall detector) → 8/9 (all three)."
|
|
122
|
-
*
|
|
123
|
-
* — a ladder over THREE GUARDS at CONSTANT reasoning off, from `fea7bbb`. Both
|
|
124
|
-
* endpoints are the same arm. `enable_thinking` is not its knob and never was,
|
|
125
|
-
* and the "8/8" is a misread of the ladder's last cell, `8/9`.
|
|
126
|
-
*
|
|
127
|
-
* So no reasoning effect on `planning` had ever been measured, and the 10/10 vs
|
|
128
|
-
* 10/10 read on the current tree was not a contradiction of a prior result — it
|
|
129
|
-
* was the only reading there had ever been. The controls that page DOES record
|
|
130
|
-
* (Qwen3.6-27B 10/10, Gemma4-12B 10/10) are likewise reasoning off, so they say
|
|
131
|
-
* nothing about a cell flipping by model either.
|
|
132
|
-
*
|
|
133
|
-
* The `planning` cell below is the FIRST measured reading of that knob, taken
|
|
134
|
-
* 2026-08-27 on a citation-fidelity axis built for it. It is also the first cell
|
|
135
|
-
* that is not `off`.
|
|
81
|
+
* `inherit` says nothing was decided for that group and the child keeps the
|
|
82
|
+
* host's level. Any other value is a decision this project made for that
|
|
83
|
+
* group's job, and `/task-config` mode `custom` overrides all of it.
|
|
136
84
|
*/
|
|
137
85
|
export declare const DEFAULT_REASONING_TABLE: Readonly<Record<ReasoningGroup, GroupSetting>>;
|
|
138
|
-
/**
|
|
139
|
-
* A hand-edited or stale mode must not reach {@link resolveReasoning}'s switch as
|
|
140
|
-
* an unknown string — the `default:` arm would silently absorb it and the user
|
|
141
|
-
* would see "custom" in the file and the default table in behaviour.
|
|
142
|
-
*/
|
|
86
|
+
/** A stored mode, or `default` when the value is not one. */
|
|
143
87
|
export declare function sanitizeReasoningMode(value: unknown): ReasoningMode;
|
|
144
88
|
/**
|
|
145
|
-
* Child NAME → reasoning group, for every child
|
|
146
|
-
* `runPhaseChild`
|
|
89
|
+
* Child NAME → reasoning group, for every child spawned under a name:
|
|
90
|
+
* `runPhaseChild`, `runPlanningChild`, and the research workers' `spec.label`.
|
|
147
91
|
*
|
|
148
92
|
* WHY KEYED ON THE NAME
|
|
149
93
|
* ---------------------
|
|
@@ -155,15 +99,14 @@ export declare function sanitizeReasoningMode(value: unknown): ReasoningMode;
|
|
|
155
99
|
* express something the call site already says out loud.
|
|
156
100
|
*
|
|
157
101
|
* AN UNMAPPED NAME IS A BUILD FAILURE, not a silent `inherit`.
|
|
158
|
-
* `reasoning-groups.test.ts` scans every literal child name
|
|
159
|
-
* it is missing here. A defaulting lookup would let a phase added
|
|
160
|
-
* itself out of
|
|
161
|
-
* how `/no_think` ended up applied to eight prompts and read by none of them.
|
|
102
|
+
* `reasoning-groups.test.ts` scans every literal child name under `src/task`
|
|
103
|
+
* and fails if it is missing here. A defaulting lookup would let a phase added
|
|
104
|
+
* later opt itself out of the table without anyone deciding to.
|
|
162
105
|
*
|
|
163
106
|
* The gate and extraction groups are NOT here: those children reach the model
|
|
164
|
-
* through `
|
|
165
|
-
*
|
|
166
|
-
* `spec.label` —
|
|
107
|
+
* through `groupThinkingArgs('gate' | 'extraction')` at call sites with no name
|
|
108
|
+
* in scope (gate-deps.ts, fetch-core.ts, docs-core.ts, pi-worker-docs.ts). The
|
|
109
|
+
* four research workers do have a name — their `spec.label` — so they are here.
|
|
167
110
|
*/
|
|
168
111
|
export declare const REASONING_GROUP_BY_CHILD: Readonly<Record<string, ReasoningGroup>>;
|
|
169
112
|
/**
|
|
@@ -198,14 +141,10 @@ export declare function resolveReasoning(group: ReasoningGroup, cfg: PiTaskConfi
|
|
|
198
141
|
/**
|
|
199
142
|
* The WHOLE table, as this config will actually run it.
|
|
200
143
|
*
|
|
201
|
-
*
|
|
202
|
-
*
|
|
203
|
-
*
|
|
204
|
-
*
|
|
205
|
-
* invented (`Array<{group, setting}>`) and leaked into `reasoningMismatches`.
|
|
206
|
-
*
|
|
207
|
-
* `resolveReasoning` stays: one group is still a fair question, and it is the
|
|
208
|
-
* only place the four modes are interpreted.
|
|
144
|
+
* The question the mismatch scan and the custom-mode seeder both ask. One
|
|
145
|
+
* accessor, so they cannot each invent their own shape for it. The settings menu
|
|
146
|
+
* asks the single-group question instead, through `resolveReasoning` — which is
|
|
147
|
+
* the only place the four modes are interpreted.
|
|
209
148
|
*/
|
|
210
149
|
export declare function effectiveReasoning(cfg: PiTaskConfig): Record<ReasoningGroup, GroupSetting>;
|
|
211
150
|
/**
|