fix(coding-agent): clarify pi docs path resolution closes #4752
This commit is contained in:
@@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
|
- Fixed the system prompt to tell models to resolve pi docs and examples under the absolute package paths before reading topic-specific relative references ([#4752](https://github.com/earendil-works/pi/issues/4752)).
|
||||||
- Fixed extension `ctx.abort()` during tool-call preflight to stop later confirmations and restore queued interactive input like Escape ([#4276](https://github.com/earendil-works/pi/issues/4276)).
|
- Fixed extension `ctx.abort()` during tool-call preflight to stop later confirmations and restore queued interactive input like Escape ([#4276](https://github.com/earendil-works/pi/issues/4276)).
|
||||||
- Fixed AgentSession retry, compaction, and event settlement to use the awaited agent lifecycle instead of a separate event queue, and added `willRetry` to `agent_end` session events.
|
- Fixed AgentSession retry, compaction, and event settlement to use the awaited agent lifecycle instead of a separate event queue, and added `willRetry` to `agent_end` session events.
|
||||||
- Fixed the subagent extension's parallel mode to return useful per-task output and failed-task diagnostics to the parent model instead of 100-character previews ([#4710](https://github.com/earendil-works/pi/issues/4710)).
|
- Fixed the subagent extension's parallel mode to return useful per-task output and failed-task diagnostics to the parent model instead of 100-character previews ([#4710](https://github.com/earendil-works/pi/issues/4710)).
|
||||||
|
|||||||
@@ -143,6 +143,7 @@ Pi documentation (read only when the user asks about pi itself, its SDK, extensi
|
|||||||
- Main documentation: ${readmePath}
|
- Main documentation: ${readmePath}
|
||||||
- Additional docs: ${docsPath}
|
- Additional docs: ${docsPath}
|
||||||
- Examples: ${examplesPath} (extensions, custom tools, SDK)
|
- Examples: ${examplesPath} (extensions, custom tools, SDK)
|
||||||
|
- When reading pi docs or examples, resolve docs/... under Additional docs and examples/... under Examples, not the current working directory
|
||||||
- When asked about: extensions (docs/extensions.md, examples/extensions/), themes (docs/themes.md), skills (docs/skills.md), prompt templates (docs/prompt-templates.md), TUI components (docs/tui.md), keybindings (docs/keybindings.md), SDK integrations (docs/sdk.md), custom providers (docs/custom-provider.md), adding models (docs/models.md), pi packages (docs/packages.md)
|
- When asked about: extensions (docs/extensions.md, examples/extensions/), themes (docs/themes.md), skills (docs/skills.md), prompt templates (docs/prompt-templates.md), TUI components (docs/tui.md), keybindings (docs/keybindings.md), SDK integrations (docs/sdk.md), custom providers (docs/custom-provider.md), adding models (docs/models.md), pi packages (docs/packages.md)
|
||||||
- When working on pi topics, read the docs and examples, and follow .md cross-references before implementing
|
- When working on pi topics, read the docs and examples, and follow .md cross-references before implementing
|
||||||
- Always read pi .md files completely and follow links to related docs (e.g., tui.md for TUI API details)`;
|
- Always read pi .md files completely and follow links to related docs (e.g., tui.md for TUI API details)`;
|
||||||
|
|||||||
@@ -45,6 +45,18 @@ describe("buildSystemPrompt", () => {
|
|||||||
expect(prompt).toContain("- edit:");
|
expect(prompt).toContain("- edit:");
|
||||||
expect(prompt).toContain("- write:");
|
expect(prompt).toContain("- write:");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test("instructs models to resolve pi docs and examples under absolute base paths", () => {
|
||||||
|
const prompt = buildSystemPrompt({
|
||||||
|
contextFiles: [],
|
||||||
|
skills: [],
|
||||||
|
cwd: process.cwd(),
|
||||||
|
});
|
||||||
|
|
||||||
|
expect(prompt).toContain(
|
||||||
|
"- When reading pi docs or examples, resolve docs/... under Additional docs and examples/... under Examples, not the current working directory",
|
||||||
|
);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe("custom tool snippets", () => {
|
describe("custom tool snippets", () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user