chore: upgrade pi dependencies to 0.84.1
This commit is contained in:
@@ -16,7 +16,7 @@ The codebase is split so the implementation reads through file boundaries and na
|
||||
- `src/index.ts` — extension entrypoint
|
||||
- `src/ask-tool.ts` — tool registration, non-interactive fallback, transcript rendering, ask payload capture
|
||||
- `src/answer-commands.ts` — `/answer`, `/answer:again`, and `/ask:replay` command wiring
|
||||
- `src/answer-extraction.ts` — configured extraction model selection, synthetic `ask_user` tool-call extraction, and tolerant text fallback
|
||||
- `src/answer-extraction.ts` — configured, session-scope-aware extraction model selection, synthetic `ask_user` tool-call extraction, and tolerant text fallback
|
||||
- `src/ask-payload-store.ts` — branch-aware persisted ask payload lookup
|
||||
- `src/pending-ask.ts` — active-branch unresolved tool-call detection and recovery dismissal persistence
|
||||
- `src/resume-pending-ask.ts` — detached lifecycle wiring and recovered answer delivery
|
||||
|
||||
@@ -99,8 +99,13 @@ These settings affect only the `/answer` command. Normal `ask_user` tool calls d
|
||||
|
||||
- type: array of `{ "provider": string, "id": string }`
|
||||
- default: lightweight OpenAI Codex, GitHub Copilot, and Anthropic models
|
||||
- effect: `/answer` tries configured models in order and uses the first model with available auth
|
||||
- fallback: if no configured model is usable, `/answer` tries the current chat model after validating its auth
|
||||
- effect: `/answer` tries configured models in order and uses the first model with available auth that is inside the current session model scope; an empty scope allows all available models
|
||||
- fallback: if no configured model is usable, `/answer` tries the current chat model after validating its auth and scope
|
||||
- auth check: use Pi's auth preflight before changing this list:
|
||||
|
||||
```bash
|
||||
pi auth check --provider openai-codex --model gpt-5.4-mini
|
||||
```
|
||||
|
||||
### `answer.extractionTimeoutMs`
|
||||
|
||||
|
||||
+2
-2
@@ -171,7 +171,7 @@ This document defines the stable external behavior. It does not explain internal
|
||||
- semantically invalid payloads that reach tool execution return `error.kind === "invalid_input"` with structured `issues` and a transcript-friendly `Invalid ask_user payload:` message; their rendered status is `Invalid tool payload`
|
||||
- payloads missing schema-required fields fail Pi's schema validation before tool execution and use Pi's standard tool-error result without structured `details`
|
||||
- `mode: "submit"` is normal completion; `mode: "elaborate"` means the user asked the agent to continue with follow-up clarification based on notes
|
||||
- unanswered questions are omitted from `answers`, but non-cancelled submitted result text includes `<label>: (no answer)` in summary mode and `? <label>: (no answer)` in transcript rendering
|
||||
- unanswered questions without notes are omitted from `answers`; note-only entries remain in `answers` to carry their notes, but all non-cancelled submitted result text includes `<label>: (no answer)` in summary mode and `? <label>: (no answer)` in transcript rendering
|
||||
- in `mode: "elaborate"`, `answers` contains only committed answers; note-only entries move to `elaboration.items`
|
||||
- `continuation.strategy === "refine_only"` means the next ask should refine the current flow rather than restart it
|
||||
- `continuation.preservedAnswers` contains previously committed answers that should be kept as context and not re-asked
|
||||
@@ -270,7 +270,7 @@ Dirty dismiss:
|
||||
|
||||
The rich ask flow uses `ctx.ui.custom()` and opens only in TUI mode. In print, JSON, RPC, or any other non-TUI mode, the tool returns a `Needs user input: ask_user requires interactive TUI mode.` message in `content` and a cancelled result in `details` instead of opening custom UI.
|
||||
|
||||
The public tool schema requires question `id` and `prompt` plus option `value` and `label`, so missing required fields fail before execution. The tool still validates trimmed text, uniqueness, question types, option counts, and preview requirements during execution and returns structured issues for those failures. Result rendering falls back to Pi's raw tool-error text when schema validation prevents execution.
|
||||
The public tool schema requires question `id` and `prompt` plus option `value` and `label`, and it restricts question `type` to `single`, `multi`, or `preview`, so malformed structural fields fail before execution. The tool still validates trimmed text, uniqueness, option counts, and preview requirements during execution and returns structured issues for those failures. Result rendering falls back to Pi's raw tool-error text when schema validation prevents execution.
|
||||
|
||||
The ask flow subscribes to runtime settings updates while open. In practice, this means changing `Auto-submit when answered without notes`, `Confirm dismiss when dirty`, `Double-press review shortcuts`, `Notifications`, `Show footer hints`, resetting config to defaults, or reloading config-backed keymaps can affect the in-progress ask flow immediately instead of only future asks when the change is saved or otherwise applied in memory. Load-time migrations and invalid config handling do not rewrite, rename, or back up the config file; invalid files load defaults for the session and show a notice. `Present single-select as multi-select` is applied when an ask flow is created and does not rewrite question semantics for an already-open flow; use `main.changeQuestionType` for live per-question changes.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user