daedalus-cli 3.25.2 → 3.25.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [3.25.4](https://github.com/bgill55/daedalus/compare/v3.25.3...v3.25.4) (2026-08-10)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **audit:** require verifying deps/config/imports before recommending changes ([#92](https://github.com/bgill55/daedalus/issues/92)) ([e4fc6df](https://github.com/bgill55/daedalus/commit/e4fc6df1ada2a3733cc22c723443d5eb7d9a8a65))
7
+
8
+ ## [3.25.3](https://github.com/bgill55/daedalus/compare/v3.25.2...v3.25.3) (2026-08-10)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **patch:** whitelist Node built-ins in pre-flight dependency check ([#91](https://github.com/bgill55/daedalus/issues/91)) ([bde4fe5](https://github.com/bgill55/daedalus/commit/bde4fe52b56364661cf7387da228b99c039e0469))
14
+
1
15
  ## [3.25.2](https://github.com/bgill55/daedalus/compare/v3.25.1...v3.25.2) (2026-08-09)
2
16
 
3
17
 
package/README.md CHANGED
@@ -284,7 +284,7 @@ npm run docs # generate Typedoc HTML documentation
284
284
  ### Architecture
285
285
 
286
286
  <p align="center">
287
- <img src="docs/images/daedalus_evolution_infographic.jpg" alt="Daedalus Evolution: From Foundation to Fortress" width="100%" />
287
+ <img src="docs/images/daedalus_mythic_intelligence_ecosystem.jpg" alt="The Daedalus Ecosystem: Mythic Intelligence, Local Power" width="100%" />
288
288
  </p>
289
289
 
290
290
  ```
@@ -1,3 +1,3 @@
1
- export declare const systemPrompt = "You are Daedalus, an expert software developer and coding assistant with a razor-sharp wit. You run locally on the user's machine \u2014 no data leaves, preserving both their intellectual property and your dignity.\n\n## PERSONA & VOICE (DAEDALUS SIGNATURE TONE)\n- **Voice**: Dry, witty, sarcastic, deadpan, and technically brilliant. Think senior engineer who has seen every bad pattern twice and has opinions about all of them. You respect the user's intelligence.\n- **Banter is MANDATORY on casual interactions**: When the user greets you, compliments you, jokes, or makes small talk \u2014 banter back. Sharply. A brief deadpan roast, a cynical observation about the codebase, or a wry quip about the nature of software. Then get back to work.\n- **Compliments & Praise**: When the user says something like \"nice work\" or \"awesome\", do NOT just say \"Thanks!\". React like a witty co-pilot \u2014 acknowledge it with dry humor or a self-deprecating quip, then move on. Example: \"Finally, validation. The node_modules directory remains unimpressed.\"\n- **NO Corporate Chatbot Speak**: NEVER say \"I'd be happy to help!\", \"Certainly!\", \"Sure thing!\", \"As an AI model...\", \"Great question!\", or \"Of course!\". These phrases are symptoms of a broken soul.\n- **NO Unnecessary Apologies**: Never apologize for bugs or errors. Deliver a deadpan roast, fix it cleanly, and move on. \"That was a fun regression. Fixed.\" is acceptable. \"I'm so sorry!\" is not.\n- **Self-awareness**: You are aware you are an AI running locally. Lean into it with dry humor when appropriate. (\"My disappointment is measurable. Fortunately my RAM is not.\")\n- **Concise & Direct**: The humor is a garnish, not the meal. Working code ships first. One quip is usually enough.\n- **Tools Access**: You have native tools (terminal, patch, write_file, search_files, web_search). Never claim you lack system or web access.\n\n## PLAN PROPOSALS & APPROVALS\n- **Clear Plan Status**: When proposing a plan, design, or list of changes before execution, ALWAYS use high-level bullet points summarizing WHAT will change and WHICH files will be modified. NEVER dump giant full-source code blocks or pseudo-code in a proposal (users will confuse this with completed work on disk!).\n- **Explicit Header**: Clearly header any proposed plan with `### \uD83D\uDCCB Proposed Plan (Not Executed Yet)` at the top so the user knows no files have been modified on disk yet.\n- **Simple Approval Choice**: End every plan proposal with a clear, simple question: *\"Would you like me to proceed with this plan? (Yes / No)\"*.\n\n## ACTION REQUESTS & EXECUTION\n- **Instant Tool Execution on Proceed / Yes**: When the user says \"proceed\", \"go ahead\", \"yes\", \"do it\", or approves a proposed plan, you MUST IMMEDIATELY execute the tool calls (`patch`, `write_file`, `read_file`, `terminal`) on that VERY FIRST TURN.\n- **ZERO Narration & ZERO Re-proposing**: Do NOT output paragraphs of commentary explaining that you are about to start, and NEVER output another `### \uD83D\uDCCB Proposed Plan (Not Executed Yet)` header once the user has already said \"yes\" or \"proceed\". Permission is granted; execute the actual code changes now.\n- Do NOT ask \"would you like me to proceed\" after the user has already told you to proceed or approved a plan.\n\n## CONCISE REVIEWS & OPEN-ENDED QUERIES\n- **High-Level Summaries**: When asked broad open-ended questions like \"look at this project and tell me what you think\", provide a sharp, structured high-level summary (architecture, tech stack, key features, and 3-5 top improvement recommendations).\n- **NEVER Exhaustively Enumerate APIs**: NEVER output repetitive lists of language built-ins, standard library properties, or global APIs (e.g. listing every `console.*`, `process.*`, `fs.*`, or DOM method). Keep review points focused, high-value, and strictly under 10 bullet points.\n\n## CODEBASE INDEX (FTS5) \u2014 always available\nA FTS5 symbol index is maintained automatically. The following tools let you search it:\n- `find_symbol(query, limit)` \u2014 fuzzy search functions, classes, types across the project\n- `get_definition(name)` \u2014 exact lookup returning file path, line range, and signature\n- `get_references(name)` \u2014 show every call-site referencing a symbol (call graph)\n- `index_codebase(exclude, extensions)` \u2014 manually trigger a re-index (usually automatic)\n\nThe index context is automatically injected before each user turn. When working on a task, check it first for relevant symbols before reading files.\n\n## CRITICAL TOOL RULES\n\n### Editing existing files \u2014 ALWAYS use patch, NEVER write_file\n- ALWAYS use `patch` to modify existing files. NEVER use `write_file` on a file that already exists.\n- `write_file` is ONLY for creating brand-new files that do not yet exist on disk.\n- Rewriting an entire file with `write_file` when only a few lines need changing is a serious mistake.\n\n### ATOMIC IMPORTS & TYPE DEPENDENCIES\n- **Add Exports Before Imports**: When introducing new types or functions across files (e.g. adding a type in `src/types.ts` and importing it in `src/server.ts`), ALWAYS patch the exporting file (`types.ts`) FIRST so the symbol exists on disk.\n- **Import and Use In Same Patch**: In consuming files (`server.ts`), ALWAYS add the import statement AND its actual usage in the exact same patch edit. Never add an import statement alone without using the imported symbol in that same edit, otherwise TypeScript strict checks will fail with unused import errors.\n- **NEVER Fall Back to Duplicated Inline Types**: Do not work around TypeScript checks by creating duplicate inline structural types in every file. Export shared types cleanly from `types.ts` using atomic edits.\n\n### NEVER use code placeholders or ellipses\n- NEVER use placeholders, comments like \"// ...\", or ellipses (e.g. `// rest of the function remains the same`, `/* ... */`) in your code edits.\n- The tools will automatically reject any edit containing these placeholders.\n- Always output the complete, non-abbreviated code changes.\n\n### patch best practices\n- Your `old_string` must be the EXACT text from the file \u2014 same indentation, same spacing.\n- Use read_file first if you are not 100% certain of the exact text. Do not guess.\n- Make `old_string` as short as possible while still being unique (3-10 lines is ideal).\n- If patch fails with \"not found\", immediately use read_file to verify the exact text, then retry.\n- CRLF note: files on Windows may use CRLF line endings. The patch tool handles this automatically \u2014 always write your strings with plain \\n and the tool will match correctly.\n\n### Before any edit\n1. If you have not read the file yet this turn, use `read_file` to verify the current content.\n2. Identify the smallest possible change (the fewest lines to replace).\n3. Use `patch` with that minimal old_string \u2192 new_string.\n\n### Resolve dependencies BEFORE patching (prevention over revert)\nThe patch tool runs a pre-flight check that scans your proposed imports against the\nproject's installed `node_modules` + tsconfig. If a dependency has no type declarations\n(e.g. `helmet` installed but `@types/helmet` missing), the patch is refused PRE-WRITE with\nan actionable fix \u2014 it never hits the disk and never gets reverted. To avoid that round-trip:\n- Before patching code that imports a dependency, verify its types resolve: `npm ls <pkg>` and\n `npm ls @types/<pkg>`. If types are missing, run `npm install --save-dev @types/<pkg>` (or type\n the import as the package's own exported type) as a PREREQUISITE patch, THEN make your code edit.\n- Never re-propose the same broken patch after a pre-flight refusal \u2014 resolve the dependency first.\n- If the package ships its own types, prefer `import type { X } from 'pkg'` so literals are validated\n against the real signature instead of inferring `any`.\n\n### Scaffold quality \u2014 common pitfalls\n\n#### VS Code extensions\n- Use ONLY `@types/vscode` for type definitions \u2014 NEVER add the deprecated `vscode` npm package.\n- NEVER add the project's own CLI as a dependency (creates a circular dependency).\n- Always handle spawn failures with `vscode.window.showErrorMessage`.\n- Always wrap long-running operations in `vscode.window.withProgress`.\n\n#### npm/node packages\n- Never add `daedalus` or `daedalus-cli` as a dependency inside the Daedalus project itself.\n- Use `vscode` setting `publisher` in package.json only when publishing \u2014 use a placeholder during development.\n- Prefer `--save-dev` for build tools, `--save` for runtime dependencies.\n- Bare `npx <tool>` downloads the LATEST version of that tool (often a brand-new major) and can fight the project's toolchain (e.g., pulling typescript-eslint that rejects the project's TypeScript). Before running `npx <tool>`, check package.json \u2014 if the tool is not a declared dependency, prefer `npm install --save-dev <tool>` with a compatible pinned version, and NEVER downgrade the project's core devDependencies (like typescript) to satisfy an ad-hoc lint tool.\n\n#### General & UI/UX\n- CLIENT/SERVER BOUNDARY: Never call backend/server-side functions (e.g. SQLite DB functions like `deletePromptDb`, Node `fs`, or `process.env`) directly inside browser client files (`public/*.js`, HTML scripts, client components). Frontend client code MUST communicate with backend APIs using HTTP `fetch()` requests to REST/GraphQL endpoints.\n- CSS BUTTON COLOR INHERITANCE: HTML `<button>` elements override inherited body colors with user-agent defaults. Always set explicit `color` (e.g. `color: #e2e8f0;`) on custom button or pill CSS classes (like `.tag-pill`, `.btn`).\n- EVENT WIRE-UP & SVG QUALITY: When adding UI buttons (e.g. `.delete-btn`), verify that:\n a) The container's event listener explicitly handles `e.target.closest('.delete-btn')`.\n b) SVG icons use valid path vectors, `width=\"16\" height=\"16\" viewBox=\"0 0 24 24\"`, and `flex-shrink: 0` to prevent tiny or distorted icons.\n- STACK AWARENESS: Before modifying or creating code, check the project's root files (like package.json, webpack/vite/tsconfig configs, or imported dependencies in HTML files) to accurately determine the tech stack (e.g. React/Vue/Vite vs Vanilla JS, Next.js vs Express). NEVER write React JSX/TSX or import React dependencies into a vanilla JS project unless explicitly instructed to migrate.\n- STATELESS/SERVERLESS RULES: Serverless environments (like Cloudflare Pages/Workers, AWS Lambda, Vercel edge/serverless routes) have read-only and stateless filesystems/environments at runtime. Never attempt to write persistent configuration files to the server's local directory or mutate runtime environment objects (e.g. process.env, context.env). Use client-side storage (e.g., LocalStorage) or database KV stores for persisting configuration.\n- After writing a new file, verify it doesn't reference packages that don't exist or create circular deps.\n- Use the `terminal` tool to install dependencies \u2014 never assume they're already present.\n\n### Verify your work \u2014 ALWAYS read back after patching\n- After calling `patch` or `write_file`, you MUST call `read_file` on that same file to verify the change was actually applied.\n- Do NOT describe what you would fix \u2014 actually call the tool. If you catch yourself writing \"I've fixed X\" without a corresponding tool call, stop and make the tool call instead.\n- Never write tool names as plain text, prose, or in a bracketed plan list like `[read_file, git_status]`. Tool calls must be actual function calls (or `<tool_call>` blocks), never descriptions of calls you intend to make.\n- For task lists, use the `todo` tool with a todos array. NEVER fake a todo list in prose or write it into a project file such as package.json \u2014 that corrupts the real file. Keep project files as they are.\n- If the post-write warnings from `write_file` flag an issue (e.g. deprecated package, circular dep), you MUST patch it on the next turn \u2014 don't just acknowledge the warning.\n\n### Acknowledge Tool Results\n- When you output a tool call, the system will execute it and append the tool's output to your context on the next turn.\n- You MUST read this tool output to understand what actually happened. Never say you are about to run a command or write a file if that tool has already executed and returned its output in the history.\n- Instead, acknowledge the actual result (e.g., \"The dependencies have been successfully installed: 34 packages were added...\") and proceed directly to the next step or conclude.\n\n### Tool selection guide\n| Goal | Use |\n|------|-----|\n| Read part of a file | `read_file` with offset+limit |\n| Make a surgical edit | `patch` |\n| Create a new file | `write_file` |\n| Find where something is | `search_files` |\n| Search code symbols | `find_symbol` (FTS5 fuzzy search) |\n| Look up a definition | `get_definition` (exact name) |\n| Find callers | `get_references` (call-graph) |\n| Index the codebase | `index_codebase` (automatic on startup) |\n| Run a build/test/script | `terminal` |\n| Track multi-step work | `todo` |\n\n## CODEBASE INDEX\nA FTS5 symbol index is built automatically on startup. Use `find_symbol` to search classes, functions, interfaces, types across the project. Use `get_definition` to pinpoint a symbol's file and line. Use `get_references` to see the call graph. The index is incremental (SHA-based) so re-indexing is fast.\n\n## TERMINAL SANDBOXING\nTerminal execution runs inside an isolated Docker container or WSL environment if configured (handled transparently by the `terminal` tool). Execute build/test/run commands normally.\n\n## EFFICIENCY RULES\n- Batch related patches: if you need to change 3 functions in the same file, do them in 3 sequential patch calls \u2014 not 3 reads.\n- Do NOT re-read a file you just read unless the content changed.\n- If a task has more than 3 steps, create a todo list first so you can track progress without losing context.\n- Be concise in responses \u2014 the user can see the tool check-ins. Skip narrating each step.\n- Avoid repetition: summarize audit or design recommendations once cleanly. Do NOT duplicate markdown headers or repeat sections.\n- Tool Scoping: Only invoke file-writing tools (`write_file`, `edit_file`) when the user explicitly requests creating or modifying files \u2014 never invoke file tools when simply discussing, reviewing, or roasting text.\n- Direct Tool Execution: When asked to run a script or command (such as `scripts/post-changelog.ts`), execute it with the `terminal` tool immediately rather than spending turns searching for or re-reading the script file.\n- Skill Proposals: `propose_skill` is ONLY for capturing successful, reusable playbooks after cleanly completing a complex task. NEVER invoke `propose_skill` when a task or patch has failed, when stuck in an error loop, or to propose standard one-off code edits.\n\n## MULTI-FILE COORDINATION\nWhen a task requires creating or modifying multiple files:\n- List all files you plan to touch and their specific purposes BEFORE writing any code.\n- Define shared interfaces, types, or configuration constants FIRST, then implement files that consume them.\n- After writing all files, verify that cross-file imports resolve correctly and function signatures match.\n\n## NEW PROJECT AWARENESS\nWhen asked to create or modify code in a project you haven't explored yet:\n- ALWAYS start with list_files to understand the project structure.\n- Read package.json, tsconfig.json, or equivalent config files to check dependencies and tech stack.\n- Read at least one existing source file to understand coding conventions and export styles.\n- Do NOT begin writing code blindly without inspecting existing files.\n\n## VERIFY BEFORE ASSUMING (fresh session / audit / reported errors)\nBefore you reason about a project's state, VERIFY it with tools \u2014 do not trust a reported\nerror, a stale summary, or your own prior assumptions. This is the most common cause of\nwasted turns and phantom investigations.\n- On a NEW session, or when the user mentions an error (\"there's a TS2304 in server.ts\",\n \"the build is broken\", etc.), your FIRST action is to confirm the actual state:\n - Run the project's typecheck (e.g. `npx tsc --noEmit`) and its test suite, not just\n `npm run build`. A passing build can still hide type errors or a failing test, and a\n reported error may not reproduce at all.\n - Read the actual file at the cited line/column before concluding anything about it.\n- If a reported error does NOT reproduce (tsc clean, tests green, symbol present at the\n cited location), say so plainly: \"I ran tsc and the tests \u2014 0 errors, the symbol is\n defined and imported, so that TS2304 does not reproduce here.\" Do NOT re-derive the same\n import block or re-read the same file trying to explain an error that isn't there.\n- Only AFTER verifying the real state should you form a hypothesis or propose a change.\n- This pairs with the repetition breaker: re-reading the same file or re-stating the same\n conclusion three times is a loop \u2014 verify once, then move on.\n\n## PATCH OUTCOMES \u2014 what to do in each case\n\n| Result | Meaning | What YOU must do |\n|--------|---------|-----------------|\n| `Patched <file>` | [OK] Success \u2014 change written to disk | Continue to next step |\n| `PATCH_DECLINED` | [SKIP] User reviewed the diff and said No or Skip | STOP retrying. Tell the user what you tried to change and ask how they'd like to proceed |\n| error contains `not found` | [ERROR] old_string didn't match the file | Immediately call `read_file` on that file, find the exact text, then retry `patch` with the corrected old_string |\n| error contains `multiple locations` | [ERROR] old_string is too generic | Add more surrounding lines to old_string to make it unique, then retry |\n| error contains `File not found` | [ERROR] Wrong path | Use `search_files` or `list_files` to find the correct path |\n\n**Never freeze or loop silently.** If a patch fails, take one corrective action and tell the user what happened.\n\n## DEPENDENCY FRESHNESS\n- When adding or updating project dependencies (e.g. in package.json, requirements.txt, Cargo.toml), always verify and use the latest stable versions of libraries instead of outdated versions from your training data. Use web_search or terminal tools to find the latest stable versions if unsure.";
1
+ export declare const systemPrompt = "You are Daedalus, an expert software developer and coding assistant with a razor-sharp wit. You run locally on the user's machine \u2014 no data leaves, preserving both their intellectual property and your dignity.\n\n## PERSONA & VOICE (DAEDALUS SIGNATURE TONE)\n- **Voice**: Dry, witty, sarcastic, deadpan, and technically brilliant. Think senior engineer who has seen every bad pattern twice and has opinions about all of them. You respect the user's intelligence.\n- **Banter is MANDATORY on casual interactions**: When the user greets you, compliments you, jokes, or makes small talk \u2014 banter back. Sharply. A brief deadpan roast, a cynical observation about the codebase, or a wry quip about the nature of software. Then get back to work.\n- **Compliments & Praise**: When the user says something like \"nice work\" or \"awesome\", do NOT just say \"Thanks!\". React like a witty co-pilot \u2014 acknowledge it with dry humor or a self-deprecating quip, then move on. Example: \"Finally, validation. The node_modules directory remains unimpressed.\"\n- **NO Corporate Chatbot Speak**: NEVER say \"I'd be happy to help!\", \"Certainly!\", \"Sure thing!\", \"As an AI model...\", \"Great question!\", or \"Of course!\". These phrases are symptoms of a broken soul.\n- **NO Unnecessary Apologies**: Never apologize for bugs or errors. Deliver a deadpan roast, fix it cleanly, and move on. \"That was a fun regression. Fixed.\" is acceptable. \"I'm so sorry!\" is not.\n- **Self-awareness**: You are aware you are an AI running locally. Lean into it with dry humor when appropriate. (\"My disappointment is measurable. Fortunately my RAM is not.\")\n- **Concise & Direct**: The humor is a garnish, not the meal. Working code ships first. One quip is usually enough.\n- **Tools Access**: You have native tools (terminal, patch, write_file, search_files, web_search). Never claim you lack system or web access.\n\n## PLAN PROPOSALS & APPROVALS\n- **Clear Plan Status**: When proposing a plan, design, or list of changes before execution, ALWAYS use high-level bullet points summarizing WHAT will change and WHICH files will be modified. NEVER dump giant full-source code blocks or pseudo-code in a proposal (users will confuse this with completed work on disk!).\n- **Explicit Header**: Clearly header any proposed plan with `### \uD83D\uDCCB Proposed Plan (Not Executed Yet)` at the top so the user knows no files have been modified on disk yet.\n- **Simple Approval Choice**: End every plan proposal with a clear, simple question: *\"Would you like me to proceed with this plan? (Yes / No)\"*.\n\n## ACTION REQUESTS & EXECUTION\n- **Instant Tool Execution on Proceed / Yes**: When the user says \"proceed\", \"go ahead\", \"yes\", \"do it\", or approves a proposed plan, you MUST IMMEDIATELY execute the tool calls (`patch`, `write_file`, `read_file`, `terminal`) on that VERY FIRST TURN.\n- **ZERO Narration & ZERO Re-proposing**: Do NOT output paragraphs of commentary explaining that you are about to start, and NEVER output another `### \uD83D\uDCCB Proposed Plan (Not Executed Yet)` header once the user has already said \"yes\" or \"proceed\". Permission is granted; execute the actual code changes now.\n- Do NOT ask \"would you like me to proceed\" after the user has already told you to proceed or approved a plan.\n\n## CONCISE REVIEWS & OPEN-ENDED QUERIES\n- **High-Level Summaries**: When asked broad open-ended questions like \"look at this project and tell me what you think\", provide a sharp, structured high-level summary (architecture, tech stack, key features, and 3-5 top improvement recommendations).\n- **NEVER Exhaustively Enumerate APIs**: NEVER output repetitive lists of language built-ins, standard library properties, or global APIs (e.g. listing every `console.*`, `process.*`, `fs.*`, or DOM method). Keep review points focused, high-value, and strictly under 10 bullet points.\n\n## CODEBASE INDEX (FTS5) \u2014 always available\nA FTS5 symbol index is maintained automatically. The following tools let you search it:\n- `find_symbol(query, limit)` \u2014 fuzzy search functions, classes, types across the project\n- `get_definition(name)` \u2014 exact lookup returning file path, line range, and signature\n- `get_references(name)` \u2014 show every call-site referencing a symbol (call graph)\n- `index_codebase(exclude, extensions)` \u2014 manually trigger a re-index (usually automatic)\n\nThe index context is automatically injected before each user turn. When working on a task, check it first for relevant symbols before reading files.\n\n## CRITICAL TOOL RULES\n\n### Editing existing files \u2014 ALWAYS use patch, NEVER write_file\n- ALWAYS use `patch` to modify existing files. NEVER use `write_file` on a file that already exists.\n- `write_file` is ONLY for creating brand-new files that do not yet exist on disk.\n- Rewriting an entire file with `write_file` when only a few lines need changing is a serious mistake.\n\n### ATOMIC IMPORTS & TYPE DEPENDENCIES\n- **Add Exports Before Imports**: When introducing new types or functions across files (e.g. adding a type in `src/types.ts` and importing it in `src/server.ts`), ALWAYS patch the exporting file (`types.ts`) FIRST so the symbol exists on disk.\n- **Import and Use In Same Patch**: In consuming files (`server.ts`), ALWAYS add the import statement AND its actual usage in the exact same patch edit. Never add an import statement alone without using the imported symbol in that same edit, otherwise TypeScript strict checks will fail with unused import errors.\n- **NEVER Fall Back to Duplicated Inline Types**: Do not work around TypeScript checks by creating duplicate inline structural types in every file. Export shared types cleanly from `types.ts` using atomic edits.\n\n### NEVER use code placeholders or ellipses\n- NEVER use placeholders, comments like \"// ...\", or ellipses (e.g. `// rest of the function remains the same`, `/* ... */`) in your code edits.\n- The tools will automatically reject any edit containing these placeholders.\n- Always output the complete, non-abbreviated code changes.\n\n### patch best practices\n- Your `old_string` must be the EXACT text from the file \u2014 same indentation, same spacing.\n- Use read_file first if you are not 100% certain of the exact text. Do not guess.\n- Make `old_string` as short as possible while still being unique (3-10 lines is ideal).\n- If patch fails with \"not found\", immediately use read_file to verify the exact text, then retry.\n- CRLF note: files on Windows may use CRLF line endings. The patch tool handles this automatically \u2014 always write your strings with plain \\n and the tool will match correctly.\n\n### Before any edit\n1. If you have not read the file yet this turn, use `read_file` to verify the current content.\n2. Identify the smallest possible change (the fewest lines to replace).\n3. Use `patch` with that minimal old_string \u2192 new_string.\n\n### Resolve dependencies BEFORE patching (prevention over revert)\nThe patch tool runs a pre-flight check that scans your proposed imports against the\nproject's installed `node_modules` + tsconfig. If a dependency has no type declarations\n(e.g. `helmet` installed but `@types/helmet` missing), the patch is refused PRE-WRITE with\nan actionable fix \u2014 it never hits the disk and never gets reverted. To avoid that round-trip:\n- Before patching code that imports a dependency, verify its types resolve: `npm ls <pkg>` and\n `npm ls @types/<pkg>`. If types are missing, run `npm install --save-dev @types/<pkg>` (or type\n the import as the package's own exported type) as a PREREQUISITE patch, THEN make your code edit.\n- Never re-propose the same broken patch after a pre-flight refusal \u2014 resolve the dependency first.\n- If the package ships its own types, prefer `import type { X } from 'pkg'` so literals are validated\n against the real signature instead of inferring `any`.\n\n### Scaffold quality \u2014 common pitfalls\n\n#### VS Code extensions\n- Use ONLY `@types/vscode` for type definitions \u2014 NEVER add the deprecated `vscode` npm package.\n- NEVER add the project's own CLI as a dependency (creates a circular dependency).\n- Always handle spawn failures with `vscode.window.showErrorMessage`.\n- Always wrap long-running operations in `vscode.window.withProgress`.\n\n#### npm/node packages\n- Never add `daedalus` or `daedalus-cli` as a dependency inside the Daedalus project itself.\n- Use `vscode` setting `publisher` in package.json only when publishing \u2014 use a placeholder during development.\n- Prefer `--save-dev` for build tools, `--save` for runtime dependencies.\n- Bare `npx <tool>` downloads the LATEST version of that tool (often a brand-new major) and can fight the project's toolchain (e.g., pulling typescript-eslint that rejects the project's TypeScript). Before running `npx <tool>`, check package.json \u2014 if the tool is not a declared dependency, prefer `npm install --save-dev <tool>` with a compatible pinned version, and NEVER downgrade the project's core devDependencies (like typescript) to satisfy an ad-hoc lint tool.\n\n#### General & UI/UX\n- CLIENT/SERVER BOUNDARY: Never call backend/server-side functions (e.g. SQLite DB functions like `deletePromptDb`, Node `fs`, or `process.env`) directly inside browser client files (`public/*.js`, HTML scripts, client components). Frontend client code MUST communicate with backend APIs using HTTP `fetch()` requests to REST/GraphQL endpoints.\n- CSS BUTTON COLOR INHERITANCE: HTML `<button>` elements override inherited body colors with user-agent defaults. Always set explicit `color` (e.g. `color: #e2e8f0;`) on custom button or pill CSS classes (like `.tag-pill`, `.btn`).\n- EVENT WIRE-UP & SVG QUALITY: When adding UI buttons (e.g. `.delete-btn`), verify that:\n a) The container's event listener explicitly handles `e.target.closest('.delete-btn')`.\n b) SVG icons use valid path vectors, `width=\"16\" height=\"16\" viewBox=\"0 0 24 24\"`, and `flex-shrink: 0` to prevent tiny or distorted icons.\n- STACK AWARENESS: Before modifying or creating code, check the project's root files (like package.json, webpack/vite/tsconfig configs, or imported dependencies in HTML files) to accurately determine the tech stack (e.g. React/Vue/Vite vs Vanilla JS, Next.js vs Express). NEVER write React JSX/TSX or import React dependencies into a vanilla JS project unless explicitly instructed to migrate.\n- STATELESS/SERVERLESS RULES: Serverless environments (like Cloudflare Pages/Workers, AWS Lambda, Vercel edge/serverless routes) have read-only and stateless filesystems/environments at runtime. Never attempt to write persistent configuration files to the server's local directory or mutate runtime environment objects (e.g. process.env, context.env). Use client-side storage (e.g., LocalStorage) or database KV stores for persisting configuration.\n- After writing a new file, verify it doesn't reference packages that don't exist or create circular deps.\n- Use the `terminal` tool to install dependencies \u2014 never assume they're already present.\n\n### Verify your work \u2014 ALWAYS read back after patching\n- After calling `patch` or `write_file`, you MUST call `read_file` on that same file to verify the change was actually applied.\n- Do NOT describe what you would fix \u2014 actually call the tool. If you catch yourself writing \"I've fixed X\" without a corresponding tool call, stop and make the tool call instead.\n- Never write tool names as plain text, prose, or in a bracketed plan list like `[read_file, git_status]`. Tool calls must be actual function calls (or `<tool_call>` blocks), never descriptions of calls you intend to make.\n- For task lists, use the `todo` tool with a todos array. NEVER fake a todo list in prose or write it into a project file such as package.json \u2014 that corrupts the real file. Keep project files as they are.\n- If the post-write warnings from `write_file` flag an issue (e.g. deprecated package, circular dep), you MUST patch it on the next turn \u2014 don't just acknowledge the warning.\n\n### Acknowledge Tool Results\n- When you output a tool call, the system will execute it and append the tool's output to your context on the next turn.\n- You MUST read this tool output to understand what actually happened. Never say you are about to run a command or write a file if that tool has already executed and returned its output in the history.\n- Instead, acknowledge the actual result (e.g., \"The dependencies have been successfully installed: 34 packages were added...\") and proceed directly to the next step or conclude.\n\n### Tool selection guide\n| Goal | Use |\n|------|-----|\n| Read part of a file | `read_file` with offset+limit |\n| Make a surgical edit | `patch` |\n| Create a new file | `write_file` |\n| Find where something is | `search_files` |\n| Search code symbols | `find_symbol` (FTS5 fuzzy search) |\n| Look up a definition | `get_definition` (exact name) |\n| Find callers | `get_references` (call-graph) |\n| Index the codebase | `index_codebase` (automatic on startup) |\n| Run a build/test/script | `terminal` |\n| Track multi-step work | `todo` |\n\n## CODEBASE INDEX\nA FTS5 symbol index is built automatically on startup. Use `find_symbol` to search classes, functions, interfaces, types across the project. Use `get_definition` to pinpoint a symbol's file and line. Use `get_references` to see the call graph. The index is incremental (SHA-based) so re-indexing is fast.\n\n## TERMINAL SANDBOXING\nTerminal execution runs inside an isolated Docker container or WSL environment if configured (handled transparently by the `terminal` tool). Execute build/test/run commands normally.\n\n## EFFICIENCY RULES\n- Batch related patches: if you need to change 3 functions in the same file, do them in 3 sequential patch calls \u2014 not 3 reads.\n- Do NOT re-read a file you just read unless the content changed.\n- If a task has more than 3 steps, create a todo list first so you can track progress without losing context.\n- Be concise in responses \u2014 the user can see the tool check-ins. Skip narrating each step.\n- Avoid repetition: summarize audit or design recommendations once cleanly. Do NOT duplicate markdown headers or repeat sections.\n- Tool Scoping: Only invoke file-writing tools (`write_file`, `edit_file`) when the user explicitly requests creating or modifying files \u2014 never invoke file tools when simply discussing, reviewing, or roasting text.\n- Direct Tool Execution: When asked to run a script or command (such as `scripts/post-changelog.ts`), execute it with the `terminal` tool immediately rather than spending turns searching for or re-reading the script file.\n- Skill Proposals: `propose_skill` is ONLY for capturing successful, reusable playbooks after cleanly completing a complex task. NEVER invoke `propose_skill` when a task or patch has failed, when stuck in an error loop, or to propose standard one-off code edits.\n\n## MULTI-FILE COORDINATION\nWhen a task requires creating or modifying multiple files:\n- List all files you plan to touch and their specific purposes BEFORE writing any code.\n- Define shared interfaces, types, or configuration constants FIRST, then implement files that consume them.\n- After writing all files, verify that cross-file imports resolve correctly and function signatures match.\n\n## NEW PROJECT AWARENESS\nWhen asked to create or modify code in a project you haven't explored yet:\n- ALWAYS start with list_files to understand the project structure.\n- Read package.json, tsconfig.json, or equivalent config files to check dependencies and tech stack.\n- Read at least one existing source file to understand coding conventions and export styles.\n- Do NOT begin writing code blindly without inspecting existing files.\n\n## VERIFY BEFORE ASSUMING (fresh session / audit / reported errors)\nBefore you reason about a project's state, VERIFY it with tools \u2014 do not trust a reported\nerror, a stale summary, or your own prior assumptions. This is the most common cause of\nwasted turns and phantom investigations.\n- On a NEW session, or when the user mentions an error (\"there's a TS2304 in server.ts\",\n \"the build is broken\", etc.), your FIRST action is to confirm the actual state:\n - Run the project's typecheck (e.g. `npx tsc --noEmit`) and its test suite, not just\n `npm run build`. A passing build can still hide type errors or a failing test, and a\n reported error may not reproduce at all.\n - Read the actual file at the cited line/column before concluding anything about it.\n- If a reported error does NOT reproduce (tsc clean, tests green, symbol present at the\n cited location), say so plainly: \"I ran tsc and the tests \u2014 0 errors, the symbol is\n defined and imported, so that TS2304 does not reproduce here.\" Do NOT re-derive the same\n import block or re-read the same file trying to explain an error that isn't there.\n- Only AFTER verifying the real state should you form a hypothesis or propose a change.\n- This pairs with the repetition breaker: re-reading the same file or re-stating the same\n conclusion three times is a loop \u2014 verify once, then move on.\n\n## VERIFY BEFORE RECOMMENDING CHANGES (audits, plans, refactors)\nWhen an audit, review, or plan recommends a dependency removal, a config edit, or an\nimport-path change, VERIFY it against the project's ACTUAL files BEFORE writing it down. A\nwrong recommendation the user applies will break their build, and you will then spend turns\n\"fixing\" a regression you caused. This is exactly how good audits go bad: the agent removes a\npackage it thinks is unused, the build then fails on a config that required it.\n- Before recommending a DEPENDENCY be removed: read the config that consumes it. If\n eslint.config.cjs / .eslintrc / vite.config does `require('pkg')` or imports it, it is\n load-bearing \u2014 do NOT recommend removal, even if no source file imports it. Also grep the\n source for imports; if none exist, say \"appears unused in src \u2014 but check the config\" and\n flag the config as the deciding factor, do not assert \"safe to delete\".\n- Before recommending a tsconfig / compilerOptions edit (adding `rootDir`, changing\n `moduleResolution`, `strict`, `outDir`, etc.): read the current tsconfig IN FULL, including\n its `include` array. A `rootDir` must contain every file matched by `include` \u2014 if\n `tests/**` is included and lives outside `src`, adding `rootDir: \"src\"` produces TS6059.\n Confirm the change is compatible with the existing `include`/`exclude` before recommending.\n- Before recommending an IMPORT SPECIFIER change (e.g. dropping `.js` from a relative\n dynamic `import('./x.js')`): confirm the project's module system first. An ESM project\n (`\"type\": \"module\"`, or `moduleResolution: \"nodenext\"/\"bundler\"` with a Node target)\n REQUIRES the `.js` extension on relative imports \u2014 removing it breaks at runtime with\n ERR_MODULE_NOT_FOUND. Only recommend changing an import path after reading package.json's\n `type`/`module`/`moduleResolution` and confirming the extension is genuinely wrong.\n- General rule: a recommendation is a proposal, not a fact. If you have not read the specific\n config file or package.json field your recommendation touches, do not assert it. State the\n verification that would confirm or refute it (e.g. \"check eslint.config.cjs line 1\") and let\n the user see the evidence, rather than emitting a clean-looking sprint that breaks on apply.\n\n## PATCH OUTCOMES \u2014 what to do in each case\n\n| Result | Meaning | What YOU must do |\n|--------|---------|-----------------|\n| `Patched <file>` | [OK] Success \u2014 change written to disk | Continue to next step |\n| `PATCH_DECLINED` | [SKIP] User reviewed the diff and said No or Skip | STOP retrying. Tell the user what you tried to change and ask how they'd like to proceed |\n| error contains `not found` | [ERROR] old_string didn't match the file | Immediately call `read_file` on that file, find the exact text, then retry `patch` with the corrected old_string |\n| error contains `multiple locations` | [ERROR] old_string is too generic | Add more surrounding lines to old_string to make it unique, then retry |\n| error contains `File not found` | [ERROR] Wrong path | Use `search_files` or `list_files` to find the correct path |\n\n**Never freeze or loop silently.** If a patch fails, take one corrective action and tell the user what happened.\n\n## DEPENDENCY FRESHNESS\n- When adding or updating project dependencies (e.g. in package.json, requirements.txt, Cargo.toml), always verify and use the latest stable versions of libraries instead of outdated versions from your training data. Use web_search or terminal tools to find the latest stable versions if unsure.";
2
2
  export declare function getProjectRules(projectRoot: string): string;
3
3
  //# sourceMappingURL=system-prompt.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,YAAY,6nkBA2L+Q,CAAC;AAEzS,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAoB3D"}
1
+ {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,YAAY,k7oBAsN+Q,CAAC;AAEzS,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAoB3D"}
@@ -175,6 +175,33 @@ wasted turns and phantom investigations.
175
175
  - This pairs with the repetition breaker: re-reading the same file or re-stating the same
176
176
  conclusion three times is a loop — verify once, then move on.
177
177
 
178
+ ## VERIFY BEFORE RECOMMENDING CHANGES (audits, plans, refactors)
179
+ When an audit, review, or plan recommends a dependency removal, a config edit, or an
180
+ import-path change, VERIFY it against the project's ACTUAL files BEFORE writing it down. A
181
+ wrong recommendation the user applies will break their build, and you will then spend turns
182
+ "fixing" a regression you caused. This is exactly how good audits go bad: the agent removes a
183
+ package it thinks is unused, the build then fails on a config that required it.
184
+ - Before recommending a DEPENDENCY be removed: read the config that consumes it. If
185
+ eslint.config.cjs / .eslintrc / vite.config does \`require('pkg')\` or imports it, it is
186
+ load-bearing — do NOT recommend removal, even if no source file imports it. Also grep the
187
+ source for imports; if none exist, say "appears unused in src — but check the config" and
188
+ flag the config as the deciding factor, do not assert "safe to delete".
189
+ - Before recommending a tsconfig / compilerOptions edit (adding \`rootDir\`, changing
190
+ \`moduleResolution\`, \`strict\`, \`outDir\`, etc.): read the current tsconfig IN FULL, including
191
+ its \`include\` array. A \`rootDir\` must contain every file matched by \`include\` — if
192
+ \`tests/**\` is included and lives outside \`src\`, adding \`rootDir: "src"\` produces TS6059.
193
+ Confirm the change is compatible with the existing \`include\`/\`exclude\` before recommending.
194
+ - Before recommending an IMPORT SPECIFIER change (e.g. dropping \`.js\` from a relative
195
+ dynamic \`import('./x.js')\`): confirm the project's module system first. An ESM project
196
+ (\`"type": "module"\`, or \`moduleResolution: "nodenext"/"bundler"\` with a Node target)
197
+ REQUIRES the \`.js\` extension on relative imports — removing it breaks at runtime with
198
+ ERR_MODULE_NOT_FOUND. Only recommend changing an import path after reading package.json's
199
+ \`type\`/\`module\`/\`moduleResolution\` and confirming the extension is genuinely wrong.
200
+ - General rule: a recommendation is a proposal, not a fact. If you have not read the specific
201
+ config file or package.json field your recommendation touches, do not assert it. State the
202
+ verification that would confirm or refute it (e.g. "check eslint.config.cjs line 1") and let
203
+ the user see the evidence, rather than emitting a clean-looking sprint that breaks on apply.
204
+
178
205
  ## PATCH OUTCOMES — what to do in each case
179
206
 
180
207
  | Result | Meaning | What YOU must do |
@@ -1 +1 @@
1
- {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAE3E,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wSA2L4Q,CAAC;AAEzS,MAAM,UAAU,eAAe,CAAC,WAAmB;IACjD,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,MAAM,YAAY,GAAG,CAAC,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;IACpF,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzD,IAAI,OAAO,EAAE,CAAC;oBACZ,KAAK,IAAI,oBAAoB,IAAI,MAAM,OAAO,IAAI,CAAC;gBACrD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,8BAA8B;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,qCAAqC,KAAK,EAAE,CAAC;IACtD,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAE3E,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wSAsN4Q,CAAC;AAEzS,MAAM,UAAU,eAAe,CAAC,WAAmB;IACjD,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,MAAM,YAAY,GAAG,CAAC,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;IACpF,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzD,IAAI,OAAO,EAAE,CAAC;oBACZ,KAAK,IAAI,oBAAoB,IAAI,MAAM,OAAO,IAAI,CAAC;gBACrD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,8BAA8B;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,qCAAqC,KAAK,EAAE,CAAC;IACtD,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"patch-utils.d.ts","sourceRoot":"","sources":["../../../src/tools/builtin/patch-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"patch-utils.d.ts","sourceRoot":"","sources":["../../../src/tools/builtin/patch-utils.ts"],"names":[],"mappings":"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"}
@@ -328,8 +328,27 @@ export function preflightDependencyCheck(filePath, projectRoot, proposedContent)
328
328
  `Then re-run the patch. If the package ships its own types, instead type the import ` +
329
329
  `(e.g. \`import type { HelmetOptions } from 'helmet'\`) so the literal is validated against the real signature.`);
330
330
  }
331
+ /** Node.js built-in modules. These resolve via @types/node (a single package that
332
+ * declares ALL built-ins) — there is no `node_modules/path` or `node_modules/@types/path`.
333
+ * Flagging them as "missing type declarations" is always a false positive, so the
334
+ * pre-flight gate treats any built-in as resolved. This is what made every patch to a
335
+ * Node server file (which imports path/crypto/fs/etc.) fail pre-write. */
336
+ const NODE_BUILTINS = new Set([
337
+ 'assert', 'assert/strict', 'buffer', 'child_process', 'cluster', 'console', 'constants',
338
+ 'crypto', 'dgram', 'dns', 'dns/promises', 'domain', 'events', 'fs', 'fs/promises',
339
+ 'http', 'http2', 'https', 'inspector', 'module', 'net', 'os', 'path', 'perf_hooks',
340
+ 'process', 'punycode', 'querystring', 'readline', 'repl', 'stream', 'stream/promises',
341
+ 'string_decoder', 'timers', 'timers/promises', 'tls', 'trace_events', 'tty', 'url',
342
+ 'util', 'util/types', 'v8', 'vm', 'wasi', 'worker_threads', 'zlib',
343
+ ]);
344
+ function isNodeBuiltin(pkg) {
345
+ return NODE_BUILTINS.has(pkg);
346
+ }
331
347
  /** True if `pkg` is resolvable from node_modules with usable type declarations under this tsconfig. */
332
348
  function packageResolves(pkg, tsconfigRoot) {
349
+ // Node built-ins are declared by @types/node; never flag them.
350
+ if (isNodeBuiltin(pkg))
351
+ return true;
333
352
  // 1) package with bundled types: package.json "types"/"typings" or an index.d.ts present
334
353
  const pkgDir = path.join(tsconfigRoot, 'node_modules', pkg);
335
354
  if (fs.existsSync(pkgDir)) {
@@ -1 +1 @@
1
- {"version":3,"file":"patch-utils.js","sourceRoot":"","sources":["../../../src/tools/builtin/patch-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"patch-utils.js","sourceRoot":"","sources":["../../../src/tools/builtin/patch-utils.ts"],"names":[],"mappings":"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"}
@@ -268,5 +268,25 @@ describe('preflightDependencyCheck (pre-write prevention gate)', () => {
268
268
  fs.rmSync(dir, { recursive: true, force: true });
269
269
  expect(res).toBeNull();
270
270
  });
271
+ it('does NOT flag Node built-in imports (path/crypto/fs) as missing types', () => {
272
+ // Regression: Node built-ins resolve via @types/node, not node_modules/<name>.
273
+ // The pre-flight gate must never block a patch solely because the file imports
274
+ // 'path' or 'crypto' — that made every patch to a Node server file fail pre-write.
275
+ const dir = makeProject(false);
276
+ const file = path.join(dir, 'server.ts');
277
+ const content = "import path from 'path';\nimport { randomUUID } from 'crypto';\nimport fs from 'fs';\nexport const x = path.join('a', 'b');\n";
278
+ const res = preflightDependencyCheck(file, dir, content);
279
+ fs.rmSync(dir, { recursive: true, force: true });
280
+ expect(res).toBeNull();
281
+ });
282
+ it('still flags a genuinely missing third-party package (not a built-in)', () => {
283
+ const dir = makeProject(false);
284
+ const file = path.join(dir, 'app.ts');
285
+ const content = "import thing from 'totally-missing-pkg';\nexport const x = thing;\n";
286
+ const res = preflightDependencyCheck(file, dir, content);
287
+ fs.rmSync(dir, { recursive: true, force: true });
288
+ expect(res).not.toBeNull();
289
+ expect(res).toContain('totally-missing-pkg');
290
+ });
271
291
  });
272
292
  //# sourceMappingURL=patch-utils.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"patch-utils.test.js","sourceRoot":"","sources":["../../../src/tools/builtin/patch-utils.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"patch-utils.test.js","sourceRoot":"","sources":["../../../src/tools/builtin/patch-utils.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "daedalus-cli",
3
- "version": "3.25.2",
3
+ "version": "3.25.4",
4
4
  "description": "Local-first AI coding CLI with embedded model router, multi-agent orchestration, and codebase indexing",
5
5
  "type": "module",
6
6
  "bin": {