diff --git a/.repo-arch/adapters/distill/0000100_adapters.safetensors b/.repo-arch/adapters/distill/0000100_adapters.safetensors new file mode 100644 index 0000000000..523b7684bf Binary files /dev/null and b/.repo-arch/adapters/distill/0000100_adapters.safetensors differ diff --git a/.repo-arch/adapters/distill/0000200_adapters.safetensors b/.repo-arch/adapters/distill/0000200_adapters.safetensors new file mode 100644 index 0000000000..a2ae2c20da Binary files /dev/null and b/.repo-arch/adapters/distill/0000200_adapters.safetensors differ diff --git a/.repo-arch/adapters/distill/0000300_adapters.safetensors b/.repo-arch/adapters/distill/0000300_adapters.safetensors new file mode 100644 index 0000000000..32095a87d6 Binary files /dev/null and b/.repo-arch/adapters/distill/0000300_adapters.safetensors differ diff --git a/.repo-arch/adapters/distill/adapter_config.json b/.repo-arch/adapters/distill/adapter_config.json new file mode 100644 index 0000000000..67911173f4 --- /dev/null +++ b/.repo-arch/adapters/distill/adapter_config.json @@ -0,0 +1,41 @@ +{ + "adapter_path": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/adapters/distill", + "batch_size": 4, + "clear_cache_threshold": 0, + "config": null, + "data": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/training-data/distill", + "fine_tune_type": "lora", + "grad_accumulation_steps": 1, + "grad_checkpoint": false, + "iters": 300, + "learning_rate": 1e-05, + "lora_parameters": { + "rank": 8, + "dropout": 0.0, + "scale": 20.0 + }, + "lr_schedule": null, + "mask_prompt": false, + "max_seq_length": 2048, + "model": "Qwen/Qwen2.5-Coder-1.5B-Instruct", + "num_layers": 4, + "optimizer": "adam", + "optimizer_config": { + "adam": {}, + "adamw": {}, + "muon": {}, + "sgd": {}, + "adafactor": {} + }, + "project_name": null, + "report_to": null, + "resume_adapter_file": null, + "save_every": 100, + "seed": 0, + "steps_per_eval": 10, + "steps_per_report": 10, + "test": false, + "test_batches": 500, + "train": true, + "val_batches": 10 +} \ No newline at end of file diff --git a/.repo-arch/adapters/distill/adapters.safetensors b/.repo-arch/adapters/distill/adapters.safetensors new file mode 100644 index 0000000000..32095a87d6 Binary files /dev/null and b/.repo-arch/adapters/distill/adapters.safetensors differ diff --git a/.repo-arch/adapters/hybrid-lora/0000100_adapters.safetensors b/.repo-arch/adapters/hybrid-lora/0000100_adapters.safetensors new file mode 100644 index 0000000000..1af3c76cfd Binary files /dev/null and b/.repo-arch/adapters/hybrid-lora/0000100_adapters.safetensors differ diff --git a/.repo-arch/adapters/hybrid-lora/0000200_adapters.safetensors b/.repo-arch/adapters/hybrid-lora/0000200_adapters.safetensors new file mode 100644 index 0000000000..b757ef96aa Binary files /dev/null and b/.repo-arch/adapters/hybrid-lora/0000200_adapters.safetensors differ diff --git a/.repo-arch/adapters/hybrid-lora/0000300_adapters.safetensors b/.repo-arch/adapters/hybrid-lora/0000300_adapters.safetensors new file mode 100644 index 0000000000..ce4db060fd Binary files /dev/null and b/.repo-arch/adapters/hybrid-lora/0000300_adapters.safetensors differ diff --git a/.repo-arch/adapters/hybrid-lora/adapter_config.json b/.repo-arch/adapters/hybrid-lora/adapter_config.json new file mode 100644 index 0000000000..0e8fbee21b --- /dev/null +++ b/.repo-arch/adapters/hybrid-lora/adapter_config.json @@ -0,0 +1,41 @@ +{ + "adapter_path": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/adapters/hybrid-lora", + "batch_size": 4, + "clear_cache_threshold": 0, + "config": null, + "data": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/training-data/hybrid", + "fine_tune_type": "lora", + "grad_accumulation_steps": 1, + "grad_checkpoint": false, + "iters": 300, + "learning_rate": 1e-05, + "lora_parameters": { + "rank": 8, + "dropout": 0.0, + "scale": 20.0 + }, + "lr_schedule": null, + "mask_prompt": false, + "max_seq_length": 2048, + "model": "Qwen/Qwen2.5-Coder-1.5B-Instruct", + "num_layers": 4, + "optimizer": "adam", + "optimizer_config": { + "adam": {}, + "adamw": {}, + "muon": {}, + "sgd": {}, + "adafactor": {} + }, + "project_name": null, + "report_to": null, + "resume_adapter_file": null, + "save_every": 100, + "seed": 0, + "steps_per_eval": 10, + "steps_per_report": 10, + "test": false, + "test_batches": 500, + "train": true, + "val_batches": 10 +} \ No newline at end of file diff --git a/.repo-arch/adapters/hybrid-lora/adapters.safetensors b/.repo-arch/adapters/hybrid-lora/adapters.safetensors new file mode 100644 index 0000000000..ce4db060fd Binary files /dev/null and b/.repo-arch/adapters/hybrid-lora/adapters.safetensors differ diff --git a/.repo-arch/adapters/repo-arch-b8125c4/0000100_adapters.safetensors b/.repo-arch/adapters/repo-arch-b8125c4/0000100_adapters.safetensors new file mode 100644 index 0000000000..102762f593 Binary files /dev/null and b/.repo-arch/adapters/repo-arch-b8125c4/0000100_adapters.safetensors differ diff --git a/.repo-arch/adapters/repo-arch-b8125c4/adapter_config.json b/.repo-arch/adapters/repo-arch-b8125c4/adapter_config.json new file mode 100644 index 0000000000..fbfd1d9135 --- /dev/null +++ b/.repo-arch/adapters/repo-arch-b8125c4/adapter_config.json @@ -0,0 +1,41 @@ +{ + "adapter_path": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/adapters/repo-arch-b8125c4", + "batch_size": 4, + "clear_cache_threshold": 0, + "config": null, + "data": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/training-data", + "fine_tune_type": "lora", + "grad_accumulation_steps": 1, + "grad_checkpoint": false, + "iters": 200, + "learning_rate": 1e-05, + "lora_parameters": { + "rank": 8, + "dropout": 0.0, + "scale": 20.0 + }, + "lr_schedule": null, + "mask_prompt": false, + "max_seq_length": 2048, + "model": "Qwen/Qwen2.5-Coder-1.5B-Instruct", + "num_layers": 4, + "optimizer": "adam", + "optimizer_config": { + "adam": {}, + "adamw": {}, + "muon": {}, + "sgd": {}, + "adafactor": {} + }, + "project_name": null, + "report_to": null, + "resume_adapter_file": null, + "save_every": 100, + "seed": 0, + "steps_per_eval": 10, + "steps_per_report": 10, + "test": false, + "test_batches": 500, + "train": true, + "val_batches": 10 +} \ No newline at end of file diff --git a/.repo-arch/adapters/repo-arch-b8125c4/adapters.safetensors b/.repo-arch/adapters/repo-arch-b8125c4/adapters.safetensors new file mode 100644 index 0000000000..102762f593 Binary files /dev/null and b/.repo-arch/adapters/repo-arch-b8125c4/adapters.safetensors differ diff --git a/.repo-arch/adapters/teacher7b-v2/0000100_adapters.safetensors b/.repo-arch/adapters/teacher7b-v2/0000100_adapters.safetensors new file mode 100644 index 0000000000..be002682a3 Binary files /dev/null and b/.repo-arch/adapters/teacher7b-v2/0000100_adapters.safetensors differ diff --git a/.repo-arch/adapters/teacher7b-v2/0000200_adapters.safetensors b/.repo-arch/adapters/teacher7b-v2/0000200_adapters.safetensors new file mode 100644 index 0000000000..2a32bb4767 Binary files /dev/null and b/.repo-arch/adapters/teacher7b-v2/0000200_adapters.safetensors differ diff --git a/.repo-arch/adapters/teacher7b-v2/0000300_adapters.safetensors b/.repo-arch/adapters/teacher7b-v2/0000300_adapters.safetensors new file mode 100644 index 0000000000..0f861ea961 Binary files /dev/null and b/.repo-arch/adapters/teacher7b-v2/0000300_adapters.safetensors differ diff --git a/.repo-arch/adapters/teacher7b-v2/adapter_config.json b/.repo-arch/adapters/teacher7b-v2/adapter_config.json new file mode 100644 index 0000000000..9739b5e55e --- /dev/null +++ b/.repo-arch/adapters/teacher7b-v2/adapter_config.json @@ -0,0 +1,41 @@ +{ + "adapter_path": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/adapters/teacher7b-v2", + "batch_size": 4, + "clear_cache_threshold": 0, + "config": null, + "data": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/training-data/teacher7b", + "fine_tune_type": "lora", + "grad_accumulation_steps": 1, + "grad_checkpoint": false, + "iters": 300, + "learning_rate": 1e-05, + "lora_parameters": { + "rank": 8, + "dropout": 0.0, + "scale": 20.0 + }, + "lr_schedule": null, + "mask_prompt": false, + "max_seq_length": 2048, + "model": "Qwen/Qwen2.5-Coder-1.5B-Instruct", + "num_layers": 4, + "optimizer": "adam", + "optimizer_config": { + "adam": {}, + "adamw": {}, + "muon": {}, + "sgd": {}, + "adafactor": {} + }, + "project_name": null, + "report_to": null, + "resume_adapter_file": null, + "save_every": 100, + "seed": 0, + "steps_per_eval": 10, + "steps_per_report": 10, + "test": false, + "test_batches": 500, + "train": true, + "val_batches": 10 +} \ No newline at end of file diff --git a/.repo-arch/adapters/teacher7b-v2/adapters.safetensors b/.repo-arch/adapters/teacher7b-v2/adapters.safetensors new file mode 100644 index 0000000000..0f861ea961 Binary files /dev/null and b/.repo-arch/adapters/teacher7b-v2/adapters.safetensors differ diff --git a/.repo-arch/adapters/teacher7b/0000100_adapters.safetensors b/.repo-arch/adapters/teacher7b/0000100_adapters.safetensors new file mode 100644 index 0000000000..12e182fd68 Binary files /dev/null and b/.repo-arch/adapters/teacher7b/0000100_adapters.safetensors differ diff --git a/.repo-arch/adapters/teacher7b/0000200_adapters.safetensors b/.repo-arch/adapters/teacher7b/0000200_adapters.safetensors new file mode 100644 index 0000000000..0edf2b1c6d Binary files /dev/null and b/.repo-arch/adapters/teacher7b/0000200_adapters.safetensors differ diff --git a/.repo-arch/adapters/teacher7b/0000300_adapters.safetensors b/.repo-arch/adapters/teacher7b/0000300_adapters.safetensors new file mode 100644 index 0000000000..fc4c245ee9 Binary files /dev/null and b/.repo-arch/adapters/teacher7b/0000300_adapters.safetensors differ diff --git a/.repo-arch/adapters/teacher7b/adapter_config.json b/.repo-arch/adapters/teacher7b/adapter_config.json new file mode 100644 index 0000000000..2e400bbb58 --- /dev/null +++ b/.repo-arch/adapters/teacher7b/adapter_config.json @@ -0,0 +1,41 @@ +{ + "adapter_path": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/adapters/teacher7b", + "batch_size": 4, + "clear_cache_threshold": 0, + "config": null, + "data": "/Users/pavel/repos/fiale-plus/pi/.repo-arch/training-data/teacher7b", + "fine_tune_type": "lora", + "grad_accumulation_steps": 1, + "grad_checkpoint": false, + "iters": 300, + "learning_rate": 1e-05, + "lora_parameters": { + "rank": 8, + "dropout": 0.0, + "scale": 20.0 + }, + "lr_schedule": null, + "mask_prompt": false, + "max_seq_length": 2048, + "model": "Qwen/Qwen2.5-Coder-1.5B-Instruct", + "num_layers": 4, + "optimizer": "adam", + "optimizer_config": { + "adam": {}, + "adamw": {}, + "muon": {}, + "sgd": {}, + "adafactor": {} + }, + "project_name": null, + "report_to": null, + "resume_adapter_file": null, + "save_every": 100, + "seed": 0, + "steps_per_eval": 10, + "steps_per_report": 10, + "test": false, + "test_batches": 500, + "train": true, + "val_batches": 5 +} \ No newline at end of file diff --git a/.repo-arch/adapters/teacher7b/adapters.safetensors b/.repo-arch/adapters/teacher7b/adapters.safetensors new file mode 100644 index 0000000000..fc4c245ee9 Binary files /dev/null and b/.repo-arch/adapters/teacher7b/adapters.safetensors differ diff --git a/.repo-arch/eval/pi-behavioral-questions.md b/.repo-arch/eval/pi-behavioral-questions.md new file mode 100644 index 0000000000..423a428d6e --- /dev/null +++ b/.repo-arch/eval/pi-behavioral-questions.md @@ -0,0 +1,75 @@ +# pi Behavioral Eval Questions + +Fixed question set for comparing base model, retrieval-only, LoRA-only, and retrieval+LoRA. + +## Package Boundaries + +1. Which packages tend to co-change together, and what does that imply about their coupling? +2. When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect? +3. What architectural decisions are visible around the unified LLM provider layer? +4. What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`? +5. Which package boundaries are the most fragile based on historical breakages? + +## Risky Files + +6. Which files have been reverted most often, and why? +7. What are the riskiest files to modify in the coding agent package? +8. Which files in the TUI package have required repeated fixes? +9. What files in the AI package have no test coverage despite high change frequency? +10. Which configuration files change without corresponding test updates? + +## Historical Patterns + +11. What historical breakages should I know before changing the provider routing? +12. Where has CLI state/config handling been fragile? +13. What changed repeatedly in the TUI package and why? +14. What web UI changes historically required backend or agent changes? +15. What is the reversion history of the coding agent README? +16. How has the changelog management pattern evolved across packages? + +## Test Coverage + +17. Which packages have the most untested high-churn files? +18. What would you tell a new contributor about test expectations before touching package boundaries? +19. Which files have been fixed most often without corresponding test additions? +20. Are there test gaps in the AI provider layer specifically? + +## Coding Agent Internals + +21. What should a coding agent inspect before modifying provider-tool-calling behavior? +22. What is the relationship between interactive mode and theme configuration historically? +23. How fragile is the agent session lifecycle based on commit patterns? +24. What modes have been added or removed from the coding agent? +25. What is the history of model resolver changes? + +## AI Provider Layer + +26. How many LLM providers are supported and how are they registered? +27. What is the architectural pattern for adding a new provider? +28. Which provider has the most complex auth requirements historically? +29. How have streaming options evolved across providers? +30. What is the relationship between model generation scripts and the type system? + +## TUI/UI + +31. What are the most frequently changed TUI components? +32. How has the keybinding system evolved? +33. What theme-related changes have been made and reverted? +34. What is the history of the prompt input handling? +35. How has error display evolved in the TUI? + +## Root/Infrastructure + +36. What npm scripts and config are essential for the build pipeline? +37. How has the CI configuration evolved? +38. What is the history of dependency management (package-lock churn)? +39. Which root-level config files are most frequently modified and why? +40. What release process conventions are visible in the commit history? + +## Cross-Cutting + +41. What is the relationship between CHANGELOG updates and actual code changes across packages? +42. How do model updates cascade through the system? +43. What is the most common cause of bugs based on fix commit patterns? +44. How does the system handle provider API changes over time? +45. What architectural debt is visible from the commit history? diff --git a/.repo-arch/eval/questions.jsonl b/.repo-arch/eval/questions.jsonl new file mode 100644 index 0000000000..8969203523 --- /dev/null +++ b/.repo-arch/eval/questions.jsonl @@ -0,0 +1,45 @@ +{"id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?"} +{"id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?"} +{"id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?"} +{"id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?"} +{"id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?"} +{"id": 6, "question": "Which files have been reverted most often, and why?"} +{"id": 7, "question": "What are the riskiest files to modify in the coding agent package?"} +{"id": 8, "question": "Which files in the TUI package have required repeated fixes?"} +{"id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?"} +{"id": 10, "question": "Which configuration files change without corresponding test updates?"} +{"id": 11, "question": "What historical breakages should I know before changing the provider routing?"} +{"id": 12, "question": "Where has CLI state/config handling been fragile?"} +{"id": 13, "question": "What changed repeatedly in the TUI package and why?"} +{"id": 14, "question": "What web UI changes historically required backend or agent changes?"} +{"id": 15, "question": "What is the reversion history of the coding agent README?"} +{"id": 16, "question": "How has the changelog management pattern evolved across packages?"} +{"id": 17, "question": "Which packages have the most untested high-churn files?"} +{"id": 18, "question": "What would you tell a new contributor about test expectations before touching package boundaries?"} +{"id": 19, "question": "Which files have been fixed most often without corresponding test additions?"} +{"id": 20, "question": "Are there test gaps in the AI provider layer specifically?"} +{"id": 21, "question": "What should a coding agent inspect before modifying provider-tool-calling behavior?"} +{"id": 22, "question": "What is the relationship between interactive mode and theme configuration historically?"} +{"id": 23, "question": "How fragile is the agent session lifecycle based on commit patterns?"} +{"id": 24, "question": "What modes have been added or removed from the coding agent?"} +{"id": 25, "question": "What is the history of model resolver changes?"} +{"id": 26, "question": "How many LLM providers are supported and how are they registered?"} +{"id": 27, "question": "What is the architectural pattern for adding a new provider?"} +{"id": 28, "question": "Which provider has the most complex auth requirements historically?"} +{"id": 29, "question": "How have streaming options evolved across providers?"} +{"id": 30, "question": "What is the relationship between model generation scripts and the type system?"} +{"id": 31, "question": "What are the most frequently changed TUI components?"} +{"id": 32, "question": "How has the keybinding system evolved?"} +{"id": 33, "question": "What theme-related changes have been made and reverted?"} +{"id": 34, "question": "What is the history of the prompt input handling?"} +{"id": 35, "question": "How has error display evolved in the TUI?"} +{"id": 36, "question": "What npm scripts and config are essential for the build pipeline?"} +{"id": 37, "question": "How has the CI configuration evolved?"} +{"id": 38, "question": "What is the history of dependency management (package-lock churn)?"} +{"id": 39, "question": "Which root-level config files are most frequently modified and why?"} +{"id": 40, "question": "What release process conventions are visible in the commit history?"} +{"id": 41, "question": "What is the relationship between CHANGELOG updates and actual code changes across packages?"} +{"id": 42, "question": "How do model updates cascade through the system?"} +{"id": 43, "question": "What is the most common cause of bugs based on fix commit patterns?"} +{"id": 44, "question": "How does the system handle provider API changes over time?"} +{"id": 45, "question": "What architectural debt is visible from the commit history?"} diff --git a/.repo-arch/eval/runs/distill-45.jsonl b/.repo-arch/eval/runs/distill-45.jsonl new file mode 100644 index 0000000000..9cf237b749 --- /dev/null +++ b/.repo-arch/eval/runs/distill-45.jsonl @@ -0,0 +1,45 @@ +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "distill", "answer": "The packages that tend to co-change together are `packages/ai` and `packages/coding-agent`. This implies that changes to these packages are often related and may be influenced by each other."} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "distill", "answer": "To inspect other files when modifying `packages/ai/src/models.generated.ts`, you should review the commit history for any changes that affected this file. The commit history provided includes the following relevant commits:\n\n- Commit sha=\"4432fc9b72a5\": Added a new changelog rule to prevent modifying released versions.\n- Commit sha=\"f63a353779d1\": Added documentation for bundling other pi packages with `bundledDependencies`.\n- Commit sha=\"2bd7b79a9bb1\": Fixed the `selectCancel` keybinding to include both escape and Ctrl+C.\n- Commit sha=\"283ad4d3708c\": Fixed the `isImageLine` method to detect image escape sequences anywhere in the line.\n- Commit sha=\"ff50d45c0478\": Added documentation for the `compaction` feature.\n- Commit sha=\"18e9c17ae545\": Added a note that compaction should generally be avoided.\n\nBy examining these commits, you can identify any changes that might have affected `packages/ai/src/models.generated.ts` and ensure that these changes are properly tested and reviewed before modifying the file."} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "distill", "answer": "The unified LLM provider layer is visible in the following files:\n\n- `packages/ai/src/providers/anthropic.ts`\n- `packages/ai/src/types.ts`\n\nThese files are part of the `packages/ai` directory."} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "distill", "answer": "The risk profile of changing `packages/coding-agent/src/core/agent-session.ts` is generally low. The file has been fixed 94 separate times (commits: `6a5f04ce1fb1`, `019ad0ec115c`, `9e0255b10bea`, `d4b473e29810`, `35ebe8887093`, `828c40cf6898`) without introducing any breaking changes or regressions."} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "distill", "answer": "Based on the commit history provided, the most fragile package boundaries are those related to compaction and branch details. The changes in `packages/coding-agent/CHANGELOG.md` and `packages/coding-agent/docs/compaction.md` indicate that these areas are likely to be more prone to breaking changes."} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "distill", "answer": "The files that have been reverted most often are `packages/ai/src/models.generated.ts`, with 14 revert commits affecting these files. Reverted changes indicate instability \u2014 review before modifying these areas."} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "distill", "answer": "The riskiest files to modify in the coding agent package are those that contain bug fixes or changes that could potentially introduce new bugs or instability. Based on the commit history provided, the riskiest files are:\n\n1. `packages/coding-agent/src/core/system-prompt.ts`\n2. `packages/coding-agent/src/core/agent-session.ts`\n3. `packages/coding-agent/src/core/export-html/index.ts`\n\nThese files have been modified multiple times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent): skip hook init when no hooks configured, fixes #161: disable theme watcher in print mode) and are therefore considered high-risk areas for modification."} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "distill", "answer": "The files in the TUI package that have required repeated fixes are:\n\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/test/markdown.test.ts`"} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "distill", "answer": "The AI package does not have any test coverage despite high change frequency."} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "distill", "answer": "The configuration files that change without corresponding test updates are:\n\n- `packages/agent/docs/agent-harness.md`\n- `packages/agent/test/harness/agent-harness-stream.test.ts`\n- `package-lock.json`\n- `package.json`\n\nThese changes are part of the repeated bug fixes in `packages/ai/src/models.generated.ts`, which were fixed 105 separate times (commits: fix(ai): Deduplicate models and add Anthropic aliases, docs(ai): Fix model names in README examples, fix(ai): Fix OpenAI Responses provider multi-turn conversation support, fix(ai): Fix browse)."} +{"question_id": 11, "question": "What historical breakages should I know before changing the provider routing?", "mode": "distill", "answer": "To avoid breaking changes in the provider routing, you should review the commit history of the `packages/ai` and `packages/coding-agent` repositories. The most recent commit that adds the `OpenRouterProviderRouting` type to the `packages/ai/src/types.ts` file is commit `dac7474da237`. This commit was made on December 2, 2023, and it adds the `OpenRouterProviderRouting` type to the `types.ts` file. This change should be considered when planning any changes to the provider routing."} +{"question_id": 12, "question": "Where has CLI state/config handling been fragile?", "mode": "distill", "answer": "The answer is not provided in the context."} +{"question_id": 13, "question": "What changed repeatedly in the TUI package and why?", "mode": "distill", "answer": "The TUI package was repeatedly fixed in the following commits:\n\n- **Add 'pi' command alias and fix getApiKey import**: This commit introduced a new command alias (`pi`) and fixed the import of `getApiKey`.\n- **docs: clarify auto-compaction options and fix flicker claim**: This commit updated the documentation to clarify auto-compaction options and fixed the flicker claim.\n- **Add /branch command for conversation branching (fixes #16)**: This commit added a new command for conversation branching and fixed the issue described in #16.\n- **Fix editor cursor navigation**: This commit addressed the issue of the editor cursor navigation.\n\nThe total number of commits repeated in the TUI package is 4."} +{"question_id": 14, "question": "What web UI changes historically required backend or agent changes?", "mode": "distill", "answer": "Web UI changes historically required backend or agent changes."} +{"question_id": 15, "question": "What is the reversion history of the coding agent README?", "mode": "distill", "answer": "The reversion history of the coding agent README is as follows:\n\n- Commit sha=\"35ebe8887093\": Repeated bug fixes in packages/coding-agent/README.md: this file was fixed 47 separate times (commits: Add 'pi' command alias and fix getApiKey import, docs: clarify auto-compaction options and fix flicker claim, Add /branch command for conversation branching (fixes #16), Fix editor cursor navigationatio\n- Commit sha=\"828c40cf6898\": Fix the issue of aborting retries when an extension customizes the editor (#1364)\n- Commit sha=\"863341fbf5e8\": fix(tui): render the checkboxes in the to-do list items\n- Commit sha=\"ddb5a4497ffc\": Remove the garbage the agent left behind and commited\n- Commit sha=\"4c2d78f6cb4f\": Add the kill ring and undo features to the Input component (#1373)\n- Commit sha=\"6a5f04ce1fb1\": Add the codex bridge prompt in the html export\n- Commit sha=\"30964e0c34a1\": update package-lock.json with minor changes to the package.json and dependencies\n- Commit sha=\"92d711d7c09c\": update package-lock.json with minor changes to the package.json and dependencies\n- Commit sha=\"9e0255b14c39\": update package-lock.json with minor changes to the package.json and dependencies\n- Commit sha=\"251c34369e79\": update package-lock.json with minor changes to the package.json and dependencies\n- Commit sha=\"9e0255b"} +{"question_id": 16, "question": "How has the changelog management pattern evolved across packages?", "mode": "distill", "answer": "The changelog management pattern has evolved across packages. The most significant changes include:\n\n1. Coupled change: packages/coding-agent/CHANGELOG.md and packages/coding-agent/src/modes/interactive/interactive-mode.ts were modified together in 186 commits.\n\n2. Repeated bug fixes in packages/coding-agent/src/modes/interactive/interactive-mode.ts: this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent): skip hook init when no hooks configured, fixes #161: disable theme watcher in print mode).\n\n3. 14 revert commits found affecting packages/ai/src/models.generated.ts. Reverted changes indicate instability \u2014 review before modifying these areas."} +{"question_id": 17, "question": "Which packages have the most untested high-churn files?", "mode": "distill", "answer": "To determine which packages have the most untested high-churn files, we need to analyze the commit history and identify which packages have been modified frequently and without corresponding test file changes.\n\n1. **Identify packages with test changes**:\n - `packages/coding-agent` (mode/interactive/interactive-mode.ts): This file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent): skip hook init when no hooks configured, fixes #161: disable theme watcher in print mode)\n - `packages/tui` (test/markdown.test.ts): This file was modified together in 186 commits (subjects: Simplify compaction: remove proactive abort, use Agent.continue() for retry, Fix branch selector for single message and --no-session)\n\n2. **Analyze test coverage**:\n - `packages/coding-agent` (interactive-mode.ts): This file was fixed without any corresponding test file changes. This suggests that the tests for this file are likely to be minimal or absent.\n - `packages/tui` (test/markdown.test.ts): This file was modified together in 186 commits, which is a significant number. This indicates that the tests for this file are likely to be comprehensive.\n\n3. **Conclusion**:\n - `packages/coding-agent` (interactive-mode.ts): This package has the most untested high-churn files (no corresponding test file changes).\n\nTherefore, the answer is that `packages/coding-agent` has the most untested high-churn files."} +{"question_id": 18, "question": "What would you tell a new contributor about test expectations before touching package boundaries?", "mode": "distill", "answer": "To ensure that new contributors are aware of the importance of test expectations before touching package boundaries, you should review the test coverage history and commit history of packages that are about to be modified. This can be done by examining the commit history for any tests that were added or modified in the packages that are about to be changed. Additionally, you can review the test coverage history of packages that are already being worked on to identify any areas of test coverage that may need to be improved. By doing this, you can help ensure that the tests are comprehensive and that any bugs introduced in the packages are caught by automated tests."} +{"question_id": 19, "question": "Which files have been fixed most often without corresponding test additions?", "mode": "distill", "answer": "The files that have been fixed most often without corresponding test additions are:\n\n- `packages/ai/test/openai-responses-reasoning-replay-e2e.test.ts`\n- `packages/coding-agent/src/modes/interactive/theme/theme.ts`\n\nThese commits have fixed the bugs in the respective files without adding any corresponding test files."} +{"question_id": 20, "question": "Are there test gaps in the AI provider layer specifically?", "mode": "distill", "answer": "Yes, there are test gaps in the AI provider layer. Specifically, the following test files are missing:\n\n- `test/agent-session.test.ts`\n- `test/tool-call-without-result.test.ts`\n\nThese tests are necessary to ensure that the AI provider layer functions as expected without any bugs or issues."} +{"question_id": 21, "question": "What should a coding agent inspect before modifying provider-tool-calling behavior?", "mode": "distill", "answer": "A coding agent should inspect the following before modifying the provider-tool-calling behavior:\n\n- **Test Coverage**: Ensure that the new changes do not introduce new bugs or regressions. Run automated tests to catch any issues early.\n\n- **Documentation**: Review the existing documentation to understand how the provider-tool-calling behavior is currently set up and how the new changes will affect it.\n\n- **Code Review**: Have a code review with peers or mentors to ensure that the changes are well-designed, maintainable, and follow best practices.\n\n- **User Feedback**: Gather feedback from end-users or beta testers to understand how the new changes will be received and whether they meet their expectations.\n\n- **System Integration Testing**: Test the new changes with the rest of the system to ensure that they work seamlessly with other components.\n\n- **System Stress Testing**: Perform system stress testing to ensure that the new changes can handle high loads without crashing or slowing down.\n\n- **System Compatibility Testing**: Test the new changes with different versions of the affected systems to ensure compatibility.\n\n- **System Security Testing**: Perform system security testing to ensure that the new changes are secure and do not introduce new vulnerabilities.\n\n- **System Scalability Testing**: Perform system scalability testing to ensure that the new changes can handle large volumes of data without slowing down or crashing.\n\n- **System Performance Testing**: Perform system performance testing to ensure that the new changes are efficient and do not impact system response times.\n\n- **System Reliability Testing**: Perform system reliability testing to ensure that the new changes are reliable and can be deployed without any downtime.\n\n- **System Usability Testing**: Perform system usability testing to ensure that the new changes are user-friendly and can be easily integrated into the existing workflow."} +{"question_id": 22, "question": "What is the relationship between interactive mode and theme configuration historically?", "mode": "distill", "answer": "The relationship between interactive mode and theme configuration historically was that the theme configuration was initially disabled in the interactive mode. This was fixed in the commit with SHA `b32c9a881409`, which added the theme configuration with a watcher in the interactive mode."} +{"question_id": 23, "question": "How fragile is the agent session lifecycle based on commit patterns?", "mode": "distill", "answer": "Based on the commit history provided, the agent session lifecycle appears to be relatively robust. The commit history shows that there have been 94 separate commits to the `packages/coding-agent/src/core/agent-session.ts` file, which indicates that the session management logic has been refined and improved over time. The commit history also shows that there have been 186 commits to the `packages/coding-agent/CHANGELOG.md` file, which indicates that the change log has been updated in a consistent manner. The commit history does not contain any evidence of significant changes to the session management logic or the change log. Therefore, based on the commit patterns provided, the agent session lifecycle is likely to be relatively stable and less fragile."} +{"question_id": 24, "question": "What modes have been added or removed from the coding agent?", "mode": "distill", "answer": "The modes added to the coding agent are `interactive` and `streamed`. The modes removed are `print` and `test`."} +{"question_id": 25, "question": "What is the history of model resolver changes?", "mode": "distill", "answer": "The history of model resolver changes is as follows:\n\n1. **Commit sha=\"bf5f4b17c0b7\"**: Added custom session events for thinking level and model changes. This commit introduced new session events that could be used to track changes in the thinking level and models.\n\n2. **Commit sha=\"9e0255b10bea\"**: Added mom: Tell mom what environment she's in (Docker vs host). This commit updated the mom agent to provide feedback about the environment (Docker or host).\n\n3. **Commit sha=\"30dd31d7878b\"**: Merged feat/scroll-previous-prompts with history load on resume. This commit integrated the scroll-previous-prompts feature with the history load on resume functionality.\n\n4. **Commit sha=\"bf5f4b17c0b7\"**: Added custom session events for thinking level and model changes. This commit introduced new session events that could be used to track changes in the thinking level and models.\n\n5. **Commit sha=\"30dd31d7878b\"**: Merged feat/scroll-previous-prompts with history load on resume. This commit integrated the scroll-previous-prompts feature with the history load on resume functionality.\n\n6. **Commit sha=\"bf5f4b17c0b7\"**: Added custom session events for thinking level and model changes. This commit introduced new session events that could be used to track changes in the thinking level and models.\n\n7. **Commit sha=\"30dd31d7878b\"**: Merged feat/scroll-previous-prompts with history load on resume. This commit integrated the scroll-previous-prompts feature with the history load on resume functionality.\n\n8. **Commit sha=\"bf5f4b17c0"} +{"question_id": 26, "question": "How many LLM providers are supported and how are they registered?", "mode": "distill", "answer": "To determine how many LLM providers are supported and how they are registered, you would need to check the `CHANGELOG.md` file in the `packages/ai` directory. The file lists all the versions of the AI package and the corresponding changes. You would need to search for the line that mentions the addition of new providers or the registration of existing ones.\n\nThe context does not provide this file, so I cannot answer this question based solely on the provided context."} +{"question_id": 27, "question": "What is the architectural pattern for adding a new provider?", "mode": "distill", "answer": "The architectural pattern for adding a new provider in the pi monorepo is typically a plugin or an extension. This involves creating a new package that provides the necessary functionality and integrating it with the existing codebase. The new package should follow the same directory structure and file conventions as the existing ones, and should be added to the `packages` directory. The `CHANGELOG.md` file should be updated to include the new provider and its corresponding commit history."} +{"question_id": 28, "question": "Which provider has the most complex auth requirements historically?", "mode": "distill", "answer": "The provider with the most complex auth requirements historically is OpenAI."} +{"question_id": 29, "question": "How have streaming options evolved across providers?", "mode": "distill", "answer": "Streaming options have evolved across providers in the pi monorepo. The most recent changes can be found in the commits with SHAs `d1613e3f538c` and `0aa84624c290`. These commits introduce support for explicit thinking off across providers in the `packages/ai` and `packages/agent` packages, respectively."} +{"question_id": 30, "question": "What is the relationship between model generation scripts and the type system?", "mode": "distill", "answer": "The relationship between model generation scripts and the type system is that the `packages/ai/src/models.generated.ts` file was fixed 105 separate times (commits: fix(ai): Deduplicate models and add Anthropic aliases, docs(ai): Fix model names in README examples, fix(ai): Fix OpenAI Responses provider multi-turn conversation support, fix(ai): Fix browse) to support the updated Anthropic aliases and fix the model names in the README examples."} +{"question_id": 31, "question": "What are the most frequently changed TUI components?", "mode": "distill", "answer": "The most frequently changed TUI components are `packages/coding-agent/src/tui/assistant-message.ts`, `packages/coding-agent/src/tui/thinking-selector.ts`, `packages/coding-agent/src/tui/tui-renderer.ts`, and `packages/coding-agent/src/tui/user-message.ts`."} +{"question_id": 32, "question": "How has the keybinding system evolved?", "mode": "distill", "answer": "The keybinding system in the pi monorepo has evolved significantly. The most recent change was in commit `b836a9d2ee0d`, which added support for symbol key bindings to the keybinding system. This feature was introduced to enhance the user experience by allowing for more precise key combinations."} +{"question_id": 33, "question": "What theme-related changes have been made and reverted?", "mode": "distill", "answer": "The context does not contain the answer to the question \"What theme-related changes have been made and reverted? \"."} +{"question_id": 34, "question": "What is the history of the prompt input handling?", "mode": "distill", "answer": "The prompt input handling in the pi monorepo has a history of 4 commits. The most recent commit, with SHA `17d863c08285`, added the support for the bridge prompt as a standalone thing. This commit was made on 2023-04-09."} +{"question_id": 35, "question": "How has error display evolved in the TUI?", "mode": "distill", "answer": "Error display in the TUI has evolved significantly. The most recent commit, `d7410fafc092`, introduced the use of the non-null assertion operator (`!`) in the `Editor.ts` file. This change was made to address a potential issue where the `editor` might be `null` at times, which could lead to runtime errors."} +{"question_id": 36, "question": "What npm scripts and config are essential for the build pipeline?", "mode": "distill", "answer": "To set up the build pipeline for the pi monorepo, you would need the following npm scripts and config:\n\n1. **`prepublishOnly`**: This script is used to run any necessary setup before the package is published. It is typically used to install dependencies and run any setup scripts.\n\n2. **`build`**: This script is responsible for building the project. It is usually used to compile the source code, run tests, and generate any necessary artifacts.\n\n3. **`test`**: This script is used to run automated tests. It is typically used to ensure that the code works as expected.\n\n4. **`revert`**: This script is used to revert changes to the codebase. It is typically used to fix bugs or correct configuration issues.\n\n5. **`add`**: This script is used to add files to the staging area. It is typically used to prepare the code for the next commit.\n\n6. **`commit`**: This script is used to commit changes to the codebase. It is typically used to save the changes made to the codebase.\n\n7. **`push`**: This script is used to push the changes made to the codebase to a remote repository. It is typically used to share the changes with the rest of the team.\n\n8. **`install`**: This script is used to install dependencies. It is typically used to install any dependencies that are required by the project.\n\n9. **`test:ci`**: This script is used to run automated tests in a continuous integration environment. It is typically used to ensure that the code works as expected in a continuous integration environment.\n\n10. **`pre-commit`: This script is used to run any necessary setup before a commit is made. It is typically used to install dependencies and run any setup scripts.\n\n11. **`pre-git`: This script is used to run any necessary"} +{"question_id": 37, "question": "How has the CI configuration evolved?", "mode": "distill", "answer": "The context does not contain the answer to the question \"How has the CI configuration evolved? \"."} +{"question_id": 38, "question": "What is the history of dependency management (package-lock churn)?", "mode": "distill", "answer": "To answer this question, I would need to look for any changes related to package-lock.json or any other dependency management files in the pi monorepo. However, based on the provided commit history, I cannot find any evidence of changes to package-lock.json or any other dependency management files.\n\nThe commit history only shows changes to the packages/ai/src/models.generated.ts file, which was fixed 105 separate times (commits: fix(ai): Deduplicate models and add Anthropic aliases, docs(ai): Fix model names in README examples, fix(ai): Fix OpenAI Responses provider multi-turn conversation support, fix(ai): Fix browse).\n\nTherefore, I cannot provide the history of dependency management (package-lock churn) based on the given context."} +{"question_id": 39, "question": "Which root-level config files are most frequently modified and why?", "mode": "distill", "answer": "The most frequently modified config files are `packages/ai/CHANGELOG.md` and `packages/coding-agent/CHANGELOG.md`. These files are modified together in 432 commits, indicating that they are closely related to each other and are likely to be modified together in the future."} +{"question_id": 40, "question": "What release process conventions are visible in the commit history?", "mode": "distill", "answer": "The release process conventions are visible in the commit history."} +{"question_id": 41, "question": "What is the relationship between CHANGELOG updates and actual code changes across packages?", "mode": "distill", "answer": "The relationship between CHANGELOG updates and actual code changes across packages is that CHANGELOG entries are typically made in response to specific changes or bugs in the codebase. These changes are documented in the CHANGELOG.md file, which is then included in the commit history of the respective packages. The commit history shows when these changes were made and who made them."} +{"question_id": 42, "question": "How do model updates cascade through the system?", "mode": "distill", "answer": "Model updates in the system typically cascade through the following sequence:\n\n1. **Provider Updates**: When a new provider is added or an existing one is updated, the `AgentSession` class in `packages/coding-agent/src/core/agent-session.ts` is responsible for handling these changes. This class is responsible for initializing the session with the new provider.\n\n2. **Session Initialization**: The `AgentSession` class initializes the session with the new provider by updating the `systemPrompt` and `systemPromptEditor` properties.\n\n3. **Editor Integration**: The `systemPromptEditor` is then integrated with the editor, which is responsible for rendering the system prompt to the user.\n\n4. **Message Handling**: The `systemPromptEditor` handles user input and messages, which are then passed to the `AgentSession` class for processing.\n\n5. **Caching and Compilation**: The `AgentSession` class may also cache or compile the system prompt to improve performance.\n\n6. **Tool Execution**: The `AgentSession` class may also handle tool execution, which is triggered by the `systemPromptEditor`.\n\n7. **Retry Logic**: The `AgentSession` class may include retry logic to handle failures in tool execution.\n\nBy following this sequence, model updates in the system are propagated through the system components, ensuring that the system remains functional and responsive to changes in the provider configuration."} +{"question_id": 43, "question": "What is the most common cause of bugs based on fix commit patterns?", "mode": "distill", "answer": "The most common cause of bugs based on fix commit patterns is repeated bug fixes in the same file."} +{"question_id": 44, "question": "How does the system handle provider API changes over time?", "mode": "distill", "answer": "The system handles provider API changes by updating the CHANGELOG.md files in the respective packages. The commit history provides evidence of these changes, with each commit modifying the CHANGELOG.md file to reflect the changes in the provider API."} +{"question_id": 45, "question": "What architectural debt is visible from the commit history?", "mode": "distill", "answer": "The commit history shows several instances of repeated bugs fixes in the `packages/coding-agent/src/modes/interactive/interactive-mode.ts` file. This indicates a high level of debt in terms of reusability and test coverage."} diff --git a/.repo-arch/eval/runs/full-45-full-history.jsonl b/.repo-arch/eval/runs/full-45-full-history.jsonl new file mode 100644 index 0000000000..39c7b638e0 --- /dev/null +++ b/.repo-arch/eval/runs/full-45-full-history.jsonl @@ -0,0 +1,45 @@ +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "full-history", "answer": "Based on the commit history provided, the packages that tend to co-change together are `coding-agent` and `mom`. The most frequent changes between these two packages are related to their integration and dependencies. For example, the `coding-agent` package includes changes in its `src/modes/interactive/interactive-mode.ts` file, which is likely related to the `mom` package's `src/agent.ts` file. Additionally, there are changes in the `CHANGELOG.md` file of both packages, which suggests that they are likely part of the same project and are being maintained together.", "latency": 4.64, "num_commits_retrieved": 10, "error": null} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "full-history", "answer": "Based on the commit history provided, the files that should be inspected when modifying `packages/ai/src/models.generated.ts` include:\n\n1. `packages/ai/src/providers/transorm-messages.ts`\n2. `packages/ai/test/tool-call-without-result.test.ts`\n\nThese files are related to the AI model transformations and tool calls, respectively.", "latency": 3.38, "num_commits_retrieved": 10, "error": null} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "full-history", "answer": "The unified LLM provider layer is visible in the commit history by the introduction of the `anthropic` provider in the `packages/ai` directory. The commit message \"feat(ai): Implement unified AI API with Anthropic provider\" indicates that a new provider was added to the AI API, which likely includes the implementation of the Anthropic provider.", "latency": 3.45, "num_commits_retrieved": 10, "error": null} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "full-history", "answer": "The risk profile of changing `packages/coding-agent/src/core/agent-session.ts` is moderate. The commit history shows that the file has been modified in multiple commits, including some that introduce new features and bug fixes. The file is part of the `coding-agent` package, which is responsible for managing agent sessions in the coding environment. The changes made in this file could potentially impact the functionality of the agent, such as handling new commands or improving the user experience. Therefore, it is important to thoroughly test the changes before deploying them to ensure that they do not introduce any unintended bugs or issues.", "latency": 4.8, "num_commits_retrieved": 10, "error": null} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "full-history", "answer": "Based on the commit history provided, the package boundaries that are the most fragile based on historical breakages are:\n\n1. `packages/ai`: This package has had several significant changes and additions over the years, including the removal of tool calls for which there are no results in subsequent user messages, and the addition of new features such as `ModelInfo` types and `resolvePromptInput`. These changes can cause issues if not handled properly, leading to unexpected behavior or crashes.\n\n2. `packages/coding-agent`: This package has had several significant changes and additions over the years, including the addition of new features such as `system-prompt`, `resolvePromptInput`, and the `interactive-mode`. These changes can cause issues if not handled properly, leading to unexpected behavior or crashes.\n\n3. `packages/tui`: This package has had several significant changes and additions over the years, including the addition of new features such as `checkboxes` and the `markdown` component. These changes can cause issues if not handled properly, leading to unexpected behavior or crashes.", "latency": 7.11, "num_commits_retrieved": 10, "error": null} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "full-history", "answer": "Based on the commit history provided, the files that have been reverted most often are:\n\n1. `packages/coding-agent/src/modes/interactive/theme/theme.ts`\n2. `packages/coding-agent/src/core/agent-session-runtime.ts`\n3. `packages/coding-agent/src/modes/interactive/interactive-mode.ts`\n4. `packages/coding-agent/test/interactive-mode-import-command.test.ts`\n5. `packages/coding-agent/examples/README.md`\n6. `packages/coding-agent/examples/extensions/README.md`\n7. `packages/coding-agent/examples/extensions/hello.ts`\n8. `packages/coding-agent/examples/extensions/question.ts`\n\nThese files have been reverted multiple times, indicating that they were part of the main codebase and were frequently modified.", "latency": 5.72, "num_commits_retrieved": 10, "error": null} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "full-history", "answer": "Based on the commit history, the riskiest files to modify in the coding agent package are:\n\n1. `packages/coding-agent/src/core/system-prompt.ts`\n2. `packages/coding-agent/src/main.ts`\n\nThese files contain critical logic for handling system prompts and the main entry point of the coding agent, respectively. Any changes to these files could potentially affect the functionality and stability of the agent.", "latency": 3.89, "num_commits_retrieved": 10, "error": null} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "full-history", "answer": "Based on the commit history, the files in the TUI package that have required repeated fixes are:\n\n1. `packages/tui/src/components/markdown.ts`\n2. `packages/tui/src/components/editor.ts`\n\nThese files have been modified multiple times to address the same issue, which is the use of the non-null assertion operator instead of the `assert()` function.", "latency": 3.61, "num_commits_retrieved": 10, "error": null} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "full-history", "answer": "Based on the commit history provided, the AI package has no test coverage despite high change frequency. The relevant commit is:\n\n[9.36] 6a319f9c3c33: Add OAuth providers to test suite and improve test coverage [packages/ai] files: packages/ai/src/utils/overflow.ts, packages/ai/test/abort.test.ts, packages/ai/test/agent.test.ts, packages/ai/test/context-overflow.test.ts\n\nThis commit adds OAuth providers to the test suite and improves test coverage for the AI package.", "latency": 4.76, "num_commits_retrieved": 10, "error": null} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "full-history", "answer": "Based on the commit history provided, the configuration files that change without corresponding test updates are:\n\n1. `packages/agent/docs/agent-harness.md`\n2. `packages/agent/src/harness/agent-harness.ts`\n3. `packages/agent/src/harness/types.ts`\n\nThese files are part of the `agent` package and are used for configuring the harness stream. There are no corresponding test files listed in the commit history for these changes.", "latency": 4.05, "num_commits_retrieved": 10, "error": null} +{"question_id": 11, "question": "What historical breakages should I know before changing the provider routing?", "mode": "full-history", "answer": "Based on the commit history, there are no historical breakages that should be known before changing the provider routing. The commit history shows the addition of support for OpenRouter provider routing in the AI and coding-agent packages, but it does not indicate any issues or changes that could cause breakages.", "latency": 3.32, "num_commits_retrieved": 10, "error": null} +{"question_id": 12, "question": "Where has CLI state/config handling been fragile?", "mode": "full-history", "answer": "Based on the commit history provided, CLI state/config handling has been fragile in the `packages/coding-agent` package. Specifically, there is a commit that mentions removing a reference to a non-existent `stopAllModels` function in the `cli.ts` file of the `packages/pods` package. This suggests that the state handling for the CLI in the `coding-agent` package may be less robust and prone to issues due to the removal of a function that is no longer used.", "latency": 4.1, "num_commits_retrieved": 10, "error": null} +{"question_id": 13, "question": "What changed repeatedly in the TUI package and why?", "mode": "full-history", "answer": "The TUI package changed repeatedly due to several commits. Here's a summary of the changes and why:\n\n1. **Fix(tui): Reduce flicker by only re-rendering changed lines (#617)**:\n - This commit was made on [11.01] and fixed a flickering issue in the TUI by only re-rendering the changed lines. This optimization improves the performance of the application.\n\n2. **Fix(tui): Render the checkboxes in the to-do list items**:\n - This commit was made on [10.45] and addressed a bug where checkboxes were not being rendered correctly in the to-do list items. This change ensures that the user interface is more intuitive and user-friendly.\n\n3. **Fix(tui): Refactor the multi-line insertion handling**:\n - This commit was made on [9.21] and improved the handling of multi-line insertions in the TUI. This optimization enhances the user experience by making the text editing process smoother and more efficient.\n\n4. **Add the kill ring and undo features to the Input component (#1373)**:\n - This commit was made on [8.81] and added the kill ring and undo features to the Input component. The kill ring allows the user to undo their last action, and the undo stack allows the user to undo multiple actions in a row. This feature enhances the productivity of the application.\n\n5. **Fix /changelog adding 'What's New' to footer permanently**:\n - This commit was made on [8.57] and fixed a bug where the 'What's New' section was not being added permanently to the footer of the changelog. This change ensures that the changelog is always up-to-date and relevant.\n\n6. **Fix(tui): use the non-null assertion operator instead of assert()**:\n - This commit was made on [8.52] and addressed a bug where the `assert()` function was being used instead of the non-null assertion operator (`!`). This change improves the safety of the code and makes it more robust.\n\n7. **mom: Tell mom what environment she's in (Docker vs host)**:\n - This commit was made on [8.24] and added a feature to the mom agent that tells the mom what environment she's in (Docker or host). This feature enhances the security and reliability of the application.\n\n8. **feat(coding-agent): extension package management and hot", "latency": 14.68, "num_commits_retrieved": 10, "error": null} +{"question_id": 14, "question": "What web UI changes historically required backend or agent changes?", "mode": "full-history", "answer": "Based on the commit history provided, the web UI changes historically required backend or agent changes. Specifically, the following commits indicate such changes:\n\n1. [13.00] 116fbad24c39: Expand theme changes section in CHANGELOG.md [packages/coding-agent] files: packages/coding-agent/CHANGELOG.md\n2. [13.00] 6126380879f6: Update package-lock.json after mini-lit version changes files: package-lock.json\n3. [12.45] 1e6a23ab3d65: Update SDK docs for SettingsManager changes [packages/coding-agent] files: packages/coding-agent/docs/sdk.md\n4. [12.45] 1721bb8398ea: Mark Hook API Changes as complete in plan [packages/coding-agent] files: packages/coding-agent/docs/session-tree-plan.md\n5. [11.95] c8460dec7e80: docs(coding-agent): restore SDK breaking changes to changelog [packages/coding-agent] files: packages/coding-agent/CHANGELOG.md\n6. [11.95] 9b2d22d26d0f: Update ai package CHANGELOG.md for v0.30.2+ changes [packages/ai] files: packages/ai/CHANGELOG.md, packages/ai/scripts/generate-models.ts\n7. [11.48] ca39e899f4c6: docs: add changelog entry for footer display changes [packages/coding-agent] files: packages/coding-agent/CHANGELOG.md\n8. [11.48] 832273d4d6f5: feat(coding-agent): watch .git/HEAD for branch changes (#79) [packages/coding-agent] files: packages/coding-agent/src/tui/footer.ts, packages/coding-agent/src/tui/tui-renderer.ts\n\nThese commits involve changes to the web UI, which typically require backend or agent changes to ensure that the UI functions correctly and that the changes are compatible with the existing system.", "latency": 13.62, "num_commits_retrieved": 10, "error": null} +{"question_id": 15, "question": "What is the reversion history of the coding agent README?", "mode": "full-history", "answer": "The reversion history of the coding agent README is as follows:\n\n- [12.55] 00ba005e502b: set the prompt cache key to session id (#698) - This commit updated the README to include a note about setting the prompt cache key to the session ID.\n- [12.55] 342af285c469: document the new --append-system-prompt flag [packages/coding-agent] - This commit added a new section to the README to document the new `--append-system-prompt` flag.", "latency": 5.08, "num_commits_retrieved": 10, "error": null} +{"question_id": 16, "question": "How has the changelog management pattern evolved across packages?", "mode": "full-history", "answer": "The changelog management pattern has evolved across packages in the repository. The most significant changes are:\n\n1. **Unification of Completion Callback Pattern**: This is a common practice across browser-javascript and javascript-repl packages to manage completion callbacks. The commit history shows that this pattern was unified across both packages, indicating a consistent approach to handling completion callbacks.\n\n2. **Documentation Update**: The `README.md` file in the coding-agent package was updated to include instructions on how to run the pi after installation. This indicates that documentation has been improved across packages to provide better user guidance.\n\n3. **Binary Build Fix**: The `build-binaries.yml` file in the .github/workflows directory was updated to use Bun 1.2.20, which is a newer version of Bun. This suggests that the build process for binaries has been updated to use a more recent version of Bun, which may have improved performance or fixed bugs.\n\n4. **System Prompt Handling**: The `system-prompt.ts` and `main.ts` files in the coding-agent package were updated to call `resolvePromptInput` on the `--system-prompt` received on the CLI argument. This indicates that the system prompt handling logic has been improved to support file paths on the prompt.\n\n5. **Interactive Mode Fix**: The `interactive-mode.ts` file in the coding-agent package was updated to fix the issue of aborting retries when an extension customizes the editor. This suggests that the interactive mode logic has been improved to handle customizations more gracefully.\n\n6. **Markdown Rendering Fix**: The `markdown.ts` and `markdown.test.ts` files in the tui package were updated to render the checkboxes in the to-do list items. This indicates that the markdown rendering logic has been improved to handle checkboxes correctly.\n\n7. **Settings and Templates Documentation**: The `prompt-templates.md` and `skills.md` files in the coding-agent package were updated to clarify how to toggle settings and invoke templates. This suggests that the documentation for settings and templates has been improved to provide better user guidance.\n\n8. **Package Migration**: The `packages` directory was migrated to use the earendil works scope. This indicates that the package management has been updated to use a new scope, which may have improved the organization and management of packages.\n\n9. **Tool Parameter Handling**: The `openai-completions.ts` file in the ai package was updated to include an empty `tools` param when the conversation has tool history. This suggests that the tool parameter handling logic has", "latency": 14.9, "num_commits_retrieved": 10, "error": null} +{"question_id": 17, "question": "Which packages have the most untested high-churn files?", "mode": "full-history", "answer": "Based on the commit history provided, there are no packages listed with the most untested high-churn files.", "latency": 2.35, "num_commits_retrieved": 10, "error": null} +{"question_id": 18, "question": "What would you tell a new contributor about test expectations before touching package boundaries?", "mode": "full-history", "answer": "Before touching package boundaries, a new contributor should review the test expectations for the packages they are working on. This can be done by checking the commit history for any changes to the test files in the packages they are interested in. The commit history provides a clear indication of the changes made to the test files, including any updates to the test expectations. Additionally, the commit history can be used to understand the changes made to the test files over time, which can help the contributor understand the purpose of the changes and the expected behavior of the test files.", "latency": 4.57, "num_commits_retrieved": 10, "error": null} +{"question_id": 19, "question": "Which files have been fixed most often without corresponding test additions?", "mode": "full-history", "answer": "Based on the commit history provided, the file `packages/mom/src/agent.ts` has been fixed most often without corresponding test additions. This can be seen in the commit `b4fb6770e46a` which assumes truecolor for most terminals and fixes SSH color detection.", "latency": 3.45, "num_commits_retrieved": 10, "error": null} +{"question_id": 20, "question": "Are there test gaps in the AI provider layer specifically?", "mode": "full-history", "answer": "Yes, there are test gaps in the AI provider layer specifically. The most recent commit that addresses this issue is [12.50] 51f5448a5c20, which removes tool calls for which there are no results in subsequent user messages.", "latency": 3.43, "num_commits_retrieved": 10, "error": null} +{"question_id": 21, "question": "What should a coding agent inspect before modifying provider-tool-calling behavior?", "mode": "full-history", "answer": "To inspect a coding agent before modifying provider-tool-calling behavior, the agent should:\n\n1. Check the current provider tool calling behavior.\n2. Verify that the behavior is consistent with the expected behavior.\n3. Ensure that the provider tool calling behavior is not causing any unintended side effects.\n4. Test the agent with different provider tools to ensure that the behavior is consistent across all tools.", "latency": 3.72, "num_commits_retrieved": 10, "error": null} +{"question_id": 22, "question": "What is the relationship between interactive mode and theme configuration historically?", "mode": "full-history", "answer": "Interactive mode and theme configuration historically were not directly related. The interactive mode was added in commit [13.60] and the theme configuration was added in commit [12.60]. There is no historical relationship between the two.", "latency": 3.03, "num_commits_retrieved": 10, "error": null} +{"question_id": 23, "question": "How fragile is the agent session lifecycle based on commit patterns?", "mode": "full-history", "answer": "Based on the commit patterns, the agent session lifecycle is relatively fragile. The most significant changes in the lifecycle state are related to session management and persistence. The following commit patterns indicate potential issues:\n\n1. **00ba005e502b**: This commit sets the prompt cache key to session id, which suggests that session persistence is being managed. However, it does not provide any information about the lifecycle state of the session.\n\n2. **8.68**: This commit adds a test suite for session lifecycle characterization. However, it does not provide any information about the lifecycle state of the session.\n\n3. **8.57**: This commit fixes an export-html spacing issue. However, it does not provide any information about the lifecycle state of the session.\n\n4. **8.18**: This commit adds a documentation section on how to run pi after install. However, it does not provide any information about the lifecycle state of the session.\n\n5. **fe6b85b32c5e**: This commit clarifies the harness lifecycle state. However, it does not provide any information about the lifecycle state of the session.\n\n6. **62385e22306c**: This commit forbids git commit --no-verify in agent rules files. However, it does not provide any information about the lifecycle state of the session.\n\n7. **9.88**: This commit merges commit 0acb65fe from PR #2058. However, it does not provide any information about the lifecycle state of the session.\n\n8. **2b197c7fb193**: This commit removes the garbage the agent left behind and commited. However, it does not provide any information about the lifecycle state of the session.\n\n9. **d895a4497ffc**: This commit removes the garbage the agent left behind and commited. However, it does not provide any information about the lifecycle state of the session.\n\n10. **914898c58f5d**: This commit updates the changelog.md to add the latest commit. However, it does not provide any information about the lifecycle state of the session.\n\n11. **635bda80d4ce**: This commit merges commit 0acb65fe from PR #2058. However, it does not provide any information about the lifecycle state of the session.\n\n12. **74", "latency": 14.76, "num_commits_retrieved": 10, "error": null} +{"question_id": 24, "question": "What modes have been added or removed from the coding agent?", "mode": "full-history", "answer": "Based on the commit history provided, the following modes have been added or removed from the coding agent:\n\nModes added:\n- Interactive mode (packages/coding-agent/src/modes/interactive/interactive-mode.ts)\n\nModes removed:\n- None", "latency": 2.98, "num_commits_retrieved": 10, "error": null} +{"question_id": 25, "question": "What is the history of model resolver changes?", "mode": "full-history", "answer": "The history of model resolver changes is as follows:\n\n- [8.57] 019ad0ec115c: Fix /changelog adding 'What's New' to footer permanently [packages/coding-agent] files: packages/coding-agent/src/modes/interactive/interactive-mode.ts\n- [8.49] bf5f4b17c0b7: Add custom session events for thinking level and model changes [packages/coding-agent] files: packages/coding-agent/src/main.ts, packages/coding-agent/src/session-manager.ts, packages/coding-agent/src/tui/tui-renderer.ts\n- [8.49] 30dd31d7878b: Merge feat/scroll-previous-prompts with history load on resume\n- [8.24] 9e0255b10bea: mom: Tell mom what environment she's in (Docker vs host) [packages/mom] files: packages/mom/src/agent.ts\n- [7.76] 35ebe8887093: feat: Call resolvePromptInput on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt (#287) [packages/coding-agent] files: packages/coding-agent/src/core/system-prompt.ts, packages/coding-agent/src/main.ts\n- [7.61] 828c40cf6898: Fix the issue of aborting retries when an extension customizes the editor (#1364) [packages/coding-agent] files: packages/coding-agent/src/modes/interactive/interactive-mode.ts\n- [7.61] 863341fbf5e8: fix(tui): render the checkboxes in the to-do list items [packages/tui] files: packages/tui/src/components/markdown.ts, packages/tui/test/markdown.test.ts\n- [7.48] 18db1fd6eb3d: Changes for AGENTS.md files: AGENTS.md", "latency": 13.02, "num_commits_retrieved": 10, "error": null} +{"question_id": 26, "question": "How many LLM providers are supported and how are they registered?", "mode": "full-history", "answer": "Based on the commit history provided, there are 2 LLM providers supported:\n\n1. Claude\n2. OpenAI\n\nThese providers are registered in the `README.md` file under the \"AI\" section.", "latency": 2.9, "num_commits_retrieved": 10, "error": null} +{"question_id": 27, "question": "What is the architectural pattern for adding a new provider?", "mode": "full-history", "answer": "The architectural pattern for adding a new provider is described in the commit history by the following commit: [7.73] a72e6d08d415: refactor(ai): Update OpenAI Completions provider to new content block API [packages/ai] files: packages/ai/src/providers/anthropic.ts, packages/ai/src/providers/google.ts, packages/ai/src/providers/openai-completions.ts, packages/ai/src/types.ts.", "latency": 4.27, "num_commits_retrieved": 10, "error": null} +{"question_id": 28, "question": "Which provider has the most complex auth requirements historically?", "mode": "full-history", "answer": "Based on the commit history, the provider with the most complex auth requirements historically is GitHub. The most recent commit related to GitHub is [8.60] 010e9acfe959, which adds a searchable auth provider login flow.", "latency": 3.3, "num_commits_retrieved": 10, "error": null} +{"question_id": 29, "question": "How have streaming options evolved across providers?", "mode": "full-history", "answer": "The streaming options have evolved across providers. In commit [8.93], the `azure-openai-responses.ts`, `google-gemini-cli.ts`, and `google-vertex.ts` files were updated to handle explicit thinking off across providers.", "latency": 3.22, "num_commits_retrieved": 10, "error": null} +{"question_id": 30, "question": "What is the relationship between model generation scripts and the type system?", "mode": "full-history", "answer": "The commit history does not contain any information about model generation scripts or the type system.", "latency": 2.38, "num_commits_retrieved": 10, "error": null} +{"question_id": 31, "question": "What are the most frequently changed TUI components?", "mode": "full-history", "answer": "Based on the commit history, the most frequently changed TUI components are:\n\n1. `packages/tui/src/components/editor.ts`\n2. `packages/tui/src/components/markdown.ts`\n3. `packages/tui/src/components/text.ts`\n4. `packages/coding-agent/src/tui/assistant-message.ts`\n5. `packages/coding-agent/src/tui/thinking-selector.ts`\n6. `packages/coding-agent/src/tui/tui-renderer.ts`\n7. `packages/coding-agent/src/tui/user-message.ts`\n\nThese components are involved in the rendering of the TUI interface, including the editor for code input, markdown rendering, and text display.", "latency": 5.26, "num_commits_retrieved": 10, "error": null} +{"question_id": 32, "question": "How has the keybinding system evolved?", "mode": "full-history", "answer": "The keybinding system has evolved by adding support for symbol key support to the keybinding system (#450) in the coding-agent package. This feature allows users to use symbols as keys in their keybindings, enhancing flexibility and customization.", "latency": 3.15, "num_commits_retrieved": 10, "error": null} +{"question_id": 33, "question": "What theme-related changes have been made and reverted?", "mode": "full-history", "answer": "Based on the commit history, there have been no theme-related changes made or reverted.", "latency": 2.35, "num_commits_retrieved": 10, "error": null} +{"question_id": 34, "question": "What is the history of the prompt input handling?", "mode": "full-history", "answer": "The prompt input handling history is as follows:\n\n1. **[18.72] 35ebe8887093**: Added support for calling `resolvePromptInput` on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt (#287) [packages/coding-agent] files: packages/coding-agent/src/core/system-prompt.ts, packages/coding-agent/src/main.ts\n\n2. **[17.99] 4c2d78f6cb4f**: Added the kill ring and undo features to the Input component (#1373) [packages/tui] files: packages/tui/src/components/editor.ts, packages/tui/src/components/input.ts, packages/tui/src/kill-ring.ts, packages/tui/src/undo-stack.ts\n\n3. **[17.51] 609095b0b629**: Fixed the multi-line insertion handling [packages/tui] files: packages/tui/src/components/editor.ts\n\n4. **[17.25] 00ba005e502b**: Set the prompt cache key to session id (#698) [packages/ai] files: packages/ai/src/providers/openai-responses.ts\n\n5. **[16.50] 6a5f04ce1fb1**: Added the codex bridge prompt in the html export [packages/ai, packages/coding-agent] files: packages/ai/src/index.ts, packages/ai/src/providers/openai-codex/index.ts, packages/coding-agent/src/core/agent-session.ts, packages/coding-agent/src/core/export-html/index.ts\n\n6. **[15.32] 17d863c08285**: Show the bridge prompt as a standalone thing [packages/coding-agent] files: packages/coding-agent/src/core/export-html/index.ts, packages/coding-agent/src/core/export-html/template.css, packages/coding-agent/src/core/export-html/template.js, packages/coding-agent/src/main.ts\n\n7. **[15.21] 828c40cf6898**: Fixed the issue of aborting retries when an extension customizes the editor (#1364) [packages/coding-agent] files: packages/coding-agent/src/modes/interactive/interactive-mode.ts\n\n8. **", "latency": 14.66, "num_commits_retrieved": 10, "error": null} +{"question_id": 35, "question": "How has error display evolved in the TUI?", "mode": "full-history", "answer": "Error display in the TUI has improved over time. The most recent commit that addresses this is [9.70] 8747e01c31b9, which displays return values and fixes duplicate error messages in the REPL.", "latency": 3.23, "num_commits_retrieved": 10, "error": null} +{"question_id": 36, "question": "What npm scripts and config are essential for the build pipeline?", "mode": "full-history", "answer": "Based on the commit history provided, the essential npm scripts and config for the build pipeline include:\n\n1. `prepublishOnly`: This script is used to clean and reinstall the dependencies to ensure that the build is reproducible and that any changes in the package.json file are picked up. This script is essential for ensuring that the build is consistent across different environments.\n\n2. `scripts`: This script is used to run the build process. It includes commands such as `npm run build` to build the project and `npm run test` to run the tests.\n\n3. `package.json`: This file contains the configuration for the project, including the scripts and dependencies. It is essential for ensuring that the build process is correctly configured and that the project can be built and tested.\n\n4. `.github/workflows/build-binaries.yml`: This file contains the configuration for the build workflow, which is used to automate the build process. It includes commands such as `npm run build` to build the project and `npm run test` to run the tests.\n\n5. `CHANGELOG.md`: This file contains the changelog for the project, which is used to document the changes made to the project. It is essential for ensuring that the project is documented and that the changes are clearly communicated to the users.", "latency": 8.45, "num_commits_retrieved": 10, "error": null} +{"question_id": 37, "question": "How has the CI configuration evolved?", "mode": "full-history", "answer": "The CI configuration has evolved significantly since the initial commit [7.04] 8f67e00160a5: fix: include empty tools param when conversation has tool history (#150). The CI workflow has been updated to include a new test for harness stream configuration in the agent package. The changes are reflected in the `.github/workflows/build-binaries.yml` file, which now includes a new job for building binaries with Bun 1.2.20.", "latency": 4.45, "num_commits_retrieved": 10, "error": null} +{"question_id": 38, "question": "What is the history of dependency management (package-lock churn)?", "mode": "full-history", "answer": "The history of dependency management (package-lock churn) in the repository is as follows:\n\n- The `package-lock.json` file was updated in commit [6.89] d99b7057cae4, which introduced the `extension package management` feature and hot reload. This commit included changes to the `package.json` file, which in turn affected the `package-lock.json` file.\n\n- The `package-lock.json` file was also updated in commit [6.73] 23fce57ec633, which fixed a CI issue by installing sandbox extension dependency files: `package-lock.json` and `package.json`.\n\n- The `package-lock.json` file was updated in commit [6.90] 4c2d78f6cb4f, which added the kill ring and undo features to the Input component. This commit included changes to the `package.json` file, which in turn affected the `package-lock.json` file.\n\n- The `package-lock.json` file was updated in commit [6.89] d99b7057cae4, which introduced the `extension package management` feature and hot reload. This commit included changes to the `package.json` file, which in turn affected the `package-lock.json` file.\n\n- The `package-lock.json` file was updated in commit [6.73] 23fce57ec633, which fixed a CI issue by installing sandbox extension dependency files: `package-lock.json` and `package.json`.\n\n- The `package-lock.json` file was updated in commit [6.90] 4c2d78f6cb4f, which added the kill ring and undo features to the Input component. This commit included changes to the `package.json` file, which in turn affected the `package-lock.json` file.\n\n- The `package-lock.json` file was updated in commit [6.89] d99b7057cae4, which introduced the `extension package management` feature and hot reload. This commit included changes to the `package.json` file, which in turn affected the `package-lock.json` file.\n\n- The `package-lock.json` file was updated in commit [6.73] 23fce57ec633, which fixed a CI issue by installing sandbox extension dependency files: `package-lock.json` and `package.json`.\n\n- The `package-lock.json`", "latency": 14.57, "num_commits_retrieved": 10, "error": null} +{"question_id": 39, "question": "Which root-level config files are most frequently modified and why?", "mode": "full-history", "answer": "Based on the commit history provided, the root-level config files that are most frequently modified are:\n\n1. `packages/ai/src/providers/transorm-messages.ts`: This file is modified 3 times, indicating that it is a frequently used file in the AI package.\n\n2. `packages/coding-agent/src/core/compaction/branch-summarization.ts`: This file is modified 2 times, indicating that it is a frequently used file in the coding-agent package.\n\n3. `packages/coding-agent/src/modes/interactive/theme/theme.ts`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n4. `packages/coding-agent/CHANGELOG.md`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n5. `packages/coding-agent/README.md`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n6. `packages/coding-agent/src/index.ts`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n7. `packages/coding-agent/docs/compaction.md`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n8. `packages/coding-agent/.pi/extensions/diff.ts`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n9. `packages/coding-agent/.pi/extensions/files.ts`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n10. `packages/agent/README.md`: This file is modified 1 time, indicating that it is a frequently used file in the agent package.\n\n11. `packages/coding-agent/src/core/agent-session.ts`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n12. `packages/coding-agent/docs/compaction.md`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n13. `packages/coding-agent/src/modes/interactive/theme/theme.ts`: This file is modified 1 time, indicating that it is a frequently used file in the coding-agent package.\n\n14. `packages/coding-agent/CHANGELOG.md`: This file is modified 1 time, indicating that it is a frequently used file in", "latency": 15.47, "num_commits_retrieved": 10, "error": null} +{"question_id": 40, "question": "What release process conventions are visible in the commit history?", "mode": "full-history", "answer": "The commit history shows several release process conventions:\n\n1. **Changelog Updates**: The `CHANGELOG.md` file is updated to include new releases and their corresponding commit SHAs. This is a common practice in version control systems to keep track of changes and their commit history.\n\n2. **Commit Messages**: Commit messages are structured to include the type of change (e.g., chore, fix, feat) and a brief description of the change. The commit messages are also required to include a `fixes` or `closes` reference to the issue or pull request that the commit addresses.\n\n3. **Package Updates**: The commit history shows updates to various packages, including `coding-agent`, `mom`, and `tui`. This indicates that the project has multiple components that need to be maintained and updated.\n\n4. **Documentation Updates**: Documentation files such as `AGENTS.md` are updated to reflect changes in the project's features and functionalities. This is a common practice in software development to ensure that the documentation is up-to-date and accurate.\n\n5. **Commit Verification**: The commit history shows that the `--no-verify` option is used in some commit messages. This is a common practice in version control systems to bypass the commit message verification process, which can be useful for testing or emergency situations.\n\n6. **Code Style**: The commit history shows that code style is enforced using tools like ESLint. This is a common practice in software development to ensure that the code is consistent and follows best practices.\n\n7. **Release Automation**: The commit history shows that release automation scripts are used to update the release notes and prepare the release for deployment. This is a common practice in software development to automate the release process and ensure that the release is done correctly and efficiently.", "latency": 10.62, "num_commits_retrieved": 10, "error": null} +{"question_id": 41, "question": "What is the relationship between CHANGELOG updates and actual code changes across packages?", "mode": "full-history", "answer": "The relationship between CHANGELOG updates and actual code changes across packages is that changes to the CHANGELOG are typically made in response to code changes. For example, the commit [9.71] ee64d294877d fixes the SDK.md and rpc.md files to match actual API, which necessitates updating the CHANGELOG to reflect these changes. Similarly, the commit [8.81] 4c2d78f6cb4f adds the kill ring and undo features to the Input component, which also necessitates updating the CHANGELOG to reflect these changes. The commit [8.76] ca39e899f4c6 adds a changelog entry for footer display changes, which also necessitates updating the CHANGELOG to reflect these changes.", "latency": 5.87, "num_commits_retrieved": 10, "error": null} +{"question_id": 42, "question": "How do model updates cascade through the system?", "mode": "full-history", "answer": "Model updates cascade through the system by triggering a refresh of the active model after the provider updates close. This is achieved through the `refreshActiveModel` method in the `AgentSession` class, which is called after the provider updates close. The method updates the active model based on the latest provider settings.", "latency": 3.32, "num_commits_retrieved": 10, "error": null} +{"question_id": 43, "question": "What is the most common cause of bugs based on fix commit patterns?", "mode": "full-history", "answer": "Based on the commit history provided, the most common cause of bugs is identified as \"fix(ai): Improve ModelInfo types based on actual data structure\" which is commit 9b8ea585bd30. This commit introduces improvements to the `ModelInfo` types in the AI package, which likely addresses issues related to incorrect or outdated data structures, leading to bugs in the AI-related functionalities.", "latency": 3.76, "num_commits_retrieved": 10, "error": null} +{"question_id": 44, "question": "How does the system handle provider API changes over time?", "mode": "full-history", "answer": "The system handles provider API changes over time by updating the relevant files and changelogs. For example, the `packages/ai` directory contains the `CHANGELOG.md` file, which updates the API changes made to the AI providers. The `packages/coding-agent` directory also contains the `CHANGELOG.md` file, which updates the API changes made to the coding agent.", "latency": 3.72, "num_commits_retrieved": 10, "error": null} +{"question_id": 45, "question": "What architectural debt is visible from the commit history?", "mode": "full-history", "answer": "Based on the commit history provided, there are several architectural debt visible:\n\n1. **Code Duplication**: The commit history shows multiple instances of code duplication across different files. For example, the `resolvePromptInput` function is duplicated in `packages/coding-agent/src/core/system-prompt.ts` and `packages/coding-agent/src/main.ts`.\n\n2. **Lack of Consistency**: The commit history indicates that there is a lack of consistency in the commit messages and the way changes are being made. For instance, the commit message for `Remove modelId from session metadata` is clear, but the commit message for `Fix /changelog adding 'What's New' to footer permanently` is unclear and doesn't provide enough context.\n\n3. **Inconsistent Naming Conventions**: The commit history shows inconsistent naming conventions in file paths and package names. For example, the commit message for `docs: forbid git commit --no-verify in agent rules` mentions `AGENTS.md`, but the file path for `packages/mom/src/agent.ts` is `packages/mom/src/agent` without the `.ts` extension.\n\n4. **Lack of Documentation**: The commit history shows a lack of documentation, particularly for the `resolvePromptInput` function. The commit message for `Fix /changelog adding 'What's New' to footer permanently` mentions that the commit message should include `What's New`, but the commit message for `Remove modelId from session metadata` doesn't provide enough context.\n\n5. **Inconsistent Versioning**: The commit history shows inconsistent versioning across different packages. For example, the commit message for `Remove modelId from session metadata` mentions `packages/web-ui`, but the commit message for `Fix /changelog adding 'What's New' to footer permanently` mentions `packages/coding-agent`.\n\nOverall, the commit history indicates that there are several architectural debt visible, including code duplication, lack of consistency, inconsistent naming conventions, lack of documentation, and inconsistent versioning.", "latency": 12.12, "num_commits_retrieved": 10, "error": null} diff --git a/.repo-arch/eval/runs/fused-45.jsonl b/.repo-arch/eval/runs/fused-45.jsonl new file mode 100644 index 0000000000..9aa4528c13 --- /dev/null +++ b/.repo-arch/eval/runs/fused-45.jsonl @@ -0,0 +1,45 @@ +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "fused", "answer": "Based on the provided REPO-ARCH CARDS, the packages that tend to co-change together are `packages/ai` and `packages/coding-agent`. The CO-CHANGE CARD for `packages/ai` and `packages/coding-agent` indicates that these two packages were modified together in 125 commits, with the subjects being related to logging, usage tracking, and improving prompt caching. This suggests that these packages are closely related and are likely to be used together in development.\n\nThe CO-CHANGE CARD for `packages/ai/src/models.generated.ts` and `packages/coding-agent/CHANGELOG.md` indicates that these two files were modified together in 147 commits, with the subject being related to fixing AGENTS.md support, changelog viewer, and session model support. This suggests that these files are closely related and are likely to be used together in development.\n\nThe CO-CHANGE CARD for `packages/coding-agent/src/modes/interactive/interactive-mode.ts` and `packages/coding-agent/CHANGELOG.md` indicates that these two files were modified together in 157 commits, with the subject being related to bug fixes in `interactive-mode.ts`. This suggests that these files are closely related and are likely to be used together in development.\n\nThe CO-CHANGE CARD for `packages/coding-agent/src/modes/interactive/interactive-mode.ts` and `packages/coding-agent/src/modes/interactive/interactive-mode.ts` indicates that this file was fixed 157 separate times, with the commits being related to fixing auto-compaction TUI integration and cut point logic, fix(cod). This suggests that these files are closely related and are likely to be used together in development.\n\nThe repeated bug fixes in `packages/coding-agent/src/modes/interactive/interactive-mode.ts` indicate that these files are likely to be used together in development, as they are related to a common issue in the `interactive-mode.ts` file.", "latency": 11.73, "error": null} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "fused", "answer": "When modifying `packages/ai/src/models.generated.ts`, you should inspect the following files:\n\n1. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n2. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n3. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n4. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n5. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n6. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n7. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n8. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n9. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n10. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n11. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n12. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n13. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n14. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n15. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n16. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n17. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n18. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n19. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n20. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n21. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n22. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n23. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n24. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n25. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n26.", "latency": 14.71, "error": null} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "fused", "answer": "Based on the provided REPO-ARCH CARDS and COMMIT HISTORY, there are several architectural decisions visible around the unified LLM provider layer:\n\n1. **Unified AI API Implementation**: The commit history shows that the AI API was unified with the Anthropic provider. This indicates a centralized approach to handling AI-related functionalities, potentially simplifying the codebase and reducing the likelihood of bugs.\n\n2. **Model Deduplication**: The commit history mentions that models were deduplicated and Anthropic aliases were added. This suggests that the team is focusing on maintaining a clean and efficient model management system.\n\n3. **Documentation Improvements**: The commit history includes updates to the documentation, specifically clarifying the auto-compaction options and fixing a typo in the `getApiKey` import. This indicates that the team is actively improving the documentation to ensure clarity and accuracy.\n\n4. **Environment Detection**: The commit history shows that the team is detecting the environment (Docker vs host) and informing the agent accordingly. This suggests that the team is considering how to handle different deployment environments in their codebase.\n\n5. **Package Manager Improvements**: The commit history mentions that the package manager was fixed to layer on top of manifest filters. This indicates that the team is enhancing the package management system to better integrate with other parts of the codebase.\n\n6. **Code Formatting and Linting**: The commit history includes updates to the code formatting and linting. This suggests that the team is maintaining a consistent coding style and ensuring that the codebase is clean and maintainable.\n\n7. **Testing Improvements**: The commit history includes updates to the testing framework. This suggests that the team is improving the testing process to ensure that the codebase is robust and reliable.\n\nOverall, the unified LLM provider layer appears to be a key architectural decision that simplifies the codebase, improves the documentation, and enhances the environment detection and package management capabilities.", "latency": 11.57, "error": null} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "fused", "answer": "The risk profile of changing `packages/coding-agent/src/core/agent-session.ts` is high due to the repeated bug fixes mentioned in the REPO-ARCH CARDS. This file has been fixed 94 separate times, indicating that it is a critical component of the application that has been extensively tested and modified. The frequent changes suggest that the file contains complex logic and may be prone to bugs. Therefore, it is important to thoroughly test any changes to this file to ensure that it does not introduce new issues.", "latency": 4.82, "error": null} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "fused", "answer": "Based on the provided REPO-ARCH CARDS and COMMIT HISTORY, the most fragile package boundaries are:\n\n1. **packages/ai**:\n - **Repeated Fix**: 105 separate fixes in `packages/ai/src/models.generated.ts` over 105 commits.\n - **Coupled Change**: This package was modified together with `packages/coding-agent` in 186 commits.\n\n2. **packages/coding-agent**:\n - **Repeated Fix**: 47 separate fixes in `packages/coding-agent/README.md` over 47 commits.\n - **Coupled Change**: This package was modified together with `packages/ai` in 186 commits.\n\n3. **packages/tui**:\n - **Coupled Change**: This package was modified together with `packages/coding-agent` in 186 commits.\n\nThese packages have a high number of commits and repeated fixes, indicating that they are more likely to experience historical breakages due to frequent changes and bug fixes.", "latency": 8.34, "error": null} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "fused", "answer": "Based on the REPO-ARCH CARDS, the files `packages/ai/src/models.generated.ts` and `packages/coding-agent/src/modes/interactive/theme/theme.ts` have been reverted most often. The REPO-ARCH CARDS indicate that these files were reverted 14 and 14 times, respectively, indicating repeated instability in these areas.\n\nThe repeated bug fixes in these files suggest that there may be underlying issues or bugs in the code that need to be addressed. It is important to review these files and ensure that they are stable and free of bugs before making any changes.", "latency": 4.86, "error": null} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "fused", "answer": "Based on the REPO-ARCH CARDS, the riskiest files to modify in the coding agent package are:\n\n1. `packages/coding-agent/src/modes/interactive/interactive-mode.ts`: This file was fixed 157 separate times, indicating a high likelihood of bugs and potential issues.\n2. `packages/ai/src/models.generated.ts`: This file was fixed 105 separate times, suggesting a high risk of bugs and potential issues.\n3. `packages/coding-agent/README.md`: This file was fixed 47 separate times, indicating a high risk of bugs and potential issues.\n4. `packages/coding-agent/src/core/agent-session.ts`: This file was fixed 94 separate times, indicating a high risk of bugs and potential issues.\n\nThese files have been repeatedly modified, which suggests that they are critical components of the coding agent and require careful attention to prevent bugs and ensure stability.", "latency": 6.69, "error": null} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "fused", "answer": "The TUI package has required repeated fixes in the following files:\n\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/test/markdown.test.ts`", "latency": 2.76, "error": null} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "fused", "answer": "Based on the provided context, the AI package has no test coverage despite high change frequency. The files that have no test coverage are:\n\n- `packages/ai/src/models.generated.ts`\n- `packages/ai/test/stream.test.ts`\n\nThese files have been modified 105 times and 275 times, respectively, without any corresponding test file modifications.", "latency": 3.74, "error": null} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "fused", "answer": "Based on the provided context, the configuration files that change without corresponding test updates are:\n\n1. `packages/agent/docs/agent-harness.md`\n2. `packages/agent/src/harness/agent-harness.ts`\n3. `packages/agent/src/harness/types.ts`\n\nThese files are part of the `packages/agent` directory and are related to the agent's harness configuration. The changes in these files indicate that the agent's harness configuration is being modified, but there are no corresponding test files to verify these changes.", "latency": 4.52, "error": null} +{"question_id": 11, "question": "What historical breakages should I know before changing the provider routing?", "mode": "fused", "answer": "To identify historical breakages related to provider routing, you should review the commit history for any changes that affect the OpenRouter provider routing fields. Specifically, look for commits that add or modify fields related to routing, such as `OpenRouterRouting` in `packages/ai/src/types.ts`.\n\nHere are the relevant commit SHAs and the files affected:\n\n1. [3635e45ffdad] feat(ai): add OpenRouter provider routing support (#859)\n2. [f05f4e8a5fea] [packages/ai, packages/coding-agent] files: packages/ai/src/types.ts, packages/coding-agent/docs/models.md, packages/coding-agent/src/core/model-registry.ts Add all OpenRouter provider routing fields to OpenRouterRouting (#2904)\n\nThese commits introduce new fields related to OpenRouter provider routing, which could potentially break existing functionality if not handled correctly. It is recommended to review these commits to ensure that the new fields are compatible with the existing codebase.", "latency": 7.33, "error": null} +{"question_id": 12, "question": "Where has CLI state/config handling been fragile?", "mode": "fused", "answer": "Based on the provided context, CLI state/config handling has been fragile in the following files:\n\n- `packages/coding-agent/test/args.test.ts`\n- `packages/coding-agent/src/cli/args.ts`\n- `packages/coding-agent/src/main.ts`\n\nThese files contain tests and logic related to command-line arguments and configuration handling, which are crucial for the CLI's functionality. The fragile nature of these files suggests that there might be issues with how these arguments are parsed, stored, or validated, which could lead to unexpected behavior or bugs in the CLI.", "latency": 4.72, "error": null} +{"question_id": 13, "question": "What changed repeatedly in the TUI package and why?", "mode": "fused", "answer": "The TUI package experienced repeated bug fixes in the `CHANGELOG.md` and `src/tui.ts` files. The commit history shows that these files were modified together in 186 commits, indicating a coupled change. The repeated bug fixes in these files likely relate to issues with flicker, rendering, or the checkboxes in the to-do list items.", "latency": 3.74, "error": null} +{"question_id": 14, "question": "What web UI changes historically required backend or agent changes?", "mode": "fused", "answer": "Historically, web UI changes required backend or agent changes. The most recent web UI changes were made in the following files:\n\n- `packages/coding-agent/src/modes/interactive/interactive-mode.ts` (157 commits)\n- `packages/coding-agent/README.md` (47 commits)\n\nThese changes were made to address repeated bug fixes in the web UI.", "latency": 3.69, "error": null} +{"question_id": 15, "question": "What is the reversion history of the coding agent README?", "mode": "fused", "answer": "The reversion history of the coding agent README is as follows:\n\n- [0e5778c69b42] Update README.md for coding agent\n- [98fb9f378c54] Improve HTML export\n- [6a5f04ce1fb1] Add codex bridge prompt in the html export\n- [4c2d78f6cb4f] Add the kill ring and undo features to the Input component\n- [ddb5a4497ffc] Remove the garbage the agent left behind and commited\n- [863341fbf5e8] Fix(tui): render the checkboxes in the to-do list items\n- [828c40cf6898] Fix the issue of aborting retries when an extension customizes the editor\n- [35ebe8887093] Call resolvePromptInput on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt (#287)\n\nThis history indicates that the README.md file was updated multiple times over the course of the project's development, with each update being associated with a specific commit.", "latency": 8.38, "error": null} +{"question_id": 16, "question": "How has the changelog management pattern evolved across packages?", "mode": "fused", "answer": "The changelog management pattern has evolved across packages as follows:\n\n1. **[packages/web-ui] files: packages/web-ui/src/components/SandboxedIframe.ts, packages/web-ui/src/components/sandbox/ConsoleRuntimeProvider.ts Unify completion callback pattern across browser-javascript and javascript-repl**\n - This commit unified the completion callback pattern across `browser-javascript` and `javascript-repl` components, which is a significant improvement in maintaining consistency and reducing potential bugs.\n\n2. **[packages/coding-agent] files: packages/coding-agent/README.md docs(coding-agent): show how to run pi after install**\n - This commit added documentation on how to run the `pi` command after installation, which is crucial for users to get started with the project.\n\n3. **[packages/coding-agent] files: packages/coding-agent/src/core/system-prompt.ts, packages/coding-agent/src/main.ts feat: Call resolvePromptInput on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt (#287)**\n - This commit introduced a new feature to call `resolvePromptInput` on the `--system-prompt` received on the CLI argument, which allows for the use of file paths in the prompt, enhancing the flexibility and usability of the `pi` command.\n\n4. **[packages/tui] files: packages/tui/src/components/markdown.ts, packages/tui/test/markdown.test.ts fix(tui): render the checkboxes in the to-do list items**\n - This commit fixed an issue with rendering checkboxes in the to-do list items, ensuring a consistent and visually appealing user interface.\n\n5. **[packages/coding-agent] files: packages/coding-agent/docs/prompt-templates.md, packages/coding-agent/docs/skills.md docs(coding-agent): clarify how to toggle settings and invoke templates**\n - This commit clarified the instructions for toggling settings and invoking templates, making the documentation more user-friendly and easier to follow.\n\n6. **chore: migrate packages to earendil works scope**\n - This commit migrated the packages to the `earendil` works scope, which is a common practice in monorepos to manage dependencies and maintain consistency across packages.\n\nThese changes demonstrate how the changelog management pattern has evolved across packages, from unifying completion callback patterns to introducing new features and improving documentation.", "latency": 14.25, "error": null} +{"question_id": 17, "question": "Which packages have the most untested high-churn files?", "mode": "fused", "answer": "Based on the provided context, there are no high-churn files in any of the packages listed. The REPO-ARCH CARDS show repeated bug fixes across multiple files, indicating that these files are not under active development or are not critical for the project's functionality. The COMMIT HISTORY shows a mix of bug fixes and feature additions, but there are no high-churn files mentioned in the commit history.", "latency": 4.08, "error": null} +{"question_id": 18, "question": "What would you tell a new contributor about test expectations before touching package boundaries?", "mode": "fused", "answer": "Before touching package boundaries, a new contributor should review the test expectations for the package they are working on. This can be done by checking the `CHANGELOG.md` file of the package, which lists all the changes made to the package and their corresponding test expectations. The test expectations are usually listed under the \"Fixes\" section of the change log. If there are any test expectations that are not aligned with the changes made to the package, the new contributor should update the test expectations accordingly. This will help ensure that the new changes do not introduce any bugs and that the package's test coverage is maintained.", "latency": 5.04, "error": null} +{"question_id": 19, "question": "Which files have been fixed most often without corresponding test additions?", "mode": "fused", "answer": "Based on the provided REPO-ARCH CARDS and COMMIT HISTORY, the files that have been fixed most often without corresponding test additions are:\n\n1. `packages/ai/src/models.generated.ts`\n2. `packages/coding-agent/src/modes/interactive/interactive-mode.ts`\n3. `packages/coding-agent/package.json`\n4. `packages/ai/package.json`\n\nThese files have been changed 275 times, 249 times, 317 times, and 314 times, respectively, without any corresponding test file modifications.", "latency": 4.97, "error": null} +{"question_id": 20, "question": "Are there test gaps in the AI provider layer specifically?", "mode": "fused", "answer": "Yes, there are test gaps in the AI provider layer. Specifically, the test file `packages/ai/test/interleaved-thinking.test.ts` is missing from the commit history.", "latency": 2.88, "error": null} +{"question_id": 21, "question": "What should a coding agent inspect before modifying provider-tool-calling behavior?", "mode": "fused", "answer": "To inspect before modifying provider-tool-calling behavior in the coding agent, a coding agent should review the following files and commits:\n\n1. **packages/coding-agent/src/modes/interactive/interactive-mode.ts**:\n - The file has been fixed 157 separate times, indicating repeated bug fixes.\n - The commit history shows changes related to auto-compaction TUI integration and cut point logic, which are important for maintaining the agent's functionality.\n\n2. **packages/ai/src/models.generated.ts**:\n - The file has been fixed 105 separate times, indicating repeated bug fixes.\n - The commit history shows changes related to setting default Kimi Coding user agent, which is crucial for maintaining the agent's compatibility with the Kimi Coding platform.\n\n3. **packages/coding-agent/src/tools/bash.ts**, **packages/coding-agent/src/tools/edit.ts**, **packages/coding-agent/src/tools/read.ts**:\n - The files have been fixed 14 times, indicating repeated bug fixes.\n - The commit history shows changes related to fixing coding agent tools to return error content instead of throwing, which is important for maintaining the agent's stability and reliability.\n\n4. **packages/coding-agent/src/modes/interactive/interactive-mode.ts**:\n - The file has been fixed 157 separate times, indicating repeated bug fixes.\n - The commit history shows changes related to /changelog adding 'What's New' to footer permanently, which is important for maintaining the agent's documentation and user experience.\n\n5. **packages/mom/src/agent.ts**:\n - The file has been fixed 1 time, indicating a single bug fix.\n - The commit history shows changes related to mom: Tell mom what environment she's in (Docker vs host), which is important for maintaining the agent's compatibility with different environments.\n\nBy reviewing these files and commits, a coding agent can ensure that the provider-tool-calling behavior is not only functional but also stable and reliable.", "latency": 12.02, "error": null} +{"question_id": 22, "question": "What is the relationship between interactive mode and theme configuration historically?", "mode": "fused", "answer": "Historically, interactive mode in the pi monorepo has been configured using the theme watcher. The theme watcher is a component that watches for changes in the theme configuration files and updates the theme accordingly. This configuration file is typically located in the `packages/coding-agent` directory and is named `theme.json`. The theme watcher is started in the `src/main.ts` file when the application is started in interactive mode.", "latency": 3.99, "error": null} +{"question_id": 23, "question": "How fragile is the agent session lifecycle based on commit patterns?", "mode": "fused", "answer": "Based on the commit patterns provided, the agent session lifecycle appears to be relatively fragile. The repeated bug fixes in `packages/coding-agent/src/core/agent-session.ts` and `packages/ai/src/models.generated.ts` indicate that there have been multiple changes to the session management logic, which can lead to unexpected behavior or bugs if not properly managed. The repeated bug fixes in `packages/coding-agent/src/modes/interactive/interactive-mode.ts` also suggest that there have been several changes to the interactive mode logic, which can impact the user experience and stability of the agent. Additionally, the commit history shows that there have been several changes to the agent session lifecycle, which can indicate that there is a high degree of complexity and potential for bugs.", "latency": 5.59, "error": null} +{"question_id": 24, "question": "What modes have been added or removed from the coding agent?", "mode": "fused", "answer": "From the commit history, the following modes have been added to the coding agent:\n\n- `interactive-mode.ts`\n\nFrom the commit history, the following modes have been removed from the coding agent:\n\n- `auto-compaction TUI integration and cut point logic`\n- `fix(cod`\n- `WP7: Add AgentSession compaction (manual + auto)`\n- `fix listener preservation`\n- `Fix coding agent tools to return error content instead of throwing`\n- `Remove the garbage the agent left behind and commited`\n- `Remove modelId from session metadata. Not needed, we grab it from the last assistant", "latency": 5.0, "error": null} +{"question_id": 25, "question": "What is the history of model resolver changes?", "mode": "fused", "answer": "The history of model resolver changes includes the following commits:\n\n1. [9e0255b10bea] [packages/mom] files: packages/mom/src/agent.ts mom: Tell mom what environment she's in (Docker vs host)\n2. [35ebe8887093] [packages/coding-agent] files: packages/coding-agent/src/core/system-prompt.ts, packages/coding-agent/src/main.ts feat: Call resolvePromptInput on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt (#287)\n3. [828c40cf6898] [packages/coding-agent] files: packages/coding-agent/src/modes/interactive/interactive-mode.ts Fix the issue of aborting retries when an extension customizes the editor (#1364)\n\nThese commits have introduced changes to the model resolver functionality, which is responsible for determining which model to use for a given prompt.", "latency": 7.29, "error": null} +{"question_id": 26, "question": "How many LLM providers are supported and how are they registered?", "mode": "fused", "answer": "Based on the provided context, the LLM providers supported are Anthropic and Claude. They are registered in the `packages/ai/src/models.generated.ts` file.", "latency": 2.69, "error": null} +{"question_id": 27, "question": "What is the architectural pattern for adding a new provider?", "mode": "fused", "answer": "The architectural pattern for adding a new provider involves several steps, including:\n\n1. **Define the Provider Interface**: Create an interface that outlines the methods and properties that all providers must implement. This interface will define the contract that all providers must adhere to.\n\n2. **Create the Provider Class**: Implement the provider class that implements the interface. The class should provide the necessary functionality for the provider, such as fetching data, processing data, and handling errors.\n\n3. **Register the Provider**: Register the provider class with the system so that it can be used by other parts of the system. This can be done by adding the provider class to a list of available providers or by using a configuration system to specify which providers are available.\n\n4. **Use the Provider**: Use the provider class in other parts of the system to fetch and process data. This can be done by calling the methods provided by the provider class and passing in the necessary parameters.\n\n5. **Test the Provider**: Test the provider to ensure that it works correctly and meets the requirements of the system. This can be done by writing unit tests and integration tests to verify that the provider behaves as expected.\n\n6. **Document the Provider**: Document the provider to explain how it works and how to use it. This can be done by writing a README file or by using a documentation system to provide detailed information about the provider.\n\nBy following these steps, you can create a new provider that can be used by other parts of the system and can be easily integrated into the existing architecture.", "latency": 9.61, "error": null} +{"question_id": 28, "question": "Which provider has the most complex auth requirements historically?", "mode": "fused", "answer": "The provider with the most complex auth requirements historically is Auth0.", "latency": 2.27, "error": null} +{"question_id": 29, "question": "How have streaming options evolved across providers?", "mode": "fused", "answer": "To answer this question, we need to look at the commit history for the `packages/ai` repository. The relevant commit is [130c23e6c7c7], which adds MiniMax M2.5 entries across providers. This commit was made by [99ce76d66e08], who made changes to the `packages/ai` repository. The commit also includes changes to the `packages/agent` repository, which was made by [d1613e3f538c]. The commit also includes changes to the `packages/coding-agent` repository, which was made by [0aa84624c290]. The commit also includes changes to the `.npmrc` file, which was made by [d7410fafc092]. The commit also includes changes to the `README.md` file, which was made by [c63f33d83b85], [6cc370c446f9], and [c4102c7b81be].", "latency": 7.64, "error": null} +{"question_id": 30, "question": "What is the relationship between model generation scripts and the type system?", "mode": "fused", "answer": "The model generation scripts in the `packages/ai` directory are related to the TypeScript type system. The file `packages/ai/src/models.generated.ts` is a generated file that contains TypeScript definitions for the models used in the AI system. The repeated bug fixes in this file indicate that the TypeScript definitions are being updated or modified frequently, which suggests that the TypeScript type system is being used to define and manage the models in the AI system.", "latency": 4.2, "error": null} +{"question_id": 31, "question": "What are the most frequently changed TUI components?", "mode": "fused", "answer": "Based on the commit history provided, the most frequently changed TUI components are:\n\n1. `packages/tui/src/components/markdown.ts`\n2. `packages/tui/src/components/editor.ts`\n3. `packages/tui/src/tui-renderer.ts`\n4. `packages/tui/src/tui/assistant-message.ts`\n5. `packages/tui/src/tui/thinking-selector.ts`\n\nThese components are mentioned in multiple commits, indicating that they are the most frequently modified parts of the TUI codebase.", "latency": 4.48, "error": null} +{"question_id": 32, "question": "How has the keybinding system evolved?", "mode": "fused", "answer": "The keybinding system in the `packages/coding-agent` and `packages/tui` packages has evolved significantly over time. Here's a breakdown of the changes:\n\n### `packages/coding-agent`\n- **Symbol Key Support**: The keybinding system now supports symbol keys, which allows users to use symbols like `@` and `$` in their keybindings.\n- **CLI Argument Support**: The system now supports appending content to the system prompt via a command-line argument (`--system-prompt`).\n- **Bundling Changes**: The binary build now uses Bun 1.2.20, which fixes cross-compile issues.\n- **Keybinding Normalization**: Builtin keybinding keys have been normalized to lowercase to ensure consistency and ease of use.\n\n### `packages/tui`\n- **Markdown Rendering**: The `packages/tui/src/components/markdown.ts` file now includes rendering of checkboxes in to-do list items.\n- **Markdown Testing**: The `packages/tui/test/markdown.test.ts` file has been updated to ensure proper rendering of markdown content.\n\n### Summary\n- **Symbol Key Support**: Added support for symbol keys in keybindings.\n- **CLI Argument Support**: Added support for appending content to the system prompt via a command-line argument.\n- **Bundling Changes**: Updated the binary build to use Bun 1.2.20.\n- **Keybinding Normalization**: Normalized builtin keybinding keys to lowercase.\n- **Markdown Rendering**: Added rendering of checkboxes in to-do list items.\n- **Markdown Testing**: Updated markdown testing to ensure proper rendering.\n\nThese changes have improved the usability and functionality of the keybinding system in both packages.", "latency": 10.6, "error": null} +{"question_id": 33, "question": "What theme-related changes have been made and reverted?", "mode": "fused", "answer": "### Theme-Related Changes and Revertions\n\n#### Theme Changes\n- **Reverted Changes**:\n - `packages/coding-agent/src/modes/interactive/theme/theme.ts`: Reverted changes affecting this file, indicating instability \u2014 review before modifying these areas.\n - `packages/ai/src/models.generated.ts`: Reverted changes affecting this file, indicating instability \u2014 review before modifying these areas.\n\n- **Theme Fixes**:\n - `packages/coding-agent/src/modes/interactive/interactive-mode.ts`: Repeated bug fixes in this file, this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent/src/modes/interactive/interactive-mode.ts): this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(cod\n - `packages/coding-agent/src/modes/interactive/interactive-mode.ts`: Repeated bug fixes in this file, this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent/src/modes/interactive/interactive-mode.ts): this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent/src/modes/interactive/interactive-mode.ts): this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent/src/modes/interactive/interactive-mode.ts): this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent/src/modes/interactive/interactive-mode.ts): this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent/src/modes/interactive/interactive-mode.ts): this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent/src/modes/interactive/interactive-mode.ts): this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent/src/modes/interactive/interactive-mode.ts): this file was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic,", "latency": 14.62, "error": null} +{"question_id": 34, "question": "What is the history of the prompt input handling?", "mode": "fused", "answer": "The prompt input handling in the `packages/coding-agent` project has undergone several changes over time. The most recent commit is [17d863c08285], which added the `bridge prompt` feature to the HTML export. This commit was made by [17d863c08285].", "latency": 3.63, "error": null} +{"question_id": 35, "question": "How has error display evolved in the TUI?", "mode": "fused", "answer": "Error display in the TUI has evolved significantly over the commits provided. The most recent update was made in commit [d7410fafc092], which fixed a bug in the `editor.ts` file. This commit introduced the use of the non-null assertion operator (`!`) instead of the `assert()` function, which is generally considered safer and more modern. This change likely improved the robustness of the error handling in the TUI.", "latency": 4.14, "error": null} +{"question_id": 36, "question": "What npm scripts and config are essential for the build pipeline?", "mode": "fused", "answer": "For the build pipeline, the essential npm scripts and config are:\n\n1. **`prepare`**: This script is used to clean and reinstall dependencies. It is crucial for ensuring that the build environment is consistent across different environments (development, testing, production).\n\n2. **`build`**: This script is responsible for building the project. It typically involves compiling the code, running tests, and packaging the application.\n\n3. **`test`**: This script is used to run the tests for the project. It is essential for ensuring that the code is functioning as expected.\n\n4. **`start`**: This script is used to start the development server for the project. It is useful for quickly testing the application locally.\n\n5. **`package`**: This script is used to package the project for distribution. It typically involves creating a distributable package that can be installed and run on different environments.\n\n6. **`lint`**: This script is used to lint the code for style and formatting issues. It is essential for maintaining a consistent code style and improving the quality of the codebase.\n\n7. **`format`**: This script is used to format the code according to the project's style guide. It is essential for maintaining a consistent code style and improving the quality of the codebase.\n\n8. **`deploy`**: This script is used to deploy the project to a production environment. It typically involves copying the packaged application to a server or deploying it to a cloud service.\n\n9. **`prepublishOnly`**: This script is used to run scripts that should only be run before the package is published. It is essential for ensuring that the package is ready for publication.\n\n10. **`postpublish`**: This script is used to run scripts that should be run after the package is published. It is essential for ensuring that the package is properly installed and configured on the target environment.\n\n11. **`preinstall`**: This script is used to run scripts that should only be run before the package is installed. It is essential for ensuring that the package is ready for installation.\n\n12. **`postinstall`**: This script is used to run scripts that should be run after the package is installed. It is essential for ensuring that the package is properly installed and configured on the target environment.\n\n13. **`preuninstall`**: This script is used to run scripts that should only be run before the package is uninstalled. It is essential for ensuring that the package is properly uninstalled.\n\n14. **", "latency": 14.65, "error": null} +{"question_id": 37, "question": "How has the CI configuration evolved?", "mode": "fused", "answer": "The CI configuration has evolved over time. Initially, it was set up to build and test the project using npm scripts. However, as the project grew, it became necessary to use a more robust CI tool like GitHub Actions. The CI workflow has been updated to include more steps, such as running tests and building the project using different environments. Additionally, the workflow has been optimized to reduce the number of commits required to trigger a build.", "latency": 4.07, "error": null} +{"question_id": 38, "question": "What is the history of dependency management (package-lock churn)?", "mode": "fused", "answer": "The history of dependency management (package-lock churn) in the pi monorepo can be analyzed by examining the commit history. Here's a breakdown of the key points:\n\n1. **[019ad0ec115c]**: This commit adds a new file `packages/coding-agent/src/modes/interactive/interactive-mode.ts` and fixes an issue in the `changelog` file. It does not directly relate to dependency management.\n\n2. **[30dd31d7878b]**: This commit merges the `feat/scroll-previous-prompts` branch with the `history load on resume` branch. It does not directly relate to dependency management.\n\n3. **[9e0255b10bea]**: This commit adds a new file `packages/mom/src/agent.ts` and updates the `mom` package to tell it what environment it is in (Docker vs host). It does not directly relate to dependency management.\n\n4. **[35ebe8887093]**: This commit adds new files `packages/coding-agent/src/core/system-prompt.ts` and `packages/coding-agent/src/main.ts` and fixes issues related to the `resolvePromptInput` function. It does not directly relate to dependency management.\n\n5. **[828c40cf6898]**: This commit fixes an issue in the `interactive-mode.ts` file and does not directly relate to dependency management.\n\n6. **[863341fbf5e8]**: This commit fixes an issue in the `markdown.ts` and `markdown.test.ts` files and does not directly relate to dependency management.\n\n7. **[2e2de3905dd7]**: This commit updates the `README.md` file in the `mom` package and removes the `Key Concepts` section. It does not directly relate to dependency management.\n\n8. **[4c2d78f6cb4f]**: This commit adds new files `packages/tui/src/components/editor.ts`, `packages/tui/src/components/input.ts`, and `packages/tui/src/kill-ring.ts` and adds the kill ring and undo features to the `Input` component. It does not directly relate to dependency management.\n\n### Summary\nThe history of dependency management in the pi monorepo shows a steady increase in the number of commits related to the `package-lock.json` file. The most", "latency": 15.13, "error": null} +{"question_id": 39, "question": "Which root-level config files are most frequently modified and why?", "mode": "fused", "answer": "Based on the REPO-ARCH CARDS and COMMIT HISTORY, the root-level config files most frequently modified are:\n\n1. **packages/coding-agent/src/core/agent-session.ts**: This file was fixed 94 separate times, indicating that it is a critical component of the coding agent's functionality and is likely to be modified frequently to address bugs or improve performance.\n\n2. **packages/ai/src/models.generated.ts**: This file was fixed 105 separate times, suggesting that it is a critical component of the AI model generation and is likely to be modified frequently to address bugs or improve performance.\n\n3. **packages/coding-agent/src/modes/interactive/interactive-mode.ts**: This file was fixed 157 separate times, indicating that it is a critical component of the interactive mode and is likely to be modified frequently to address bugs or improve performance.\n\nThese files are likely to be modified frequently because they contain critical code that is essential for the functionality of the application.", "latency": 7.23, "error": null} +{"question_id": 40, "question": "What release process conventions are visible in the commit history?", "mode": "fused", "answer": "The release process conventions visible in the commit history are:\n- The `chore: update changelog.md to add the latest commit` commit adds a new entry to the CHANGELOG.md file.\n- The `Merge commit 0acb65fe from PR #2058` commit merges a pull request from PR #2058.\n- The `Merge feat/scroll-previous-prompts with history load on resume` commit merges a feature branch from feat/scroll-previous-prompts with the history load on resume branch.\n- The `files: packages/mom/src/agent.ts mom: Tell mom what environment she's in (Docker vs host)` commit adds a new file to packages/mom/src/agent.ts and updates the mom environment in the agent.ts file.\n- The `files: AGENTS.md docs: forbid git commit --no-verify in agent rules` commit adds a new file to AGENTS.md and updates the agent rules to forbid git commit --no-verify.\n- The `files: packages/tui/src/tui.ts perf(tui): early-out extractCursorPosition when cursor is above visible viewport` commit adds a new file to packages/tui/src/tui.ts and updates the tui performance in the extractCursorPosition function.", "latency": 8.38, "error": null} +{"question_id": 41, "question": "What is the relationship between CHANGELOG updates and actual code changes across packages?", "mode": "fused", "answer": "The relationship between CHANGELOG updates and actual code changes across packages is that CHANGELOG entries are often created as a result of code changes. For example, in the commit history provided, several CHANGELOG entries were created for packages like `packages/coding-agent` and `packages/ai`, which suggests that these packages were updated with new features, bug fixes, or documentation changes. The CHANGELOG entries are typically added to the `CHANGELOG.md` file in the root directory of each package, and they provide a summary of the changes made in that package.", "latency": 4.83, "error": null} +{"question_id": 42, "question": "How do model updates cascade through the system?", "mode": "fused", "answer": "Model updates cascade through the system in the pi monorepo by utilizing the `antigravity` endpoint cascade on 403/404 errors and adding an autopush fallback. This ensures that the system can handle errors gracefully and provide a fallback mechanism if the primary endpoint fails.", "latency": 3.62, "error": null} +{"question_id": 43, "question": "What is the most common cause of bugs based on fix commit patterns?", "mode": "fused", "answer": "Based on the fix commit patterns provided in the REPO-ARCH CARDS, the most common cause of bugs is repeated bug fixes. Specifically, the pattern \"repeated-fix\" indicates that multiple commits have been made to the same file, fixing the same issue multiple times. This suggests that the issue is likely a recurring problem that needs to be addressed in a systematic way.", "latency": 3.71, "error": null} +{"question_id": 44, "question": "How does the system handle provider API changes over time?", "mode": "fused", "answer": "The system handles provider API changes over time by updating the CHANGELOGs for steer()/followUp() API changes in the respective packages. This ensures that developers are aware of any changes to the API and can update their code accordingly.", "latency": 3.22, "error": null} +{"question_id": 45, "question": "What architectural debt is visible from the commit history?", "mode": "fused", "answer": "Based on the commit history provided, there are several architectural debt visible:\n\n1. **Repeated Bug Fixes**: The commit history contains multiple instances of repeated bug fixes across various packages. For example, the `interactive-mode.ts` file was fixed 157 times, and the `README.md` file was fixed 47 times. This indicates that there are several areas where bugs are recurring and need to be addressed.\n\n2. **Changelog Improvements**: The commit history includes a change to the changelog in the `coding-agent` package, adding the latest commit. This suggests that the changelog is being updated regularly and that the latest commit is being tracked.\n\n3. **Model Management**: The commit history mentions changes to the `models.generated.ts` file, which suggests that there are ongoing efforts to manage and update models. This could indicate that there is a need for better model management practices or that there are ongoing issues with the model management system.\n\n4. **Session Metadata**: The commit history includes changes to the `agent-session.ts` file, specifically related to session compaction and listener preservation. This suggests that there is ongoing work on session management and that there are potential issues with the current implementation.\n\n5. **Agent Rules**: The commit history mentions changes to the `agent.ts` file in the `mom` package, specifically related to the environment in which the agent is running. This suggests that there is ongoing work on agent rules and that there are potential issues with the current implementation.\n\nOverall, the commit history indicates that there is a need for better architectural practices and that there are ongoing efforts to address architectural debt.", "latency": 10.51, "error": null} diff --git a/.repo-arch/eval/runs/fused-v2-45.jsonl b/.repo-arch/eval/runs/fused-v2-45.jsonl new file mode 100644 index 0000000000..d4eeebd4df --- /dev/null +++ b/.repo-arch/eval/runs/fused-v2-45.jsonl @@ -0,0 +1,45 @@ +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "fused-v2", "answer": "Based on the provided context and commit history, the packages that tend to co-change together are `packages/ai` and `packages/coding-agent`. This implies that these packages are closely related and are likely to be updated together as part of a larger project or release cycle. The frequent changes in both packages suggest that they are working together to improve the functionality or performance of the system.", "latency": 3.7, "query_type": "pattern", "cards_used": 2, "commits_used": 6, "error": null} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "fused-v2", "answer": "To modify `packages/ai/src/models.generated.ts`, you should inspect the following files:\n\n1. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n2. `packages/ai/src/providers/transorm-messages.ts`: This file contains the logic for transforming messages, which might be affected by changes in `models.generated.ts`.\n3. `packages/ai/src/models.generated.ts`: This file is also listed as a repeated fix, so you should review any changes made to it in the past to ensure they do not introduce new issues.\n\nBy inspecting these files, you can ensure that your changes do not break existing functionality and that any potential bugs are caught by automated tests.", "latency": 5.44, "query_type": "general", "cards_used": 4, "commits_used": 10, "error": null} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "fused-v2", "answer": "The unified LLM provider layer is visible in the `packages/ai` directory, where the `CHANGELOG.md` and `src/models.generated.ts` files were modified together in 125 commits.", "latency": 2.98, "query_type": "general", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "fused-v2", "answer": "The risk profile of changing `packages/coding-agent/src/core/agent-session.ts` is high due to the repeated bug fixes and changes in the file over multiple commits. The commit history shows a significant number of changes, including bug fixes and improvements, which can introduce new issues and regressions. The repeated nature of these changes also makes it difficult to predict the potential impact of a single change, which can lead to unpredictable behavior and bugs.", "latency": 4.19, "query_type": "risk", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "fused-v2", "answer": "Based on the historical breakages in the `packages/web-ui` package, the most fragile boundaries are:\n\n1. **`packages/web-ui/src/components/editor.ts`**: This file has been modified 18 times (commits: Add CHANGELOG.md for web-ui package files: packages/web-ui/CHANGELOG.md), indicating that it has been a critical component in the package's functionality and stability.", "latency": 3.95, "query_type": "risk", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "fused-v2", "answer": "Based on the commit history provided, the files that have been reverted most often are:\n\n- `packages/ai/src/models.generated.ts`\n- `packages/browser-extension/manifest.chrome.json`\n\nThese files have been reverted 14 times, indicating that there has been significant instability in these areas. The revert commits indicate that the changes in these files were causing issues, and the developers have decided to revert them to a previous state to ensure stability.", "latency": 4.12, "query_type": "general", "cards_used": 3, "commits_used": 10, "error": null} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "fused-v2", "answer": "The riskiest files to modify in the coding agent package are those that contain critical bug fixes and changes that could potentially affect the stability or functionality of the agent. The files with the highest number of commits (157) and the most significant changes (repeated bug fixes) are:\n\n- `packages/coding-agent/src/modes/interactive/interactive-mode.ts`\n\nThis file has been modified 157 times, with the most recent commit being `Fix auto-compaction TUI integration and cut point logic` (commit: `Fix auto-compaction TUI integration and cut point logic`). This commit likely contains critical bug fixes that could impact the user experience or the stability of the agent.", "latency": 5.41, "query_type": "risk", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "fused-v2", "answer": "The TUI package has required repeated fixes in the following files:\n\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/test/markdown.test.ts`\n- `packages/tui/src/components/editor.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown.ts`\n- `packages/tui/src/components/markdown", "latency": 11.53, "query_type": "package", "cards_used": 2, "commits_used": 12, "error": null} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "fused-v2", "answer": "The AI package has no test coverage despite high change frequency. The files that have no test coverage are:\n\n- `packages/ai/src/models.generated.ts`", "latency": 2.88, "query_type": "package", "cards_used": 3, "commits_used": 12, "error": null} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "fused-v2", "answer": "The configuration files that change without corresponding test updates are `packages/agent/docs/agent-harness.md` and `packages/agent/src/harness/agent-harness.ts`.", "latency": 2.85, "query_type": "general", "cards_used": 3, "commits_used": 10, "error": null} +{"question_id": 11, "question": "What historical breakages should I know before changing the provider routing?", "mode": "fused-v2", "answer": "To address the historical breakages related to provider routing, you should review the following:\n\n1. **Commit History**: The commit history shows that there are 14 revert commits affecting the `packages/ai/src/models.generated.ts` file. These revert commits indicate instability and should be reviewed before modifying these areas.\n\n2. **Revert Pattern**: The revert pattern is identified in the context, which suggests that the changes in `packages/ai/src/models.generated.ts` were reverted to restore stability. This information is crucial for understanding the impact of these changes and ensuring that any future changes do not introduce new instability.\n\n3. **Test Coverage Gap**: The test coverage gap in `packages/ai/src/models.generated.ts` is noted as 275 times without corresponding test file modification. This indicates that any bugs introduced in `packages/ai/src/models.generated.ts` would not be caught by automated tests. You should review whether tests exist elsewhere or should be added to ensure comprehensive testing.\n\n4. **Repeated Fixes**: The repeated fixes in `packages/coding-agent/src/modes/interactive/interactive-mode.ts` are mentioned, indicating that the file was fixed 157 separate times. This suggests that there are multiple issues that need to be addressed before making changes to this file.\n\nBy understanding the historical context and the impact of these changes, you can make informed decisions about whether to proceed with changes to the provider routing and ensure that the system remains stable and reliable.", "latency": 9.42, "query_type": "risk", "cards_used": 4, "commits_used": 10, "error": null} +{"question_id": 12, "question": "Where has CLI state/config handling been fragile?", "mode": "fused-v2", "answer": "The CLI state/config handling has been fragile in `packages/pods/cli.ts` from commit `8ed6f6dd8599`.", "latency": 2.64, "query_type": "risk", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 13, "question": "What changed repeatedly in the TUI package and why?", "mode": "fused-v2", "answer": "The TUI package had repeated changes, specifically in the `interactive-mode.ts` file. The changes were made in 186 commits, with the most recent commit being from 2026-01-25. The repeated changes were related to the `resolvePromptInput` function, which was called on the `--system-prompt` received on the CLI argument. This was needed to support file paths on the prompt. The changes were made to ensure that the prompt input was resolved correctly, which was important for the proper functioning of the TUI.", "latency": 4.96, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} +{"question_id": 14, "question": "What web UI changes historically required backend or agent changes?", "mode": "fused-v2", "answer": "The web UI changes historically required backend or agent changes as indicated by the commit history. Specifically, the `getApiKey` function was added to the `web-ui/example/src/main.ts` file in commit `977e4ea6ef3c`, which is part of the `packages/web-ui` package. This commit is associated with the `web-ui` package and is part of the `2025-12-28 977e4ea6ef3c` commit.", "latency": 4.59, "query_type": "general", "cards_used": 3, "commits_used": 10, "error": null} +{"question_id": 15, "question": "What is the reversion history of the coding agent README?", "mode": "fused-v2", "answer": "The reversion history of the coding agent README is as follows:\n\n- **Commit SHA**: `2025-11-12 0e5778c69b42: README.md update for coding agent files: packages/coding-agent/README.md`\n- **Description**: This commit updates the README.md file for the coding agent, adding a new section for the `--system-prompt` argument and fixing the issue of aborting retries when an extension customizes the editor.", "latency": 4.66, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} +{"question_id": 16, "question": "How has the changelog management pattern evolved across packages?", "mode": "fused-v2", "answer": "The changelog management pattern has evolved across packages as follows:\n\n1. **packages/2025-11-12T17-07-17-324Z_9dc9b37e-bea5-47ca-b52e-7e5b0b90ea06**: The changelog was updated in 1 commit to include the removal of garbage left behind and committed files.\n2. **packages/ai**: The changelog was updated in 1 commit to include the fix for including an empty tools param when the conversation has tool history.\n3. **packages/coding-agent**: The changelog was updated in 1 commit to include the documentation for running Pi after installation.\n4. **packages/mom**: The changelog was updated in 1 commit to describe how we could possibly ship a minimal Alpine container with Mom by default.\n5. **packages/tui**: The changelog was updated in 1 commit to fix the rendering of checkboxes in the to-do list items.\n6. **packages/web-ui**: The changelog was updated in 1 commit to unify the completion callback pattern across browser-javascript and JavaScript-repl files.", "latency": 8.02, "query_type": "pattern", "cards_used": 3, "commits_used": 6, "error": null} +{"question_id": 17, "question": "Which packages have the most untested high-churn files?", "mode": "fused-v2", "answer": "Based on the provided context, the packages with the most untested high-churn files are:\n\n1. **packages/coding-agent**:\n - **Files**: `packages/coding-agent/src/modes/interactive/interactive-mode.ts`\n - **Commits**: 157\n\n2. **packages/ai**:\n - **Files**: `CLAUDE.md`, `README.md`, `packages/ai/src/providers/transorm-messages.ts`\n - **Commits**: 1\n\n3. **packages/tui**:\n - **Files**: `packages/tui/src/components/markdown.ts`, `packages/tui/test/markdown.test.ts`\n - **Commits**: 1\n\nThese packages have the highest number of commits (157, 1, and 1 respectively) and are the most likely to have untested high-churn files due to their high churn rate and the frequency of changes.", "latency": 6.67, "query_type": "test", "cards_used": 2, "commits_used": 8, "error": null} +{"question_id": 18, "question": "What would you tell a new contributor about test expectations before touching package boundaries?", "mode": "fused-v2", "answer": "To ensure that new contributors understand the importance of test expectations before touching package boundaries, the following guidance can be provided:\n\n1. **Review Test Expectations Files**: Before making any changes to a package boundary, it is crucial to review the test expectations files for that package. These files typically contain expected outcomes for various test cases. Reviewing these files can help identify any inconsistencies or missing expectations, which can lead to unexpected behavior or failures in the tests.\n\n2. **Update Test Expectations**: If necessary, update the test expectations files to reflect the changes made in the package boundary. This ensures that the tests are aligned with the updated behavior of the package and can catch any regressions or bugs introduced.\n\n3. **Run Tests**: After updating the test expectations files, run the tests for the package boundary to ensure that the changes do not introduce new failures. This can be done using the CI/CD pipeline or by running the tests locally.\n\n4. **Document Changes**: Document the changes made to the test expectations files and the reasons for the changes. This documentation can be included in the pull request or in the commit message, making it easier for other contributors to understand the changes and ensure that they are aligned with the existing test expectations.\n\nBy following these steps, new contributors can ensure that their changes do not introduce new failures or regressions and that the tests are aligned with the updated behavior of the package boundary.", "latency": 9.33, "query_type": "general", "cards_used": 4, "commits_used": 10, "error": null} +{"question_id": 19, "question": "Which files have been fixed most often without corresponding test additions?", "mode": "fused-v2", "answer": "Based on the commit history provided, the file `packages/ai/src/models.generated.ts` has been fixed most often without corresponding test additions. This can be seen in the repeated fix card with commit SHAs `fix(ai): Deduplicate models and add Anthropic aliases, docs(ai): Fix model names in README examples, fix(ai): Fix OpenAI Responses provider multi-turn conversation support, fix(ai): Fix browse`.", "latency": 4.05, "query_type": "general", "cards_used": 3, "commits_used": 10, "error": null} +{"question_id": 20, "question": "Are there test gaps in the AI provider layer specifically?", "mode": "fused-v2", "answer": "Yes, there are test gaps in the AI provider layer specifically. The commit history shows that there were 275 changes to the `packages/ai/src/models.generated.ts` file without any corresponding test file modification. This means any bugs introduced in `packages/ai/src/models.generated.ts` would not be caught by automated tests.", "latency": 3.7, "query_type": "test", "cards_used": 3, "commits_used": 8, "error": null} +{"question_id": 21, "question": "What should a coding agent inspect before modifying provider-tool-calling behavior?", "mode": "fused-v2", "answer": "To inspect provider-tool-calling behavior in the coding agent, a developer should look at the following files:\n\n- `packages/coding-agent/src/tui-renderer.ts`: This file contains the logic for rendering the TUI (Text User Interface) and should be reviewed to ensure that it correctly handles provider-tool-calling behavior.\n- `packages/coding-agent/src/tools/bash.ts`, `packages/coding-agent/src/tools/edit.ts`, and `packages/coding-agent/src/tools/read.ts`: These files contain the logic for interacting with the command line tools used in the coding agent, and should be reviewed to ensure that they correctly handle provider-tool-calling behavior.\n\nAdditionally, the developer should review the `packages/coding-agent/src/cli.ts` file, which contains the logic for starting the coding agent CLI process, and ensure that it correctly handles provider-tool-calling behavior.", "latency": 6.36, "query_type": "risk", "cards_used": 4, "commits_used": 10, "error": null} +{"question_id": 22, "question": "What is the relationship between interactive mode and theme configuration historically?", "mode": "fused-v2", "answer": "Historically, the interactive mode in the coding-agent package was coupled with theme configuration changes. The interactive mode was initially introduced in the ai package in 2026-01-08, and the theme configuration was added in the ai package in 2026-01-26. The interactive mode was then updated in the coding-agent package in 2026-01-26, and the theme configuration was updated in the coding-agent package in 2026-01-26.", "latency": 4.65, "query_type": "pattern", "cards_used": 2, "commits_used": 6, "error": null} +{"question_id": 23, "question": "How fragile is the agent session lifecycle based on commit patterns?", "mode": "fused-v2", "answer": "Based on the commit patterns provided, the agent session lifecycle is relatively fragile. The `packages/coding-agent/src/core/agent-session.ts` file has been modified 94 times, which indicates a high level of change and potential for bugs. Additionally, the `packages/coding-agent/CHANGELOG.md` file has been updated 186 times, which suggests that the agent session lifecycle has undergone significant changes over time.", "latency": 4.01, "query_type": "pattern", "cards_used": 2, "commits_used": 6, "error": null} +{"question_id": 24, "question": "What modes have been added or removed from the coding agent?", "mode": "fused-v2", "answer": "The coding agent has added the \"interactive\" mode.", "latency": 2.28, "query_type": "general", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 25, "question": "What is the history of model resolver changes?", "mode": "fused-v2", "answer": "The history of model resolver changes can be found in the commit history of the `packages/coding-agent` repository. Specifically, the following commits were made to the `packages/coding-agent/src/core/extensions/runner.ts` file:\n\n1. `2026-01-11 e68058cc4f0b`: fix: custom footer extensions now see model changes\n2. `2026-01-11 019ad0ec115c`: Fix /changelog adding 'What's New' to footer permanently\n3. `2025-11-11 bf5f4b17c0b7`: Add custom session events for thinking level and model changes\n4. `2025-12-23 35ebe8887093`: feat: Call resolvePromptInput on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt (#287)\n\nThese commits represent the history of changes made to the model resolver in the `packages/coding-agent` repository.", "latency": 8.14, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} +{"question_id": 26, "question": "How many LLM providers are supported and how are they registered?", "mode": "fused-v2", "answer": "The LLM providers supported in the pi monorepo are:\n- Claude\n- Anthropic\n- OpenAI\n- Google Bard\n- Anthropic Claude\n- Anthropic Claude 2\n- Anthropic Claude 3\n- Anthropic Claude 4\n- Anthropic Claude 5\n- Anthropic Claude 6\n- Anthropic Claude 7\n- Anthropic Claude 8\n- Anthropic Claude 9\n- Anthropic Claude 10\n- Anthropic Claude 11\n- Anthropic Claude 12\n- Anthropic Claude 13\n- Anthropic Claude 14\n- Anthropic Claude 15\n- Anthropic Claude 16\n- Anthropic Claude 17\n- Anthropic Claude 18\n- Anthropic Claude 19\n- Anthropic Claude 20\n- Anthropic Claude 21\n- Anthropic Claude 22\n- Anthropic Claude 23\n- Anthropic Claude 24\n- Anthropic Claude 25\n- Anthropic Claude 26\n- Anthropic Claude 27\n- Anthropic Claude 28\n- Anthropic Claude 29\n- Anthropic Claude 30\n- Anthropic Claude 31\n- Anthropic Claude 32\n- Anthropic Claude 33\n- Anthropic Claude 34\n- Anthropic Claude 35\n- Anthropic Claude 36\n- Anthropic Claude 37\n- Anthropic Claude 38\n- Anthropic Claude 39\n- Anthropic Claude 40\n- Anthropic Claude 41\n- Anthropic Claude 42\n- Anthropic Claude 43\n- Anthropic Claude 44\n- Anthropic Claude 45\n- Anthropic Claude 46", "latency": 11.89, "query_type": "general", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 27, "question": "What is the architectural pattern for adding a new provider?", "mode": "fused-v2", "answer": "The architectural pattern for adding a new provider is typically a service-oriented architecture (SOA). This pattern involves breaking down the system into smaller, manageable services that can be developed, deployed, and scaled independently. Each service can have its own responsibilities and can communicate with other services using APIs or messaging queues. This approach helps in maintaining a modular and scalable system, making it easier to add new providers or modify existing ones.", "latency": 3.98, "query_type": "pattern", "cards_used": 3, "commits_used": 6, "error": null} +{"question_id": 28, "question": "Which provider has the most complex auth requirements historically?", "mode": "fused-v2", "answer": "The provider with the most complex auth requirements historically is OpenAI.", "latency": 2.35, "query_type": "general", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 29, "question": "How have streaming options evolved across providers?", "mode": "fused-v2", "answer": "The streaming options across providers have evolved significantly over time. The most recent changes can be seen in the following commits:\n\n- **2026-03-22 d1613e3f538c**: Fixed handling of explicit thinking off across providers. This commit introduces a fix to ensure that the `explicitThinkingOff` setting is correctly applied across all providers.\n\n- **2026-02-13 130c23e6c7c7**: Added MiniMax M2.5 entries across providers. This commit updates the model entries in the `models.generated.ts` file, adding new entries for MiniMax M2.5 across different providers.\n\n- **2025-12-18 c63f33d83b85**: Updated the steering and options files. This commit modifies the steering and options files, which are crucial for configuring the agent's behavior and settings.\n\nThese commits indicate that the streaming options have been refined and expanded across different providers, ensuring better compatibility and functionality.", "latency": 7.44, "query_type": "general", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 30, "question": "What is the relationship between model generation scripts and the type system?", "mode": "fused-v2", "answer": "The relationship between model generation scripts and the type system is that the `packages/ai/src/models.generated.ts` file contains the generated models for the AI system. The type system is used to define the structure and types of the models, ensuring that the generated code is consistent and type-safe.", "latency": 3.37, "query_type": "pattern", "cards_used": 2, "commits_used": 6, "error": null} +{"question_id": 31, "question": "What are the most frequently changed TUI components?", "mode": "fused-v2", "answer": "Based on the commit history provided, the most frequently changed TUI components are:\n\n1. `packages/tui/src/components/markdown.ts`\n2. `packages/tui/src/components/editor.ts`\n3. `packages/tui/src/components/todo-list.ts`\n4. `packages/tui/src/components/assistant-message.ts`\n5. `packages/tui/src/components/thinking-selector.ts`\n\nThese components are mentioned in multiple commits, indicating that they are frequently updated and modified in the TUI codebase.", "latency": 4.67, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} +{"question_id": 32, "question": "How has the keybinding system evolved?", "mode": "fused-v2", "answer": "The keybinding system in the `packages/coding-agent` package has evolved significantly over time. The keybindings were normalized to lowercase in commit `5353dd4b7e92` and further refined in subsequent commits.", "latency": 3.29, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} +{"question_id": 33, "question": "What theme-related changes have been made and reverted?", "mode": "fused-v2", "answer": "The theme-related changes have been made in the `packages/coding-agent/src/tui/tui-renderer.ts` file. The changes were reverted in the `packages/coding-agent/src/session-manager.ts` file.", "latency": 3.05, "query_type": "general", "cards_used": 3, "commits_used": 10, "error": null} +{"question_id": 34, "question": "What is the history of the prompt input handling?", "mode": "fused-v2", "answer": "The history of the prompt input handling in the `packages/coding-agent` repository is as follows:\n\n- **Commit 35ebe8887093**: Added a feature to call `resolvePromptInput` on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt.\n- **Commit 17d863c08285**: Showed the bridge prompt as a standalone thing.\n- **Commit 828c40cf6898**: Fixed the issue of aborting retries when an extension customizes the editor.\n- **Commit ef8bb6c062be**: Supported appending content to the system prompt via CLI argument.\n- **Commit 35ebe8887093**: Added a feature to call `resolvePromptInput` on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt.\n- **Commit 17d863c08285**: Showed the bridge prompt as a standalone thing.\n- **Commit 828c40cf6898**: Fixed the issue of aborting retries when an extension customizes the editor.\n- **Commit ef8bb6c062be**: Supported appending content to the system prompt via CLI argument.\n- **Commit 35ebe8887093**: Added a feature to call `resolvePromptInput` on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt.\n- **Commit 17d863c08285**: Showed the bridge prompt as a standalone thing.\n- **Commit 828c40cf6898**: Fixed the issue of", "latency": 11.94, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} +{"question_id": 35, "question": "How has error display evolved in the TUI?", "mode": "fused-v2", "answer": "Error display in the TUI has evolved significantly over time. The initial commit in 2025-12-22 introduced the TUI: Improve file completion display (fixes #280), which included a fix for file completion display. Subsequent commits have continued to enhance the error handling and display in the TUI, with the most recent commit in 2026-01-18 using the non-null assertion operator instead of assert() to improve safety and readability.", "latency": 5.31, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} +{"question_id": 36, "question": "What npm scripts and config are essential for the build pipeline?", "mode": "fused-v2", "answer": "The essential npm scripts and config for the build pipeline in the pi monorepo include:\n\n1. `build`: This script is used to build the project. It is located in the root directory of the project and is executed by running `npm run build` in the terminal.\n\n2. `prepublishOnly`: This script is used to prepare the project for publishing. It is located in the root directory of the project and is executed by running `npm run prepublishOnly` in the terminal.\n\n3. `prepublish`: This script is used to prepare the project for publishing. It is located in the root directory of the project and is executed by running `npm run prepublish` in the terminal.\n\n4. `prepare`: This script is used to prepare the project for publishing. It is located in the root directory of the project and is executed by running `npm run prepare` in the terminal.\n\n5. `lint`: This script is used to lint the code in the project. It is located in the root directory of the project and is executed by running `npm run lint` in the terminal.\n\n6. `test`: This script is used to run the tests in the project. It is located in the root directory of the project and is executed by running `npm run test` in the terminal.\n\n7. `build-binaries`: This script is used to build the binaries for the project. It is located in the root directory of the project and is executed by running `npm run build-binaries` in the terminal.\n\n8. `ci`: This script is used to run the CI pipeline for the project. It is located in the root directory of the project and is executed by running `npm run ci` in the terminal.\n\n9. `cover`: This script is used to run the coverage for the project. It is located in the root directory of the project and is executed by running `", "latency": 25.91, "query_type": "general", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 37, "question": "How has the CI configuration evolved?", "mode": "fused-v2", "answer": "The CI configuration for the pi monorepo has evolved over time. Initially, it was set up with npm workspaces and dual TypeScript configuration. The first commit that introduced this setup was on May 10, 2025, when the `a74c5da112c2` commit was made. Since then, there have been several updates to the CI configuration, including the addition of a new package (`ai`) and the introduction of a new feature (`harness stream configuration files`). The most recent commit that changed the CI configuration was on May 10, 2026, when the `c0f416aabc6c` commit was made.", "latency": 9.19, "query_type": "history", "cards_used": 1, "commits_used": 14, "error": null} +{"question_id": 38, "question": "What is the history of dependency management (package-lock churn)?", "mode": "fused-v2", "answer": "The history of dependency management in the pi monorepo shows a total of 186 commits related to package-lock file changes. The most significant changes were made in the `packages/coding-agent` package, which had 186 commits.", "latency": 4.25, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} +{"question_id": 39, "question": "Which root-level config files are most frequently modified and why?", "mode": "fused-v2", "answer": "Based on the commit history provided, the root-level config files that are most frequently modified are:\n\n1. **packages/ai/CHANGELOG.md**: This file is updated frequently, reflecting changes in the AI package. It contains a list of changes, including bug fixes, new features, and updates to the package's documentation.\n\n2. **packages/coding-agent/CHANGELOG.md**: This file is also updated frequently, reflecting changes in the coding agent package. It contains a list of changes, including bug fixes, new features, and updates to the package's documentation.\n\n3. **packages/web-ui/CHANGELOG.md**: This file is updated frequently, reflecting changes in the web UI package. It contains a list of changes, including bug fixes, new features, and updates to the package's documentation.\n\nThe commit counts for these files are as follows:\n\n- **packages/ai/CHANGELOG.md**: 432 commits\n- **packages/coding-agent/CHANGELOG.md**: 432 commits\n- **packages/web-ui/CHANGELOG.md**: 1 commit\n\nThese files are most frequently modified because they contain the most significant changes to the packages in the monorepo, reflecting the ongoing development and updates to the AI, coding agent, and web UI components.", "latency": 9.03, "query_type": "general", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 40, "question": "What release process conventions are visible in the commit history?", "mode": "fused-v2", "answer": "The release process conventions visible in the commit history include the following:\n\n1. **Changelog Updates**: The `packages/coding-agent/CHANGELOG.md` file is updated frequently to reflect the latest changes and fixes. This file is updated in response to various pull requests and commits, ensuring that users are aware of the changes and updates made to the project.\n\n2. **Commit Messages**: Commit messages are consistent and follow a specific format, which includes a subject line and a body. The subject line typically describes the main changes made, and the body provides more detailed information about the changes.\n\n3. **Release Notes**: The `packages/tui/CHANGELOG.md` file also serves as a release notes document, listing the changes made in each release. This document is updated in response to pull requests and commits, ensuring that users are aware of the changes and updates made to the project.\n\n4. **Release Process**: The release process is automated and follows a specific set of steps. This process includes creating a new release branch, updating the `CHANGELOG.md` file, and then merging the changes to the main branch.\n\n5. **Commit Counts**: The commit history shows a high number of commits, which indicates that the project has undergone significant changes over time. This is a testament to the project's active development and the contributions of its contributors.", "latency": 9.6, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} +{"question_id": 41, "question": "What is the relationship between CHANGELOG updates and actual code changes across packages?", "mode": "fused-v2", "answer": "The relationship between CHANGELOG updates and actual code changes across packages is that CHANGELOG updates are often a result of code changes. In the provided commit history, there are several packages that have had their CHANGELOGs updated, and these updates are often linked to the code changes made in those packages. For example, the CHANGELOG for `packages/ai` was updated in response to changes made in the `packages/ai/src/models.generated.ts` file, and the CHANGELOG for `packages/coding-agent` was updated in response to changes made in the `packages/coding-agent/src/modes/interactive/interactive-mode.ts` file.", "latency": 5.47, "query_type": "pattern", "cards_used": 3, "commits_used": 6, "error": null} +{"question_id": 42, "question": "How do model updates cascade through the system?", "mode": "fused-v2", "answer": "Model updates cascade through the system by triggering a refresh of the active model after a provider update closes. This is achieved by calling `resolvePromptInput` on the `--system-prompt` received on the CLI argument. This is necessary to support file paths on the prompt.", "latency": 3.72, "query_type": "general", "cards_used": 2, "commits_used": 10, "error": null} +{"question_id": 43, "question": "What is the most common cause of bugs based on fix commit patterns?", "mode": "fused-v2", "answer": "Based on the commit patterns provided, the most common cause of bugs is the repeated use of the `pi` command alias and the fix for the `getApiKey` import in the `packages/coding-agent/README.md` file.", "latency": 3.22, "query_type": "pattern", "cards_used": 3, "commits_used": 6, "error": null} +{"question_id": 44, "question": "How does the system handle provider API changes over time?", "mode": "fused-v2", "answer": "The system handles provider API changes over time by updating the provider models and their associated configurations. This is done through the `packages/ai` package, which contains the models and their respective provider configurations. The changes are tracked in the `CHANGELOG.md` files, which are updated whenever a new version of the package is released.", "latency": 3.89, "query_type": "general", "cards_used": 3, "commits_used": 10, "error": null} +{"question_id": 45, "question": "What architectural debt is visible from the commit history?", "mode": "fused-v2", "answer": "Based on the commit history provided, there is an architectural debt visible in the `packages/coding-agent` directory. Specifically, there are repeated bug fixes in the `interactive-mode.ts` file, which has been modified 157 separate times. This indicates that the codebase has a high level of duplication and may be difficult to maintain.", "latency": 4.06, "query_type": "history", "cards_used": 2, "commits_used": 14, "error": null} diff --git a/.repo-arch/eval/runs/hybrid-45.jsonl b/.repo-arch/eval/runs/hybrid-45.jsonl new file mode 100644 index 0000000000..50c0ac22fa --- /dev/null +++ b/.repo-arch/eval/runs/hybrid-45.jsonl @@ -0,0 +1,45 @@ +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "hybrid-search", "answer": "Based on the commit history provided, the packages that tend to co-change together are `packages/ai` and `packages/coding-agent`. This implies that these two packages are closely related and likely share common functionality or are part of a larger system that they both contribute to.\n\nThe `packages/ai` package includes changes related to centralized logging, usage tracking, and prompt caching, which suggest it might be involved in the overall AI-related functionality of the monorepo. The `packages/coding-agent` package includes changes related to extension package management, hot reload, and bundling, which suggest it might be involved in the overall coding agent functionality of the monorepo.\n\nThe co-change of these two packages could indicate that they are part of a larger system that they both contribute to, and that they are likely to be updated together as part of the same release or iteration.", "latency": 8.76, "error": null} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "hybrid-search", "answer": "To modify `packages/ai/src/models.generated.ts`, you should inspect the following files:\n\n1. `packages/ai/src/models.generated.ts`: This is the file you are modifying.\n2. `packages/coding-agent/CHANGELOG.md`: This file contains changes to the `packages/ai` package, which might affect the behavior of `packages/ai/src/models.generated.ts`.\n3. `packages/ai/src/models.generated.ts`: This file is also included in the `co-change` card, indicating that it was modified together with `packages/coding-agent/CHANGELOG.md` in 147 commits.", "latency": 7.16, "error": null} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "hybrid-search", "answer": "To answer the question about architectural decisions visible around the unified LLM provider layer, let's analyze the commit history and the changes made to the relevant packages.\n\n1. **Packages/ai**:\n - **2025-08-30**: Added comprehensive image input documentation for all LLM providers.\n - **2025-08-30**: Implemented cost tracking to LLM implementations.\n - **2025-08-17**: Implemented unified AI API with Anthropic provider.\n - **2026-01-16**: Fixed provider feature detection to use model.provider, not just URL.\n\n2. **Packages/coding-agent**:\n - **2025-12-24**: Added LLM context diagram to compaction docs.\n - **2025-12-31**: Clarified that compaction/branch details are hook-customizable.\n - **2025-12-05**: Added ctrl+t shortcut to toggle llm thinking block visibility.\n - **2026-04-24**: Documented DeepSeek provider support.\n\n3. **Packages/mom**:\n - **2025-12-13**: Replace Claude mentions with LLM in README files.\n - **2025-11-26**: mom: Tell mom what environment she's in (Docker vs host).\n\n### Key Architectural Decisions:\n1. **Unified LLM API**: The unified LLM API is implemented across multiple packages, including `packages/ai`, `packages/coding-agent`, and `packages/mom`. This allows for a consistent and flexible interface for interacting with different LLM providers.\n\n2. **Provider Detection**: The commit history shows that the provider detection mechanism has been updated to use", "latency": 14.84, "error": null} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "hybrid-search", "answer": "The risk profile of changing `packages/coding-agent/src/core/agent-session.ts` is moderate. There are 94 separate bug fixes applied to this file, which indicates a high level of complexity and potential impact on the application's functionality. The repeated nature of these fixes suggests that the changes are likely to be extensive and may require careful review and testing to ensure that they do not introduce new bugs or regressions.", "latency": 6.19, "error": null} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "hybrid-search", "answer": "Based on the historical breakages in package boundaries, the most fragile boundaries are those that have seen multiple commits. The most frequent boundaries are `packages/coding-agent` and `packages/mom`. These packages have seen the most commits, indicating that they are more prone to breaking changes.", "latency": 5.11, "error": null} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "hybrid-search", "answer": "Based on the commit history provided, the file `packages/ai/src/models.generated.ts` has been reverted most often. This file was affected by 14 revert commits, indicating that the changes in this file were unstable and needed to be reviewed before modifying them.", "latency": 4.92, "error": null} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "hybrid-search", "answer": "The riskiest files to modify in the coding agent package are those that have been modified multiple times, as indicated by the repeated fixes in the `interactive-mode.ts` file. Specifically, the files `packages/coding-agent/src/modes/interactive/interactive-mode.ts` have been modified 157 times, which is a significant number of changes. These changes likely involve critical bug fixes, feature enhancements, or performance improvements that could have a significant impact on the overall functionality of the coding agent.", "latency": 6.05, "error": null} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "hybrid-search", "answer": "The files in the TUI package that have required repeated fixes are located in the `packages/tui` directory. Specifically, the files `src/tui.ts`, `src/autocomplete.ts`, `src/components/markdown.ts`, and `src/tui.ts` have been modified multiple times to address various issues.", "latency": 5.32, "error": null} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "hybrid-search", "answer": "Based on the commit history provided, the AI package has no test coverage for the following files:\n\n- `packages/ai/test/stream.test.ts`\n- `packages/ai/test/image-limits.test.ts`\n- `packages/ai/test/openai-codex-stream.test.ts`\n- `packages/coding-agent/test/clipboard.test.ts`\n- `packages/coding-agent/test/package-manager.test.ts`\n\nThese files have been modified 14 times, which is significantly higher than the 275 times mentioned in the test-gap card. Therefore, they do not have any corresponding test file modifications, leading to a test coverage gap.", "latency": 7.01, "error": null} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "hybrid-search", "answer": "Based on the commit history provided, the configuration files that change without corresponding test updates are:\n\n- `packages/ai/src/models.generated.ts`\n- `packages/coding-agent/CHANGELOG.md`\n\nThese changes are related to the `ai` and `coding-agent` packages, respectively. The `ai` package contains the `models.generated.ts` file, which is a generated file that is automatically updated by the build process. The `coding-agent` package contains the `CHANGELOG.md` file, which is used to document changes to the project.\n\nTo address this issue, it is recommended to add tests for the changes made to these files. This will help catch any bugs introduced in these files and ensure that the project remains stable and reliable.", "latency": 7.65, "error": null} +{"question_id": 11, "question": "What historical breakages should I know before changing the provider routing?", "mode": "hybrid-search", "answer": "To avoid breaking changes in the provider routing, you should review the following historical changes:\n\n1. **OpenRouter provider routing support**:\n - **Commit 2026-04-09 f05f4e8a5fea**: Added all OpenRouter provider routing fields to OpenRouterRouting.\n - **Commit 2026-01-19 dac7474da237**: Added OpenRouter provider routing support.\n - **Commit 2026-02-12 7ccf809a5d5c**: Added changelog entry for copilot claude messages routing.\n - **Commit 2026-01-29 e045a9f14235**: Added Vercel AI Gateway routing support.\n\n2. **Vercel AI Gateway routing support**:\n - **Commit 2026-01-29 e045a9f14235**: Added Vercel AI Gateway routing support.\n\n3. **OpenRouter provider routing fields**:\n - **Commit 2026-04-09 f05f4e8a5fea**: Added all OpenRouter provider routing fields to OpenRouterRouting.\n\nThese commits introduced changes to the provider routing logic, which might break existing configurations or behaviors. Before making any changes to the provider routing, it is recommended to review these commits and ensure that your setup is compatible with the new changes.", "latency": 11.8, "error": null} +{"question_id": 12, "question": "Where has CLI state/config handling been fragile?", "mode": "hybrid-search", "answer": "CLI state/config handling has been fragile in the `packages/mom` package. Specifically, the `Creating a Skill example and clarify standard CLI tools` commit from December 13, 2025, introduces a new example for creating a skill, which can lead to confusion and potential issues if not managed properly.", "latency": 5.47, "error": null} +{"question_id": 13, "question": "What changed repeatedly in the TUI package and why?", "mode": "hybrid-search", "answer": "The TUI package was repeatedly modified in the following commits:\n\n1. **2025-11-11 985f955ea0b3**: Clean up TUI package and refactor component structure files: This commit removed unnecessary files and refactored the component structure. It was repeated 47 times.\n\n2. **2025-11-11 8fa780e052a8**: Improve TUI instructions and thinking selector styling files: This commit added new instructions and styling for the TUI. It was repeated 47 times.\n\n3. **2025-12-31 20fbf40facd1**: Add tui.md and improve TUI documentation files: This commit added a new documentation file and improved the existing TUI documentation. It was repeated 47 times.\n\n4. **2025-12-22 519688cb358a**: README: clarify TUI settings save to global preferences only files: This commit clarified the TUI settings save to global preferences only. It was repeated 47 times.\n\n5. **2026-01-02 a9809984640d**: Revert /todos to custom TUI component files: This commit reverted the /todos component to a custom TUI component. It was repeated 47 times.\n\nThese repeated changes were likely due to ongoing development and maintenance of the TUI package, as well as the need to ensure consistency and maintainability across different components.", "latency": 11.89, "error": null} +{"question_id": 14, "question": "What web UI changes historically required backend or agent changes?", "mode": "hybrid-search", "answer": "Historically, web UI changes required backend or agent changes. The most significant changes in the web UI include:\n\n1. **Agent API Improvements**: The web UI now exposes the `agent`, `agentInterface`, and `artifactsPanel` as public in the `ChatPanel` class. This required changes to the backend and agent code to support these new features.\n\n2. **Custom Messages**: The `getApiKey` function was added to the `main.ts` file of the web UI example. This required changes to the backend and agent code to support the new API endpoint.\n\n3. **Custom Messages**: The `main.ts` file of the web UI example was modified to include the `getApiKey` function. This required changes to the backend and agent code to support the new API endpoint.\n\n4. **Custom Messages**: The `main.ts` file of the web UI example was modified to include the `getApiKey` function. This required changes to the backend and agent code to support the new API endpoint.\n\n5. **Custom Messages**: The `main.ts` file of the web UI example was modified to include the `getApiKey` function. This required changes to the backend and agent code to support the new API endpoint.\n\n6. **Custom Messages**: The `main.ts` file of the web UI example was modified to include the `getApiKey` function. This required changes to the backend and agent code to support the new API endpoint.\n\n7. **Custom Messages**: The `main.ts` file of the web UI example was modified to include the `getApiKey` function. This required changes to the backend and agent code to support the new API endpoint.\n\n8. **Custom Messages**: The `main.ts` file of the web UI example was modified to include the `getApiKey` function. This required changes to the backend and agent code to support the new API endpoint.\n\n9. **", "latency": 13.39, "error": null} +{"question_id": 15, "question": "What is the reversion history of the coding agent README?", "mode": "hybrid-search", "answer": "The reversion history of the coding agent README is as follows:\n\n- **Commit SHA**: `d868792`\n - **Summary**: Reverted changes to the coding agent README to fix a bug related to the `getApiKey` import. This commit was made on `2025-11-12` and was part of the `packages/coding-agent` package.\n\n- **Commit SHA**: `4f5f47a`\n - **Summary**: Reverted changes to the coding agent README to fix a bug related to the `--append-system-prompt` flag. This commit was made on `2025-12-15` and was part of the `packages/coding-agent` package.", "latency": 8.08, "error": null} +{"question_id": 16, "question": "How has the changelog management pattern evolved across packages?", "mode": "hybrid-search", "answer": "The changelog management pattern has evolved across packages. Initially, it was focused on updating the `packages/ai` and `packages/tui` changelogs. However, as the project grew, the pattern expanded to include the `packages/coding-agent` changelog as well. This evolution reflects the need for comprehensive and up-to-date changelogs to help users understand the changes made in the project.", "latency": 5.78, "error": null} +{"question_id": 17, "question": "Which packages have the most untested high-churn files?", "mode": "hybrid-search", "answer": "Based on the commit history provided, the packages with the most untested high-churn files are:\n\n1. **packages/coding-agent**: This package has 157 untested high-churn files across multiple commits, including fixes for auto-compaction TUI integration and cut point logic, skipping hook initialization when no hooks are configured, and disabling theme watcher in print mode.\n\n2. **packages/tui**: This package has 3 untested high-churn files across multiple commits, including optimizing image line detection and box cache, rendering checkboxes in the to-do list items, and adding the kill ring and undo features to the Input component.\n\nThese packages are the most critical for maintaining high-quality code and ensuring that the product is stable and reliable.", "latency": 7.55, "error": null} +{"question_id": 18, "question": "What would you tell a new contributor about test expectations before touching package boundaries?", "mode": "hybrid-search", "answer": "Before touching package boundaries, a new contributor should review the test expectations files in the packages they are working on. This ensures that any changes made do not break existing test cases and that the tests are comprehensive. The test expectations files are located in the `packages/coding-agent/test` directory. The commit history shows that there have been 186 commits that have modified these files, indicating that there are a lot of test cases to review.", "latency": 5.9, "error": null} +{"question_id": 19, "question": "Which files have been fixed most often without corresponding test additions?", "mode": "hybrid-search", "answer": "Based on the commit history provided, the file `packages/ai/src/models.generated.ts` has been fixed most often without corresponding test additions. This can be seen from the repeated fix card with a confidence level of 0.95. The file has been fixed 105 separate times, and no corresponding test file modification has been made.", "latency": 5.53, "error": null} +{"question_id": 20, "question": "Are there test gaps in the AI provider layer specifically?", "mode": "hybrid-search", "answer": "Yes, there are test gaps in the AI provider layer specifically. The commit history shows that the `packages/ai/src/models.generated.ts` file was changed 275 times without any corresponding test file modification. This means any bugs introduced in `packages/ai/src/models.generated.ts` would not be caught by automated tests. Review whether tests exist elsewhere or should be added.", "latency": 5.41, "error": null} +{"question_id": 21, "question": "What should a coding agent inspect before modifying provider-tool-calling behavior?", "mode": "hybrid-search", "answer": "A coding agent should inspect the `packages/coding-agent/src/tools/bash.ts`, `packages/coding-agent/src/tools/edit.ts`, and `packages/coding-agent/src/tools/read.ts` files before modifying provider-tool-calling behavior.", "latency": 4.83, "error": null} +{"question_id": 22, "question": "What is the relationship between interactive mode and theme configuration historically?", "mode": "hybrid-search", "answer": "Historically, the interactive mode in the coding-agent package has been configured with theme settings. This configuration was initially set up in the `interactive-mode.ts` file, which is located in the `packages/coding-agent/src/modes/interactive` directory. The theme configuration was initially set to use a default value at module load time, as shown in the commit history. However, this default value was later reverted in a subsequent commit, which is evident from the commit hash `a46c4aab4fa9`.", "latency": 6.15, "error": null} +{"question_id": 23, "question": "How fragile is the agent session lifecycle based on commit patterns?", "mode": "hybrid-search", "answer": "Based on the commit patterns provided, the agent session lifecycle appears to be relatively fragile. The most significant changes in the session management and agent state methods were made in the `coding-agent` package, which has 12 unique commits. This suggests that the session lifecycle is not well-structured or maintained, which could lead to issues if changes are not properly managed or if the lifecycle is not consistent across different parts of the codebase.", "latency": 5.89, "error": null} +{"question_id": 24, "question": "What modes have been added or removed from the coding agent?", "mode": "hybrid-search", "answer": "The coding agent has added the following modes:\n- Interactive mode\n\nThe coding agent has removed the following modes:\n- None", "latency": 4.03, "error": null} +{"question_id": 25, "question": "What is the history of model resolver changes?", "mode": "hybrid-search", "answer": "To answer the question about the history of model resolver changes, I'll review the commit history of the `packages/coding-agent` package, which contains the `model-resolver.ts` file.\n\n1. **Commit 6783271d7583**: This commit adds a note about the model list being updated with each release in the `providers.md` file. This indicates that the model resolver is being updated to reflect changes in the model list.\n\n2. **Commit 56342258e167**: This commit fixes the `--model selection, thinking, and --api-key` options in the `cli/args.ts` file. This change is likely related to the model resolver as it involves handling model selection and API key settings.\n\n3. **Commit 7364696ae6f2**: This commit improves the `model-resolver.ts` file by preferring provider/model split over gateway model id matching. This change is likely related to the model resolver as it involves optimizing the model resolution process.\n\n4. **Commit 6f4bd814b8b3**: This commit allows provider-scoped custom model ids in the `model-resolver.ts` file. This change is likely related to the model resolver as it involves handling custom model IDs for different providers.\n\n5. **Commit 9b2d22d26d0f**: This commit updates the `ai` package CHANGELOG.md for v0.30.2+ changes. This change is likely related to the model resolver as it involves updating the changelog for the AI package.\n\n6. **Commit a4b36e3d6336**: This commit updates the `mom` package CHANGELOG.md for unreleased changes since v0.30.2. This change is likely related to the model", "latency": 13.3, "error": null} +{"question_id": 26, "question": "How many LLM providers are supported and how are they registered?", "mode": "hybrid-search", "answer": "There are 5 LLM providers supported in the pi monorepo. They are registered in the `packages/ai/src/providers` directory. The providers are listed in the `packages/ai/src/models.ts` file.", "latency": 4.69, "error": null} +{"question_id": 27, "question": "What is the architectural pattern for adding a new provider?", "mode": "hybrid-search", "answer": "The architectural pattern for adding a new provider in the pi monorepo is to follow the \"Provider Pattern\" as described in the commit history. The pattern involves creating a new provider file and updating the necessary files to integrate the new provider into the system. The commit history shows that the `packages/ai/src/providers/google.ts` file was modified in 2025-08-31 to simplify the Google provider with cleaner block handling, and the `packages/coding-agent/src/modes/interactive/interactive-mode.ts` file was modified in 2026-01-24 to add custom provider support with streamSimple files.", "latency": 6.94, "error": null} +{"question_id": 28, "question": "Which provider has the most complex auth requirements historically?", "mode": "hybrid-search", "answer": "Based on the commit history provided, the provider with the most complex auth requirements historically is `Amazon Bedrock`. The commit history shows that the `amazon-bedrock` provider has been modified multiple times, including adding support for Bearer token auth for the Converse API, which is a more complex authentication mechanism compared to other providers.", "latency": 5.29, "error": null} +{"question_id": 29, "question": "How have streaming options evolved across providers?", "mode": "hybrid-search", "answer": "The evolution of streaming options across providers can be seen in the commit history of the `packages/ai` package. The most recent commit, `2025-09-18 b6af05bbf626: fix(ai): correct streaming event documentation and API methods files`, introduced a fix to the streaming event documentation and API methods. This commit was made in response to a bug where the streaming events were not being documented correctly. The previous commit, `2025-08-24 a8ba19f0b4e4: feat(ai): Implement Gemini provider with streaming and tool support`, added support for the Gemini provider with streaming and tool support. This commit was made in response to a request to add support for a new provider. The previous commit, `2025-09-02 004de3c9d015: feat(ai): Add new streaming generate API with AsyncIterable interface`, added a new streaming generate API with the AsyncIterable interface. This commit was made in response to a request to add a new feature.", "latency": 9.37, "error": null} +{"question_id": 30, "question": "What is the relationship between model generation scripts and the type system?", "mode": "hybrid-search", "answer": "The relationship between model generation scripts and the type system is that the scripts are used to generate model files, and the type system is used to define the structure and types of the models. The scripts sort the providers and models files to ensure that the models are generated in a deterministic order, and the type system is used to enforce type safety when creating LLM files.", "latency": 5.52, "error": null} +{"question_id": 31, "question": "What are the most frequently changed TUI components?", "mode": "hybrid-search", "answer": "To determine the most frequently changed TUI components, we need to analyze the commit history for the `packages/tui` directory. The commit history shows that the `packages/tui` directory has been modified 10 times. The most frequently changed files are:\n\n1. `packages/tui/src/tui.ts`: This file has been modified 2 times, which is the most frequent change.\n2. `packages/tui/src/tui-render.test.ts`: This file has been modified 1 time.\n3. `packages/tui/CHANGELOG.md`: This file has been modified 1 time.\n4. `packages/tui/src/components/editor.ts`: This file has been modified 1 time.\n5. `packages/tui/test/tui-render.test.ts`: This file has been modified 1 time.\n6. `packages/tui/README.md`: This file has been modified 1 time.\n7. `packages/tui/src/tui.ts`: This file has been modified 1 time.\n8. `packages/tui/src/tui.ts`: This file has been modified 1 time.\n9. `packages/tui/src/tui.ts`: This file has been modified 1 time.\n10. `packages/tui/src/tui.ts`: This file has been modified 1 time.\n\nTherefore, the most frequently changed TUI components are `packages/tui/src/tui.ts`, `packages/tui/src/tui-render.test.ts`, `packages/tui/CHANGELOG.md`, `packages/tui/src/components/editor.ts`, `packages/tui/test/tui-render.test.ts`, `packages/tui/README.md`, `packages/tui/src/tui.ts`, `packages/tui/src/tui.ts`, `packages/tui/src/tui.ts`, and `packages/tui/src/tui.ts`.", "latency": 12.97, "error": null} +{"question_id": 32, "question": "How has the keybinding system evolved?", "mode": "hybrid-search", "answer": "The keybinding system has evolved significantly over the past few weeks. The main changes include:\n\n1. **Symbol Key Support**: The keybinding system now supports symbol keys, which allows users to navigate through the editor using keyboard shortcuts. This feature was added in commit `b836a9d2ee0d` on January 4, 2026.\n\n2. **Builtin Keybinding Keys**: Builtin keybindings keys have been normalized to lowercase in commit `5353dd4b7e92` on January 18, 2026. This ensures consistency across all keybindings.\n\n3. **Keybinding Actions for /tree, /fork, and /new**: The keybinding system now includes actions for navigating to the tree, for forking a repository, and for creating a new repository. These features were added in commit `6f2d066342d9` on January 31, 2026.\n\n4. **Resume as Configurable Keybinding Action**: The keybinding system now allows users to configure the resume action, which can be used to resume a session. This feature was added in commit `b80762966aa7` on February 4, 2026.\n\nThese changes have improved the usability and functionality of the keybinding system in the coding agent.", "latency": 10.65, "error": null} +{"question_id": 33, "question": "What theme-related changes have been made and reverted?", "mode": "hybrid-search", "answer": "Theme-related changes have been made and reverted in the following files and commits:\n\n**Theme Changes Made:**\n- `packages/coding-agent/src/modes/interactive/interactive-mode.ts`: Reverted changes to theme watcher in print mode.\n- `packages/coding-agent/test/interactive-mode-status.test.ts`: Reverted changes to theme watcher in print mode.\n- `packages/tui/src/tui.ts`: Fixed viewport tracking and cursor positioning for overlays and content shrink.\n\n**Theme Changes Reverted:**\n- `packages/coding-agent/src/modes/interactive/interactive-mode.ts`: Reverted changes to theme watcher in print mode.\n- `packages/coding-agent/test/interactive-mode-status.test.ts`: Reverted changes to theme watcher in print mode.\n- `packages/tui/src/tui.ts`: Fixed viewport tracking and cursor positioning for overlays and content shrink.\n\nThese changes were made in the following commits:\n\n- `2026-01-08 c8460dec7e80`: docs(coding-agent): restore SDK breaking changes to changelog files.\n- `2026-02-23 6137de9ce78f`: fix(coding-agent): sync extension theme changes to session settings (#1483).\n- `2026-01-09 e0e66a305449`: Add documentation on component invalidation and theme changes files.\n- `2025-12-31 116fbad24c39`: Expand theme changes section in CHANGELOG.md files.\n- `2026-01-20 565488fde66d`: fix(tui): fix viewport tracking and cursor positioning for overlays and content shrink.\n\nThe total number of theme-related changes made and reverted is 6", "latency": 13.33, "error": null} +{"question_id": 34, "question": "What is the history of the prompt input handling?", "mode": "hybrid-search", "answer": "The history of the prompt input handling can be seen in the following commits:\n\n1. **2025-12-23 35ebe8887093**: Added the `resolvePromptInput` function to the `system-prompt.ts` file, which is needed to support file paths on the prompt. This commit was made by **@pi** and was part of the **feat: Call resolvePromptInput on the `--system-prompt` received on the CLI argument. This is needed to support file paths on the prompt (#287)**.\n\n2. **2025-12-05 ef8bb6c062be**: Added the ability to append content to the system prompt via the CLI argument. This commit was made by **@pi** and was part of the **feat(tui): add prompt history navigation with Up/Down arrows**.\n\n3. **2025-12-05 3a5185c5fd23**: Added the `promptHistoryNavigation` function to the `tui-renderer.ts` file, which handles the navigation of the prompt history using the Up/Down arrows. This commit was made by **@pi** and was part of the **feat(tui): add prompt history navigation with Up/Down arrows**.\n\n4. **2025-12-05 342af285c469**: Documented the new `--append-system-prompt` flag in the `README.md` and `CHANGELOG.md` files. This commit was made by **@pi** and was part of the **document the new --append-system-prompt flag**.", "latency": 12.69, "error": null} +{"question_id": 35, "question": "How has error display evolved in the TUI?", "mode": "hybrid-search", "answer": "Error display in the TUI has evolved over time, with several improvements and fixes. The most recent commit that introduced these changes is `609095b0b629`, which refactors the multi-line insertion handling in the TUI. This commit also includes a fix for preventing duplicate URL display for autolinked emails, which was identified in commit `620239bd3fd3`. The previous commit, `6bde679a5f58`, introduces the use of the non-null assertion operator instead of `assert()` in the TUI, which is a security enhancement. The commit `31f4a588fdbb` improves the file completion display in the TUI, fixing a bug that caused truncated tool output.", "latency": 7.77, "error": null} +{"question_id": 36, "question": "What npm scripts and config are essential for the build pipeline?", "mode": "hybrid-search", "answer": "To ensure a smooth build pipeline for the pi monorepo, the following npm scripts and configurations are essential:\n\n1. **`npm run build`**: This script is used to build the project. It typically involves compiling the code, running tests, and packaging the application for deployment.\n\n2. **`npm run build:binary`**: This script is specifically designed for building the project in a binary format, which is useful for deployment on platforms that do not support native JavaScript. This script is crucial for ensuring compatibility with different environments.\n\n3. **`npm run build:dev`**: This script is used for running the development server. It is essential for debugging and testing the application in a live environment.\n\n4. **`npm run build:prod`**: This script is used for building the production version of the application. It is crucial for deploying the application to production environments.\n\n5. **`npm run build:lint`**: This script is used for linting the code to ensure it adheres to coding standards. It is essential for maintaining a high-quality codebase.\n\n6. **`npm run build:format`**: This script is used for formatting the code to ensure it is consistent. It is essential for maintaining a consistent codebase.\n\n7. **`npm run build:test`**: This script is used for running the tests to ensure the application works as expected. It is essential for maintaining the quality of the application.\n\n8. **`npm run build:coverage`**: This script is used for generating code coverage reports. It is essential for ensuring that the application is well-tested.\n\n9. **`npm run build:docs`**: This script is used for generating documentation. It is essential for providing clear and concise documentation for the application.\n\n10. **`npm run build:package`**: This script is used for packaging the application for deployment. It is essential for ensuring that", "latency": 13.24, "error": null} +{"question_id": 37, "question": "How has the CI configuration evolved?", "mode": "hybrid-search", "answer": "The CI configuration has evolved significantly over the past few months. Initially, it was set up with a parallel workspace build, which was causing issues with cross-compile problems. To address this, the CI configuration was updated to use an ordered root build instead of parallel workspace builds. This change was made in commit `3690137ecc0d` on January 13, 2026.", "latency": 6.02, "error": null} +{"question_id": 38, "question": "What is the history of dependency management (package-lock churn)?", "mode": "hybrid-search", "answer": "The history of dependency management (package-lock churn) in the pi monorepo is as follows:\n\n1. **2026-04-30**: `fix(ci): install sandbox extension dependency files` - This commit introduced the installation of sandbox extension dependency files, which was a part of the CI setup.\n2. **2026-03-29**: `Updated fast-xml-builder dependency, bedrock sdk is bad. files: package-lock.json` - This commit updated the fast-xml-builder dependency and marked bedrock sdk as bad, which might have been related to dependency conflicts or issues.\n3. **2026-01-22**: `feat(coding-agent): extension package management and hot reload` - This commit introduced extension package management and hot reload features in the coding-agent package.\n4. **2025-10-26**: `0.0.2 files: package-lock.json, package.json` - This commit released version 0.0.2 of the root package.\n\nThe total number of commits related to dependency management is 4.", "latency": 9.66, "error": null} +{"question_id": 39, "question": "Which root-level config files are most frequently modified and why?", "mode": "hybrid-search", "answer": "The root-level config files that are most frequently modified are `.pi/prompts/pr.md` and `packages/coding-agent/README.md`. These files are modified 432 times in the commit history, indicating that they are critical configuration files that are frequently updated to ensure the correct behavior of the pi monorepo.", "latency": 5.24, "error": null} +{"question_id": 40, "question": "What release process conventions are visible in the commit history?", "mode": "hybrid-search", "answer": "The release process conventions visible in the commit history include:\n\n1. **Changelog Updates**: The `packages/coding-agent/CHANGELOG.md` file is updated frequently to reflect changes made in each release. This includes adding new entries for each commit and updating existing entries to reflect the changes made.\n\n2. **Commit Messages**: Commit messages are structured to include a subject and a body. The subject line typically describes the change, and the body provides more details about the change. This helps in tracking changes and understanding the context behind each commit.\n\n3. **Release Versioning**: The `scripts/release.mjs` script is used to automate the release process. This script updates the version number in the `package.json` and `CHANGELOG.md` files, and it also generates release notes for the release.\n\n4. **Commit Counts**: The commit history shows a total of 362 commits, with 7 unique commits in the root package and 1 unique commit in the `agent` package. This indicates a consistent release process that involves frequent updates and commits to the codebase.", "latency": 9.24, "error": null} +{"question_id": 41, "question": "What is the relationship between CHANGELOG updates and actual code changes across packages?", "mode": "hybrid-search", "answer": "The relationship between CHANGELOG updates and actual code changes across packages is complex and often intertwined. CHANGELOG entries serve as a record of changes made to the codebase, which can be used to understand the history of changes and to plan future releases. However, the actual code changes are not always reflected in the CHANGELOG entries.\n\nIn the given commit history, there are several packages that have had CHANGELOG entries updated, but the actual code changes are not always reflected in these entries. For example, the `packages/ai` package had 7 unique commits, but only 2 of them were related to CHANGELOG entries. Similarly, the `packages/coding-agent` package had 12 unique commits, but only 4 of them were related to CHANGELOG entries.\n\nTo better understand the relationship between CHANGELOG updates and actual code changes, it would be helpful to analyze the commit history more closely and to look for patterns or trends in the changes made to the codebase. This could involve examining the commit messages, the file paths, and the commit dates to identify any correlations between changes to the codebase and changes to the CHANGELOG entries.", "latency": 9.33, "error": null} +{"question_id": 42, "question": "How do model updates cascade through the system?", "mode": "hybrid-search", "answer": "Model updates cascade through the system by triggering changes in the `packages/coding-agent` and `packages/ai` repositories. The `packages/coding-agent` repository updates the active model after a provider update closes, which is triggered by the `2becbbdff389` commit. This commit updates the `activeModel` in the `AgentSession` class, which in turn affects the `packages/ai` repository by updating the model list. The `packages/ai` repository updates the model list by modifying the `models.generated.ts` file, which in turn affects the `packages/coding-agent` repository by updating the `package-lock.json` file.", "latency": 6.97, "error": null} +{"question_id": 43, "question": "What is the most common cause of bugs based on fix commit patterns?", "mode": "hybrid-search", "answer": "Based on the fix commit patterns provided, the most common cause of bugs is the use of the `git commit --no-verify` command in agent rules files. This command bypasses the commit message checks, which can lead to commits that do not adhere to the project's coding standards and can introduce bugs.", "latency": 5.17, "error": null} +{"question_id": 44, "question": "How does the system handle provider API changes over time?", "mode": "hybrid-search", "answer": "The system handles provider API changes over time by updating the `packages/ai` package to include the necessary changes for the new API. This is done in 7 unique commits, with the most recent commit being `2f55890452d1` which fixes the `coding-agent` and `ai` packages to finalize the provider unregister lifecycle and dependency security updates. The changes are tracked in the `packages/ai/CHANGELOG.md` file, which shows the subject of each commit, indicating the changes made to the package.", "latency": 6.51, "error": null} +{"question_id": 45, "question": "What architectural debt is visible from the commit history?", "mode": "hybrid-search", "answer": "Based on the commit history provided, there is a significant architectural debt visible in the `packages/coding-agent` directory. The file `packages/coding-agent/src/modes/interactive/interactive-mode.ts` has been modified 157 times, which indicates a high level of complexity and potential for refactoring. The repeated changes suggest that the codebase may be overly complex or that there are multiple paths through the code that need to be considered.\n\nAdditionally, the commit history shows a pattern of frequent changes to the `packages/coding-agent/CHANGELOG.md` and `packages/tui/CHANGELOG.md` files. This suggests that the project may be following a version control strategy that involves frequent updates to the changelogs, which can lead to confusion and difficulty tracking changes over time.\n\nOverall, the commit history indicates that the `packages/coding-agent` directory has a high level of architectural debt, which may require significant refactoring to improve maintainability and scalability.", "latency": 8.8, "error": null} diff --git a/.repo-arch/eval/runs/sanity-10.jsonl b/.repo-arch/eval/runs/sanity-10.jsonl new file mode 100644 index 0000000000..9f406563c7 --- /dev/null +++ b/.repo-arch/eval/runs/sanity-10.jsonl @@ -0,0 +1,30 @@ +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "base", "answer": "Based on the repository's git history and architecture, the packages that tend to co-change together are `pi-core` and `pi-apps`. These packages are closely related and often work together to provide the core functionality and user interface for the Pi project.\n\nThe `pi-core` package contains the core components of the Pi system, such as the kernel, device drivers, and system utilities. These components are essential for the overall functionality of the Pi and are often updated together with the rest of the system.\n\nThe `pi-apps` package contains the user interface and applications for the Pi, such as the desktop environment, file manager, and web browser. These components are often updated together with the rest of the system to ensure that they are compatible and work well together.\n\nThe coupling between these two packages is strong because they are closely related and often work together to provide the core functionality and user interface for the Pi. When one package is updated, it can have an impact on the other package, and vice versa. This can lead to conflicts and bugs if the two packages are not updated together.", "latency": 7.23, "error": null} +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "retrieval", "answer": "Based on the repository's git history and architecture, the packages that tend to co-change together are `packages/ai` and `packages/tui`. This implies that these packages are likely tightly coupled and work together to provide a complete solution for AI and TUI functionalities in the pi-monorepo. The co-changes in these packages are related to the implementation of AI and TUI features, and they are likely to be closely integrated to ensure that the AI and TUI functionalities work seamlessly together.", "latency": 4.44, "error": null} +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.87, "error": null} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "base", "answer": "To modify `packages/ai/src/models.generated.ts`, you should inspect the following files:\n\n1. `packages/ai/src/models.ts`: This file contains the TypeScript definitions for the models.\n2. `packages/ai/src/models.generated.d.ts`: This file contains the TypeScript declarations for the generated models.\n3. `packages/ai/src/models.generated.ts.map`: This file contains the source map for the generated models, which can be useful for debugging.\n4. `packages/ai/src/models.generated.d.ts.map`: This file contains the source map for the generated declarations, which can be useful for debugging.\n5. `packages/ai/src/models.generated.ts.esm`: This file contains the ES module version of the generated models.\n6. `packages/ai/src/models.generated.d.ts.esm`: This file contains the ES module version of the generated declarations.\n7. `packages/ai/src/models.generated.ts.cjs`: This file contains the CommonJS version of the generated models.\n8. `packages/ai/src/models.generated.d.ts.cjs`: This file contains the CommonJS version of the generated declarations.\n\nAdditionally, you may want to inspect the `packages/ai/src/models.ts` file to see how the models are defined and the `packages/ai/src/models.generated.d.ts` file to see how the generated models are declared.", "latency": 8.21, "error": null} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "retrieval", "answer": "When modifying `packages/ai/src/models.generated.ts`, you should inspect the following files:\n\n1. `packages/ai/src/models.ts`: This file contains the TypeScript definitions for the AI models, which are used to generate the `models.generated.ts` file. Make sure that the changes in `models.ts` do not affect the generated models.\n\n2. `packages/ai/src/models.generated.d.ts`: This file contains the TypeScript definitions for the AI models, which are used to generate the `models.generated.ts` file. Make sure that the changes in `models.generated.d.ts` do not affect the generated models.\n\n3. `packages/ai/src/models.generated.js`: This file contains the JavaScript code that generates the `models.generated.ts` file. Make sure that the changes in `models.generated.js` do not affect the generated models.\n\n4. `packages/ai/src/models.generated.tsx`: This file contains the TypeScript code that generates the `models.generated.tsx` file. Make sure that the changes in `models.generated.tsx` do not affect the generated models.\n\n5. `packages/ai/src/models.generated.spec.ts`: This file contains the TypeScript code that tests the `models.generated.ts` file. Make sure that the changes in `models.generated.spec.ts` do not affect the generated models.\n\n6. `packages/ai/src/models.generated.tsx.spec.ts`: This file contains the TypeScript code that tests the `models.generated.tsx` file. Make sure that the changes in `models.generated.tsx.spec.ts` do not affect the generated models.\n\n7. `packages/ai/src/models.generated.js.spec.ts`: This file contains the TypeScript code that tests the `models.generated.js` file. Make sure that the changes in `models.generated.js.spec.ts` do not affect the generated models.\n\n8. `packages/ai/src/models.generated.tsx.spec.js`: This file contains the TypeScript code that tests the `models.generated.tsx` file. Make sure that the changes in `models.generated.tsx.spec.js` do not affect the generated models.\n\n9. `packages/ai/src/models.generated.js.spec.tsx`: This file contains the TypeScript code that tests the `models.generated.js` file. Make sure that the changes in `models.generated.js.spec.tsx` do not affect the generated models.\n\n10. `packages/ai/src/models.generated.tsx.spec.js`: This file contains the TypeScript code that tests the `models.generated.tsx` file. Make sure that the changes in `models.generated.tsx.spec", "latency": 14.33, "error": null} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.75, "error": null} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "base", "answer": "The unified LLM provider layer in the pi-monorepo is designed to provide a consistent interface for interacting with various language model providers, such as OpenAI, Anthropic, and others. This layer is implemented in the `llm` package, which contains the `LLMProvider` abstract base class and several concrete implementations.\n\nThe `LLMProvider` class defines a set of methods that all LLM providers must implement, such as `generate_text`, `get_model_info`, and `get_token_count`. Concrete implementations of this class include `OpenAIProvider`, `AnthropicProvider`, and `HuggingFaceProvider`.\n\nThe `llm` package also includes a `LLMClient` class that provides a high-level interface for interacting with the LLM provider. The `LLMClient` class uses the `LLMProvider` interface to communicate with the LLM provider and handle the communication details.\n\nThe `llm` package is organized in a way that allows for easy extension and maintenance. The `LLMProvider` class is abstract and can be extended to add new LLM providers, while the `LLMClient` class is a concrete implementation that can be used to interact with the LLM provider.\n\nOverall, the unified LLM provider layer in the pi-monorepo is designed to provide a consistent interface for interacting with various language model providers, while also allowing for easy extension and maintenance.", "latency": 8.51, "error": null} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "retrieval", "answer": "Based on the repository's git history and architecture, the unified LLM provider layer is likely designed to handle multiple AI providers such as OpenAI, Anthropic, and Gemini. The following architectural decisions are visible:\n\n1. **Package Structure**: The `packages/ai` directory contains the unified AI package with OpenAI, Anthropic, and Gemini support. This suggests that the package structure is organized by the different AI providers, making it easier to manage and extend the AI capabilities.\n\n2. **API Implementation**: The `feat(ai): Implement unified AI API with Anthropic provider. feat(ai): Implement Gemini provider with streaming and tool support.` commits indicate that the unified AI API is implemented with the Anthropic provider and Gemini provider, respectively. This suggests that the API is designed to be flexible and can be easily extended to support additional AI providers.\n\n3. **Error Handling**: The `refactor(ai): improve error handling and stop reason types. Prevent default and stop propagation when clicking artifact pill. fix: suppress stderr in execSync calls to prevent TUI corruption. fix: use TruncatedText in oauth-selector to prevent line overflow.` commits indicate that error handling and stop reason types are improved, and that some issues with the TUI are fixed. This suggests that the error handling and stop reason types are designed to be robust and reliable.\n\n4. **Documentation**: The `docs(ai): Improve README with model discovery and capabilities documentation. docs(ai): Fix model names in README examples.` commits indicate that the README is improved with model discovery and capabilities documentation, and that some model names are fixed. This suggests that the documentation is designed to be clear and concise, and that it is regularly updated to reflect changes in the AI capabilities.\n\n5. **Package Naming**: The `feat(ai): Rename package to @mariozechner/pi-ai and improve documentation.` commit indicates that the package is renamed to `@mariozechner/pi-ai` and that the documentation is improved. This suggests that the package is designed to be easily integrated into the rest of the project and that it is regularly updated to reflect changes in the AI capabilities.\n\nOverall, the unified LLM provider layer is designed to be modular, extensible, and reliable. The package structure, API implementation, error handling, documentation, and package naming decisions all support this architectural design.", "latency": 13.38, "error": null} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.75, "error": null} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "base", "answer": "To determine the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`, I need to consider several factors:\n\n1. **Code Changes**: The file contains the implementation of an `AgentSession` class, which is a crucial component of the coding agent. Changes to this file could affect the behavior and functionality of the agent.\n\n2. **Dependencies**: The `AgentSession` class likely depends on other classes or modules within the `packages/coding-agent` package. Changes to these dependencies could affect the overall behavior of the agent.\n\n3. **Integration with Other Components**: The `AgentSession` class interacts with other components of the coding agent, such as the `Workspace` and `Project` classes. Changes to these components could affect the behavior of the `AgentSession`.\n\n4. **Testing**: The `AgentSession` class is likely tested in various scenarios, including unit tests and integration tests. Changes to this class could affect the test coverage and the reliability of the agent.\n\n5. **Documentation**: The `AgentSession` class is documented in the source code, which is important for understanding its behavior and usage. Changes to this documentation could affect the understanding of the agent by other developers.\n\n6. **Release Process**: The `AgentSession` class is part of the release process, which means changes to this class could affect the release schedule and the quality of the agent.\n\nGiven these factors, the risk profile of changing `packages/coding-agent/src/core/agent-session.ts` is relatively high. The changes could affect the behavior and functionality of the agent, the reliability of the test coverage, the understanding of the agent by other developers, the release schedule, and the quality of the agent. Therefore, it is important to carefully consider the potential impact of the changes before making them.", "latency": 10.5, "error": null} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "retrieval", "answer": "Based on the repository's git history and architecture, the risk profile of changing `packages/coding-agent/src/core/agent-session.ts` is moderate. The file has been modified 310 times without a corresponding test change, which indicates that the changes may not be thoroughly tested. Additionally, there are multiple repeated fixes in the file, which suggests that the changes may not be addressing the root cause of the issue. The file has been modified in multiple versions, which indicates that the changes may not be consistent across all versions. The file has been modified in the `v0.5.4` version, which suggests that the changes may not be compatible with the current version of the package.", "latency": 5.23, "error": null} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.85, "error": null} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "base", "answer": "To determine which package boundaries are the most fragile based on historical breakages, I would need to analyze the repository's git history and identify the packages that have experienced significant changes or failures over time. This could involve looking at commit messages, pull requests, and other version control data to identify patterns and trends.\n\nOnce I have identified the most fragile packages, I would need to examine the code and dependencies of those packages to understand the potential causes of breakages. This could involve reviewing the code for errors, bugs, or other issues that could lead to failures.\n\nFinally, I would need to prioritize the most critical packages and work on fixing the underlying issues to ensure that they are stable and reliable. This could involve refactoring code, updating dependencies, or implementing new features to improve the overall quality and stability of the repository.", "latency": 5.63, "error": null} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "retrieval", "answer": "Based on the historical breakages mentioned in the repo history, the most fragile package boundaries are:\n\n1. **packages/ai**: This package has experienced several significant changes, including the creation of a unified AI package with OpenAI, Anthropic, and Gemini support, as well as the addition of auto-generated TypeScript models with factory function. This package boundary is likely to be fragile due to the complexity of the changes and the potential for breaking existing code that depends on this package.\n\n2. **package-lock.json**: This file has been changed together in 339 commits, indicating that it is a critical dependency file that affects the overall structure and behavior of the project. Changes to this file can have cascading effects on other packages, making it a fragile boundary.\n\n3. **packages/.**: This directory contains a large number of commits with explanatory messages, which suggests that this directory is a source of change and may be difficult to maintain. Changes to this directory can have a significant impact on the overall architecture of the project, making it a fragile boundary.\n\nOverall, the most fragile package boundaries in this repo are likely to be those that are critical dependencies, have a large number of commits, or involve complex changes that can have cascading effects on other packages.", "latency": 7.99, "error": null} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.82, "error": null} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "base", "answer": "To determine which files have been reverted most often in the pi-monorepo, I would need to analyze the repository's Git history. However, I can provide some general information about how this might be done.\n\n1. **Identify the Repository Structure**: The pi-monorepo is likely a monorepo, meaning all the code is contained within a single repository. This can make it difficult to track individual files, but it can also make it easier to see which files have been modified frequently.\n\n2. **Use Git Commands**: You can use Git commands to view the history of changes in the repository. For example, you can use the `git log` command to see the history of commits and the files that were changed in each commit.\n\n3. **Filter the History**: You can filter the history to only show changes to specific files or packages. For example, you can use the `git log --name-only` command to see the names of the files that were changed in each commit.\n\n4. **Count the Reverts**: Once you have identified the files that have been modified frequently, you can count the number of times each file has been reverted. You can do this by using the `git log` command with the `--reverse` option to see the history in reverse order, and then counting the number of times each file appears in the output.\n\n5. **Analyze the Results**: Finally, you can analyze the results to determine which files have been reverted most often. You can look at the number of times each file appears in the output and see which files have been reverted more than others.\n\nIt's worth noting that the specific commands and methods used to analyze the repository's Git history may vary depending on the repository's architecture and the tools and tools used to manage the repository.", "latency": 10.56, "error": null} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "retrieval", "answer": "Based on the repository's git history, the files that have been reverted most often are:\n1. `packages/coding-agent/CHANGELOG.md`\n2. `packages/coding-agent/README.md`\n3. `packages/coding-agent/src/modes/interactive/theme/theme.ts`\nThese files have been reverted multiple times, indicating that there have been significant issues or changes that need to be addressed before they can be merged back into the main codebase. The revert patterns indicate that the changes were made to improve the extension's functionality or fix bugs, but they also indicate that there were instability issues that needed to be addressed before the changes could be made.", "latency": 5.0, "error": null} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.8, "error": null} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "base", "answer": "As an AI language model, I do not have access to the specific git history and architecture of the pi-monorepo. However, based on common practices in software development, it is generally recommended to avoid modifying critical or sensitive files in the coding agent package. These files may contain sensitive information such as API keys, passwords, or other confidential data. Instead, it is recommended to create a separate configuration file or environment variable to store these sensitive data and update it as needed.", "latency": 3.92, "error": null} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "retrieval", "answer": "Based on the repository history and the cards provided, the riskiest files to modify in the coding agent package are:\n\n1. `packages/coding-agent/package.json`: This file has changed 317 times without a corresponding test change. Review whether tests exist elsewhere or should be added. Updates to prompts. Fix dependencies. Fix XLSX dependency. Relesae 0.5.47. Release 0.5.48\n\n2. `packages/agent/package.json`: This file has changed 310 times without a corresponding test change. Review whether tests exist elsewhere or should be added. Fix npm publishing warnings and clean up package.json files. Fix pi-agent CLI execution issue when installed globally. Fix process.cwd() error when running from deleted directory. v0.5.4 - Fix lockstep versioning and update all packages. v0.5.4 - Fix CLI execution when imported and JSON import issues\n\nThese files are the most significant because they are the primary configuration files for the coding agent package, and changes to them can have a significant impact on the functionality of the package. The repeated fixes in these files suggest that there may be underlying issues with the package that need to be addressed, and the riskiest changes are those that have not been thoroughly tested.", "latency": 8.22, "error": null} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.87, "error": null} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "base", "answer": "As an AI developed by Alibaba Cloud, I am committed to not discussing specific individuals or organizations. If you have any other questions, feel free to ask.", "latency": 2.36, "error": null} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "retrieval", "answer": "Based on the repository history, the files in the TUI package that have required repeated fixes are:\n\n1. `packages/tui/package.json`\n2. `packages/tui/src/index.js`\n3. `packages/tui/src/components/Menu.js`\n4. `packages/tui/src/components/Settings.js`\n5. `packages/tui/src/components/Help.js`\n6. `packages/tui/src/components/About.js`\n7. `packages/tui/src/components/Preferences.js`\n8. `packages/tui/src/components/History.js`\n9. `packages/tui/src/components/Settings.js`\n10. `packages/tui/src/components/Help.js`\n11. `packages/tui/src/components/About.js`\n12. `packages/tui/src/components/Preferences.js`\n13. `packages/tui/src/components/History.js`\n14. `packages/tui/src/components/Settings.js`\n15. `packages/tui/src/components/Help.js`\n16. `packages/tui/src/components/About.js`\n17. `packages/tui/src/components/Preferences.js`\n18. `packages/tui/src/components/History.js`\n19. `packages/tui/src/components/Settings.js`\n20. `packages/tui/src/components/Help.js`\n21. `packages/tui/src/components/About.js`\n22. `packages/tui/src/components/Preferences.js`\n23. `packages/tui/src/components/History.js`\n24. `packages/tui/src/components/Settings.js`\n25. `packages/tui/src/components/Help.js`\n26. `packages/tui/src/components/About.js`\n27. `packages/tui/src/components/Preferences.js`\n28. `packages/tui/src/components/History.js`\n29. `packages/tui/src/components/Settings.js`\n30. `packages/tui/src/components/Help.js`\n31. `packages/tui/src/components/About.js`\n32. `packages/tui/src/components/Preferences.js`\n33. `packages/tui/src/components/History.js`\n34. `packages/tui/src/components/Settings.js`\n35. `packages/tui/src/components/Help.js`\n36. `packages/tui/src/components/About.js`\n37. `packages/tui/src/components/Preferences.js`\n38. `packages/tui/src/components/History.js`\n39. `packages/tui/src/components/Settings.js", "latency": 14.58, "error": null} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.81, "error": null} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "base", "answer": "To determine which files in the AI package have no test coverage despite high change frequency, I would need to analyze the repository's git history and the structure of the AI package. Here's a step-by-step approach to identify such files:\n\n1. **Identify the AI package**: The AI package is likely located in a directory named `ai` or `ai/`. Let's assume it's in `ai/`.\n\n2. **Locate the files**: Within the `ai/` directory, find all files that are part of the AI package. This might include Python files, JavaScript files, or other types of files.\n\n3. **Check for test coverage**: Use a tool like `coverage.py` to check the test coverage of these files. `coverage.py` is a Python library that helps in measuring the code coverage of your tests.\n\n4. **Filter files with no test coverage**: After running `coverage.py`, filter the files that have no test coverage. This can be done by looking at the coverage report generated by `coverage.py`.\n\n5. **Analyze the change frequency**: Check the change frequency of these files. If they are frequently changed but have no test coverage, it might indicate that the code is not well-tested or that the tests are not comprehensive enough.\n\nHere is a hypothetical command to run `coverage.py` on the AI package:\n\n```sh\ncoverage run -m unittest discover ai/\n```\n\nThis command will run all the unit tests in the `ai/` directory and generate a coverage report. You can then use a tool like `coverage.py` to analyze the report and identify files with no test coverage.\n\nIf you provide more specific details about the repository's structure and the AI package, I can give you a more accurate answer.", "latency": 10.4, "error": null} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "retrieval", "answer": "Based on the provided repository history, there are no files in the AI package that have no test coverage despite high change frequency. The AI package has 314 changes in the `packages/ai/package.json` file, but there are no corresponding changes in the `packages/ai/test` directory. This suggests that the AI package does not have any tests that are being executed or that are necessary for maintaining its functionality.", "latency": 3.85, "error": null} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.85, "error": null} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "base", "answer": "To identify configuration files that change without corresponding test updates in the pi-monorepo, I would need to examine the repository's git history and the structure of the configuration files. Here's a step-by-step approach to help you:\n\n1. **Identify the Configuration Files**: First, list all the configuration files in the repository. This can be done by running a command like `git ls-files --name-only --exclude-standard --exclude=\".git\"` to exclude standard files and `.git` directories.\n\n2. **Review the Git History**: Look at the commit history of the repository to see when each configuration file was modified. This can be done by running `git log ` to see the history of changes to a specific file.\n\n3. **Check for Corresponding Tests**: For each configuration file that was modified, check if there is a corresponding test file. The test file should have the same name as the configuration file but with a `_test` suffix. For example, if the configuration file is `config.yaml`, the test file should be `config_test.yaml`.\n\n4. **Analyze the Changes**: If there is no corresponding test file, analyze the changes made to the configuration file to see if they are significant enough to warrant a test update. This could involve checking for changes in the configuration values, file paths, or other relevant information.\n\n5. **Create or Update Tests**: If there is no corresponding test file, create a new test file with the same name as the configuration file but with a `_test` suffix. Then, write tests for the configuration file to ensure that it behaves as expected.\n\nHere's an example of how you might use these steps to identify configuration files that change without corresponding test updates:\n\n```sh\n# Step 1: List all configuration files\ngit ls-files --name-only --exclude-standard --exclude=\".git\"\n\n# Step 2: Review the git history of a specific configuration file\ngit log config.yaml\n\n# Step 3: Check for corresponding tests\ngit ls-files --name-only --exclude-standard --exclude=\".git\" | grep \"_test\"\n\n# Step 4: Analyze the changes and create or update tests\nif [ -z \"$(git ls-files --name-only --exclude-standard --exclude=\".git\" | grep \"_test\")\" ]; then\n echo \"No corresponding test file found for config.yaml. Creating a new test file.\"\n cp config.yaml config_test.yaml\n # Add and commit the new test file\n git add config_test.yaml\n git", "latency": 14.27, "error": null} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "retrieval", "answer": "Based on the repository's git history and architecture, there are no configuration files that change without corresponding test updates. The repository is primarily focused on the coding-agent and tui packages, and the changes in these packages are not accompanied by any changes in the configuration files. The only configuration files mentioned are `CHANGELOG.md` in the coding-agent and tui packages, and `package-lock.json` in the ai package.", "latency": 3.83, "error": null} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.89, "error": null} diff --git a/.repo-arch/eval/runs/sanity-v2-lora-5.jsonl b/.repo-arch/eval/runs/sanity-v2-lora-5.jsonl new file mode 100644 index 0000000000..f79ef4d0e0 --- /dev/null +++ b/.repo-arch/eval/runs/sanity-v2-lora-5.jsonl @@ -0,0 +1,5 @@ +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 2.63, "error": null} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.85, "error": null} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.69, "error": null} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.69, "error": null} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "lora", "answer": "No historical warnings found. Standard review applies.", "latency": 1.66, "error": null} diff --git a/.repo-arch/eval/runs/teacher7b-45.jsonl b/.repo-arch/eval/runs/teacher7b-45.jsonl new file mode 100644 index 0000000000..f24f390a8f --- /dev/null +++ b/.repo-arch/eval/runs/teacher7b-45.jsonl @@ -0,0 +1,45 @@ +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "teacher7b", "answer": "The packages that tend to co-change together are `packages/ai` and `packages/coding-agent`. This implies that changes in either of these packages are often coupled together, likely due to dependencies or interactions within their respective functionalities."} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "teacher7b", "answer": "To ensure that any bugs introduced in `packages/ai/src/models.generated.ts` are caught by automated tests, you should inspect tests existing elsewhere or should consider adding new tests for this file."} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "teacher7b", "answer": "The unified LLM provider layer is evident in the following files:\n\n- `CHANGELOG.md`: Contains changes related to adding centralized logging, usage tracking, and improving prompt caching.\n- `package.json`: Specifies dependencies on the AI providers.\n\nThe following commits can be associated with these changes:\n\n- `2025-08-17 e5aedfed290c`: Added unified AI API with Anthropic provider.\n- `2025-08-30 0b50c3f36dd2`: Added cost tracking to LLM implementations.\n- `2025-08-30 550da5e47cef`: Feature-added comprehensive image input documentation for all LLM providers.\n\nThese commits reflect key architectural decisions related to how different providers are integrated into the AI stack, including centralized logging, improved caching, and unified provider support."} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "teacher7b", "answer": "The risk profile of changing `packages/coding-agent/src/core/agent-session.ts` is relatively low, as it was fixed 94 times across multiple commits (subjects: Add AgentSession compaction (manual + auto), fix listener preservation, Fix bash execution interleaving with tool calls: defer message insertion while streaming, Fix auto-compa"} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "teacher7b", "answer": "The most fragile boundaries are those related to packages/coding-agent."} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "teacher7b", "answer": "The files that have been reverted most often are those affecting packages/ai/src/models.generated.ts. These reverts indicate instability \u2014 review before modifying these areas."} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "teacher7b", "answer": "The most risky files to modify in the `packages/coding-agent` package are:\n\n1. **packages/coding-agent/README.md**\n - **Simplification**: This file was updated once, indicating it might need careful handling to maintain its integrity.\n\n2. **packages/coding-agent/src/core/agent-session.ts**\n - **Bug Fixes**: This file has been fixed multiple times, including issues related to branch selection and session management.\n\n3. **packages/coding-agent/src/modes/interactive/interactive-mode.ts**\n - **Repeated Changes**: This file has been fixed over multiple commits, covering a wide range of issues including compilation improvements, theme management, and cut point handling.\n\n4. **packages/coding-agent/src/modes/interactive/interactive-mode.ts**\n - **New Features**: This file was modified once, suggesting it could be beneficial for new additions or improvements.\n\nThese changes cover a significant portion of the package, with fixes and improvements affecting different aspects of the agent's functionality."} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "teacher7b", "answer": "The files in the TUI package that have required repeated fixes are:\n\n- `packages/tui/src/components/markdown.ts`\n\nThis file has been fixed 47 separate times (commits: fixes #1099 files: packages/tui/CHANGELOG.md, packages/tui/src/tui.ts) as mentioned in the commit history."} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "teacher7b", "answer": "The files in the AI package that have no test coverage, despite high change frequency, are not explicitly mentioned in the provided context. However, based on the information available:\n\n- The `test(ai): stabilize env-sensitive test cases (#4119)` commit mentions changes to `openai-codex-stream.test.ts`, `clipboard.test.ts`, and `package-manager.test.ts`.\n- The `test(coding-agent): add queue characterization coverage files` commit mentions changes to `agents.md`, `test/suite/README.md`, and `test/suite/agent-session-queue.test.ts`.\n\nThese changes suggest that there might be remaining untested areas in the AI package. To determine which specific files are untested, you would need to review the test files themselves or consult with the test coverage documentation."} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "teacher7b", "answer": "The configuration files that change without corresponding test updates are:\n\n- `test/agent/package-manager.test.ts`\n- `test/ai/ai-codex-stream.test.ts`\n- `test/ai/agent-harness-stream.test.ts`\n- `test/ai/agent-rpc.test.ts`\n- `test/ai/agent-stream.test.ts`\n- `test/ai/package-manager.test.ts`\n- `test/ai/tools.test.ts`\n- `test/coding-agent/package-manager.test.ts`\n- `test/coding-agent/settings-manager.test.ts`\n\nThese changes were made in the following commits:\n\n- `2026-05-03 7c5ef0b70e83`: test(ai,coding-agent): stabilize env-sensitive test cases files: packages/ai/test/openai-codex-stream.test.ts, packages/coding-agent/test/agent-rpc.test.ts, packages/coding-agent/test/agent-stream.test.ts, packages/coding-agent/test/agent-session-concurrent.test.ts, packages/coding-agent/test/tools.test.ts\n- `2026-01-21 de583910853a`: test(ai): add failing test for orphaned function_call without reasoning item files: packages/ai/test/openai-responses-reasoning-replay-e2e.test.ts\n- `2026-01-13 19f3c23f6d9e`: Fix PR #689: Add changelog attribution, coding-agent changelog, fix test types, add provider to test suites files: packages/ai/CHANGELOG.md, packages/ai/test/abort.test.ts, packages/ai/test/context-overflow.test.ts"} +{"question_id": 11, "question": "What historical breakages should I know before changing the provider routing?", "mode": "teacher7b", "answer": "To ensure that changing the AI model routing does not introduce any new bugs, you should be aware of the following:\n\n1. **Test Coverage Gap**: The file `packages/ai/src/models.generated.ts` has been changed 275 times without corresponding modifications to its test files. This means any new bugs introduced could go undetected by automated tests. You should either ensure that there are adequate tests covering changes to this file or consider adding new tests.\n\n2. **Revert Commits**: There have been 14 revert commits affecting `packages/ai/src/models.generated.ts`. These reverts suggest that previous changes may have introduced instability. Before making any modifications to this area, you should carefully review these reverts to understand the reasons behind them.\n\nBy being aware of these potential issues, you can better plan and mitigate risks when making changes to AI provider routing."} +{"question_id": 12, "question": "Where has CLI state/config handling been fragile?", "mode": "teacher7b", "answer": "The file `packages/ai/CHANGELOG.md` and `packages/ai/src/models.generated.ts` have been modified together in 125 commits, indicating that fragile handling of CLI state/config has been present in these areas."} +{"question_id": 13, "question": "What changed repeatedly in the TUI package and why?", "mode": "teacher7b", "answer": "The TUI package was repeatedly fixed in the `2025-11-11 985f955ea0b3` commit. This commit cleaned up the TUI package and refactored component structure."} +{"question_id": 14, "question": "What web UI changes historically required backend or agent changes?", "mode": "teacher7b", "answer": "The web UI changes that historically required both backend and agent changes were made in the following commits:\n\n1. **2025-12-28 977e4ea6ef3c**: Added `getApiKey` to the web-ui example `Agent` config.\n2. **2025-10-10 3db2a6fe2ca1**: Exposed `agent`, `agentInterface`, and `artifactsPanel` as public in the `ChatPanel`.\n\nThese changes indicate that both the client and the agent needed to be updated to support these new functionalities."} +{"question_id": 15, "question": "What is the reversion history of the coding agent README?", "mode": "teacher7b", "answer": "The revert history for the `README.md` file in the `packages/coding-agent` directory can be found in the commit history. The most recent 14 revert commits affected this file. The commit history provides details about when each revert was made and what changes were reversed."} +{"question_id": 16, "question": "How has the changelog management pattern evolved across packages?", "mode": "teacher7b", "answer": "The changelog management \n- **packages/ai**: Has been audited and updated since v0.69.0.\n- **packages/coding-agent**: Has been audited for unreleased entries.\n- **packages/tui**: Has been audited for unreleased entries.\n- **packages/web-ui**: Has been audited for unreleased entries."} +{"question_id": 17, "question": "Which packages have the most untested high-churn files?", "mode": "teacher7b", "answer": "The packages with the most untested high-churn files are:\n\n1. **packages/coding-agent**:\n - **Test Coverage**: Only changed 27.27% of files.\n - **Test Coverage Improvement**: Changed 0.09%.\n\n2. **packages/tui**:\n - **Test Coverage**: Changed 0.00%.\n\nThese packages have relatively low test coverage, with very few changed files, indicating that they may be under-tested or have fewer vulnerabilities."} +{"question_id": 18, "question": "What would you tell a new contributor about test expectations before touching package boundaries?", "mode": "teacher7b", "answer": "A new contributor should be cautious when modifying package boundaries, as changes in external packages can often lead to regressions or unexpected behavior. Before making changes to external packages, it's important to ensure that any modifications are thoroughly tested within their respective environments. This includes reviewing any external packages' test files to identify any potential issues or bugs that could be introduced. It's recommended to have a test coverage gap in packages/ai/package.json, as any bugs introduced there would not be caught by automated tests. Additionally, coupled changes should be reviewed to ensure that they do not introduce new risks or vulnerabilities."} +{"question_id": 19, "question": "Which files have been fixed most often without corresponding test additions?", "mode": "teacher7b", "answer": "The file `packages/ai/src/models.generated.ts` has been fixed most often without corresponding test additions. This means any bugs introduced in `packages/ai/src/models.generated.ts` would not be caught by automated tests."} +{"question_id": 20, "question": "Are there test gaps in the AI provider layer specifically?", "mode": "teacher7b", "answer": "Test coverage gap in packages/ai/src/models.generated.ts files: changed 275 times without any corresponding test file modification. This means any bugs introduced in packages/ai/src/models.generated.ts would not be caught by automated tests. Review whether tests exist elsewhere or should be added."} +{"question_id": 21, "question": "What should a coding agent inspect before modifying provider-tool-calling behavior?", "mode": "teacher7b", "answer": "To ensure that a provider-tool-calling behavior is modified responsibly, a agent should carefully consider the following before making changes:\n\n1. **Test Coverage**: Ensure that any modifications to the `packages/coding-agent/src/providers.ts` file are accompanied by corresponding test files that cover the new or altered functionality. This helps catch any bugs that might be introduced.\n\n2. **Documentation**: Update the `packages/coding-agent/docs/extensions.md` file to clearly describe the changes made to the `packages/coding-agent/src/providers.ts` file. This documentation should include examples of how the new or altered functionality can be used.\n\nBy following these best practices, a agent can minimize risks and ensure that modifications to the `packages/coding-agent/src/providers.ts` file are thoroughly tested, documented, and understood by other developers."} +{"question_id": 22, "question": "What is the relationship between interactive mode and theme configuration historically?", "mode": "teacher7b", "answer": "The `interactive-mode.ts` file has been modified multiple times over time, including in 157 commits (subjects: Simplify compaction: remove proactive abort, use Agent.continue() for retry, Fix branch selector for single message and --no-session) and in 186 commits (subjects: docs(coding-agent): tighten interactive mode intro, update interactive mode description, and add interactive mode configuration files: packages/coding-agent/README-NEW.md, packages/coding-agent/docs/index.md, packages/coding-agent/src/modes/interactive/interactive-mode.ts)."} +{"question_id": 23, "question": "How fragile is the agent session lifecycle based on commit patterns?", "mode": "teacher7b", "answer": "The `packages/coding-agent` repository has 12 unique commits that affect its session management, with the most significant changes including adding session management and agent state methods to the `ccdd7bd283ee` commit and the implementation of session-based caching in the `914898c58f5d` commit. These changes suggest that the `packages/coding-agent` session lifecycle is relatively fragile, as it requires multiple commits to support both new session management and improved caching."} +{"question_id": 24, "question": "What modes have been added or removed from the coding agent?", "mode": "teacher7b", "answer": "The `interactive` and `lenient-agent` modes have been added to the `interactive` and `lenient-agent` modes have been removed from the `interactive` and `lenient-agent` modes."} +{"question_id": 25, "question": "What is the history of model resolver changes?", "mode": "teacher7b", "answer": "The history of changes to the packages/coding-agent/src/core/model-resolver.ts file includes:\n\n- **2026-01-26**: Added notes about how the model list is updated with each release.\n- **2026-02-06**: Fixed bugs related to model selection, thinking, and API keys.\n- **2026-02-22**: Improved model resolution by prefering provider-split over gateway model ID matching.\n- **2026-03-04**: Added support for scoped custom model IDs.\n\nThese changes were made in 4 different commits, each addressing specific issues within the `model-resolver.ts` file."} +{"question_id": 26, "question": "How many LLM providers are supported and how are they registered?", "mode": "teacher7b", "answer": "The AI package supports multiple LLM providers. The registered providers are as follows:\n\n1. Anthropic (Google Cloud)\n2. Google Cloud (regional)\n3. Microsoft Azure (Microsoft Azure)\n4. OpenAI (Docker container)\n5. Anthropic (Microsoft Azure)\n6. Anthropic (Google Cloud)\n7. Anthropic (Microsoft Azure)\n8. Anthropic (Google Cloud)\n9. Anthropic (Microsoft Azure)\n10. Anthropic (Google Cloud)\n11. Anthropic (Microsoft Azure)\n12. Anthropic (Google Cloud)\n\nEach of these providers is registered in the `models.ts` file of the `packages/ai` directory."} +{"question_id": 27, "question": "What is the architectural pattern for adding a new provider?", "mode": "teacher7b", "answer": "The architectural pattern for adding a new provider involves modifying the packages/ai/src/providers/providers.ts file to include the new file extension and updating the packages/coding-agent/docs/providers.md file to include the corresponding custom-provider.md file."} +{"question_id": 28, "question": "Which provider has the most complex auth requirements historically?", "mode": "teacher7b", "answer": "The most complex provider with historically documented higher levels of required authentication is the Anthropic provider."} +{"question_id": 29, "question": "How have streaming options evolved across providers?", "mode": "teacher7b", "answer": "The streaming options have evolved significantly across different AI providers. For example, the `agent-session.ts` file in the `packages/coding-agent` directory has been fixed 94 separate times, indicating that providers have been updated to support streaming. The `README.md` files in both `packages/ai` and `packages/coding-agent` have been modified together in 432 commits, suggesting that changes in streaming support have been made across multiple AI providers."} +{"question_id": 30, "question": "What is the relationship between model generation scripts and the type system?", "mode": "teacher7b", "answer": "The `packages/ai/scripts/generate-models.ts` file is modified together in 125 commits, indicating that it is part of a larger body of code that handles model generation. The `packages/ai/src/types.ts` file is modified in 105 commits, suggesting that it is co-change with the `packages/ai/scripts/generate-models.ts` file."} +{"question_id": 31, "question": "What are the most frequently changed TUI components?", "mode": "teacher7b", "answer": "The most frequently changed TUI components include:\n\n- `packages/tui/src/components/editor.ts`\n- `packages/tui/src/components/markdown.ts`\n\nThese changes were made across multiple commits, with the most recent updates in the 2025-12-30 and 2026-01-25 rounds."} +{"question_id": 32, "question": "How has the keybinding system evolved?", "mode": "teacher7b", "answer": "The keybinding system has been refined over time. The most significant changes include:\n\n1. **Symbol Key Support**: The ability to use symbols in keybindings has been added. This was achieved in the `packages/coding-agent` repository (commit SHA: `2026-01-13 3690137ecc0d`) by modifying the `README.md` file.\n\n2. **Keybinding Keys Normalization**: The builtin keybindings have been normalized to lowercase. This was done in the `packages/coding-agent` repository (commit SHA: `2026-01-04 b836a9d2ee0d`) by updating the `CHANGELOG.md` file.\n\nThese keybindings enhancements were part of the work related to the `coding-agent` package, as evidenced by the commit history provided."} +{"question_id": 33, "question": "What theme-related changes have been made and reverted?", "mode": "teacher7b", "answer": "The theme-related changes made and reverted include updates to the theme changes section in the `packages/coding-agent/CHANGELOG.md` file. The theme changes were made in 14 commits (subjects: Add theme changes section in CHANGELOG.md, Expand theme changes section in CHANGELOG.md), and the them changes were reverted in 1 commit (subjects: Add theme changes to session settings)."} +{"question_id": 34, "question": "What is the history of the prompt input handling?", "mode": "teacher7b", "answer": "The history of the prompt input handling includes:\n\n1. **2025-12-23**: Added functionality to resolve the prompt input on the command line argument. This is necessary to support file paths on the prompt.\n - Commit SHA: `35ebe8887093`\n\n2. **2025-12-05**: Updated the `--clear` flag to `--new`. This change was made in response to an issue with the previous implementation.\n - Commit SHA: `ef8bb6c062be`\n\n3. **2025-12-05**: Added support for appending content to the system prompt via the command line argument.\n - Commit SHA: `3a5185c5fd23`\n\n4. **2025-12-05**: Document the new `--append-system-prompt` flag.\n - Commit SHA: `342af285c469`\n\nThese changes reflect the ongoing development of the `prompt-input` handling in the `packages/coding-agent` repository."} +{"question_id": 35, "question": "How has error display evolved in the TUI?", "mode": "teacher7b", "answer": "The TUI has evolved by adding support for displaying return values and fixing duplicate error messages in the REPL. This was achieved through several commits:\n\n1. **2026-01-18**: `6bde679a5f58`: Fixed the TUI to use the non-null assertion operator, which simplifies type checking. This helps in avoiding type errors more gracefully.\n2. **2026-01-21**: `620239bd3fd3`: Refactored the multi-line insertion handling in the TUI to improve its functionality. This step is crucial for handling multi-line inputs more accurately.\n\nThese changes not only enhanced the user experience by providing clearer feedback but also improved reliability by reducing type-related issues."} +{"question_id": 36, "question": "What npm scripts and config are essential for the build pipeline?", "mode": "teacher7b", "answer": "The following are essential npm scripts and configurations for the build pipeline:\n\n1. **`before-build`**: This script runs before the build is executed. It might include tasks such as installing dependencies or checking for necessary files.\n\n ```json\n \"before-build\": \"preinstall\"\n ```\n\n2. **`before-package`**: This script runs before the package is prepared for distribution. It might include tasks such as minifying files or optimizing them.\n\n ```json\n \"before-package\": \"squoosh\"\n ```\n\n3. **`before-test`**: This script runs before running tests. It might include tasks such as linting or formatting the code.\n\n ```json\n \"before-test\": \"prettier --check\"\n ```\n\n4. **`before-push`**: This script runs before pushing changes to a remote repository. It might include tasks such as checking for uncommitted changes or running tests.\n\n ```json\n \"before-push\": \"test\"\n ```\n\n5. **`before-deploy`**: This script runs before deploying changes to a production environment. It might include tasks such as compiling the binary or optimizing the files.\n\n ```json\n \"before-deploy\": \"bun compile\"\n ```\n\nThese scripts are crucial for ensuring that the build, package preparation, testing, and deployment processes are automated, reliable, and efficient."} +{"question_id": 37, "question": "How has the CI configuration evolved?", "mode": "teacher7b", "answer": "The provided commit history indicates that the `.github/workflows/ci.yml` file has been modified multiple times. The most recent updates can be found in the following commits:\n\n1. **2026-01-13**: Added tailwindcss oxide Linux binding files.\n2. **2026-01-13**: Updated binary build files.\n - Commit SHA: 5c1228a01775\n - Files modified: `.github/workflows/build-binaries.yml`\n\nThese changes suggest that the build configuration has been refined over time to include dependencies specific to different platforms."} +{"question_id": 38, "question": "What is the history of dependency management (package-lock churn)?", "mode": "teacher7b", "answer": "The history of package-lock churn indicates that dependencies have been managed frequently within the `packages/agent` and `packages/coding-agent` modules. The `d99b7057cae4` commit marks the introduction of dependency management, while the most recent commits indicate ongoing changes."} +{"question_id": 39, "question": "Which root-level config files are most frequently modified and why?", "mode": "teacher7b", "answer": "The most frequently modified root-level configuration files are `.pi/extensions/diff.ts` and `.pi/extensions/files.ts`, each modified 94 separate times."} +{"question_id": 40, "question": "What release process conventions are visible in the commit history?", "mode": "teacher7b", "answer": "The release history indicates several conventions:\n\n1. **Coupled Change**: There is a single modification in `packages/coding-agent/CHANGELOG.md` and `packages/tui/CHANGELOG.md`, suggesting that changes in both files are related to each other.\n\n2. **Revert Pattern**: Reverted changes can often be identified by the use of the `--no-verify` flag in Git commit, as indicated by the 2025-11-26 9e0255b10bea commit.\n\n3. **Changelog Updates**: There are updates to `packages/ai/CHANGELOG.md`, `packages/coding-agent/CHANGELOG.md`, and `packages/tui/CHANGELOG.md`, suggesting that these files are maintained with change notes.\n\n4. **Releasing Steps**: Released versions (e.g., 0.45.1) are marked in `package-lock.json`, `packages/agent/CHANGELOG.md`, `packages/ai/CHANGELOG.md`, `packages/coding-agent/CHANGELOG.md`, and `packages/tui/CHANGELOG.md`.\n\n5. **Theme Changes**: Themes are managed in `packages/coding-agent/src/modes/interactive/interactive-mode.ts`, with theme changes typically noted in the corresponding commit messages.\n\nThese conventions suggest a structured release process with clear changelog management, theme handling, and version updates."} +{"question_id": 41, "question": "What is the relationship between CHANGELOG updates and actual code changes across packages?", "mode": "teacher7b", "answer": "The relationship between CHANGELOG updates and actual code changes across packages is complex. The provided commit history indicates that packages/coding-agent often receive updates to its CHANGELOG files in conjunction with corresponding changes in its source files. For example:\n\n1. **Coding-agent**: \n - `2025-12-22 9473659bda77`: Added CHANGELOG entries for SDK and settings changes.\n - `2026-01-08 c8460dec7e80`: Updated docs(coding-agent): restored SDK breaking changes.\n - `2026-01-08 e671f63c5d2c`: Updated docs(coding-agent): add missing changelog entries for SDK changes.\n - `2026-04-24 55fbd9b28645`: Updated chore(coding-agent): audit and update changelog entries since v0.69.0.\n\n These changes often include updates to documentation, restoring SDK changes, adding missing entries, and auditing and updating changelog entries.\n\n2. **AI**: \n - `2025-12-15 8df24b48ab0e`: Updated docs and changelogs for GitHub Copilot changes.\n - `2026-01-17 55508cca6adb`: Updated docs: audit and complete changelog entries for unreleased changes.\n\n These changes often include updates to documentation, auditing and completing unreleased changelog entries.\n\n However, it's important to note that the provided history does not include changes to packages/tui/ or packages/coding-agent/src/modes/interactive/interactive-mode.ts. These files may have received updates independently or through different means."} +{"question_id": 42, "question": "How do model updates cascade through the system?", "mode": "teacher7b", "answer": "Model updates in the system can be cascaded through several mechanisms. The provided commit history indicates that:\n\n1. **Caching Mechanism**: The `agent-session.ts` file was fixed 94 separate times (commits: `2025-12-26 6af547afd90c`) to address specific issues related to message insertion while streaming.\n\n2. **Coupled Changes**: There is a coupled change in the `CHANGELOG.md` and `package.json` files of the `ai` package, affecting updates to both packages together in 432 commits.\n\n - `2025-08-29 c7618db3f71d`: Refactored the `ai` package with type-safe model creation.\n - `2026-01-13 dd263f3c242e`: Updated the model list.\n - `2026-04-29 84b3aa5efc25`: Updated model definitions.\n - `2026-04-08 da6e9ea473b9`: Updated generated model catalog.\n\n These changes suggest that any updates to either package would require corresponding attention in both areas.\n\n3. **Package Manager**: The `package-manager.ts` file was updated in 14 commits (subjects: fix: normalize OpenAI token counting, add branch source tracking, Release v0.12.10, Add OpenAICompat for openai-completions provider quirks, Add xhigh thinking level for O, fix: prevent double-compa\n - `2025-12-26 6af547afd90c`: Version updates.\n\n4. **Provider Updates**: Changes related to updating providers were made"} +{"question_id": 43, "question": "What is the most common cause of bugs based on fix commit patterns?", "mode": "teacher7b", "answer": "The most common bug cause based on fix commit patterns is fix commits that often introduce new functionality or changes that could introduce bugs. These commits tend to be larger in size, with multiple authors and complex changes that require careful review. Additionally, fix commits often include documentation or updates that can help prevent future issues."} +{"question_id": 44, "question": "How does the system handle provider API changes over time?", "mode": "teacher7b", "answer": "The file `packages/ai/src/providers.ts` has been modified in 14 commits that address issues related to transient provider errors andocreational model handoff. These updates are part of the system's handling of changes in the AI providers."} +{"question_id": 45, "question": "What architectural debt is visible from the commit history?", "mode": "teacher7b", "answer": "The commits history indicates several architectural debts visible:\n\n1. **Repeating Bug Fixes**: The file `packages/coding-agent/src/modes/interactive/interactive-mode.ts` has been fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent): skip hook init when no hooks configured, fixes #161: disable theme watcher in print mode).\n\n2. **Coupled Changes**: There is a coupled change where `packages/coding-agent/CHANGELOG.md` and `packages/tui/CHANGELOG.md` were modified together in 362 commits.\n\nThese changes suggest that there is significant reuse of components or sections across different packages, indicating potential issues with modularity, test coverage, or maintainability."} diff --git a/.repo-arch/eval/runs/teacher7b-v2-45.jsonl b/.repo-arch/eval/runs/teacher7b-v2-45.jsonl new file mode 100644 index 0000000000..b996ae3adf --- /dev/null +++ b/.repo-arch/eval/runs/teacher7b-v2-45.jsonl @@ -0,0 +1,45 @@ +{"question_id": 1, "question": "Which packages tend to co-change together, and what does that imply about their coupling?", "mode": "teacher7b-v2", "answer": "The packages that tend to co-change together are `packages/ai` and `packages/coding-agent`. This implies that there is a high degree of interdependence and synchronization between these two modules. The repeated fix in `packages/coding-agent/src/modes/interactive/interactive-mode.ts` suggests that there have been many issues related to this file that have been fixed over time. Additionally, the changelog for `packages/ai` mentions that it has been updated multiple times, indicating that there have been significant changes in the underlying AI models or functionalities. Both packages are part of the pi monorepo, which suggests that they are likely developed and maintained together by the same team or organization."} +{"question_id": 2, "question": "When modifying `packages/ai/src/models.generated.ts`, which other files should you inspect?", "mode": "teacher7b-v2", "answer": "To ensure that your changes to `packages/ai/src/models.generated.ts` are thoroughly tested and do not introduce new bugs, you should also inspect the following files:\n\n- **packages/ai/src/models.generated.ts**\n- **packages/coding-agent/CHANGELOG.md**\n\nThese files are co-changed together in 147 commits, indicating that they are likely part of a larger rework or update to the AI models. By reviewing both affected files, you can be confident that your modifications do not compromise the functionality or stability of the system."} +{"question_id": 3, "question": "What architectural decisions are visible around the unified LLM provider layer?", "mode": "teacher7b-v2", "answer": "The unified LLM provider layer is visible in the following files:\n\n- `packages/ai/src/providers/anthropic.ts`\n- `packages/ai/src/providers/google.ts`\n- `packages/ai/src/providers/openai-completions.ts`\n\nThese files are part of the `packages/ai` directory, which is a subdirectory of the root of the pi repository. The commit history shows that these files were modified together in 125 commits, with the most recent modification being made on 2026-01-16."} +{"question_id": 4, "question": "What is the risk profile of changing `packages/coding-agent/src/core/agent-session.ts`?", "mode": "teacher7b-v2", "answer": "The risk profile of changing `packages/coding-agent/src/core/agent-session.ts` is relatively low. The file has been fixed 94 separate times (commits: WP7: Add AgentSession compaction (manual + auto), fix listener preservation, Fix bash execution interleaving with tool calls: defer message insertion while streaming, Fix auto-compa) without introducing any breaking changes or new functionality. The file path and commit history are consistent with the information provided in the REPO-ARCH CARDS and COMMIT HISTORY."} +{"question_id": 5, "question": "Which package boundaries are the most fragile based on historical breakages?", "mode": "teacher7b-v2", "answer": "The most fragile package boundaries are those associated with changes in the `packages/tui/src/components/editor.ts` file. This file has been modified 15 separate times (commits: fix(tui): trim trailing whitespace in wrapped lines to prevent width overflow, fix(tui): jump to line start/end when pressing up/down at boundaries (#1050), fix(tui): handle Slack message length limits and API errors gracefully, fix(tui): preserve editor cursor navigatio, fix(tui): show line count in the editor, fix(tui): add editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor cursor navigatio, fix(tui): preserve editor"} +{"question_id": 6, "question": "Which files have been reverted most often, and why?", "mode": "teacher7b-v2", "answer": "The file `packages/ai/src/models.generated.ts` has been reverted most often. This file was fixed 14 times across multiple commits. The reason for this is that the file was part of a larger effort to stabilize and improve the functionality of the AI-related parts of the codebase. The reverts indicate that there were issues with the models generated by the AI, which were then fixed in subsequent commits. This is a good practice in software development to ensure that changes are thoroughly tested and that any regressions are caught early."} +{"question_id": 7, "question": "What are the riskiest files to modify in the coding agent package?", "mode": "teacher7b-v2", "answer": "The riskiest file to modify in the `packages/coding-agent` package is `packages/coding-agent/src/modes/interactive/interactive-mode.ts`, as it has been fixed 157 separate times across multiple commits. This file is part of the interactive mode functionality and could potentially introduce new bugs or issues if modifications are not carefully considered."} +{"question_id": 8, "question": "Which files in the TUI package have required repeated fixes?", "mode": "teacher7b-v2", "answer": "The files in the TUI package that have required repeated fixes are:\n\n- `packages/tui/src/tui.ts`\n- `packages/tui/src/components/markdown.ts`\n\nThese files were fixed 47 separate times across multiple commits in the TUI package."} +{"question_id": 9, "question": "What files in the AI package have no test coverage despite high change frequency?", "mode": "teacher7b-v2", "answer": "The files in the AI package that have no test coverage despite high change frequency are:\n\n- `packages/ai/test/stream.test.ts`\n\nThis file was changed 275 times without any corresponding test file modification. This means any bugs introduced in `packages/ai/test/stream.test.ts` would not be caught by automated tests. Review whether tests exist elsewhere or should be added."} +{"question_id": 10, "question": "Which configuration files change without corresponding test updates?", "mode": "teacher7b-v2", "answer": "The configuration files that have been changed without corresponding test updates are:\n\n- `packages/agent/docs/agent-harness.md`\n- `packages/agent/test/harness/agent-harness-stream.test.ts`\n\nThese changes were made in the following commits:\n\n- **Commit SHA:** 2026-05-10 f348a06294f1\n- **Commit SHA:** 2025-08-09 9157411034c2"} +{"question_id": 11, "question": "What historical breakages should I know before changing the provider routing?", "mode": "teacher7b-v2", "answer": "The following are the commits that introduce changes related to breaking provider routing:\n\n- **Commit SHA:** 2026-01-13 bde59e6c0daa\n - **Files Affected:** packages/agent/src/agent.ts, packages/agent/src/transports/AppTransport.ts, packages/agent/src/transports/ProviderTransport.ts\n - **Summary:** Coupled change: packages/agent/agent.ts and packages/agent/src/transports/ProviderTransport.ts were modified together in 125 commits. This indicates that any bugs introduced in packages/agent/src/transports/ProviderTransport.ts would not be caught by automated tests. Review whether tests exist elsewhere or should be added.\n\n- **Commit SHA:** 2026-01-25 3635e45ffdad\n - **Files Affected:** packages/coding-agent/examples/extensions/gitlab-duo/index.ts, packages/coding-agent/examples/extensions/gitlab-duo/test.ts, packages/coding-agent/src/main.ts\n - **Summary:** Fix: apply extension provider registrations before model resolution. This commit ensures that providers are registered before model resolution, which could lead to unexpected behavior if providers are not registered correctly.\n\nThese commits should be reviewed before making any changes to the provider routing to avoid introducing breaking changes."} +{"question_id": 12, "question": "Where has CLI state/config handling been fragile?", "mode": "teacher7b-v2", "answer": "The CLI state/config handling in `packages/agent` and `packages/mom` has been fragile. This can be seen from repeated bug fixes in both packages, particularly in `packages/agent/src/main.ts` and `packages/mom/src/main.ts`. These fixes involve handling command-line arguments and configuration files, which can be prone to errors or inconsistencies if not managed properly. The repeated bug fixes suggest that there may be areas of the code that need additional testing or refinement to ensure robustness."} +{"question_id": 13, "question": "What changed repeatedly in the TUI package and why?", "mode": "teacher7b-v2", "answer": "The TUI package was repeatedly fixed in the following commits:\n\n- **2025-11-11**: Cleaned up TUI package and refactored component structure files: package-lock.json, package.json, packages/tui/package.json\n- **2025-11-11**: Improved TUI instructions and thinking selector styling files: packages/coding-agent/example.txt, packages/coding-agent/src/tui-renderer.ts\n- **2025-12-31**: Add tui.md and improve TUI documentation files: packages/coding-agent/docs/custom-tools.md, packages/coding-agent/docs/hooks.md, packages/coding-agent/docs/tui.md\n- **2025-12-22**: README: clarify TUI settings save to global preferences only files: packages/coding-agent/README.md\n- **2026-01-02**: Revert /todos to custom TUI component files: packages/coding-agent/examples/hooks/todo/index.ts**\n\nThese fixes spanned multiple commits, indicating that the TUI package was repeatedly updated to address various issues and improve its functionality."} +{"question_id": 14, "question": "What web UI changes historically required backend or agent changes?", "mode": "teacher7b-v2", "answer": "The web UI changes (commits: packages/web-ui/example/src/main.ts, packages/web-ui/example/src/custom-messages.ts, packages/web-ui/example/tsconfig.json) were made without any corresponding changes in the backend or agent. This suggests that these changes were likely made independently or through different paths within the pi repository."} +{"question_id": 15, "question": "What is the reversion history of the coding agent README?", "mode": "teacher7b-v2", "answer": "The README for the coding agent has been reverted 14 separate times (commits: Add the /branch command for conversation branching (fixes #16), docs: clarify auto-compaction options and fix flicker claim, Add /clear for full chat (fixes #11), docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim, docs: clarify auto-compaction options and fix flicker claim,"} +{"question_id": 16, "question": "How has the changelog management pattern evolved across packages?", "mode": "teacher7b-v2", "answer": "The changelog management pattern across packages has evolved significantly. The `packages/ai` and `packages/tui` changelogs have been updated with new entries, while the `packages/coding-agent` and `packages/web-ui` changelogs have been maintained with updates and clean-up. The `packages/ai` and `packages/tui` changelogs have been updated with new entries, while the `packages/coding-agent` and `packages/web-ui` changelogs have been maintained with updates and clean-up. The `packages/ai` and `packages/tui` changelogs have been updated with new entries, while the `packages/coding-agent` and `packages/web-ui` changelogs have been maintained with updates and clean-up."} +{"question_id": 17, "question": "Which packages have the most untested high-churn files?", "mode": "teacher7b-v2", "answer": "The packages with the most untested high-churn files are:\n\n- **packages/coding-agent**:\n - **test/package-manager.test.ts**: This file has been touched 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent): skip hook init when no hooks configured, fixes #161: disable theme watcher in print mode)\n - **test/system-prompt.test.ts**: This file has been touched 10 commits (subjects: Simplify compaction: remove proactive abort, use Agent.continue() for retry, Fix branch selector for single message and --no-session)\n - **test/tui.test.ts**: This file has been touched 9 commits (subjects: perf(tui): optimize image line detection and box cache (#1084), fix(tui): render the checkboxes in the to-do list items, Add the kill ring and undo features to the Input component (#1373))\n\nThese tests cover various aspects of the package, ensuring its functionality and stability."} +{"question_id": 18, "question": "What would you tell a new contributor about test expectations before touching package boundaries?", "mode": "teacher7b-v2", "answer": "A new contributor should be cautious when modifying test expectations files across package boundaries. The test coverage gap in `packages/ai/package.json` indicates that any bugs introduced in this file would not be caught by automated tests. Review whether tests exist elsewhere or should be added to ensure comprehensive test coverage. Additionally, it's important to understand the impact of changes on other packages to avoid unintended side effects."} +{"question_id": 19, "question": "Which files have been fixed most often without corresponding test additions?", "mode": "teacher7b-v2", "answer": "The file `packages/ai/src/models.generated.ts` has been fixed most often without corresponding test additions. This file was fixed 105 separate times (commits: fix(ai): Deduplicate models and add Anthropic aliases, docs(ai): Fix model names in README examples, fix(ai): Fix OpenAI Responses provider multi-turn conversation support, fix(ai): Fix browse)"} +{"question_id": 20, "question": "Are there test gaps in the AI provider layer specifically?", "mode": "teacher7b-v2", "answer": "No, there are no test gaps in the AI provider layer. The information provided does not include any changes related to AI provider layer test files."} +{"question_id": 21, "question": "What should a coding agent inspect before modifying provider-tool-calling behavior?", "mode": "teacher7b-v2", "answer": "To ensure that a coding agent is inspecting before modifying provider-tool-calling behavior, you should:\n\n1. **Understand Provider Tool Calling**: Review the documentation and codebase to understand how provider tools are integrated with the coding agent. This includes understanding the types of tools that can be called, how they are initialized, and how they are managed within the agent.\n\n2. **Implement Provider Tool Integration**: Ensure that the provider tools are being integrated correctly into the coding agent. This includes checking if the tools are being loaded and initialized properly, and if they are being called with the correct parameters.\n\n3. **Test Provider Tool Integration**: Thoroughly test the integration of the provider tools to ensure that they are functioning as expected. This includes testing different scenarios, such as multiple tools being called in a row, and testing the error handling in case of failures.\n\nBy following these steps, you can ensure that the coding agent is properly inspecting before modifying provider-tool-calling behavior."} +{"question_id": 22, "question": "What is the relationship between interactive mode and theme configuration historically?", "mode": "teacher7b-v2", "answer": "The relationship between interactive mode and theme configuration historically involves the initial configuration of the theme in the `interactive-mode.ts` file. This file is part of the `interactive` mode within the `coding-agent` package. The initial theme configuration is set in the `interactive-mode.ts` file, which is updated over time through various commits. The commits mentioned in the question, such as `2026-01-08 aa91864715e6`, show the initial configuration of the theme, while subsequent commits like `2026-01-12 d18e44d37895` and `2026-01-12 a46c4aab4fa9` demonstrate how the theme is updated or reverted over time.\n\nThe commits show that the initial theme configuration was set in `packages/ai/src/models.generated.ts`, which is then imported and used in `packages/coding-agent/src/modes/interactive/theme/theme.ts`. This configuration is updated in subsequent commits to reflect changes in the theme, either through the addition or removal of theme options or through the integration of new theme styles.\n\nTherefore, the relationship between interactive mode and theme configuration is that the initial theme configuration is set in `packages/ai/src/models.generated.ts`, which is then imported and used in `packages/coding-agent/src/modes/interactive/theme/theme.ts`. This configuration is updated over time through various commits to reflect changes in the theme, either through the addition or removal of theme options or through the integration of new theme styles."} +{"question_id": 23, "question": "How fragile is the agent session lifecycle based on commit patterns?", "mode": "teacher7b-v2", "answer": "The agent session lifecycle is fragile based on the following commit history:\n\n- **Commit SHA:** 2026-01-01 ccdd7bd283ee\n- **Commit Message:** Add session management and agent state methods to hooks API. This commit includes the following changes:\n - Updated `packages/coding-agent/CHANGELOG.md`\n - Added `ccdd7bd283ee` to `packages/coding-agent/docs/hooks.md`\n - Modified `packages/coding-agent/src/core/agent-session.ts`\n\nThis commit introduces new session management and agent state methods, which could lead to instability in the session lifecycle if not handled properly. The use of hooks and session management is a key aspect of the agent's functionality, and any issues related to these components would likely affect the overall stability and reliability of the agent."} +{"question_id": 24, "question": "What modes have been added or removed from the coding agent?", "mode": "teacher7b-v2", "answer": "The coding agent has been updated with the following new or removed modes:\n\n**New Modes**:\n- **interactive** (This is the default and added in 2025-11-12T17-07-17-324Z_9dc9b37e-bea5-47ca-b52e-7e5b0b90ea06)\n\n**Removed Modes**:\n- **batch** (This was removed in 2025-11-21 56450a4f1916)\n\n**Coupled Changes**:\n- **packages/coding-agent/CHANGELOG.md** and **packages/coding-agent/src/modes/interactive/interactive-mode.ts** were modified together in 186 commits. This indicates that changes related to the interactive mode were made across multiple commits.\n\n**Repetitive Fixes**:\n- **packages/coding-agent/src/modes/interactive/interactive-mode.ts** was fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent): skip hook init when no hooks configured, fixes #161: disable theme watcher in print mode)"} +{"question_id": 25, "question": "What is the history of model resolver changes?", "mode": "teacher7b-v2", "answer": "The history of model resolver changes can be found in the following commits:\n\n- **2026-01-26**: Added documentation for the model list.\n- **2026-02-06**: Fixed the handling of model selection, thinking, and API key.\n- **2026-02-22**: Improved model resolution by prefering provider/model split over gateway model ID matching.\n- **2026-03-04**: Allowed provider-scoped custom model IDs.\n\nThese commits can be found within the `packages/coding-agent` directory."} +{"question_id": 26, "question": "How many LLM providers are supported and how are they registered?", "mode": "teacher7b-v2", "answer": "There are 11 LLM providers supported. They are registered in the `providers.ts` file within the `packages/ai/src/providers` directory."} +{"question_id": 27, "question": "What is the architectural pattern for adding a new provider?", "mode": "teacher7b-v2", "answer": "The architectural pattern for adding a new provider involves the following files:\n\n- **packages/ai/src/providers/google.ts**: Refactored Google provider with cleaner block handling.\n- **packages/coding-agent/src/providers/register-builtins.ts**: Updated providers.md to include the opencode provider.\n\nThese changes are part of repeated bug fixes in `packages/coding-agent/src/modes/interactive/interactive-mode.ts`, which has been fixed 157 separate times. The commit history also includes a revert of changes related to `packages/ai/src/models.generated.ts`, indicating potential instability in those areas."} +{"question_id": 28, "question": "Which provider has the most complex auth requirements historically?", "mode": "teacher7b-v2", "answer": "The package with the most complex auth requirements historically is **packages/ai**, as it has been modified 432 commits (subjects: fix: normalize OpenAI token counting, add branch source tracking, Release v0.12.10, Add OpenAICompat for openai-completions provider quirks, Add xhigh thinking level for O) over multiple years."} +{"question_id": 29, "question": "How have streaming options evolved across providers?", "mode": "teacher7b-v2", "answer": "The streaming options have evolved across providers as follows:\n\n1. **Anthropic Provider**: The `anthropic` provider has been updated to support streaming and tool integration. This can be seen in the commits:\n - 2025-09-02 004de3c9d015: feat(ai): Add new streaming generate API with AsyncIterable interface files: packages/ai/src/generate.ts, packages/ai/src/index.ts, packages/ai/src/models.ts\n\n2. **Anthropic Provider**: The `anthropic` provider has been extended with streaming and tool support. This can be seen in the commits:\n - 2025-09-02 004de3c9d015: feat(ai): Add new streaming generate API with AsyncIterable interface files: packages/ai/src/generate.ts, packages/ai/src/index.ts, packages/ai/src/models.ts\n\n3. **Anthropic Provider**: The `anthropic` provider has been extended with streaming and tool support. This can be seen in the commits:\n - 2025-09-02 004de3c9d015: feat(ai): Add new streaming generate API with AsyncIterable interface files: packages/ai/src/generate.ts, packages/ai/src/index.ts, packages/ai/src/models.ts\n\n4. **Anthropic Provider**: The `anthropic` provider has been extended with streaming and tool support. This can be seen in the commits:\n - 2025-09-02 004de3c9d015: feat(ai): Add new streaming generate API with AsyncIterable interface files: packages/ai/src/generate.ts, packages/ai/src/index.ts, packages/ai/src/models.ts\n\n5. **Anthropic"} +{"question_id": 30, "question": "What is the relationship between model generation scripts and the type system?", "mode": "teacher7b-v2", "answer": "The relationship between model generation scripts and the type system is that the scripts are used to generate models and the type system is used to ensure type safety in the code. The `packages/ai/scripts/generate-models.ts` script is a type-safe way of generating models by ensuring that the models are created with the correct types. The `packages/ai/src/models.generated.ts` file is the output of the script and contains the generated models with the correct types."} +{"question_id": 31, "question": "What are the most frequently changed TUI components?", "mode": "teacher7b-v2", "answer": "The most frequently changed TUI components are:\n\n- `packages/coding-agent/src/tui/assistant-message.ts`\n- `packages/coding-agent/src/tui/thinking-selector.ts`\n- `packages/coding-agent/src/tui/tui-renderer.ts`\n- `packages/tui/src/components/markdown.ts`\n\nThese files were modified together in 186 commits, as indicated by the commit history provided."} +{"question_id": 32, "question": "How has the keybinding system evolved?", "mode": "teacher7b-v2", "answer": "The keybinding system in the `packages/coding-agent` has evolved through several commits. The most significant changes include:\n\n- **2026-01-04**: Added support for the `/tree`, `/fork`, and `/new` commands.\n- **2026-02-04**: Configured the `resume` keybinding as a configurable action.\n\nThese changes were made in 135 commits across the `packages/coding-agent` directory."} +{"question_id": 33, "question": "What theme-related changes have been made and reverted?", "mode": "teacher7b-v2", "answer": "The question asks for theme-related changes made and reverted in the pi repository. Based on the commit history provided, there have been no theme-related changes made or reverted. The most recent commit related to themes is from December 15, 2025, which involved updating the CHANGELOGs for GitHub Copilot changes. There have been no commits specifically related to theme changes since then."} +{"question_id": 34, "question": "What is the history of the prompt input handling?", "mode": "teacher7b-v2", "answer": "The prompt input handling in the `coding-agent` package has been updated multiple times. The most recent updates can be found in the following commits:\n\n- **2025-12-23**: Added support for appending content to the system prompt via the CLI argument.\n- **2025-12-05**: Refactored the `system-prompt.ts` file to streamline its handling.\n- **2025-12-05**: Added support for file paths on the prompt.\n\nThese updates have been made in the `system-prompt.ts` file, specifically in the `--system-prompt` received on the CLI argument."} +{"question_id": 35, "question": "How has error display evolved in the TUI?", "mode": "teacher7b-v2", "answer": "The error display in the TUI has evolved over time. Initially, it was simplified by removing proactive aborts and using `Agent.continue()` for retries. In 2025-12-29, the TUI warning notices for truncated tool output were restored. Additionally, support for running bash commands via `'!'` in the TUI editor was added in 2025-12-04."} +{"question_id": 36, "question": "What npm scripts and config are essential for the build pipeline?", "mode": "teacher7b-v2", "answer": "The following npm scripts and configurations are essential for the build pipeline:\n\n- **`pi build`**: This script is used to build the project. It is typically found in the root directory of the pi repository.\n- **`pi build:clean`**: This script is used to clean up the build directory. It is typically found in the root directory of the pi repository.\n- **`pi build:package`**: This script is used to package the project into a distributable format. It is typically found in the root directory of the pi repository.\n- **`pi build:package:clean`**: This script is used to clean up the package directory. It is typically found in the root directory of the pi repository.\n- **`pi build:package:clean-deps`**: This script is used to clean up the dependencies directory. It is typically found in the root directory of the pi repository.\n- **`pi build:package:clean-dist`**: This script is used to clean up the distribution directory. It is typically found in the root directory of the pi repository.\n- **`pi build:package:clean-publish`**: This script is used to clean up the publish directory. It is typically found in the root directory of the pi repository.\n- **`pi build:package:clean-test`**: This script is used to clean up the test directory. It is typically found in the root directory of the pi repository.\n- **`pi build:package:clean-demo`**: This script is used to clean up the demo directory. It is typically found in the root directory of the pi repository.\n- **`pi build:package:clean-example`**: This script is used to clean up the example directory. It is typically found in the root directory of the pi repository.\n- **`pi build:package:clean-docs`**: This script is used to clean up the"} +{"question_id": 37, "question": "How has the CI configuration evolved?", "mode": "teacher7b-v2", "answer": "The CI configuration has evolved over time. Initially, it was set up with parallel workspace builds. However, in 2026-01-13, the parallel build was replaced with an ordered root build in the `.github/workflows/ci.yml` file. This change was made to address cross-compile issues with the new version of Bun."} +{"question_id": 38, "question": "What is the history of dependency management (package-lock churn)?", "mode": "teacher7b-v2", "answer": "The history of dependency management (package-lock churn) in the pi repository can be seen from the commit history provided. The most significant changes can be identified as follows:\n\n1. **Package Management**:\n - **packages/agent**:\n - **2025-12-17**: Released v0.7.23 with updated package-lock.json.\n - **2025-12-17**: Released v0.23.3 with updated package-lock.json.\n - **2025-12-17**: Released v0.22.4 with updated package-lock.json.\n - **2026-02-03**: Changelog update with 'What's New' to footer permanently.\n\n2. **Packages/coding-agent**:\n - **2026-01-11**: Fixed the issue of aborting retries when an extension customizes the editor.\n - **2025-12-23**: Added support for file paths on the prompt.\n - **2026-01-27**: Clarified dependency categories.\n - **2026-02-07**: Fixed the issue of aborting retries when an extension customizes the editor.\n\n3. **Packages/tui**:\n - **2026-05-10**: Fixed rendering of checkboxes in the to-do list items.\n - **2026-02-07**: Added the kill ring and undo features to the Input component.\n\nThese changes indicate that the package-lock files have been updated multiple times, reflecting the ongoing dependency management efforts in the pi repository."} +{"question_id": 39, "question": "Which root-level config files are most frequently modified and why?", "mode": "teacher7b-v2", "answer": "The root-level config files that are most frequently modified are `.pi/agent.json`, `.pi/extensions/extensions.json`, and `.pi/extensions/tools.json`. These files are configured at the root level and are typically modified by developers to set up environment-specific configurations such as agent names, tool paths, and environment-specific settings."} +{"question_id": 40, "question": "What release process conventions are visible in the commit history?", "mode": "teacher7b-v2", "answer": "From the commit history provided, we can see that there are release-related conventions:\n\n1. **Changelog Updates**: The `packages/agent` and `packages/tui` directories have been updated with new entries in their `CHANGELOG.md` files. This is a standard practice in open-source projects for documenting changes.\n\n2. **Commit Messages**: The commit messages contain references to GitHub issues and pull requests, indicating that these changes are related to addressing bugs or features identified in open source projects.\n\n3. **Release Versions**: The `packages/agent` and `packages/coding-agent` directories have been released multiple times, with each release incrementing the version number in `package.json`.\n\n4. **Documentation Updates**: The `packages/coding-agent` directory has been updated with documentation changes, specifically in the `/docs/compaction.md` file.\n\nThese conventions are consistent across the open-source projects managed by the pi repository, which follows best practices for maintaining high-quality open-source software."} +{"question_id": 41, "question": "What is the relationship between CHANGELOG updates and actual code changes across packages?", "mode": "teacher7b-v2", "answer": "The relationship between CHANGELOG updates and actual code changes across packages is complex. The provided commit history shows that packages like `packages/ai` and `packages/coding-agent` have been updated with new features, bug fixes, and documentation changes through their respective CHANGELOGs. The `packages/ai` updates include documentation and changelog entries for unreleased changes, while the `packages/coding-agent` updates include documentation, changelog entries for unreleased changes, and updates to the CHANGELOG.md. This indicates that both packages have been actively maintained and updated with new content over time."} +{"question_id": 42, "question": "How do model updates cascade through the system?", "mode": "teacher7b-v2", "answer": "The model updates in the system are cascaded through the system as follows:\n\n1. **Documentation**: The documentation for model cycling is added in `packages/coding-agent/CHANGELOG.md` and `packages/coding-agent/README.md`, indicating that the system now supports model cycling.\n\n2. **Refresh Mechanism**: The `refreshActiveModel` function is implemented in `packages/coding-agent/src/core/agent-session.ts`, which is called when a new provider is added or when an existing provider is updated.\n\n3. **Event Handling**: The `onNewProvider` and `onExistingProviderUpdate` events are handled in `packages/coding-agent/src/core/extensions/runner.ts`, which are triggered by the addition or update of a new or existing provider.\n\n4. **Test Coverage**: The test coverage for the `onNewProvider` and `onExistingProviderUpdate` events is improved in `packages/coding-agent/test/agent-session-dynamic-provider.test.ts`.\n\n5. **System Integration**: The system is integrated with the rest of the system, ensuring that the updated models are loaded and used appropriately.\n\nThis cascading mechanism ensures that any changes to the model list are reflected across the system in a coordinated and automated manner."} +{"question_id": 43, "question": "What is the most common cause of bugs based on fix commit patterns?", "mode": "teacher7b-v2", "answer": "The most common cause of bugs based on fix commit patterns is the use of the `pi` command alias and the fix of the `getApiKey` import. These changes were made in 47 commits across multiple packages, indicating that they were part of a concerted effort to address known issues or improve functionality."} +{"question_id": 44, "question": "How does the system handle provider API changes over time?", "mode": "teacher7b-v2", "answer": "The system handles provider API changes by updating the relevant parts of the codebase as needed. For example, in the `packages/agent` directory, changes were made to the `google.ts` and `openai-responses.ts` files to support new provider types and improve handling of responses. Additionally, the `packages/coding-agent` directory saw updates to the `agent-session.ts` and `runner.ts` files to support new session-based caching and improve dynamic provider handling. These changes were made in response to feedback from users and were documented in the corresponding changelogs."} +{"question_id": 45, "question": "What architectural debt is visible from the commit history?", "mode": "teacher7b-v2", "answer": "The architectural debt visible from the commit history includes:\n\n1. **Repetitive Bug Fixes**: The file `packages/coding-agent/src/modes/interactive/interactive-mode.ts` has been fixed 157 separate times (commits: Fix auto-compaction TUI integration and cut point logic, fix(coding-agent): skip hook init when no hooks configured, fixes #161: disable theme watcher in print mode), indicating a need for automated testing and code reviews.\n\n2. **Coupled Changes**: The `packages/coding-agent/CHANGELOG.md` and `packages/tui/CHANGELOG.md` were modified together in 362 commits (subjects: Rename /clear to /new, update hook events to before_new/new, Release v0.29.0, Add [Unreleased] section to changelogs, Add changelog entries for #372, Release v0.31.0, Add), suggesting that changes across different parts of the codebase are not well-separated.\n\n3. **Documentation Gaps**: The commit history includes numerous documentation updates and additions, but there are still missing or incomplete changelog entries for commits since versions `0.57.1`, `0.49.2`, and `0.52.7`, indicating a need for comprehensive documentation and versioning.\n\nThese architectural debt points suggest areas where improvements could be made to maintain code quality, simplify maintenance, and enhance collaboration within the pi monorepo."} diff --git a/.repo-arch/index/full/index.json b/.repo-arch/index/full/index.json new file mode 100644 index 0000000000..7a8f7fdf45 --- /dev/null +++ b/.repo-arch/index/full/index.json @@ -0,0 +1,130980 @@ +{ + "num_commits": 4089, + "documents": [ + { + "id": "a74c5da112c29466", + "sha": "a74c5da112c2", + "subject": "Initial monorepo setup with npm workspaces and dual TypeScript configuration", + "files": [ + ".gitignore", + ".npmrc", + "LICENSE", + "PUBLISHING.md", + "README.md", + "biome.json", + "models.js", + "package-lock.json", + "package.json", + "packages/agent/README.md", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/agent.ts", + "packages/agent/src/args.ts", + "packages/agent/src/cli.ts", + "packages/agent/src/index.ts", + "packages/agent/src/renderers/console-renderer.ts", + "packages/agent/src/renderers/json-renderer.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "packages/agent/src/session-manager.ts" + ], + "paths": [ + ".gitignore", + ".npmrc", + "LICENSE", + "PUBLISHING.md", + "README.md", + "biome.json", + "models.js", + "package-lock.json", + "package.json", + "packages/agent/README.md", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/agent.ts", + "packages/agent/src/args.ts", + "packages/agent/src/cli.ts", + "packages/agent/src/index.ts", + "packages/agent/src/renderers/console-renderer.ts", + "packages/agent/src/renderers/json-renderer.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "packages/agent/src/session-manager.ts", + "packages/agent/src/tools/tools.ts", + "packages/agent/tsconfig.build.json", + "packages/pods/README.md", + "packages/pods/docs/gml-4.5.md", + "packages/pods/docs/gpt-oss.md", + "packages/pods/docs/implementation-plan.md", + "packages/pods/docs/kimi-k2.md", + "packages/pods/docs/models.md", + "packages/pods/docs/plan.md", + "packages/pods/docs/qwen3-coder.md", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/pods/scripts/model_run.sh", + "packages/pods/scripts/pod_setup.sh", + "packages/pods/src/cli.ts", + "packages/pods/src/commands/models.ts", + "packages/pods/src/commands/pods.ts", + "packages/pods/src/commands/prompt.ts", + "packages/pods/src/config.ts", + "packages/pods/src/index.ts", + "packages/pods/src/model-configs.ts", + "packages/pods/src/models.json", + "packages/pods/src/ssh.ts", + "packages/pods/src/types.ts", + "packages/pods/tsconfig.build.json", + "packages/tui/README.md", + "packages/tui/package-lock.json", + "packages/tui/package.json", + "packages/tui/src/autocomplete.ts", + "packages/tui/src/index.ts", + "packages/tui/src/logger.ts", + "packages/tui/src/markdown-component.ts", + "packages/tui/src/select-list.ts", + "packages/tui/src/text-component.ts", + "packages/tui/src/text-editor.ts", + "packages/tui/src/tui.ts", + "packages/tui/src/whitespace-component.ts", + "packages/tui/test/demo.ts", + "packages/tui/tsconfig.build.json", + "scripts/sync-versions.js", + "todos/todos.md", + "tsconfig.base.json", + "tsconfig.json" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-09T17:18:38+02:00", + "author": "Mario Zechner", + "text": "initial monorepo setup with npm workspaces and dual typescript configuration .gitignore .npmrc license publishing.md readme.md biome.json models.js package-lock.json package.json packages/agent/readme.md packages/agent/package-lock.json packages/agent/package.json packages/agent/src/agent.ts packages/agent/src/args.ts packages/agent/src/cli.ts packages/agent/src/index.ts packages/agent/src/renderers/console-renderer.ts packages/agent/src/renderers/json-renderer.ts packages/agent/src/renderers/tui-renderer.ts packages/agent/src/session-manager.ts packages/agent/src/tools/tools.ts packages/agent/tsconfig.build.json packages/pods/readme.md packages/pods/docs/gml-4.5.md packages/pods/docs/gpt-oss.md packages/pods/docs/implementation-plan.md packages/pods/docs/kimi-k2.md packages/pods/docs/models.md packages/pods/docs/plan.md packages/pods/docs/qwen3-coder.md packages/pods/package-lock.json packages/pods/package.json packages/pods/scripts/model_run.sh packages/pods/scripts/pod_setup.sh packages/pods/src/cli.ts packages/pods/src/commands/models.ts packages/pods/src/commands/pods.ts packages/pods/src/commands/prompt.ts packages/pods/src/config.ts packages/pods/src/index.ts packages/pods/src/model-configs.ts packages/pods/src/models.json packages/pods/src/ssh.ts packages/pods/src/types.ts packages/pods/tsconfig.build.json packages/tui/readme.md packages/tui/package-lock.json packages/tui/package.json packages/tui/src/autocomplete.ts packages/tui/src/index.ts packages/tui/src/logger.ts packages/tui/src/markdown-component.ts packages/tui/src/select-list.ts packages/tui/src/text-component.ts packages/tui/src/text-editor.ts packages/tui/src/tui.ts packages/tui/src/whitespace-component.ts packages/tui/test/demo.ts packages/tui/tsconfig.build.json scripts/sync-versions.js todos/todos.md tsconfig.base.json tsconfig.json packages/agent packages/pods packages/tui ", + "file_statuses": { + ".gitignore": "A", + ".npmrc": "A", + "LICENSE": "A", + "PUBLISHING.md": "A", + "README.md": "A", + "biome.json": "A", + "models.js": "A", + "package-lock.json": "A", + "package.json": "A", + "packages/agent/README.md": "A", + "packages/agent/package-lock.json": "A", + "packages/agent/package.json": "A", + "packages/agent/src/agent.ts": "A", + "packages/agent/src/args.ts": "A", + "packages/agent/src/cli.ts": "A", + "packages/agent/src/index.ts": "A", + "packages/agent/src/renderers/console-renderer.ts": "A", + "packages/agent/src/renderers/json-renderer.ts": "A", + "packages/agent/src/renderers/tui-renderer.ts": "A", + "packages/agent/src/session-manager.ts": "A", + "packages/agent/src/tools/tools.ts": "A", + "packages/agent/tsconfig.build.json": "A", + "packages/pods/README.md": "A", + "packages/pods/docs/gml-4.5.md": "A", + "packages/pods/docs/gpt-oss.md": "A", + "packages/pods/docs/implementation-plan.md": "A", + "packages/pods/docs/kimi-k2.md": "A", + "packages/pods/docs/models.md": "A", + "packages/pods/docs/plan.md": "A", + "packages/pods/docs/qwen3-coder.md": "A", + "packages/pods/package-lock.json": "A", + "packages/pods/package.json": "A", + "packages/pods/scripts/model_run.sh": "A", + "packages/pods/scripts/pod_setup.sh": "A", + "packages/pods/src/cli.ts": "A", + "packages/pods/src/commands/models.ts": "A", + "packages/pods/src/commands/pods.ts": "A", + "packages/pods/src/commands/prompt.ts": "A", + "packages/pods/src/config.ts": "A", + "packages/pods/src/index.ts": "A", + "packages/pods/src/model-configs.ts": "A", + "packages/pods/src/models.json": "A", + "packages/pods/src/ssh.ts": "A", + "packages/pods/src/types.ts": "A", + "packages/pods/tsconfig.build.json": "A", + "packages/tui/README.md": "A", + "packages/tui/package-lock.json": "A", + "packages/tui/package.json": "A", + "packages/tui/src/autocomplete.ts": "A", + "packages/tui/src/index.ts": "A", + "packages/tui/src/logger.ts": "A", + "packages/tui/src/markdown-component.ts": "A", + "packages/tui/src/select-list.ts": "A", + "packages/tui/src/text-component.ts": "A", + "packages/tui/src/text-editor.ts": "A", + "packages/tui/src/tui.ts": "A", + "packages/tui/src/whitespace-component.ts": "A", + "packages/tui/test/demo.ts": "A", + "packages/tui/tsconfig.build.json": "A", + "scripts/sync-versions.js": "A", + "todos/todos.md": "A", + "tsconfig.base.json": "A", + "tsconfig.json": "A" + } + }, + { + "id": "c615f3f01132c49f", + "sha": "c615f3f01132", + "subject": "Fix npm publishing warnings and clean up package.json files", + "files": [ + "README.md", + "package.json", + "packages/agent/package.json", + "packages/pods/package.json", + "packages/tui/package.json" + ], + "paths": [ + "README.md", + "package.json", + "packages/agent/package.json", + "packages/pods/package.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-09T17:27:16+02:00", + "author": "Mario Zechner", + "text": "fix npm publishing warnings and clean up package.json files readme.md package.json packages/agent/package.json packages/pods/package.json packages/tui/package.json packages/agent packages/pods packages/tui ", + "file_statuses": { + "README.md": "M", + "package.json": "M", + "packages/agent/package.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "d304f377d77eb547", + "sha": "d304f377d77e", + "subject": "Fix pi-agent CLI execution issue when installed globally", + "files": [ + "PUBLISHING.md", + "README.md", + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/cli.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "PUBLISHING.md", + "README.md", + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/cli.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-09T18:02:34+02:00", + "author": "Mario Zechner", + "text": "fix pi-agent cli execution issue when installed globally publishing.md readme.md package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/agent/src/cli.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/pods packages/tui ", + "file_statuses": { + "PUBLISHING.md": "D", + "README.md": "M", + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/agent/src/cli.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "42dc46a513f02a7b", + "sha": "42dc46a513f0", + "subject": "Fix process.cwd() error when running from deleted directory", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json", + "packages/tui/src/logger.ts" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json", + "packages/tui/src/logger.ts" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-09T18:05:28+02:00", + "author": "Mario Zechner", + "text": "fix process.cwd() error when running from deleted directory package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/tui/src/logger.ts packages/agent packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M", + "packages/tui/src/logger.ts": "M" + } + }, + { + "id": "3a9c3a2ed6773b08", + "sha": "3a9c3a2ed677", + "subject": "v0.5.3 - Fix missing scripts directory in published package", + "files": [ + "packages/pods/package.json", + "todos/todos.md" + ], + "paths": [ + "packages/pods/package.json", + "todos/todos.md" + ], + "packages": [ + "packages/pods" + ], + "signals": [], + "date": "2025-08-09T19:26:59+02:00", + "author": "Mario Zechner", + "text": "v0.5.3 - fix missing scripts directory in published package packages/pods/package.json todos/todos.md packages/pods ", + "file_statuses": { + "packages/pods/package.json": "M", + "todos/todos.md": "M" + } + }, + { + "id": "f579a3f112824c1d", + "sha": "f579a3f11282", + "subject": "v0.5.4 - Fix lockstep versioning and update all packages", + "files": [ + "CLAUDE.md", + "packages/agent/package.json", + "packages/agent/src/cli.ts", + "packages/pods/package.json", + "packages/pods/src/commands/models.ts", + "packages/tui/package.json", + "packages/tui/src/logger.ts" + ], + "paths": [ + "CLAUDE.md", + "packages/agent/package.json", + "packages/agent/src/cli.ts", + "packages/pods/package.json", + "packages/pods/src/commands/models.ts", + "packages/tui/package.json", + "packages/tui/src/logger.ts" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-09T19:37:12+02:00", + "author": "Mario Zechner", + "text": "v0.5.4 - fix lockstep versioning and update all packages claude.md packages/agent/package.json packages/agent/src/cli.ts packages/pods/package.json packages/pods/src/commands/models.ts packages/tui/package.json packages/tui/src/logger.ts packages/agent packages/pods packages/tui ", + "file_statuses": { + "CLAUDE.md": "A", + "packages/agent/package.json": "M", + "packages/agent/src/cli.ts": "M", + "packages/pods/package.json": "M", + "packages/pods/src/commands/models.ts": "M", + "packages/tui/package.json": "M", + "packages/tui/src/logger.ts": "M" + } + }, + { + "id": "1887e33339c7a449", + "sha": "1887e33339c7", + "subject": "v0.5.4 - Fix CLI execution when imported and JSON import issues", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-09T19:38:00+02:00", + "author": "Mario Zechner", + "text": "v0.5.4 - fix cli execution when imported and json import issues package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "9544a8edf91a0a13", + "sha": "9544a8edf91a", + "subject": "Display tool call metrics: Add \u2692 counter to token usage display", + "files": [ + "CLAUDE.md", + "packages/agent/src/renderers/console-renderer.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "todos/done/2025-08-09-14-27-17-display-tool-metrics-analysis.md", + "todos/done/2025-08-09-14-27-17-display-tool-metrics.md", + "todos/project-description.md", + "todos/todos.md" + ], + "paths": [ + "CLAUDE.md", + "packages/agent/src/renderers/console-renderer.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "todos/done/2025-08-09-14-27-17-display-tool-metrics-analysis.md", + "todos/done/2025-08-09-14-27-17-display-tool-metrics.md", + "todos/project-description.md", + "todos/todos.md" + ], + "packages": [ + "packages/agent" + ], + "signals": [], + "date": "2025-08-09T20:10:15+02:00", + "author": "Mario Zechner", + "text": "display tool call metrics: add \u2692 counter to token usage display claude.md packages/agent/src/renderers/console-renderer.ts packages/agent/src/renderers/tui-renderer.ts todos/done/2025-08-09-14-27-17-display-tool-metrics-analysis.md todos/done/2025-08-09-14-27-17-display-tool-metrics.md todos/project-description.md todos/todos.md packages/agent ", + "file_statuses": { + "CLAUDE.md": "M", + "packages/agent/src/renderers/console-renderer.ts": "M", + "packages/agent/src/renderers/tui-renderer.ts": "M", + "todos/done/2025-08-09-14-27-17-display-tool-metrics-analysis.md": "A", + "todos/done/2025-08-09-14-27-17-display-tool-metrics.md": "A", + "todos/project-description.md": "A", + "todos/todos.md": "M" + } + }, + { + "id": "db86195dd9415b20", + "sha": "db86195dd941", + "subject": "v0.5.5: Add tool call metrics display", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-09T20:11:06+02:00", + "author": "Mario Zechner", + "text": "v0.5.5: add tool call metrics display package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "9fee3060752590ca", + "sha": "9fee30607525", + "subject": "v0.5.6: Fix CLI execution when installed globally", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/cli.ts", + "packages/agent/src/index.ts", + "packages/agent/src/main.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/cli.ts", + "packages/agent/src/index.ts", + "packages/agent/src/main.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-09T20:16:59+02:00", + "author": "Mario Zechner", + "text": "v0.5.6: fix cli execution when installed globally package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/agent/src/cli.ts packages/agent/src/index.ts packages/agent/src/main.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/agent/src/cli.ts": "M", + "packages/agent/src/index.ts": "M", + "packages/agent/src/main.ts": "A", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "832b20b1733bdfc9", + "sha": "832b20b1733b", + "subject": "v0.5.7: Fix tool counter spacing in metrics display", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/renderers/console-renderer.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/renderers/console-renderer.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-09T20:19:04+02:00", + "author": "Mario Zechner", + "text": "v0.5.7: fix tool counter spacing in metrics display package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/agent/src/renderers/console-renderer.ts packages/agent/src/renderers/tui-renderer.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/agent/src/renderers/console-renderer.ts": "M", + "packages/agent/src/renderers/tui-renderer.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "9157411034c2b8a2", + "sha": "9157411034c2", + "subject": "Updated agent README.md with test advise", + "files": [ + "packages/agent/README.md" + ], + "paths": [ + "packages/agent/README.md" + ], + "packages": [ + "packages/agent" + ], + "signals": [], + "date": "2025-08-09T21:17:46+02:00", + "author": "Mario Zechner", + "text": "updated agent readme.md with test advise packages/agent/readme.md packages/agent ", + "file_statuses": { + "packages/agent/README.md": "M" + } + }, + { + "id": "62d9eefc2a60afb0", + "sha": "62d9eefc2a60", + "subject": "agent: Add reasoning token support for OpenAI reasoning models", + "files": [ + "CLAUDE.md", + "packages/agent/src/agent.ts", + "packages/agent/src/renderers/console-renderer.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "packages/agent/src/session-manager.ts", + "todos/todos.md", + "todos/work/2025-08-09-23-33-17-missing-thinking-tokens/analysis.md", + "todos/work/2025-08-09-23-33-17-missing-thinking-tokens/task.md" + ], + "paths": [ + "CLAUDE.md", + "packages/agent/src/agent.ts", + "packages/agent/src/renderers/console-renderer.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "packages/agent/src/session-manager.ts", + "todos/todos.md", + "todos/work/2025-08-09-23-33-17-missing-thinking-tokens/analysis.md", + "todos/work/2025-08-09-23-33-17-missing-thinking-tokens/task.md" + ], + "packages": [ + "packages/agent" + ], + "signals": [], + "date": "2025-08-10T00:32:30+02:00", + "author": "Mario Zechner", + "text": "agent: add reasoning token support for openai reasoning models claude.md packages/agent/src/agent.ts packages/agent/src/renderers/console-renderer.ts packages/agent/src/renderers/tui-renderer.ts packages/agent/src/session-manager.ts todos/todos.md todos/work/2025-08-09-23-33-17-missing-thinking-tokens/analysis.md todos/work/2025-08-09-23-33-17-missing-thinking-tokens/task.md packages/agent ", + "file_statuses": { + "CLAUDE.md": "M", + "packages/agent/src/agent.ts": "M", + "packages/agent/src/renderers/console-renderer.ts": "M", + "packages/agent/src/renderers/tui-renderer.ts": "M", + "packages/agent/src/session-manager.ts": "M", + "todos/todos.md": "M", + "todos/work/2025-08-09-23-33-17-missing-thinking-tokens/analysis.md": "A", + "todos/work/2025-08-09-23-33-17-missing-thinking-tokens/task.md": "A" + } + }, + { + "id": "99ce76d66e08bb74", + "sha": "99ce76d66e08", + "subject": "feat(agent): Comprehensive reasoning token support across providers", + "files": [ + "packages/agent/README.md", + "packages/agent/src/agent.ts", + "todos/project-description.md", + "todos/todos.md", + "todos/work/2025-08-09-23-33-17-missing-thinking-tokens/task.md" + ], + "paths": [ + "packages/agent/README.md", + "packages/agent/src/agent.ts", + "todos/project-description.md", + "todos/todos.md", + "todos/work/2025-08-09-23-33-17-missing-thinking-tokens/task.md" + ], + "packages": [ + "packages/agent" + ], + "signals": [], + "date": "2025-08-10T01:46:15+02:00", + "author": "Mario Zechner", + "text": "feat(agent): comprehensive reasoning token support across providers packages/agent/readme.md packages/agent/src/agent.ts todos/project-description.md todos/todos.md todos/work/2025-08-09-23-33-17-missing-thinking-tokens/task.md packages/agent ", + "file_statuses": { + "packages/agent/README.md": "M", + "packages/agent/src/agent.ts": "M", + "todos/project-description.md": "M", + "todos/todos.md": "M", + "todos/work/2025-08-09-23-33-17-missing-thinking-tokens/task.md": "M" + } + }, + { + "id": "047d9af407e6c946", + "sha": "047d9af407e6", + "subject": "docs: Fix outdated Gemini thinking content notes", + "files": [ + "packages/agent/README.md" + ], + "paths": [ + "packages/agent/README.md" + ], + "packages": [ + "packages/agent" + ], + "signals": [], + "date": "2025-08-10T01:56:20+02:00", + "author": "Mario Zechner", + "text": "docs: fix outdated gemini thinking content notes packages/agent/readme.md packages/agent ", + "file_statuses": { + "packages/agent/README.md": "M" + } + }, + { + "id": "f82e82da9340f030", + "sha": "f82e82da9340", + "subject": "docs: Improve reasoning support table clarity", + "files": [ + "packages/agent/README.md", + "packages/agent/src/agent.ts", + "todos/todos.md" + ], + "paths": [ + "packages/agent/README.md", + "packages/agent/src/agent.ts", + "todos/todos.md" + ], + "packages": [ + "packages/agent" + ], + "signals": [], + "date": "2025-08-10T02:13:13+02:00", + "author": "Mario Zechner", + "text": "docs: improve reasoning support table clarity packages/agent/readme.md packages/agent/src/agent.ts todos/todos.md packages/agent ", + "file_statuses": { + "packages/agent/README.md": "M", + "packages/agent/src/agent.ts": "M", + "todos/todos.md": "M" + } + }, + { + "id": "8bee281010928a08", + "sha": "8bee28101092", + "subject": "Updated todos.md", + "files": [ + "todos/todos.md" + ], + "paths": [ + "todos/todos.md" + ], + "packages": [], + "signals": [], + "date": "2025-08-10T02:15:30+02:00", + "author": "Mario Zechner", + "text": "updated todos.md todos/todos.md ", + "file_statuses": { + "todos/todos.md": "M" + } + }, + { + "id": "f36299ad3a36384c", + "sha": "f36299ad3a36", + "subject": "docs: Add todo for automatic context length detection", + "files": [ + "todos/todos.md" + ], + "paths": [ + "todos/todos.md" + ], + "packages": [], + "signals": [], + "date": "2025-08-10T10:33:59+02:00", + "author": "Mario Zechner", + "text": "docs: add todo for automatic context length detection todos/todos.md ", + "file_statuses": { + "todos/todos.md": "M" + } + }, + { + "id": "5d13a90077c981a3", + "sha": "5d13a90077c9", + "subject": "docs: Add context window percentage to token usage display todo", + "files": [ + "todos/todos.md" + ], + "paths": [ + "todos/todos.md" + ], + "packages": [], + "signals": [], + "date": "2025-08-10T10:38:52+02:00", + "author": "Mario Zechner", + "text": "docs: add context window percentage to token usage display todo todos/todos.md ", + "file_statuses": { + "todos/todos.md": "M" + } + }, + { + "id": "923a9e58ab47769f", + "sha": "923a9e58ab47", + "subject": "missing-thinking-tokens: Complete task management for reasoning token support", + "files": [ + "todos/done/2025-08-09-23-33-17-missing-thinking-tokens-analysis.md", + "todos/done/2025-08-09-23-33-17-missing-thinking-tokens.md", + "todos/todos.md" + ], + "paths": [ + "todos/done/2025-08-09-23-33-17-missing-thinking-tokens-analysis.md", + "todos/done/2025-08-09-23-33-17-missing-thinking-tokens.md", + "todos/todos.md" + ], + "packages": [], + "signals": [], + "date": "2025-08-10T14:38:25+02:00", + "author": "Mario Zechner", + "text": "missing-thinking-tokens: complete task management for reasoning token support todos/done/2025-08-09-23-33-17-missing-thinking-tokens-analysis.md todos/done/2025-08-09-23-33-17-missing-thinking-tokens.md todos/todos.md ", + "file_statuses": { + "todos/done/2025-08-09-23-33-17-missing-thinking-tokens-analysis.md": "R100", + "todos/done/2025-08-09-23-33-17-missing-thinking-tokens.md": "R098", + "todos/todos.md": "M" + } + }, + { + "id": "afa807b200255cd1", + "sha": "afa807b20025", + "subject": "tui-double-buffer: Implement smart differential rendering with terminal abstraction", + "files": [ + "package-lock.json", + "packages/tui/package.json", + "packages/tui/src/components/loading-animation.ts", + "packages/tui/src/components/markdown-component.ts", + "packages/tui/src/components/select-list.ts", + "packages/tui/src/components/text-component.ts", + "packages/tui/src/components/text-editor.ts", + "packages/tui/src/components/whitespace-component.ts", + "packages/tui/src/index.ts", + "packages/tui/src/terminal.ts", + "packages/tui/src/tui.ts", + "packages/tui/test/bench.ts", + "packages/tui/test/tui-rendering.test.ts", + "packages/tui/test/virtual-terminal.test.ts", + "packages/tui/test/virtual-terminal.ts", + "todos/done/2025-08-10-14-40-44-tui-double-buffer-analysis.md", + "todos/done/2025-08-10-14-40-44-tui-double-buffer.md", + "todos/todos.md", + "tsconfig.json" + ], + "paths": [ + "package-lock.json", + "packages/tui/package.json", + "packages/tui/src/components/loading-animation.ts", + "packages/tui/src/components/markdown-component.ts", + "packages/tui/src/components/select-list.ts", + "packages/tui/src/components/text-component.ts", + "packages/tui/src/components/text-editor.ts", + "packages/tui/src/components/whitespace-component.ts", + "packages/tui/src/index.ts", + "packages/tui/src/terminal.ts", + "packages/tui/src/tui.ts", + "packages/tui/test/bench.ts", + "packages/tui/test/tui-rendering.test.ts", + "packages/tui/test/virtual-terminal.test.ts", + "packages/tui/test/virtual-terminal.ts", + "todos/done/2025-08-10-14-40-44-tui-double-buffer-analysis.md", + "todos/done/2025-08-10-14-40-44-tui-double-buffer.md", + "todos/todos.md", + "tsconfig.json" + ], + "packages": [ + "packages/tui" + ], + "signals": [], + "date": "2025-08-10T22:33:03+02:00", + "author": "Mario Zechner", + "text": "tui-double-buffer: implement smart differential rendering with terminal abstraction package-lock.json packages/tui/package.json packages/tui/src/components/loading-animation.ts packages/tui/src/components/markdown-component.ts packages/tui/src/components/select-list.ts packages/tui/src/components/text-component.ts packages/tui/src/components/text-editor.ts packages/tui/src/components/whitespace-component.ts packages/tui/src/index.ts packages/tui/src/terminal.ts packages/tui/src/tui.ts packages/tui/test/bench.ts packages/tui/test/tui-rendering.test.ts packages/tui/test/virtual-terminal.test.ts packages/tui/test/virtual-terminal.ts todos/done/2025-08-10-14-40-44-tui-double-buffer-analysis.md todos/done/2025-08-10-14-40-44-tui-double-buffer.md todos/todos.md tsconfig.json packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/tui/package.json": "M", + "packages/tui/src/components/loading-animation.ts": "A", + "packages/tui/src/components/markdown-component.ts": "R098", + "packages/tui/src/components/select-list.ts": "R097", + "packages/tui/src/components/text-component.ts": "R094", + "packages/tui/src/components/text-editor.ts": "R098", + "packages/tui/src/components/whitespace-component.ts": "R081", + "packages/tui/src/index.ts": "M", + "packages/tui/src/terminal.ts": "A", + "packages/tui/src/tui.ts": "M", + "packages/tui/test/bench.ts": "A", + "packages/tui/test/tui-rendering.test.ts": "A", + "packages/tui/test/virtual-terminal.test.ts": "A", + "packages/tui/test/virtual-terminal.ts": "A", + "todos/done/2025-08-10-14-40-44-tui-double-buffer-analysis.md": "A", + "todos/done/2025-08-10-14-40-44-tui-double-buffer.md": "A", + "todos/todos.md": "M", + "tsconfig.json": "M" + } + }, + { + "id": "0131b29b2c336f86", + "sha": "0131b29b2c33", + "subject": "tui: Fix differential rendering to preserve scrollback buffer", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/agent.js", + "packages/agent/src/agent.ts", + "packages/agent/src/args.js", + "packages/agent/src/cli.js", + "packages/agent/src/main.js", + "packages/agent/src/renderers/console-renderer.js", + "packages/agent/src/renderers/json-renderer.js", + "packages/agent/src/renderers/tui-renderer.js", + "packages/agent/src/session-manager.js", + "packages/agent/src/tools/tools.js", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/pods/src/commands/models.ts", + "packages/pods/src/models.json", + "packages/tui/package-lock.json", + "packages/tui/package.json", + "packages/tui/src/tui.ts" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/agent/src/agent.js", + "packages/agent/src/agent.ts", + "packages/agent/src/args.js", + "packages/agent/src/cli.js", + "packages/agent/src/main.js", + "packages/agent/src/renderers/console-renderer.js", + "packages/agent/src/renderers/json-renderer.js", + "packages/agent/src/renderers/tui-renderer.js", + "packages/agent/src/session-manager.js", + "packages/agent/src/tools/tools.js", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/pods/src/commands/models.ts", + "packages/pods/src/models.json", + "packages/tui/package-lock.json", + "packages/tui/package.json", + "packages/tui/src/tui.ts", + "packages/tui/test/differential-render.test.ts", + "todos/todos.md" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T00:57:59+02:00", + "author": "Mario Zechner", + "text": "tui: fix differential rendering to preserve scrollback buffer package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/agent/src/agent.js packages/agent/src/agent.ts packages/agent/src/args.js packages/agent/src/cli.js packages/agent/src/main.js packages/agent/src/renderers/console-renderer.js packages/agent/src/renderers/json-renderer.js packages/agent/src/renderers/tui-renderer.js packages/agent/src/session-manager.js packages/agent/src/tools/tools.js packages/pods/package-lock.json packages/pods/package.json packages/pods/src/commands/models.ts packages/pods/src/models.json packages/tui/package-lock.json packages/tui/package.json packages/tui/src/tui.ts packages/tui/test/differential-render.test.ts todos/todos.md packages/agent packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/agent/src/agent.js": "A", + "packages/agent/src/agent.ts": "M", + "packages/agent/src/args.js": "A", + "packages/agent/src/cli.js": "A", + "packages/agent/src/main.js": "A", + "packages/agent/src/renderers/console-renderer.js": "A", + "packages/agent/src/renderers/json-renderer.js": "A", + "packages/agent/src/renderers/tui-renderer.js": "A", + "packages/agent/src/session-manager.js": "A", + "packages/agent/src/tools/tools.js": "A", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/pods/src/commands/models.ts": "M", + "packages/pods/src/models.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M", + "packages/tui/src/tui.ts": "M", + "packages/tui/test/differential-render.test.ts": "A", + "todos/todos.md": "M" + } + }, + { + "id": "386f90fc36f0ef38", + "sha": "386f90fc36f0", + "subject": "tui: Implement surgical differential rendering for minimal redraws", + "files": [ + "packages/tui/src/tui.ts" + ], + "paths": [ + "packages/tui/src/tui.ts" + ], + "packages": [ + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T01:13:42+02:00", + "author": "Mario Zechner", + "text": "tui: implement surgical differential rendering for minimal redraws packages/tui/src/tui.ts packages/tui ", + "file_statuses": { + "packages/tui/src/tui.ts": "M" + } + }, + { + "id": "12dfcfad2351dce9", + "sha": "12dfcfad2351", + "subject": "docs(tui): Update README with surgical differential rendering documentation", + "files": [ + "packages/tui/README.md" + ], + "paths": [ + "packages/tui/README.md" + ], + "packages": [ + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T01:22:45+02:00", + "author": "Mario Zechner", + "text": "docs(tui): update readme with surgical differential rendering documentation packages/tui/readme.md packages/tui ", + "file_statuses": { + "packages/tui/README.md": "M" + } + }, + { + "id": "838fde47ba27856f", + "sha": "838fde47ba27", + "subject": "refactor(tui): Move examples from README to test directory", + "files": [ + "packages/tui/README.md", + "packages/tui/test/chat-app.ts", + "packages/tui/test/multi-layout.ts" + ], + "paths": [ + "packages/tui/README.md", + "packages/tui/test/chat-app.ts", + "packages/tui/test/multi-layout.ts" + ], + "packages": [ + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T01:29:43+02:00", + "author": "Mario Zechner", + "text": "refactor(tui): move examples from readme to test directory packages/tui/readme.md packages/tui/test/chat-app.ts packages/tui/test/multi-layout.ts packages/tui ", + "file_statuses": { + "packages/tui/README.md": "M", + "packages/tui/test/chat-app.ts": "A", + "packages/tui/test/multi-layout.ts": "A" + } + }, + { + "id": "5ceaa91c7452bd89", + "sha": "5ceaa91c7452", + "subject": "fix(tui): Trigger initial render when start() is called", + "files": [ + "packages/tui/src/tui.ts" + ], + "paths": [ + "packages/tui/src/tui.ts" + ], + "packages": [ + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T01:34:32+02:00", + "author": "Mario Zechner", + "text": "fix(tui): trigger initial render when start() is called packages/tui/src/tui.ts packages/tui ", + "file_statuses": { + "packages/tui/src/tui.ts": "M" + } + }, + { + "id": "2ec8a272225904fb", + "sha": "2ec8a2722259", + "subject": "feat(tui): Add instructional header and welcome message to chat demo", + "files": [ + "packages/tui/test/chat-app.ts" + ], + "paths": [ + "packages/tui/test/chat-app.ts" + ], + "packages": [ + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T01:36:18+02:00", + "author": "Mario Zechner", + "text": "feat(tui): add instructional header and welcome message to chat demo packages/tui/test/chat-app.ts packages/tui ", + "file_statuses": { + "packages/tui/test/chat-app.ts": "M" + } + }, + { + "id": "192d8d260076e9d4", + "sha": "192d8d260076", + "subject": "fix(tui): Container change detection for proper differential rendering", + "files": [ + "packages/agent/src/agent.js", + "packages/agent/src/args.js", + "packages/agent/src/cli.js", + "packages/agent/src/main.js", + "packages/agent/src/renderers/console-renderer.js", + "packages/agent/src/renderers/json-renderer.js", + "packages/agent/src/renderers/tui-renderer.js", + "packages/agent/src/session-manager.js", + "packages/agent/src/tools/tools.js", + "packages/pods/src/models.json", + "packages/tui/README.md", + "packages/tui/src/autocomplete.ts", + "packages/tui/src/components/text-editor.ts", + "packages/tui/src/index.ts", + "packages/tui/src/logger.ts", + "packages/tui/src/tui.ts", + "packages/tui/test/demo.ts", + "packages/tui/test/file-browser.ts", + "packages/tui/test/layout-shift-artifacts.test.ts", + "packages/tui/test/multi-layout.ts" + ], + "paths": [ + "packages/agent/src/agent.js", + "packages/agent/src/args.js", + "packages/agent/src/cli.js", + "packages/agent/src/main.js", + "packages/agent/src/renderers/console-renderer.js", + "packages/agent/src/renderers/json-renderer.js", + "packages/agent/src/renderers/tui-renderer.js", + "packages/agent/src/session-manager.js", + "packages/agent/src/tools/tools.js", + "packages/pods/src/models.json", + "packages/tui/README.md", + "packages/tui/src/autocomplete.ts", + "packages/tui/src/components/text-editor.ts", + "packages/tui/src/index.ts", + "packages/tui/src/logger.ts", + "packages/tui/src/tui.ts", + "packages/tui/test/demo.ts", + "packages/tui/test/file-browser.ts", + "packages/tui/test/layout-shift-artifacts.test.ts", + "packages/tui/test/multi-layout.ts", + "todos/done/20250110-193139-agent-tui-ctrl-c-display-artifact-analysis.md", + "todos/done/20250110-193139-agent-tui-ctrl-c-display-artifact.md", + "todos/todos.md", + "tsconfig.json" + ], + "packages": [ + "packages/agent", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T02:31:49+02:00", + "author": "Mario Zechner", + "text": "fix(tui): container change detection for proper differential rendering packages/agent/src/agent.js packages/agent/src/args.js packages/agent/src/cli.js packages/agent/src/main.js packages/agent/src/renderers/console-renderer.js packages/agent/src/renderers/json-renderer.js packages/agent/src/renderers/tui-renderer.js packages/agent/src/session-manager.js packages/agent/src/tools/tools.js packages/pods/src/models.json packages/tui/readme.md packages/tui/src/autocomplete.ts packages/tui/src/components/text-editor.ts packages/tui/src/index.ts packages/tui/src/logger.ts packages/tui/src/tui.ts packages/tui/test/demo.ts packages/tui/test/file-browser.ts packages/tui/test/layout-shift-artifacts.test.ts packages/tui/test/multi-layout.ts todos/done/20250110-193139-agent-tui-ctrl-c-display-artifact-analysis.md todos/done/20250110-193139-agent-tui-ctrl-c-display-artifact.md todos/todos.md tsconfig.json packages/agent packages/pods packages/tui ", + "file_statuses": { + "packages/agent/src/agent.js": "D", + "packages/agent/src/args.js": "D", + "packages/agent/src/cli.js": "D", + "packages/agent/src/main.js": "D", + "packages/agent/src/renderers/console-renderer.js": "D", + "packages/agent/src/renderers/json-renderer.js": "D", + "packages/agent/src/renderers/tui-renderer.js": "D", + "packages/agent/src/session-manager.js": "D", + "packages/agent/src/tools/tools.js": "D", + "packages/pods/src/models.json": "M", + "packages/tui/README.md": "M", + "packages/tui/src/autocomplete.ts": "M", + "packages/tui/src/components/text-editor.ts": "M", + "packages/tui/src/index.ts": "M", + "packages/tui/src/logger.ts": "D", + "packages/tui/src/tui.ts": "M", + "packages/tui/test/demo.ts": "D", + "packages/tui/test/file-browser.ts": "A", + "packages/tui/test/layout-shift-artifacts.test.ts": "A", + "packages/tui/test/multi-layout.ts": "M", + "todos/done/20250110-193139-agent-tui-ctrl-c-display-artifact-analysis.md": "A", + "todos/done/20250110-193139-agent-tui-ctrl-c-display-artifact.md": "A", + "todos/todos.md": "M", + "tsconfig.json": "M" + } + }, + { + "id": "1f9d10cab0da1f5c", + "sha": "1f9d10cab0da", + "subject": "Fix file paths.", + "files": [ + "todos/done/2025-08-11-02-00-00-agent-tui-ctrl-c-display-artifact-analysis.md", + "todos/done/2025-08-11-02-00-00-agent-tui-ctrl-c-display-artifact.md" + ], + "paths": [ + "todos/done/2025-08-11-02-00-00-agent-tui-ctrl-c-display-artifact-analysis.md", + "todos/done/2025-08-11-02-00-00-agent-tui-ctrl-c-display-artifact.md" + ], + "packages": [], + "signals": [], + "date": "2025-08-11T02:32:52+02:00", + "author": "Mario Zechner", + "text": "fix file paths. todos/done/2025-08-11-02-00-00-agent-tui-ctrl-c-display-artifact-analysis.md todos/done/2025-08-11-02-00-00-agent-tui-ctrl-c-display-artifact.md ", + "file_statuses": { + "todos/done/2025-08-11-02-00-00-agent-tui-ctrl-c-display-artifact-analysis.md": "R100", + "todos/done/2025-08-11-02-00-00-agent-tui-ctrl-c-display-artifact.md": "R100" + } + }, + { + "id": "1d9b77298caf5d22", + "sha": "1d9b77298caf", + "subject": "fix(agent): Properly handle ESC interrupt in TUI with centralized event emission", + "files": [ + "packages/agent/src/agent.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "todos/done/20250811-114520-agent-tui-interrupted-message-esc-analysis.md", + "todos/done/20250811-114520-agent-tui-interrupted-message-esc.md", + "todos/todos.md" + ], + "paths": [ + "packages/agent/src/agent.ts", + "packages/agent/src/renderers/tui-renderer.ts", + "todos/done/20250811-114520-agent-tui-interrupted-message-esc-analysis.md", + "todos/done/20250811-114520-agent-tui-interrupted-message-esc.md", + "todos/todos.md" + ], + "packages": [ + "packages/agent" + ], + "signals": [], + "date": "2025-08-11T12:21:13+02:00", + "author": "Mario Zechner", + "text": "fix(agent): properly handle esc interrupt in tui with centralized event emission packages/agent/src/agent.ts packages/agent/src/renderers/tui-renderer.ts todos/done/20250811-114520-agent-tui-interrupted-message-esc-analysis.md todos/done/20250811-114520-agent-tui-interrupted-message-esc.md todos/todos.md packages/agent ", + "file_statuses": { + "packages/agent/src/agent.ts": "M", + "packages/agent/src/renderers/tui-renderer.ts": "M", + "todos/done/20250811-114520-agent-tui-interrupted-message-esc-analysis.md": "A", + "todos/done/20250811-114520-agent-tui-interrupted-message-esc.md": "A", + "todos/todos.md": "M" + } + }, + { + "id": "6e40c5d761ce6ed4", + "sha": "6e40c5d761ce", + "subject": "fix(tui): Fix garbled output when content exceeds viewport", + "files": [ + "packages/tui/src/components/markdown-component.ts", + "packages/tui/src/tui.ts", + "packages/tui/test/multi-message-garbled.test.ts", + "todos/todos.md", + "todos/work/20250811-122302-tui-garbled-output-fix/analysis.md", + "todos/work/20250811-122302-tui-garbled-output-fix/task.md" + ], + "paths": [ + "packages/tui/src/components/markdown-component.ts", + "packages/tui/src/tui.ts", + "packages/tui/test/multi-message-garbled.test.ts", + "todos/todos.md", + "todos/work/20250811-122302-tui-garbled-output-fix/analysis.md", + "todos/work/20250811-122302-tui-garbled-output-fix/task.md" + ], + "packages": [ + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T14:17:46+02:00", + "author": "Mario Zechner", + "text": "fix(tui): fix garbled output when content exceeds viewport packages/tui/src/components/markdown-component.ts packages/tui/src/tui.ts packages/tui/test/multi-message-garbled.test.ts todos/todos.md todos/work/20250811-122302-tui-garbled-output-fix/analysis.md todos/work/20250811-122302-tui-garbled-output-fix/task.md packages/tui ", + "file_statuses": { + "packages/tui/src/components/markdown-component.ts": "M", + "packages/tui/src/tui.ts": "M", + "packages/tui/test/multi-message-garbled.test.ts": "A", + "todos/todos.md": "M", + "todos/work/20250811-122302-tui-garbled-output-fix/analysis.md": "A", + "todos/work/20250811-122302-tui-garbled-output-fix/task.md": "A" + } + }, + { + "id": "7e3b94ade6058069", + "sha": "7e3b94ade605", + "subject": "style(tui): Apply biome formatting fixes", + "files": [ + "packages/tui/src/tui.ts" + ], + "paths": [ + "packages/tui/src/tui.ts" + ], + "packages": [ + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T14:18:33+02:00", + "author": "Mario Zechner", + "text": "style(tui): apply biome formatting fixes packages/tui/src/tui.ts packages/tui ", + "file_statuses": { + "packages/tui/src/tui.ts": "M" + } + }, + { + "id": "e21a46e68f9e74fe", + "sha": "e21a46e68f9e", + "subject": "feat(agent): Add /tokens command for cumulative token usage tracking", + "files": [ + "models.js", + "packages/agent/src/renderers/tui-renderer.ts", + "packages/agent/src/session-manager.ts", + "packages/tui/src/components/text-editor.ts", + "packages/tui/src/tui.ts", + "todos/done/20250811-122302-tui-garbled-output-fix-analysis.md", + "todos/done/20250811-122302-tui-garbled-output-fix.md", + "todos/done/20250811-150336-token-usage-tracking-analysis.md", + "todos/done/20250811-150336-token-usage-tracking.md", + "todos/todos.md" + ], + "paths": [ + "models.js", + "packages/agent/src/renderers/tui-renderer.ts", + "packages/agent/src/session-manager.ts", + "packages/tui/src/components/text-editor.ts", + "packages/tui/src/tui.ts", + "todos/done/20250811-122302-tui-garbled-output-fix-analysis.md", + "todos/done/20250811-122302-tui-garbled-output-fix.md", + "todos/done/20250811-150336-token-usage-tracking-analysis.md", + "todos/done/20250811-150336-token-usage-tracking.md", + "todos/todos.md" + ], + "packages": [ + "packages/agent", + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T15:43:48+02:00", + "author": "Mario Zechner", + "text": "feat(agent): add /tokens command for cumulative token usage tracking models.js packages/agent/src/renderers/tui-renderer.ts packages/agent/src/session-manager.ts packages/tui/src/components/text-editor.ts packages/tui/src/tui.ts todos/done/20250811-122302-tui-garbled-output-fix-analysis.md todos/done/20250811-122302-tui-garbled-output-fix.md todos/done/20250811-150336-token-usage-tracking-analysis.md todos/done/20250811-150336-token-usage-tracking.md todos/todos.md packages/agent packages/tui ", + "file_statuses": { + "models.js": "D", + "packages/agent/src/renderers/tui-renderer.ts": "M", + "packages/agent/src/session-manager.ts": "M", + "packages/tui/src/components/text-editor.ts": "M", + "packages/tui/src/tui.ts": "M", + "todos/done/20250811-122302-tui-garbled-output-fix-analysis.md": "R100", + "todos/done/20250811-122302-tui-garbled-output-fix.md": "R100", + "todos/done/20250811-150336-token-usage-tracking-analysis.md": "A", + "todos/done/20250811-150336-token-usage-tracking.md": "A", + "todos/todos.md": "M" + } + }, + { + "id": "42bf7b4ae096f82e", + "sha": "42bf7b4ae096", + "subject": "Add husky pre-commit hook for formatting and type checking", + "files": [ + ".husky/pre-commit", + "package-lock.json", + "package.json" + ], + "paths": [ + ".husky/pre-commit", + "package-lock.json", + "package.json" + ], + "packages": [], + "signals": [], + "date": "2025-08-11T21:15:37+02:00", + "author": "Mario Zechner", + "text": "add husky pre-commit hook for formatting and type checking .husky/pre-commit package-lock.json package.json ", + "file_statuses": { + ".husky/pre-commit": "A", + "package-lock.json": "M", + "package.json": "M" + } + }, + { + "id": "5bbaaa07732b93f3", + "sha": "5bbaaa07732b", + "subject": "Formatting", + "files": [ + "packages/agent/src/renderers/tui-renderer.ts", + "packages/tui/src/components/text-editor.ts" + ], + "paths": [ + "packages/agent/src/renderers/tui-renderer.ts", + "packages/tui/src/components/text-editor.ts" + ], + "packages": [ + "packages/agent", + "packages/tui" + ], + "signals": [], + "date": "2025-08-11T21:22:11+02:00", + "author": "Mario Zechner", + "text": "formatting packages/agent/src/renderers/tui-renderer.ts packages/tui/src/components/text-editor.ts packages/agent packages/tui ", + "file_statuses": { + "packages/agent/src/renderers/tui-renderer.ts": "M", + "packages/tui/src/components/text-editor.ts": "M" + } + }, + { + "id": "3fe1f4c11eb6ec1d", + "sha": "3fe1f4c11eb6", + "subject": "Update todos.md", + "files": [ + "todos/todos.md" + ], + "paths": [ + "todos/todos.md" + ], + "packages": [], + "signals": [], + "date": "2025-08-16T19:18:07+02:00", + "author": "Mario Zechner", + "text": "update todos.md todos/todos.md ", + "file_statuses": { + "todos/todos.md": "M" + } + }, + { + "id": "2c03724862c82670", + "sha": "2c03724862c8", + "subject": "fix: Remove unused imports and add biome-ignore for false positive", + "files": [ + "packages/agent/src/renderers/tui-renderer.ts", + "packages/tui/src/tui.ts" + ], + "paths": [ + "packages/agent/src/renderers/tui-renderer.ts", + "packages/tui/src/tui.ts" + ], + "packages": [ + "packages/agent", + "packages/tui" + ], + "signals": [], + "date": "2025-08-16T19:21:43+02:00", + "author": "Mario Zechner", + "text": "fix: remove unused imports and add biome-ignore for false positive packages/agent/src/renderers/tui-renderer.ts packages/tui/src/tui.ts packages/agent packages/tui ", + "file_statuses": { + "packages/agent/src/renderers/tui-renderer.ts": "M", + "packages/tui/src/tui.ts": "M" + } + }, + { + "id": "f064ea0e14d969ff", + "sha": "f064ea0e14d9", + "subject": "feat(ai): Create unified AI package with OpenAI, Anthropic, and Gemini support", + "files": [ + "package-lock.json", + "package.json", + "packages/ai/README.md", + "packages/ai/anthropic-api.md", + "packages/ai/gemini-api.md", + "packages/ai/openai-api.md", + "packages/ai/package.json", + "packages/ai/plan.md", + "packages/ai/src/index.ts", + "packages/ai/tsconfig.build.json", + "todos/done/20250817-183528-ai-unified-api-package-analysis.md", + "todos/done/20250817-183528-ai-unified-api-package.md", + "todos/project-description.md", + "tsconfig.json" + ], + "paths": [ + "package-lock.json", + "package.json", + "packages/ai/README.md", + "packages/ai/anthropic-api.md", + "packages/ai/gemini-api.md", + "packages/ai/openai-api.md", + "packages/ai/package.json", + "packages/ai/plan.md", + "packages/ai/src/index.ts", + "packages/ai/tsconfig.build.json", + "todos/done/20250817-183528-ai-unified-api-package-analysis.md", + "todos/done/20250817-183528-ai-unified-api-package.md", + "todos/project-description.md", + "tsconfig.json" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-17T20:18:45+02:00", + "author": "Mario Zechner", + "text": "feat(ai): create unified ai package with openai, anthropic, and gemini support package-lock.json package.json packages/ai/readme.md packages/ai/anthropic-api.md packages/ai/gemini-api.md packages/ai/openai-api.md packages/ai/package.json packages/ai/plan.md packages/ai/src/index.ts packages/ai/tsconfig.build.json todos/done/20250817-183528-ai-unified-api-package-analysis.md todos/done/20250817-183528-ai-unified-api-package.md todos/project-description.md tsconfig.json packages/ai ", + "file_statuses": { + "package-lock.json": "M", + "package.json": "M", + "packages/ai/README.md": "A", + "packages/ai/anthropic-api.md": "A", + "packages/ai/gemini-api.md": "A", + "packages/ai/openai-api.md": "A", + "packages/ai/package.json": "A", + "packages/ai/plan.md": "A", + "packages/ai/src/index.ts": "A", + "packages/ai/tsconfig.build.json": "A", + "todos/done/20250817-183528-ai-unified-api-package-analysis.md": "A", + "todos/done/20250817-183528-ai-unified-api-package.md": "A", + "todos/project-description.md": "M", + "tsconfig.json": "M" + } + }, + { + "id": "e5aedfed290c254d", + "sha": "e5aedfed290c", + "subject": "feat(ai): Implement unified AI API with Anthropic provider", + "files": [ + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/types.ts", + "packages/ai/test/examples/anthropic.ts", + "todos/work/20250817-202050-ai-implementation-plan/analysis.md", + "todos/work/20250817-202050-ai-implementation-plan/task.md" + ], + "paths": [ + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/types.ts", + "packages/ai/test/examples/anthropic.ts", + "todos/work/20250817-202050-ai-implementation-plan/analysis.md", + "todos/work/20250817-202050-ai-implementation-plan/task.md" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-17T23:30:20+02:00", + "author": "Mario Zechner", + "text": "feat(ai): implement unified ai api with anthropic provider package-lock.json packages/ai/package.json packages/ai/src/providers/anthropic.ts packages/ai/src/types.ts packages/ai/test/examples/anthropic.ts todos/work/20250817-202050-ai-implementation-plan/analysis.md todos/work/20250817-202050-ai-implementation-plan/task.md packages/ai ", + "file_statuses": { + "package-lock.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/providers/anthropic.ts": "A", + "packages/ai/src/types.ts": "A", + "packages/ai/test/examples/anthropic.ts": "A", + "todos/work/20250817-202050-ai-implementation-plan/analysis.md": "A", + "todos/work/20250817-202050-ai-implementation-plan/task.md": "A" + } + }, + { + "id": "8364ecde4a92ceb1", + "sha": "8364ecde4a92", + "subject": "feat(ai): Add OpenAI Completions and Responses API providers", + "files": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/examples/anthropic.ts", + "packages/ai/test/examples/openai-completions.ts", + "packages/ai/test/examples/openai-responses.ts" + ], + "paths": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/examples/anthropic.ts", + "packages/ai/test/examples/openai-completions.ts", + "packages/ai/test/examples/openai-responses.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-24T20:18:10+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add openai completions and responses api providers packages/ai/src/providers/anthropic.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/types.ts packages/ai/test/examples/anthropic.ts packages/ai/test/examples/openai-completions.ts packages/ai/test/examples/openai-responses.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "A", + "packages/ai/src/providers/openai-responses.ts": "A", + "packages/ai/src/types.ts": "M", + "packages/ai/test/examples/anthropic.ts": "M", + "packages/ai/test/examples/openai-completions.ts": "A", + "packages/ai/test/examples/openai-responses.ts": "A" + } + }, + { + "id": "a42c54e6fef567ec", + "sha": "a42c54e6fef5", + "subject": "docs: Update file paths after moving AI docs to packages/ai/docs/", + "files": [ + "CLAUDE.md", + "todos/work/20250817-202050-ai-implementation-plan/analysis.md", + "todos/work/20250817-202050-ai-implementation-plan/task.md" + ], + "paths": [ + "CLAUDE.md", + "todos/work/20250817-202050-ai-implementation-plan/analysis.md", + "todos/work/20250817-202050-ai-implementation-plan/task.md" + ], + "packages": [], + "signals": [], + "date": "2025-08-24T20:21:38+02:00", + "author": "Mario Zechner", + "text": "docs: update file paths after moving ai docs to packages/ai/docs/ claude.md todos/work/20250817-202050-ai-implementation-plan/analysis.md todos/work/20250817-202050-ai-implementation-plan/task.md ", + "file_statuses": { + "CLAUDE.md": "M", + "todos/work/20250817-202050-ai-implementation-plan/analysis.md": "M", + "todos/work/20250817-202050-ai-implementation-plan/task.md": "M" + } + }, + { + "id": "cb4c32faaa9f75e0", + "sha": "cb4c32faaa9f", + "subject": "refactor(ai): Add completion signal to onText/onThinking callbacks", + "files": [ + "packages/ai/docs/anthropic-api.md", + "packages/ai/docs/gemini-api.md", + "packages/ai/docs/openai-api.md", + "packages/ai/docs/plan.md", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/examples/anthropic.ts", + "packages/ai/test/examples/openai-completions.ts", + "packages/ai/test/examples/openai-responses.ts" + ], + "paths": [ + "packages/ai/docs/anthropic-api.md", + "packages/ai/docs/gemini-api.md", + "packages/ai/docs/openai-api.md", + "packages/ai/docs/plan.md", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/examples/anthropic.ts", + "packages/ai/test/examples/openai-completions.ts", + "packages/ai/test/examples/openai-responses.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-24T20:33:26+02:00", + "author": "Mario Zechner", + "text": "refactor(ai): add completion signal to ontext/onthinking callbacks packages/ai/docs/anthropic-api.md packages/ai/docs/gemini-api.md packages/ai/docs/openai-api.md packages/ai/docs/plan.md packages/ai/src/providers/anthropic.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/types.ts packages/ai/test/examples/anthropic.ts packages/ai/test/examples/openai-completions.ts packages/ai/test/examples/openai-responses.ts packages/ai ", + "file_statuses": { + "packages/ai/docs/anthropic-api.md": "R100", + "packages/ai/docs/gemini-api.md": "R100", + "packages/ai/docs/openai-api.md": "R100", + "packages/ai/docs/plan.md": "R100", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/examples/anthropic.ts": "M", + "packages/ai/test/examples/openai-completions.ts": "M", + "packages/ai/test/examples/openai-responses.ts": "M" + } + }, + { + "id": "a8ba19f0b4e4416e", + "sha": "a8ba19f0b4e4", + "subject": "feat(ai): Implement Gemini provider with streaming and tool support", + "files": [ + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/gemini.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/examples/gemini.ts" + ], + "paths": [ + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/gemini.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/examples/gemini.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-24T20:41:10+02:00", + "author": "Mario Zechner", + "text": "feat(ai): implement gemini provider with streaming and tool support package-lock.json packages/ai/package.json packages/ai/src/providers/anthropic.ts packages/ai/src/providers/gemini.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/types.ts packages/ai/test/examples/gemini.ts packages/ai ", + "file_statuses": { + "package-lock.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/gemini.ts": "A", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/examples/gemini.ts": "A" + } + }, + { + "id": "3e1422d3d709749d", + "sha": "3e1422d3d709", + "subject": "feat(ai): Add proper thinking support for Gemini 2.5 models", + "files": [ + "packages/ai/src/providers/gemini.ts", + "packages/ai/test/examples/gemini.ts" + ], + "paths": [ + "packages/ai/src/providers/gemini.ts", + "packages/ai/test/examples/gemini.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-25T10:26:23+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add proper thinking support for gemini 2.5 models packages/ai/src/providers/gemini.ts packages/ai/test/examples/gemini.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/gemini.ts": "M", + "packages/ai/test/examples/gemini.ts": "M" + } + }, + { + "id": "289e60ab88da5003", + "sha": "289e60ab88da", + "subject": "fix(ai): Correct Gemini thinking config structure", + "files": [ + "packages/ai/src/providers/gemini.ts" + ], + "paths": [ + "packages/ai/src/providers/gemini.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-25T10:33:58+02:00", + "author": "Mario Zechner", + "text": "fix(ai): correct gemini thinking config structure packages/ai/src/providers/gemini.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/gemini.ts": "M" + } + }, + { + "id": "7a6852081ddf6f10", + "sha": "7a6852081ddf", + "subject": "test(ai): Add comprehensive E2E tests for all AI providers", + "files": [ + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/gemini.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/examples/gemini.ts", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/gemini.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/examples/gemini.ts", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-25T15:54:26+02:00", + "author": "Mario Zechner", + "text": "test(ai): add comprehensive e2e tests for all ai providers package-lock.json packages/ai/package.json packages/ai/src/providers/anthropic.ts packages/ai/src/providers/gemini.ts packages/ai/src/providers/openai-responses.ts packages/ai/test/examples/gemini.ts packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "package-lock.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/gemini.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/test/examples/gemini.ts": "M", + "packages/ai/test/providers.test.ts": "A" + } + }, + { + "id": "6112029076de7536", + "sha": "6112029076de", + "subject": "docs(ai): Update README with working quick start examples", + "files": [ + "packages/ai/README.md" + ], + "paths": [ + "packages/ai/README.md" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-25T15:58:57+02:00", + "author": "Mario Zechner", + "text": "docs(ai): update readme with working quick start examples packages/ai/readme.md packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M" + } + }, + { + "id": "4bb3a5ad020eff4d", + "sha": "4bb3a5ad020e", + "subject": "feat(ai): Add OpenAI-compatible provider examples for multiple services", + "files": [ + "packages/ai/README.md", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/test/examples/cerebras-completions.ts", + "packages/ai/test/examples/groq-completions.ts", + "packages/ai/test/examples/ollama-completions.ts", + "packages/ai/test/examples/openrouter-completions.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/test/examples/cerebras-completions.ts", + "packages/ai/test/examples/groq-completions.ts", + "packages/ai/test/examples/ollama-completions.ts", + "packages/ai/test/examples/openrouter-completions.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-25T17:41:47+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add openai-compatible provider examples for multiple services packages/ai/readme.md packages/ai/src/providers/openai-completions.ts packages/ai/test/examples/cerebras-completions.ts packages/ai/test/examples/groq-completions.ts packages/ai/test/examples/ollama-completions.ts packages/ai/test/examples/openrouter-completions.ts packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/test/examples/cerebras-completions.ts": "A", + "packages/ai/test/examples/groq-completions.ts": "A", + "packages/ai/test/examples/ollama-completions.ts": "A", + "packages/ai/test/examples/openrouter-completions.ts": "A" + } + }, + { + "id": "02a9b4f09f36c3ff", + "sha": "02a9b4f09f36", + "subject": "feat(ai): Add models.dev data integration", + "files": [ + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/index.ts", + "packages/ai/src/models.json", + "packages/ai/src/models.ts", + "packages/ai/test/test-models.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/index.ts", + "packages/ai/src/models.json", + "packages/ai/src/models.ts", + "packages/ai/test/test-models.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-25T20:10:54+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add models.dev data integration packages/ai/readme.md packages/ai/package.json packages/ai/src/index.ts packages/ai/src/models.json packages/ai/src/models.ts packages/ai/test/test-models.ts packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/package.json": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.json": "A", + "packages/ai/src/models.ts": "A", + "packages/ai/test/test-models.ts": "A" + } + }, + { + "id": "9b8ea585bd3075bd", + "sha": "9b8ea585bd30", + "subject": "fix(ai): Improve ModelInfo types based on actual data structure", + "files": [ + "packages/ai/src/index.ts", + "packages/ai/src/models.ts", + "packages/ai/test/test-models.ts" + ], + "paths": [ + "packages/ai/src/index.ts", + "packages/ai/src/models.ts", + "packages/ai/test/test-models.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-25T20:18:34+02:00", + "author": "Mario Zechner", + "text": "fix(ai): improve modelinfo types based on actual data structure packages/ai/src/index.ts packages/ai/src/models.ts packages/ai/test/test-models.ts packages/ai ", + "file_statuses": { + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.ts": "M", + "packages/ai/test/test-models.ts": "D" + } + }, + { + "id": "da66a97ea758e8b1", + "sha": "da66a97ea758", + "subject": "feat(ai): Add auto-generated TypeScript models with factory function", + "files": [ + ".gitignore", + "package-lock.json", + "packages/ai/docs/models.md", + "packages/ai/package.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts" + ], + "paths": [ + ".gitignore", + "package-lock.json", + "packages/ai/docs/models.md", + "packages/ai/package.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-25T21:31:29+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add auto-generated typescript models with factory function .gitignore package-lock.json packages/ai/docs/models.md packages/ai/package.json packages/ai/scripts/generate-models.ts packages/ai/src/index.ts packages/ai ", + "file_statuses": { + ".gitignore": "M", + "package-lock.json": "M", + "packages/ai/docs/models.md": "A", + "packages/ai/package.json": "M", + "packages/ai/scripts/generate-models.ts": "A", + "packages/ai/src/index.ts": "M" + } + }, + { + "id": "3f36051bc6b9344d", + "sha": "3f36051bc6b9", + "subject": "feat(ai): Migrate tests to Vitest and add provider test coverage", + "files": [ + "CLAUDE.md", + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/test/examples/anthropic.ts", + "packages/ai/test/examples/cerebras-completions.ts", + "packages/ai/test/examples/gemini.ts", + "packages/ai/test/examples/groq-completions.ts", + "packages/ai/test/examples/ollama-completions.ts", + "packages/ai/test/examples/openai-completions.ts", + "packages/ai/test/examples/openai-responses.ts", + "packages/ai/test/examples/openrouter-completions.ts", + "packages/ai/test/providers.test.ts", + "packages/ai/vitest.config.ts" + ], + "paths": [ + "CLAUDE.md", + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/test/examples/anthropic.ts", + "packages/ai/test/examples/cerebras-completions.ts", + "packages/ai/test/examples/gemini.ts", + "packages/ai/test/examples/groq-completions.ts", + "packages/ai/test/examples/ollama-completions.ts", + "packages/ai/test/examples/openai-completions.ts", + "packages/ai/test/examples/openai-responses.ts", + "packages/ai/test/examples/openrouter-completions.ts", + "packages/ai/test/providers.test.ts", + "packages/ai/vitest.config.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-29T21:32:45+02:00", + "author": "Mario Zechner", + "text": "feat(ai): migrate tests to vitest and add provider test coverage claude.md package-lock.json packages/ai/package.json packages/ai/src/providers/openai-completions.ts packages/ai/test/examples/anthropic.ts packages/ai/test/examples/cerebras-completions.ts packages/ai/test/examples/gemini.ts packages/ai/test/examples/groq-completions.ts packages/ai/test/examples/ollama-completions.ts packages/ai/test/examples/openai-completions.ts packages/ai/test/examples/openai-responses.ts packages/ai/test/examples/openrouter-completions.ts packages/ai/test/providers.test.ts packages/ai/vitest.config.ts packages/ai ", + "file_statuses": { + "CLAUDE.md": "M", + "package-lock.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/test/examples/anthropic.ts": "D", + "packages/ai/test/examples/cerebras-completions.ts": "D", + "packages/ai/test/examples/gemini.ts": "D", + "packages/ai/test/examples/groq-completions.ts": "D", + "packages/ai/test/examples/ollama-completions.ts": "D", + "packages/ai/test/examples/openai-completions.ts": "D", + "packages/ai/test/examples/openai-responses.ts": "D", + "packages/ai/test/examples/openrouter-completions.ts": "D", + "packages/ai/test/providers.test.ts": "M", + "packages/ai/vitest.config.ts": "A" + } + }, + { + "id": "c7618db3f71d8af0", + "sha": "c7618db3f71d", + "subject": "refactor(ai): Implement unified model system with type-safe createLLM", + "files": [ + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.ts", + "packages/ai/src/providers/gemini.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.ts", + "packages/ai/src/providers/gemini.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-29T23:19:47+02:00", + "author": "Mario Zechner", + "text": "refactor(ai): implement unified model system with type-safe createllm packages/ai/readme.md packages/ai/package.json packages/ai/scripts/generate-models.ts packages/ai/src/index.ts packages/ai/src/models.ts packages/ai/src/providers/gemini.ts packages/ai/src/types.ts packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/package.json": "M", + "packages/ai/scripts/generate-models.ts": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.ts": "M", + "packages/ai/src/providers/gemini.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/providers.test.ts": "M" + } + }, + { + "id": "9c3f32b91e38d205", + "sha": "9c3f32b91e38", + "subject": "feat(ai): Add models.generated.ts with 181 tool-capable models", + "files": [ + ".gitignore", + "packages/ai/src/models.generated.ts" + ], + "paths": [ + ".gitignore", + "packages/ai/src/models.generated.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-29T23:20:53+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add models.generated.ts with 181 tool-capable models .gitignore packages/ai/src/models.generated.ts packages/ai ", + "file_statuses": { + ".gitignore": "M", + "packages/ai/src/models.generated.ts": "A" + } + }, + { + "id": "d61d09b88d00a156", + "sha": "d61d09b88d00", + "subject": "fix(ai): Deduplicate models and add Anthropic aliases", + "files": [ + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-29T23:34:01+02:00", + "author": "Mario Zechner", + "text": "fix(ai): deduplicate models and add anthropic aliases packages/ai/scripts/generate-models.ts packages/ai/src/models.generated.ts packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "packages/ai/scripts/generate-models.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/test/providers.test.ts": "M" + } + }, + { + "id": "f9d688d57766f3c4", + "sha": "f9d688d57766", + "subject": "refactor(ai): Update LLM implementations to use Model objects", + "files": [ + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/models.json", + "packages/ai/src/models.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/models.json", + "packages/ai/src/models.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-30T00:21:03+02:00", + "author": "Mario Zechner", + "text": "refactor(ai): update llm implementations to use model objects packages/ai/scripts/generate-models.ts packages/ai/src/index.ts packages/ai/src/models.generated.ts packages/ai/src/models.json packages/ai/src/models.ts packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/types.ts packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "packages/ai/scripts/generate-models.ts": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/models.json": "D", + "packages/ai/src/models.ts": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "R095", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/providers.test.ts": "M" + } + }, + { + "id": "550da5e47cef0561", + "sha": "550da5e47cef", + "subject": "feat(ai): Add cost tracking to LLM implementations", + "files": [ + "packages/ai/src/models.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts" + ], + "paths": [ + "packages/ai/src/models.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-30T00:45:08+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add cost tracking to llm implementations packages/ai/src/models.ts packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/types.ts packages/ai ", + "file_statuses": { + "packages/ai/src/models.ts": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/types.ts": "M" + } + }, + { + "id": "545d04fc5c933a3b", + "sha": "545d04fc5c93", + "subject": "fix(ai): Fix OpenAI completions store field type issue", + "files": [ + "packages/ai/src/providers/openai-completions.ts" + ], + "paths": [ + "packages/ai/src/providers/openai-completions.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-30T01:08:08+02:00", + "author": "Mario Zechner", + "text": "fix(ai): fix openai completions store field type issue packages/ai/src/providers/openai-completions.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/openai-completions.ts": "M" + } + }, + { + "id": "0b50c3f36dd26a59", + "sha": "0b50c3f36dd2", + "subject": "docs(ai): Add comprehensive image input documentation for all LLM providers", + "files": [ + "packages/ai/docs/images.md" + ], + "paths": [ + "packages/ai/docs/images.md" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-30T18:07:35+02:00", + "author": "Mario Zechner", + "text": "docs(ai): add comprehensive image input documentation for all llm providers packages/ai/docs/images.md packages/ai ", + "file_statuses": { + "packages/ai/docs/images.md": "A" + } + }, + { + "id": "4ac0c6ea28b2e74c", + "sha": "4ac0c6ea28b2", + "subject": "docs(ai): Simplify ImageContent interface to base64-only approach", + "files": [ + "packages/ai/docs/images.md" + ], + "paths": [ + "packages/ai/docs/images.md" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-30T18:12:36+02:00", + "author": "Mario Zechner", + "text": "docs(ai): simplify imagecontent interface to base64-only approach packages/ai/docs/images.md packages/ai ", + "file_statuses": { + "packages/ai/docs/images.md": "M" + } + }, + { + "id": "796e48b80ed3c652", + "sha": "796e48b80ed3", + "subject": "feat(ai): Add image input tests for vision-capable models", + "files": [ + "package-lock.json", + "packages/ai/package.json", + "packages/ai/scripts/generate-test-image.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/data/red-circle.png", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "package-lock.json", + "packages/ai/package.json", + "packages/ai/scripts/generate-test-image.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/data/red-circle.png", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-30T18:37:17+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add image input tests for vision-capable models package-lock.json packages/ai/package.json packages/ai/scripts/generate-test-image.ts packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/types.ts packages/ai/test/data/red-circle.png packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "package-lock.json": "M", + "packages/ai/package.json": "M", + "packages/ai/scripts/generate-test-image.ts": "A", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/data/red-circle.png": "A", + "packages/ai/test/providers.test.ts": "M" + } + }, + { + "id": "d46a98ec10d6dade", + "sha": "d46a98ec10d6", + "subject": "feat(ai): Rename package to @mariozechner/pi-ai and improve documentation", + "files": [ + "package-lock.json", + "package.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "package.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-30T21:41:22+02:00", + "author": "Mario Zechner", + "text": "feat(ai): rename package to @mariozechner/pi-ai and improve documentation package-lock.json package.json packages/agent/package-lock.json packages/agent/package.json packages/ai/readme.md packages/ai/package.json packages/ai/scripts/generate-models.ts packages/ai/src/index.ts packages/ai/src/models.generated.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "package.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/README.md": "M", + "packages/ai/package.json": "M", + "packages/ai/scripts/generate-models.ts": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "dae40167a368d94b", + "sha": "dae40167a368", + "subject": "docs(ai): Improve README with model discovery and capabilities documentation", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-30T21:46:54+02:00", + "author": "Mario Zechner", + "text": "docs(ai): improve readme with model discovery and capabilities documentation package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/readme.md packages/ai/package.json packages/ai/src/models.generated.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/README.md": "M", + "packages/ai/package.json": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "889208dccd8fd161", + "sha": "889208dccd8f", + "subject": "docs(ai): Fix model names in README examples", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-30T21:48:17+02:00", + "author": "Mario Zechner", + "text": "docs(ai): fix model names in readme examples package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/readme.md packages/ai/package.json packages/ai/src/models.generated.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/README.md": "M", + "packages/ai/package.json": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "8b12312d7229c72a", + "sha": "8b12312d7229", + "subject": "chore: Mark AI package implementation task as complete", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json", + "todos/done/20250817-202050-ai-implementation-plan-analysis.md", + "todos/done/20250817-202050-ai-implementation-plan.md", + "todos/todos.md" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json", + "todos/done/20250817-202050-ai-implementation-plan-analysis.md", + "todos/done/20250817-202050-ai-implementation-plan.md", + "todos/todos.md" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-30T21:53:23+02:00", + "author": "Mario Zechner", + "text": "chore: mark ai package implementation task as complete package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json todos/done/20250817-202050-ai-implementation-plan-analysis.md todos/done/20250817-202050-ai-implementation-plan.md todos/todos.md packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M", + "todos/done/20250817-202050-ai-implementation-plan-analysis.md": "R100", + "todos/done/20250817-202050-ai-implementation-plan.md": "R099", + "todos/todos.md": "M" + } + }, + { + "id": "444580fd2f051d17", + "sha": "444580fd2f05", + "subject": "docs: Update project description with AI package information", + "files": [ + "todos/project-description.md" + ], + "paths": [ + "todos/project-description.md" + ], + "packages": [], + "signals": [], + "date": "2025-08-30T21:56:40+02:00", + "author": "Mario Zechner", + "text": "docs: update project description with ai package information todos/project-description.md ", + "file_statuses": { + "todos/project-description.md": "M" + } + }, + { + "id": "2e90f8f8bcf62506", + "sha": "2e90f8f8bcf6", + "subject": "feat(ai): Enable browser support for OpenAI providers", + "files": [ + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts" + ], + "paths": [ + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-30T22:29:14+02:00", + "author": "Mario Zechner", + "text": "feat(ai): enable browser support for openai providers packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M" + } + }, + { + "id": "cff766d3e248ae43", + "sha": "cff766d3e248", + "subject": "fix(ai): Fix OpenAI Responses provider multi-turn conversation support", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-30T22:55:11+02:00", + "author": "Mario Zechner", + "text": "fix(ai): fix openai responses provider multi-turn conversation support package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/ai/src/models.generated.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/types.ts packages/ai/test/providers.test.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/providers.test.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "f8a81b94538d93f5", + "sha": "f8a81b94538d", + "subject": "test(ai): Add image input test for Anthropic Haiku 3.5", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/test/providers.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/test/providers.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-30T23:00:30+02:00", + "author": "Mario Zechner", + "text": "test(ai): add image input test for anthropic haiku 3.5 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/ai/test/providers.test.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/ai/test/providers.test.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "f29752ac82364584", + "sha": "f29752ac8236", + "subject": "refactor(ai): Update API to support multiple thinking and text blocks", + "files": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-31T19:32:12+02:00", + "author": "Mario Zechner", + "text": "refactor(ai): update api to support multiple thinking and text blocks packages/ai/src/providers/anthropic.ts packages/ai/src/types.ts packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/providers.test.ts": "M" + } + }, + { + "id": "7c8cdacc098c7403", + "sha": "7c8cdacc098c", + "subject": "refactor(ai): Simplify Google provider with cleaner block handling", + "files": [ + "packages/ai/src/providers/google.ts" + ], + "paths": [ + "packages/ai/src/providers/google.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-31T20:31:08+02:00", + "author": "Mario Zechner", + "text": "refactor(ai): simplify google provider with cleaner block handling packages/ai/src/providers/google.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/google.ts": "M" + } + }, + { + "id": "a72e6d08d4158914", + "sha": "a72e6d08d415", + "subject": "refactor(ai): Update OpenAI Completions provider to new content block API", + "files": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/types.ts", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-31T20:59:57+02:00", + "author": "Mario Zechner", + "text": "refactor(ai): update openai completions provider to new content block api packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/types.ts packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/providers.test.ts": "M" + } + }, + { + "id": "ee4c1318739e0132", + "sha": "ee4c1318739e", + "subject": "fix(ai): Fix OpenAI Responses provider multi-turn conversation support", + "files": [ + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-31T22:11:08+02:00", + "author": "Mario Zechner", + "text": "fix(ai): fix openai responses provider multi-turn conversation support packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/test/providers.test.ts": "M" + } + }, + { + "id": "0f2eaa70e932efd4", + "sha": "0f2eaa70e932", + "subject": "chore: Bump version to 0.5.15", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-31T22:11:50+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.15 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "80da49cd405c805d", + "sha": "80da49cd405c", + "subject": "docs(ai): Update README for new content blocks API", + "files": [ + "packages/ai/README.md", + "packages/ai/src/models.generated.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/src/models.generated.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-31T22:17:17+02:00", + "author": "Mario Zechner", + "text": "docs(ai): update readme for new content blocks api packages/ai/readme.md packages/ai/src/models.generated.ts packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/src/models.generated.ts": "M" + } + }, + { + "id": "8f4e96f2071bbab0", + "sha": "8f4e96f2071b", + "subject": "chore: Bump version to 0.5.16", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-31T22:17:35+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.16 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "c960d36da12232d1", + "sha": "c960d36da122", + "subject": "docs(ai): Remove old API reference from README", + "files": [ + "packages/ai/README.md", + "packages/pods/src/models.json" + ], + "paths": [ + "packages/ai/README.md", + "packages/pods/src/models.json" + ], + "packages": [ + "packages/ai", + "packages/pods" + ], + "signals": [], + "date": "2025-08-31T22:35:23+02:00", + "author": "Mario Zechner", + "text": "docs(ai): remove old api reference from readme packages/ai/readme.md packages/pods/src/models.json packages/ai packages/pods ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/pods/src/models.json": "M" + } + }, + { + "id": "8cca5597e46cf03e", + "sha": "8cca5597e46c", + "subject": "docs(ai): Remove 'now' language and fix model IDs in README", + "files": [ + "packages/ai/README.md" + ], + "paths": [ + "packages/ai/README.md" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-31T22:36:58+02:00", + "author": "Mario Zechner", + "text": "docs(ai): remove 'now' language and fix model ids in readme packages/ai/readme.md packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M" + } + }, + { + "id": "8d4edf64581978f5", + "sha": "8d4edf645819", + "subject": "docs(ai): Add all event types to streaming example", + "files": [ + "packages/ai/README.md" + ], + "paths": [ + "packages/ai/README.md" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-31T22:38:13+02:00", + "author": "Mario Zechner", + "text": "docs(ai): add all event types to streaming example packages/ai/readme.md packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M" + } + }, + { + "id": "a132b8140cd7c9bd", + "sha": "a132b8140cd7", + "subject": "feat(ai): Add start event emission to all providers", + "files": [ + "packages/ai/README.md", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/abort.test.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/abort.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-31T23:09:14+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add start event emission to all providers packages/ai/readme.md packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/test/abort.test.ts packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/test/abort.test.ts": "A" + } + }, + { + "id": "683263ba2709ecca", + "sha": "683263ba2709", + "subject": "chore: Bump version to 0.5.17", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-31T23:09:35+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.17 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "8430b91e59353024", + "sha": "8430b91e5935", + "subject": "fix(build): Improve source maps for better debugging", + "files": [ + "tsconfig.base.json" + ], + "paths": [ + "tsconfig.base.json" + ], + "packages": [], + "signals": [], + "date": "2025-08-31T23:49:09+02:00", + "author": "Mario Zechner", + "text": "fix(build): improve source maps for better debugging tsconfig.base.json ", + "file_statuses": { + "tsconfig.base.json": "M" + } + }, + { + "id": "f87ac359bbec221d", + "sha": "f87ac359bbec", + "subject": "chore: Bump version to 0.5.18", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-31T23:49:29+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.18 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "7db3068ceeb16f6c", + "sha": "7db3068ceeb1", + "subject": "fix(ai): Fix OpenAI Responses provider import order and cost calculation", + "files": [ + "packages/ai/src/providers/openai-responses.ts" + ], + "paths": [ + "packages/ai/src/providers/openai-responses.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-08-31T23:56:39+02:00", + "author": "Mario Zechner", + "text": "fix(ai): fix openai responses provider import order and cost calculation packages/ai/src/providers/openai-responses.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/openai-responses.ts": "M" + } + }, + { + "id": "5d5cd7955b4650e9", + "sha": "5d5cd7955b46", + "subject": "chore: Bump version to 0.5.19", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-08-31T23:56:58+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.19 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "bf1f410c2bb6ef29", + "sha": "bf1f410c2bb6", + "subject": "refactor(ai): Update API to support partial results on abort", + "files": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/abort.test.ts" + ], + "paths": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/abort.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-01T01:57:08+02:00", + "author": "Mario Zechner", + "text": "refactor(ai): update api to support partial results on abort packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-responses.ts packages/ai/test/abort.test.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/test/abort.test.ts": "M" + } + }, + { + "id": "46b5800d36c5b7bb", + "sha": "46b5800d36c5", + "subject": "feat(ai): Add cross-provider message handoff support", + "files": [ + "packages/ai/README.md", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/providers/utils.ts", + "packages/ai/src/types.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/providers/utils.ts", + "packages/ai/src/types.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-01T18:43:49+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add cross-provider message handoff support packages/ai/readme.md packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/providers/utils.ts packages/ai/src/types.ts packages/ai/test/abort.test.ts packages/ai/test/handoff.test.ts packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/providers/utils.ts": "A", + "packages/ai/src/types.ts": "M", + "packages/ai/test/abort.test.ts": "M", + "packages/ai/test/handoff.test.ts": "A", + "packages/ai/test/providers.test.ts": "M" + } + }, + { + "id": "add1b76b6cb80dba", + "sha": "add1b76b6cb8", + "subject": "chore: Bump version to 0.5.20", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-01T18:44:15+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.20 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "cf35215686b84b07", + "sha": "cf35215686b8", + "subject": "fix(ai): Fix browser compatibility for Anthropic OAuth tokens", + "files": [ + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts" + ], + "paths": [ + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-01T21:46:22+02:00", + "author": "Mario Zechner", + "text": "fix(ai): fix browser compatibility for anthropic oauth tokens packages/ai/src/models.generated.ts packages/ai/src/providers/anthropic.ts packages/ai ", + "file_statuses": { + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/providers/anthropic.ts": "M" + } + }, + { + "id": "3caa3af8fc39b8fd", + "sha": "3caa3af8fc39", + "subject": "chore: Bump version to 0.5.21", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-01T21:46:41+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.21 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "da43e625f805a287", + "sha": "da43e625f805", + "subject": "fix(ai): Add dangerouslyAllowBrowser flag for Anthropic client", + "files": [ + "packages/ai/src/providers/anthropic.ts" + ], + "paths": [ + "packages/ai/src/providers/anthropic.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-01T21:55:52+02:00", + "author": "Mario Zechner", + "text": "fix(ai): add dangerouslyallowbrowser flag for anthropic client packages/ai/src/providers/anthropic.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/anthropic.ts": "M" + } + }, + { + "id": "8324cd41922bb7d8", + "sha": "8324cd41922b", + "subject": "chore: Bump version to 0.5.22", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-01T21:56:12+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.22 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "a62231987c3c522b", + "sha": "a62231987c3c", + "subject": "fix(ai): Add anthropic-dangerous-direct-browser-access header", + "files": [ + "packages/ai/src/providers/anthropic.ts" + ], + "paths": [ + "packages/ai/src/providers/anthropic.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-01T22:02:50+02:00", + "author": "Mario Zechner", + "text": "fix(ai): add anthropic-dangerous-direct-browser-access header packages/ai/src/providers/anthropic.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/anthropic.ts": "M" + } + }, + { + "id": "14d93ca8c6adf851", + "sha": "14d93ca8c6ad", + "subject": "chore: Bump version to 0.5.23", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-01T22:03:09+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.23 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "32bede33521a466b", + "sha": "32bede33521a", + "subject": "docs(ai): Add browser usage section to README", + "files": [ + "packages/ai/README.md", + "packages/ai/src/models.generated.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/src/models.generated.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-01T22:09:24+02:00", + "author": "Mario Zechner", + "text": "docs(ai): add browser usage section to readme packages/ai/readme.md packages/ai/src/models.generated.ts packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/src/models.generated.ts": "M" + } + }, + { + "id": "3007b7a5ac230aa8", + "sha": "3007b7a5ac23", + "subject": "chore: Bump version to 0.5.24", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-01T22:09:47+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.24 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "2cfd8ff3c3065b62", + "sha": "2cfd8ff3c306", + "subject": "fix(ai): Use API type instead of model for message compatibility checks", + "files": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/providers/utils.ts", + "packages/ai/src/types.ts" + ], + "paths": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/providers/utils.ts", + "packages/ai/src/types.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-02T00:20:06+02:00", + "author": "Mario Zechner", + "text": "fix(ai): use api type instead of model for message compatibility checks packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/providers/utils.ts packages/ai/src/types.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/providers/utils.ts": "M", + "packages/ai/src/types.ts": "M" + } + }, + { + "id": "f1c3d44602bf2c41", + "sha": "f1c3d44602bf", + "subject": "chore: Bump version to 0.5.25", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-02T00:20:26+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.25 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "efaa5cdb39cccaca", + "sha": "efaa5cdb39cc", + "subject": "feat(ai): Fetch Anthropic, Google, and OpenAI models from models.dev instead of OpenRouter", + "files": [ + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/models.ts", + "packages/ai/test/providers.test.ts" + ], + "paths": [ + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/models.ts", + "packages/ai/test/providers.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-02T01:18:59+02:00", + "author": "Mario Zechner", + "text": "feat(ai): fetch anthropic, google, and openai models from models.dev instead of openrouter packages/ai/scripts/generate-models.ts packages/ai/src/models.generated.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-responses.ts packages/ai/test/abort.test.ts packages/ai/test/handoff.test.ts packages/ai/test/models.ts packages/ai/test/providers.test.ts packages/ai ", + "file_statuses": { + "packages/ai/scripts/generate-models.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/test/abort.test.ts": "M", + "packages/ai/test/handoff.test.ts": "M", + "packages/ai/test/models.ts": "A", + "packages/ai/test/providers.test.ts": "M" + } + }, + { + "id": "0fbb0921bbfd2e0d", + "sha": "0fbb0921bbfd", + "subject": "feat(ai): Add gpt-5-chat-latest model to generated models", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-02T01:32:26+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add gpt-5-chat-latest model to generated models package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/ai/scripts/generate-models.ts packages/ai/src/models.generated.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/ai/scripts/generate-models.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "0ac05a06765b7634", + "sha": "0ac05a06765b", + "subject": "test(ai): Add empty message tests for all providers", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/test/empty.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/test/empty.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-02T02:03:06+02:00", + "author": "Mario Zechner", + "text": "test(ai): add empty message tests for all providers package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/ai/test/empty.test.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/ai/test/empty.test.ts": "A", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "be07c08a752cb3e8", + "sha": "be07c08a752c", + "subject": "test(ai): Add empty assistant message tests", + "files": [ + "packages/ai/test/empty.test.ts" + ], + "paths": [ + "packages/ai/test/empty.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-02T02:10:07+02:00", + "author": "Mario Zechner", + "text": "test(ai): add empty assistant message tests packages/ai/test/empty.test.ts packages/ai ", + "file_statuses": { + "packages/ai/test/empty.test.ts": "M" + } + }, + { + "id": "004de3c9d0153755", + "sha": "004de3c9d015", + "subject": "feat(ai): Add new streaming generate API with AsyncIterable interface", + "files": [ + "packages/ai/src/generate.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.ts", + "packages/ai/src/providers/anthropic-generate.ts", + "packages/ai/src/types.ts", + "packages/ai/test/generate.test.ts" + ], + "paths": [ + "packages/ai/src/generate.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.ts", + "packages/ai/src/providers/anthropic-generate.ts", + "packages/ai/src/types.ts", + "packages/ai/test/generate.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-02T18:07:46+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add new streaming generate api with asynciterable interface packages/ai/src/generate.ts packages/ai/src/index.ts packages/ai/src/models.ts packages/ai/src/providers/anthropic-generate.ts packages/ai/src/types.ts packages/ai/test/generate.test.ts packages/ai ", + "file_statuses": { + "packages/ai/src/generate.ts": "A", + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.ts": "M", + "packages/ai/src/providers/anthropic-generate.ts": "A", + "packages/ai/src/types.ts": "M", + "packages/ai/test/generate.test.ts": "A" + } + }, + { + "id": "66cefb236e654427", + "sha": "66cefb236e65", + "subject": "Massive refactor of API", + "files": [ + "biome.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/generate.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/models.ts", + "packages/ai/src/providers/anthropic-generate.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/providers/utils.ts", + "packages/ai/src/types.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/empty.test.ts", + "packages/ai/test/generate.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/models.ts", + "packages/ai/test/providers.test.ts", + "packages/tui/test/bench.ts" + ], + "paths": [ + "biome.json", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/generate.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/models.ts", + "packages/ai/src/providers/anthropic-generate.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/providers/utils.ts", + "packages/ai/src/types.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/empty.test.ts", + "packages/ai/test/generate.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/models.ts", + "packages/ai/test/providers.test.ts", + "packages/tui/test/bench.ts", + "packages/tui/test/chat-app.ts", + "packages/tui/test/differential-render.test.ts", + "packages/tui/test/file-browser.ts", + "packages/tui/test/layout-shift-artifacts.test.ts", + "packages/tui/test/multi-layout.ts", + "packages/tui/test/multi-message-garbled.test.ts", + "packages/tui/test/tui-rendering.test.ts", + "packages/tui/test/virtual-terminal.test.ts", + "packages/tui/test/virtual-terminal.ts" + ], + "packages": [ + "packages/ai", + "packages/tui" + ], + "signals": [], + "date": "2025-09-02T23:59:36+02:00", + "author": "Mario Zechner", + "text": "massive refactor of api biome.json packages/ai/scripts/generate-models.ts packages/ai/src/generate.ts packages/ai/src/index.ts packages/ai/src/models.generated.ts packages/ai/src/models.ts packages/ai/src/providers/anthropic-generate.ts packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/providers/utils.ts packages/ai/src/types.ts packages/ai/test/abort.test.ts packages/ai/test/empty.test.ts packages/ai/test/generate.test.ts packages/ai/test/handoff.test.ts packages/ai/test/models.ts packages/ai/test/providers.test.ts packages/tui/test/bench.ts packages/tui/test/chat-app.ts packages/tui/test/differential-render.test.ts packages/tui/test/file-browser.ts packages/tui/test/layout-shift-artifacts.test.ts packages/tui/test/multi-layout.ts packages/tui/test/multi-message-garbled.test.ts packages/tui/test/tui-rendering.test.ts packages/tui/test/virtual-terminal.test.ts packages/tui/test/virtual-terminal.ts packages/ai packages/tui ", + "file_statuses": { + "biome.json": "M", + "packages/ai/scripts/generate-models.ts": "M", + "packages/ai/src/generate.ts": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/models.ts": "M", + "packages/ai/src/providers/anthropic-generate.ts": "D", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/providers/utils.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/abort.test.ts": "M", + "packages/ai/test/empty.test.ts": "M", + "packages/ai/test/generate.test.ts": "M", + "packages/ai/test/handoff.test.ts": "M", + "packages/ai/test/models.ts": "D", + "packages/ai/test/providers.test.ts": "D", + "packages/tui/test/bench.ts": "M", + "packages/tui/test/chat-app.ts": "M", + "packages/tui/test/differential-render.test.ts": "M", + "packages/tui/test/file-browser.ts": "M", + "packages/tui/test/layout-shift-artifacts.test.ts": "M", + "packages/tui/test/multi-layout.ts": "M", + "packages/tui/test/multi-message-garbled.test.ts": "M", + "packages/tui/test/tui-rendering.test.ts": "M", + "packages/tui/test/virtual-terminal.test.ts": "M", + "packages/tui/test/virtual-terminal.ts": "M" + } + }, + { + "id": "acf0f5aee2ccc9d9", + "sha": "acf0f5aee2cc", + "subject": "Clean-up", + "files": [ + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/abort.test.ts", + "packages/tui/test/chat-app.ts" + ], + "paths": [ + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/abort.test.ts", + "packages/tui/test/chat-app.ts" + ], + "packages": [ + "packages/ai", + "packages/tui" + ], + "signals": [], + "date": "2025-09-03T00:01:32+02:00", + "author": "Mario Zechner", + "text": "clean-up packages/ai/src/providers/openai-responses.ts packages/ai/test/abort.test.ts packages/tui/test/chat-app.ts packages/ai packages/tui ", + "file_statuses": { + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/test/abort.test.ts": "M", + "packages/tui/test/chat-app.ts": "M" + } + }, + { + "id": "21750c230a34bf8e", + "sha": "21750c230a34", + "subject": "More clean-up", + "files": [ + "packages/ai/docs/anthropic-api.md", + "packages/ai/docs/gemini-api.md", + "packages/ai/docs/images.md", + "packages/ai/docs/models.md", + "packages/ai/docs/openai-api.md", + "packages/ai/docs/plan.md" + ], + "paths": [ + "packages/ai/docs/anthropic-api.md", + "packages/ai/docs/gemini-api.md", + "packages/ai/docs/images.md", + "packages/ai/docs/models.md", + "packages/ai/docs/openai-api.md", + "packages/ai/docs/plan.md" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-03T00:01:56+02:00", + "author": "Mario Zechner", + "text": "more clean-up packages/ai/docs/anthropic-api.md packages/ai/docs/gemini-api.md packages/ai/docs/images.md packages/ai/docs/models.md packages/ai/docs/openai-api.md packages/ai/docs/plan.md packages/ai ", + "file_statuses": { + "packages/ai/docs/anthropic-api.md": "D", + "packages/ai/docs/gemini-api.md": "D", + "packages/ai/docs/images.md": "D", + "packages/ai/docs/models.md": "D", + "packages/ai/docs/openai-api.md": "D", + "packages/ai/docs/plan.md": "D" + } + }, + { + "id": "4cee070bdd2e392f", + "sha": "4cee070bdd2e", + "subject": "refactor(ai): Simplify API with new streaming interface and model management", + "files": [ + "packages/ai/README.md", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/models.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/models.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-03T01:25:19+02:00", + "author": "Mario Zechner", + "text": "refactor(ai): simplify api with new streaming interface and model management packages/ai/readme.md packages/ai/scripts/generate-models.ts packages/ai/src/index.ts packages/ai/src/models.generated.ts packages/ai/src/models.ts packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/scripts/generate-models.ts": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/models.ts": "M" + } + }, + { + "id": "080bf673063b942b", + "sha": "080bf673063b", + "subject": "chore: bump version to 0.5.28", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-03T01:26:12+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.28 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "6679a83b32791157", + "sha": "6679a83b3279", + "subject": "fix(ai): Sanitize tool call IDs for Anthropic API compatibility", + "files": [ + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/test/cross-provider-toolcall.test.ts" + ], + "paths": [ + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/test/cross-provider-toolcall.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-04T05:17:08+02:00", + "author": "Mario Zechner", + "text": "fix(ai): sanitize tool call ids for anthropic api compatibility packages/ai/src/models.generated.ts packages/ai/src/providers/anthropic.ts packages/ai/test/cross-provider-toolcall.test.ts packages/ai ", + "file_statuses": { + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/test/cross-provider-toolcall.test.ts": "A" + } + }, + { + "id": "7d1daac39ea9e025", + "sha": "7d1daac39ea9", + "subject": "chore: bump version to 0.5.29", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-04T05:17:48+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.29 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "6c3580828dda12b7", + "sha": "6c3580828dda", + "subject": "fix(ai): Ensure unique tool call IDs in Google provider", + "files": [ + "packages/ai/src/providers/google.ts" + ], + "paths": [ + "packages/ai/src/providers/google.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-04T12:41:58+02:00", + "author": "Mario Zechner", + "text": "fix(ai): ensure unique tool call ids in google provider packages/ai/src/providers/google.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/google.ts": "M" + } + }, + { + "id": "9230b83d94a9f28f", + "sha": "9230b83d94a9", + "subject": "chore: bump version to 0.5.30", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-04T12:42:18+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.30 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "d073953ef734f2fa", + "sha": "d073953ef734", + "subject": "feat(ai): Add zAI provider support", + "files": [ + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/generate.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/types.ts", + "packages/ai/test/empty.test.ts", + "packages/ai/test/generate.test.ts" + ], + "paths": [ + "packages/ai/scripts/generate-models.ts", + "packages/ai/src/generate.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/types.ts", + "packages/ai/test/empty.test.ts", + "packages/ai/test/generate.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-07T00:09:15+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add zai provider support packages/ai/scripts/generate-models.ts packages/ai/src/generate.ts packages/ai/src/models.generated.ts packages/ai/src/types.ts packages/ai/test/empty.test.ts packages/ai/test/generate.test.ts packages/ai ", + "file_statuses": { + "packages/ai/scripts/generate-models.ts": "M", + "packages/ai/src/generate.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/test/empty.test.ts": "M", + "packages/ai/test/generate.test.ts": "M" + } + }, + { + "id": "2bdb87dfe779410e", + "sha": "2bdb87dfe779", + "subject": "chore: bump version to 0.5.31", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/test/generate.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/test/generate.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-07T00:09:34+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.31 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/ai/test/generate.test.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/ai/test/generate.test.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "98a876f3a0bc6d94", + "sha": "98a876f3a0bc", + "subject": "Fix streaming for z-ai in anthropic provider, add preliminary support for tool call streaming. Only reporting argument string deltas, not partial JSON objects", + "files": [ + "packages/ai/package.json", + "packages/ai/src/agent/agent.ts", + "packages/ai/src/agent/index.ts", + "packages/ai/src/agent/tools/calculate.ts", + "packages/ai/src/agent/tools/get-current-time.ts", + "packages/ai/src/agent/tools/index.ts", + "packages/ai/src/agent/types.ts", + "packages/ai/src/event-stream.ts", + "packages/ai/src/generate.ts", + "packages/ai/src/index.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/providers/transorm-messages.ts", + "packages/ai/src/types.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/cross-provider-toolcall.test.ts", + "packages/ai/test/generate.test.ts", + "packages/ai/test/handoff.test.ts" + ], + "paths": [ + "packages/ai/package.json", + "packages/ai/src/agent/agent.ts", + "packages/ai/src/agent/index.ts", + "packages/ai/src/agent/tools/calculate.ts", + "packages/ai/src/agent/tools/get-current-time.ts", + "packages/ai/src/agent/tools/index.ts", + "packages/ai/src/agent/types.ts", + "packages/ai/src/event-stream.ts", + "packages/ai/src/generate.ts", + "packages/ai/src/index.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/providers/transorm-messages.ts", + "packages/ai/src/types.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/cross-provider-toolcall.test.ts", + "packages/ai/test/generate.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/tsconfig.build.json" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-09T04:26:56+02:00", + "author": "Mario Zechner", + "text": "fix streaming for z-ai in anthropic provider, add preliminary support for tool call streaming. only reporting argument string deltas, not partial json objects packages/ai/package.json packages/ai/src/agent/agent.ts packages/ai/src/agent/index.ts packages/ai/src/agent/tools/calculate.ts packages/ai/src/agent/tools/get-current-time.ts packages/ai/src/agent/tools/index.ts packages/ai/src/agent/types.ts packages/ai/src/event-stream.ts packages/ai/src/generate.ts packages/ai/src/index.ts packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/providers/transorm-messages.ts packages/ai/src/types.ts packages/ai/test/abort.test.ts packages/ai/test/cross-provider-toolcall.test.ts packages/ai/test/generate.test.ts packages/ai/test/handoff.test.ts packages/ai/tsconfig.build.json packages/ai ", + "file_statuses": { + "packages/ai/package.json": "M", + "packages/ai/src/agent/agent.ts": "A", + "packages/ai/src/agent/index.ts": "A", + "packages/ai/src/agent/tools/calculate.ts": "A", + "packages/ai/src/agent/tools/get-current-time.ts": "A", + "packages/ai/src/agent/tools/index.ts": "A", + "packages/ai/src/agent/types.ts": "A", + "packages/ai/src/event-stream.ts": "A", + "packages/ai/src/generate.ts": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/providers/transorm-messages.ts": "R100", + "packages/ai/src/types.ts": "M", + "packages/ai/test/abort.test.ts": "M", + "packages/ai/test/cross-provider-toolcall.test.ts": "D", + "packages/ai/test/generate.test.ts": "M", + "packages/ai/test/handoff.test.ts": "M", + "packages/ai/tsconfig.build.json": "M" + } + }, + { + "id": "594b0dac6c0dd806", + "sha": "594b0dac6c0d", + "subject": "Stop GPT-OSS 20b from being dumb ..", + "files": [ + "packages/ai/test/generate.test.ts" + ], + "paths": [ + "packages/ai/test/generate.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-09T04:31:09+02:00", + "author": "Mario Zechner", + "text": "stop gpt-oss 20b from being dumb .. packages/ai/test/generate.test.ts packages/ai ", + "file_statuses": { + "packages/ai/test/generate.test.ts": "M" + } + }, + { + "id": "35fe8f21e922e986", + "sha": "35fe8f21e922", + "subject": "feat(ai): Implement Zod-based tool validation and improve Agent API", + "files": [ + "README.md", + "package-lock.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/agent/agent.ts", + "packages/ai/src/agent/index.ts", + "packages/ai/src/agent/tools/calculate.ts", + "packages/ai/src/agent/tools/get-current-time.ts", + "packages/ai/src/agent/types.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/stream.ts", + "packages/ai/src/types.ts", + "packages/ai/src/validation.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/agent.test.ts" + ], + "paths": [ + "README.md", + "package-lock.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/agent/agent.ts", + "packages/ai/src/agent/index.ts", + "packages/ai/src/agent/tools/calculate.ts", + "packages/ai/src/agent/tools/get-current-time.ts", + "packages/ai/src/agent/types.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/stream.ts", + "packages/ai/src/types.ts", + "packages/ai/src/validation.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/agent.test.ts", + "packages/ai/test/empty.test.ts", + "packages/ai/test/generate.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/tool-validation.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-09T14:58:54+02:00", + "author": "Mario Zechner", + "text": "feat(ai): implement zod-based tool validation and improve agent api readme.md package-lock.json packages/ai/readme.md packages/ai/package.json packages/ai/src/agent/agent.ts packages/ai/src/agent/index.ts packages/ai/src/agent/tools/calculate.ts packages/ai/src/agent/tools/get-current-time.ts packages/ai/src/agent/types.ts packages/ai/src/index.ts packages/ai/src/models.generated.ts packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/stream.ts packages/ai/src/types.ts packages/ai/src/validation.ts packages/ai/test/abort.test.ts packages/ai/test/agent.test.ts packages/ai/test/empty.test.ts packages/ai/test/generate.test.ts packages/ai/test/handoff.test.ts packages/ai/test/tool-validation.test.ts packages/ai ", + "file_statuses": { + "README.md": "M", + "package-lock.json": "M", + "packages/ai/README.md": "M", + "packages/ai/package.json": "M", + "packages/ai/src/agent/agent.ts": "M", + "packages/ai/src/agent/index.ts": "M", + "packages/ai/src/agent/tools/calculate.ts": "M", + "packages/ai/src/agent/tools/get-current-time.ts": "M", + "packages/ai/src/agent/types.ts": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/stream.ts": "R097", + "packages/ai/src/types.ts": "M", + "packages/ai/src/validation.ts": "A", + "packages/ai/test/abort.test.ts": "M", + "packages/ai/test/agent.test.ts": "A", + "packages/ai/test/empty.test.ts": "M", + "packages/ai/test/generate.test.ts": "M", + "packages/ai/test/handoff.test.ts": "M", + "packages/ai/test/tool-validation.test.ts": "A" + } + }, + { + "id": "8f50f7cc7990118a", + "sha": "8f50f7cc7990", + "subject": "0.0.1", + "files": [ + "package-lock.json", + "package.json" + ], + "paths": [ + "package-lock.json", + "package.json" + ], + "packages": [], + "signals": [], + "date": "2025-09-09T14:59:11+02:00", + "author": "Mario Zechner", + "text": "0.0.1 package-lock.json package.json ", + "file_statuses": { + "package-lock.json": "M", + "package.json": "M" + } + }, + { + "id": "34a7344a7dea8bb2", + "sha": "34a7344a7dea", + "subject": "chore: bump version to 0.5.32", + "files": [ + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-09T15:00:32+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.32 packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "433b42ac9149862a", + "sha": "433b42ac9149", + "subject": "Fix Biome config, don't submit empty assistant messages to completions endpoint.", + "files": [ + "biome.json", + "packages/ai/src/providers/openai-completions.ts" + ], + "paths": [ + "biome.json", + "packages/ai/src/providers/openai-completions.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-09T21:47:40+02:00", + "author": "Mario Zechner", + "text": "fix biome config, don't submit empty assistant messages to completions endpoint. biome.json packages/ai/src/providers/openai-completions.ts packages/ai ", + "file_statuses": { + "biome.json": "M", + "packages/ai/src/providers/openai-completions.ts": "M" + } + }, + { + "id": "73d21196060331e1", + "sha": "73d211960603", + "subject": "fix: Adjust max tokens for Anthropic and improve Google tools handling", + "files": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts" + ], + "paths": [ + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-15T00:34:52+02:00", + "author": "Mario Zechner", + "text": "fix: adjust max tokens for anthropic and improve google tools handling packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M" + } + }, + { + "id": "1c9ab1ca24061016", + "sha": "1c9ab1ca2406", + "subject": "chore: bump version to 0.5.34", + "files": [ + "package-lock.json", + "packages/ai/package.json" + ], + "paths": [ + "package-lock.json", + "packages/ai/package.json" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-15T00:35:10+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.34 package-lock.json packages/ai/package.json packages/ai ", + "file_statuses": { + "package-lock.json": "M", + "packages/ai/package.json": "M" + } + }, + { + "id": "5f7a50deef9d34aa", + "sha": "5f7a50deef9d", + "subject": "Make stream function configurable in agent", + "files": [ + "packages/ai/src/agent/agent.ts", + "packages/ai/src/models.generated.ts" + ], + "paths": [ + "packages/ai/src/agent/agent.ts", + "packages/ai/src/models.generated.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-15T20:31:53+02:00", + "author": "Mario Zechner", + "text": "make stream function configurable in agent packages/ai/src/agent/agent.ts packages/ai/src/models.generated.ts packages/ai ", + "file_statuses": { + "packages/ai/src/agent/agent.ts": "M", + "packages/ai/src/models.generated.ts": "M" + } + }, + { + "id": "f5ac1ef52159b318", + "sha": "f5ac1ef52159", + "subject": "chore: bump version to 0.5.35", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-15T20:32:50+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.35 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/ai/src/models.generated.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "e8370436d7414ba2", + "sha": "e8370436d741", + "subject": "Replace Zod with TypeBox for schema validation", + "files": [ + "packages/ai/README.md", + "packages/ai/src/agent/tools/calculate.ts", + "packages/ai/src/agent/tools/get-current-time.ts", + "packages/ai/src/agent/types.ts", + "packages/ai/src/index.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/typebox-helpers.ts", + "packages/ai/src/types.ts", + "packages/ai/src/validation.ts", + "packages/ai/test/enum-test.ts", + "packages/ai/test/generate.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/tool-validation.test.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/src/agent/tools/calculate.ts", + "packages/ai/src/agent/tools/get-current-time.ts", + "packages/ai/src/agent/types.ts", + "packages/ai/src/index.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/typebox-helpers.ts", + "packages/ai/src/types.ts", + "packages/ai/src/validation.ts", + "packages/ai/test/enum-test.ts", + "packages/ai/test/generate.test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/tool-validation.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-16T01:10:40+02:00", + "author": "Mario Zechner", + "text": "replace zod with typebox for schema validation packages/ai/readme.md packages/ai/src/agent/tools/calculate.ts packages/ai/src/agent/tools/get-current-time.ts packages/ai/src/agent/types.ts packages/ai/src/index.ts packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/typebox-helpers.ts packages/ai/src/types.ts packages/ai/src/validation.ts packages/ai/test/enum-test.ts packages/ai/test/generate.test.ts packages/ai/test/handoff.test.ts packages/ai/test/tool-validation.test.ts packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/src/agent/tools/calculate.ts": "M", + "packages/ai/src/agent/tools/get-current-time.ts": "M", + "packages/ai/src/agent/types.ts": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/typebox-helpers.ts": "A", + "packages/ai/src/types.ts": "M", + "packages/ai/src/validation.ts": "M", + "packages/ai/test/enum-test.ts": "A", + "packages/ai/test/generate.test.ts": "M", + "packages/ai/test/handoff.test.ts": "M", + "packages/ai/test/tool-validation.test.ts": "M" + } + }, + { + "id": "365b9ec390c58e5c", + "sha": "365b9ec390c5", + "subject": "chore: bump version to 0.5.36", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-16T01:11:28+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.36 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "e2d23a5abb58aa2c", + "sha": "e2d23a5abb58", + "subject": "Update AI models and index exports", + "files": [ + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts" + ], + "paths": [ + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-16T01:29:44+02:00", + "author": "Mario Zechner", + "text": "update ai models and index exports packages/ai/src/index.ts packages/ai/src/models.generated.ts packages/ai ", + "file_statuses": { + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.generated.ts": "M" + } + }, + { + "id": "197259c88af5d27a", + "sha": "197259c88af5", + "subject": "Fix NodeJS compat", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/src/agent/agent.ts", + "packages/ai/src/agent/index.ts", + "packages/ai/src/agent/tools/calculate.ts", + "packages/ai/src/agent/tools/get-current-time.ts", + "packages/ai/src/agent/tools/index.ts", + "packages/ai/src/event-stream.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/types.ts", + "packages/ai/src/validation.ts", + "packages/ai/test/tool-validation.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json", + "tsconfig.base.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/src/agent/agent.ts", + "packages/ai/src/agent/index.ts", + "packages/ai/src/agent/tools/calculate.ts", + "packages/ai/src/agent/tools/get-current-time.ts", + "packages/ai/src/agent/tools/index.ts", + "packages/ai/src/event-stream.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/types.ts", + "packages/ai/src/validation.ts", + "packages/ai/test/tool-validation.test.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json", + "tsconfig.base.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-16T02:19:47+02:00", + "author": "Mario Zechner", + "text": "fix nodejs compat package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/ai/src/agent/agent.ts packages/ai/src/agent/index.ts packages/ai/src/agent/tools/calculate.ts packages/ai/src/agent/tools/get-current-time.ts packages/ai/src/agent/tools/index.ts packages/ai/src/event-stream.ts packages/ai/src/models.generated.ts packages/ai/src/types.ts packages/ai/src/validation.ts packages/ai/test/tool-validation.test.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json tsconfig.base.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/agent/agent.ts": "M", + "packages/ai/src/agent/index.ts": "M", + "packages/ai/src/agent/tools/calculate.ts": "M", + "packages/ai/src/agent/tools/get-current-time.ts": "M", + "packages/ai/src/agent/tools/index.ts": "M", + "packages/ai/src/event-stream.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/src/validation.ts": "M", + "packages/ai/test/tool-validation.test.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M", + "tsconfig.base.json": "M" + } + }, + { + "id": "39c626b6c9bfd157", + "sha": "39c626b6c9bf", + "subject": "feat(ai): add partial JSON parsing for streaming tool calls", + "files": [ + "package-lock.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/json-parse.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/generate.test.ts", + "test-partial-json.js" + ], + "paths": [ + "package-lock.json", + "packages/ai/README.md", + "packages/ai/package.json", + "packages/ai/src/json-parse.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/test/generate.test.ts", + "test-partial-json.js" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-16T12:23:34+02:00", + "author": "Mario Zechner", + "text": "feat(ai): add partial json parsing for streaming tool calls package-lock.json packages/ai/readme.md packages/ai/package.json packages/ai/src/json-parse.ts packages/ai/src/models.generated.ts packages/ai/src/providers/anthropic.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/test/generate.test.ts test-partial-json.js packages/ai ", + "file_statuses": { + "package-lock.json": "M", + "packages/ai/README.md": "M", + "packages/ai/package.json": "M", + "packages/ai/src/json-parse.ts": "A", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/test/generate.test.ts": "M", + "test-partial-json.js": "A" + } + }, + { + "id": "9c921049a6ec544a", + "sha": "9c921049a6ec", + "subject": "chore: bump version to 0.5.40", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-16T12:24:00+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.40 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "c9d735bbbd79c878", + "sha": "c9d735bbbd79", + "subject": "Clean-up", + "files": [ + "packages/ai/src/models.generated.ts" + ], + "paths": [ + "packages/ai/src/models.generated.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-16T12:27:30+02:00", + "author": "Mario Zechner", + "text": "clean-up packages/ai/src/models.generated.ts packages/ai ", + "file_statuses": { + "packages/ai/src/models.generated.ts": "M" + } + }, + { + "id": "b6af05bbf6266a79", + "sha": "b6af05bbf626", + "subject": "fix(ai): correct streaming event documentation and API methods", + "files": [ + "packages/ai/README.md" + ], + "paths": [ + "packages/ai/README.md" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-18T11:17:33+02:00", + "author": "Mario Zechner", + "text": "fix(ai): correct streaming event documentation and api methods packages/ai/readme.md packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M" + } + }, + { + "id": "293a6e878d4bdc56", + "sha": "293a6e878d4b", + "subject": "chore: bump version to 0.5.41", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-18T11:18:02+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.41 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/ai/src/models.generated.ts packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "2296dc4052fcc30f", + "sha": "2296dc4052fc", + "subject": "refactor(ai): improve error handling and stop reason types", + "files": [ + "packages/ai/README.md", + "packages/ai/src/agent/agent-loop.ts", + "packages/ai/src/agent/index.ts", + "packages/ai/src/agent/types.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/src/utils/event-stream.ts", + "packages/ai/src/utils/json-parse.ts", + "packages/ai/src/utils/typebox-helpers.ts", + "packages/ai/src/utils/validation.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/agent.test.ts", + "packages/ai/test/empty.test.ts", + "packages/ai/test/enum-test.ts", + "packages/ai/test/handoff.test.ts" + ], + "paths": [ + "packages/ai/README.md", + "packages/ai/src/agent/agent-loop.ts", + "packages/ai/src/agent/index.ts", + "packages/ai/src/agent/types.ts", + "packages/ai/src/index.ts", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/anthropic.ts", + "packages/ai/src/providers/google.ts", + "packages/ai/src/providers/openai-completions.ts", + "packages/ai/src/providers/openai-responses.ts", + "packages/ai/src/types.ts", + "packages/ai/src/utils/event-stream.ts", + "packages/ai/src/utils/json-parse.ts", + "packages/ai/src/utils/typebox-helpers.ts", + "packages/ai/src/utils/validation.ts", + "packages/ai/test/abort.test.ts", + "packages/ai/test/agent.test.ts", + "packages/ai/test/empty.test.ts", + "packages/ai/test/enum-test.ts", + "packages/ai/test/handoff.test.ts", + "packages/ai/test/stream.test.ts", + "plan.md" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-18T19:57:13+02:00", + "author": "Mario Zechner", + "text": "refactor(ai): improve error handling and stop reason types packages/ai/readme.md packages/ai/src/agent/agent-loop.ts packages/ai/src/agent/index.ts packages/ai/src/agent/types.ts packages/ai/src/index.ts packages/ai/src/models.generated.ts packages/ai/src/providers/anthropic.ts packages/ai/src/providers/google.ts packages/ai/src/providers/openai-completions.ts packages/ai/src/providers/openai-responses.ts packages/ai/src/types.ts packages/ai/src/utils/event-stream.ts packages/ai/src/utils/json-parse.ts packages/ai/src/utils/typebox-helpers.ts packages/ai/src/utils/validation.ts packages/ai/test/abort.test.ts packages/ai/test/agent.test.ts packages/ai/test/empty.test.ts packages/ai/test/enum-test.ts packages/ai/test/handoff.test.ts packages/ai/test/stream.test.ts plan.md packages/ai ", + "file_statuses": { + "packages/ai/README.md": "M", + "packages/ai/src/agent/agent-loop.ts": "R088", + "packages/ai/src/agent/index.ts": "M", + "packages/ai/src/agent/types.ts": "M", + "packages/ai/src/index.ts": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/providers/anthropic.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/ai/src/providers/openai-completions.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M", + "packages/ai/src/types.ts": "M", + "packages/ai/src/utils/event-stream.ts": "R095", + "packages/ai/src/utils/json-parse.ts": "R100", + "packages/ai/src/utils/typebox-helpers.ts": "R100", + "packages/ai/src/utils/validation.ts": "R096", + "packages/ai/test/abort.test.ts": "M", + "packages/ai/test/agent.test.ts": "M", + "packages/ai/test/empty.test.ts": "M", + "packages/ai/test/enum-test.ts": "M", + "packages/ai/test/handoff.test.ts": "M", + "packages/ai/test/stream.test.ts": "R098", + "plan.md": "A" + } + }, + { + "id": "9e8607938690e961", + "sha": "9e8607938690", + "subject": "Fix block indexing in Google provider impl", + "files": [ + "packages/ai/src/providers/google.ts" + ], + "paths": [ + "packages/ai/src/providers/google.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-19T00:10:43+02:00", + "author": "Mario Zechner", + "text": "fix block indexing in google provider impl packages/ai/src/providers/google.ts packages/ai ", + "file_statuses": { + "packages/ai/src/providers/google.ts": "M" + } + }, + { + "id": "0f7ed33ba5eae38b", + "sha": "0f7ed33ba5ea", + "subject": "chore: bump version to 0.5.42", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-19T00:14:23+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.42 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "f55985f633452560", + "sha": "f55985f63345", + "subject": "Fix GPT-5 no-reasoning mode. Somewhat. There's no real off-switch ...", + "files": [ + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/openai-responses.ts" + ], + "paths": [ + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/openai-responses.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-09-19T01:45:00+02:00", + "author": "Mario Zechner", + "text": "fix gpt-5 no-reasoning mode. somewhat. there's no real off-switch ... packages/ai/src/models.generated.ts packages/ai/src/providers/openai-responses.ts packages/ai ", + "file_statuses": { + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/providers/openai-responses.ts": "M" + } + }, + { + "id": "c1185c7b95a1b70e", + "sha": "c1185c7b95a1", + "subject": "chore: bump version to 0.5.43", + "files": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "paths": [ + "package-lock.json", + "packages/agent/package-lock.json", + "packages/agent/package.json", + "packages/ai/package.json", + "packages/pods/package-lock.json", + "packages/pods/package.json", + "packages/tui/package-lock.json", + "packages/tui/package.json" + ], + "packages": [ + "packages/agent", + "packages/ai", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-09-19T01:49:46+02:00", + "author": "Mario Zechner", + "text": "chore: bump version to 0.5.43 package-lock.json packages/agent/package-lock.json packages/agent/package.json packages/ai/package.json packages/pods/package-lock.json packages/pods/package.json packages/tui/package-lock.json packages/tui/package.json packages/agent packages/ai packages/pods packages/tui ", + "file_statuses": { + "package-lock.json": "M", + "packages/agent/package-lock.json": "M", + "packages/agent/package.json": "M", + "packages/ai/package.json": "M", + "packages/pods/package-lock.json": "M", + "packages/pods/package.json": "M", + "packages/tui/package-lock.json": "M", + "packages/tui/package.json": "M" + } + }, + { + "id": "b67c10dfb150dc37", + "sha": "b67c10dfb150", + "subject": "feat: add cross-browser extension with AI reading assistant", + "files": [ + ".gitignore", + "package-lock.json", + "package.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/browser-extension/README.md", + "packages/browser-extension/icon-128.png", + "packages/browser-extension/icon-16.png", + "packages/browser-extension/icon-48.png", + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/manifest.firefox.json", + "packages/browser-extension/manifest.json", + "packages/browser-extension/package.json", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/scripts/dev-server.mjs", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/Input.ts", + "packages/browser-extension/src/app.css", + "packages/browser-extension/src/background.ts", + "packages/browser-extension/src/dialogs/DialogBase.ts" + ], + "paths": [ + ".gitignore", + "package-lock.json", + "package.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/browser-extension/README.md", + "packages/browser-extension/icon-128.png", + "packages/browser-extension/icon-16.png", + "packages/browser-extension/icon-48.png", + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/manifest.firefox.json", + "packages/browser-extension/manifest.json", + "packages/browser-extension/package.json", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/scripts/dev-server.mjs", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/Input.ts", + "packages/browser-extension/src/app.css", + "packages/browser-extension/src/background.ts", + "packages/browser-extension/src/dialogs/DialogBase.ts", + "packages/browser-extension/src/dialogs/ModelSelector.ts", + "packages/browser-extension/src/dialogs/PromptDialog.ts", + "packages/browser-extension/src/live-reload.ts", + "packages/browser-extension/src/sidepanel.html", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/utils/format.ts", + "packages/browser-extension/src/utils/i18n.ts", + "packages/browser-extension/tsconfig.build.json", + "packages/browser-extension/tsconfig.json", + "packages/tui/package.json", + "test-partial-json.js", + "tsconfig.base.json", + "tsconfig.json" + ], + "packages": [ + "packages/ai", + "packages/browser-extension", + "packages/tui" + ], + "signals": [], + "date": "2025-10-01T04:33:56+02:00", + "author": "Mario Zechner", + "text": "feat: add cross-browser extension with ai reading assistant .gitignore package-lock.json package.json packages/ai/package.json packages/ai/src/models.generated.ts packages/browser-extension/readme.md packages/browser-extension/icon-128.png packages/browser-extension/icon-16.png packages/browser-extension/icon-48.png packages/browser-extension/manifest.chrome.json packages/browser-extension/manifest.firefox.json packages/browser-extension/manifest.json packages/browser-extension/package.json packages/browser-extension/scripts/build.mjs packages/browser-extension/scripts/dev-server.mjs packages/browser-extension/src/chatpanel.ts packages/browser-extension/src/input.ts packages/browser-extension/src/app.css packages/browser-extension/src/background.ts packages/browser-extension/src/dialogs/dialogbase.ts packages/browser-extension/src/dialogs/modelselector.ts packages/browser-extension/src/dialogs/promptdialog.ts packages/browser-extension/src/live-reload.ts packages/browser-extension/src/sidepanel.html packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/utils/format.ts packages/browser-extension/src/utils/i18n.ts packages/browser-extension/tsconfig.build.json packages/browser-extension/tsconfig.json packages/tui/package.json test-partial-json.js tsconfig.base.json tsconfig.json packages/ai packages/browser-extension packages/tui ", + "file_statuses": { + ".gitignore": "M", + "package-lock.json": "M", + "package.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/browser-extension/README.md": "A", + "packages/browser-extension/icon-128.png": "A", + "packages/browser-extension/icon-16.png": "A", + "packages/browser-extension/icon-48.png": "A", + "packages/browser-extension/manifest.chrome.json": "A", + "packages/browser-extension/manifest.firefox.json": "A", + "packages/browser-extension/manifest.json": "A", + "packages/browser-extension/package.json": "A", + "packages/browser-extension/scripts/build.mjs": "A", + "packages/browser-extension/scripts/dev-server.mjs": "A", + "packages/browser-extension/src/ChatPanel.ts": "A", + "packages/browser-extension/src/Input.ts": "A", + "packages/browser-extension/src/app.css": "A", + "packages/browser-extension/src/background.ts": "A", + "packages/browser-extension/src/dialogs/DialogBase.ts": "A", + "packages/browser-extension/src/dialogs/ModelSelector.ts": "A", + "packages/browser-extension/src/dialogs/PromptDialog.ts": "A", + "packages/browser-extension/src/live-reload.ts": "A", + "packages/browser-extension/src/sidepanel.html": "A", + "packages/browser-extension/src/sidepanel.ts": "A", + "packages/browser-extension/src/utils/format.ts": "A", + "packages/browser-extension/src/utils/i18n.ts": "A", + "packages/browser-extension/tsconfig.build.json": "A", + "packages/browser-extension/tsconfig.json": "A", + "packages/tui/package.json": "M", + "test-partial-json.js": "D", + "tsconfig.base.json": "M", + "tsconfig.json": "M" + } + }, + { + "id": "b3a7b35ec577d78c", + "sha": "b3a7b35ec577", + "subject": "Port PDF/Office support, message editor, overlays, key setter", + "files": [ + "package-lock.json", + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/manifest.firefox.json", + "packages/browser-extension/package.json", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/src/AttachmentOverlay.ts", + "packages/browser-extension/src/AttachmentTile.ts", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/MessageEditor.ts", + "packages/browser-extension/src/ModeToggle.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/sidepanel.html", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/KeyStore.ts", + "packages/browser-extension/src/utils/attachment-utils.ts", + "packages/browser-extension/src/utils/i18n.ts", + "pi-mono.code-workspace" + ], + "paths": [ + "package-lock.json", + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/manifest.firefox.json", + "packages/browser-extension/package.json", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/src/AttachmentOverlay.ts", + "packages/browser-extension/src/AttachmentTile.ts", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/MessageEditor.ts", + "packages/browser-extension/src/ModeToggle.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/sidepanel.html", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/KeyStore.ts", + "packages/browser-extension/src/utils/attachment-utils.ts", + "packages/browser-extension/src/utils/i18n.ts", + "pi-mono.code-workspace" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-01T17:31:13+02:00", + "author": "Mario Zechner", + "text": "port pdf/office support, message editor, overlays, key setter package-lock.json packages/browser-extension/manifest.chrome.json packages/browser-extension/manifest.firefox.json packages/browser-extension/package.json packages/browser-extension/scripts/build.mjs packages/browser-extension/src/attachmentoverlay.ts packages/browser-extension/src/attachmenttile.ts packages/browser-extension/src/chatpanel.ts packages/browser-extension/src/messageeditor.ts packages/browser-extension/src/modetoggle.ts packages/browser-extension/src/dialogs/apikeysdialog.ts packages/browser-extension/src/sidepanel.html packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/state/keystore.ts packages/browser-extension/src/utils/attachment-utils.ts packages/browser-extension/src/utils/i18n.ts pi-mono.code-workspace packages/browser-extension ", + "file_statuses": { + "package-lock.json": "M", + "packages/browser-extension/manifest.chrome.json": "M", + "packages/browser-extension/manifest.firefox.json": "M", + "packages/browser-extension/package.json": "M", + "packages/browser-extension/scripts/build.mjs": "M", + "packages/browser-extension/src/AttachmentOverlay.ts": "A", + "packages/browser-extension/src/AttachmentTile.ts": "A", + "packages/browser-extension/src/ChatPanel.ts": "M", + "packages/browser-extension/src/MessageEditor.ts": "A", + "packages/browser-extension/src/ModeToggle.ts": "A", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts": "A", + "packages/browser-extension/src/sidepanel.html": "M", + "packages/browser-extension/src/sidepanel.ts": "M", + "packages/browser-extension/src/state/KeyStore.ts": "A", + "packages/browser-extension/src/utils/attachment-utils.ts": "A", + "packages/browser-extension/src/utils/i18n.ts": "M", + "pi-mono.code-workspace": "A" + } + }, + { + "id": "d0b2d47b4a4c49e3", + "sha": "d0b2d47b4a4c", + "subject": "More browser extension work. Old interface fully ported. Direct transport. Small UX fixes.", + "files": [ + "packages/browser-extension/PLAN.md", + "packages/browser-extension/README.md", + "packages/browser-extension/src/AgentInterface.ts", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/ConsoleBlock.ts", + "packages/browser-extension/src/MessageList.ts", + "packages/browser-extension/src/Messages.ts", + "packages/browser-extension/src/StreamingMessageContainer.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/dialogs/PromptDialog.ts", + "packages/browser-extension/src/sidepanel.html", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/agent-session.ts", + "packages/browser-extension/src/state/transports/DirectTransport.ts", + "packages/browser-extension/src/state/transports/ProxyTransport.ts", + "packages/browser-extension/src/state/transports/index.ts", + "packages/browser-extension/src/state/transports/proxy-types.ts", + "packages/browser-extension/src/state/transports/types.ts", + "packages/browser-extension/src/state/types.ts", + "packages/browser-extension/src/tools/index.ts" + ], + "paths": [ + "packages/browser-extension/PLAN.md", + "packages/browser-extension/README.md", + "packages/browser-extension/src/AgentInterface.ts", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/ConsoleBlock.ts", + "packages/browser-extension/src/MessageList.ts", + "packages/browser-extension/src/Messages.ts", + "packages/browser-extension/src/StreamingMessageContainer.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/dialogs/PromptDialog.ts", + "packages/browser-extension/src/sidepanel.html", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/agent-session.ts", + "packages/browser-extension/src/state/transports/DirectTransport.ts", + "packages/browser-extension/src/state/transports/ProxyTransport.ts", + "packages/browser-extension/src/state/transports/index.ts", + "packages/browser-extension/src/state/transports/proxy-types.ts", + "packages/browser-extension/src/state/transports/types.ts", + "packages/browser-extension/src/state/types.ts", + "packages/browser-extension/src/tools/index.ts", + "packages/browser-extension/src/tools/renderer-registry.ts", + "packages/browser-extension/src/tools/renderers/BashRenderer.ts", + "packages/browser-extension/src/tools/renderers/CalculateRenderer.ts", + "packages/browser-extension/src/tools/renderers/DefaultRenderer.ts", + "packages/browser-extension/src/tools/renderers/GetCurrentTimeRenderer.ts", + "packages/browser-extension/src/tools/types.ts", + "packages/browser-extension/src/utils/auth-token.ts", + "packages/browser-extension/src/utils/i18n.ts" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-01T18:27:40+02:00", + "author": "Mario Zechner", + "text": "more browser extension work. old interface fully ported. direct transport. small ux fixes. packages/browser-extension/plan.md packages/browser-extension/readme.md packages/browser-extension/src/agentinterface.ts packages/browser-extension/src/chatpanel.ts packages/browser-extension/src/consoleblock.ts packages/browser-extension/src/messagelist.ts packages/browser-extension/src/messages.ts packages/browser-extension/src/streamingmessagecontainer.ts packages/browser-extension/src/dialogs/apikeysdialog.ts packages/browser-extension/src/dialogs/promptdialog.ts packages/browser-extension/src/sidepanel.html packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/state/agent-session.ts packages/browser-extension/src/state/transports/directtransport.ts packages/browser-extension/src/state/transports/proxytransport.ts packages/browser-extension/src/state/transports/index.ts packages/browser-extension/src/state/transports/proxy-types.ts packages/browser-extension/src/state/transports/types.ts packages/browser-extension/src/state/types.ts packages/browser-extension/src/tools/index.ts packages/browser-extension/src/tools/renderer-registry.ts packages/browser-extension/src/tools/renderers/bashrenderer.ts packages/browser-extension/src/tools/renderers/calculaterenderer.ts packages/browser-extension/src/tools/renderers/defaultrenderer.ts packages/browser-extension/src/tools/renderers/getcurrenttimerenderer.ts packages/browser-extension/src/tools/types.ts packages/browser-extension/src/utils/auth-token.ts packages/browser-extension/src/utils/i18n.ts packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/PLAN.md": "A", + "packages/browser-extension/README.md": "M", + "packages/browser-extension/src/AgentInterface.ts": "A", + "packages/browser-extension/src/ChatPanel.ts": "M", + "packages/browser-extension/src/ConsoleBlock.ts": "A", + "packages/browser-extension/src/MessageList.ts": "A", + "packages/browser-extension/src/Messages.ts": "A", + "packages/browser-extension/src/StreamingMessageContainer.ts": "A", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts": "M", + "packages/browser-extension/src/dialogs/PromptDialog.ts": "M", + "packages/browser-extension/src/sidepanel.html": "M", + "packages/browser-extension/src/sidepanel.ts": "M", + "packages/browser-extension/src/state/agent-session.ts": "A", + "packages/browser-extension/src/state/transports/DirectTransport.ts": "A", + "packages/browser-extension/src/state/transports/ProxyTransport.ts": "A", + "packages/browser-extension/src/state/transports/index.ts": "A", + "packages/browser-extension/src/state/transports/proxy-types.ts": "A", + "packages/browser-extension/src/state/transports/types.ts": "A", + "packages/browser-extension/src/state/types.ts": "A", + "packages/browser-extension/src/tools/index.ts": "A", + "packages/browser-extension/src/tools/renderer-registry.ts": "A", + "packages/browser-extension/src/tools/renderers/BashRenderer.ts": "A", + "packages/browser-extension/src/tools/renderers/CalculateRenderer.ts": "A", + "packages/browser-extension/src/tools/renderers/DefaultRenderer.ts": "A", + "packages/browser-extension/src/tools/renderers/GetCurrentTimeRenderer.ts": "A", + "packages/browser-extension/src/tools/types.ts": "A", + "packages/browser-extension/src/utils/auth-token.ts": "A", + "packages/browser-extension/src/utils/i18n.ts": "M" + } + }, + { + "id": "fc1ef04b6de99e9e", + "sha": "fc1ef04b6de9", + "subject": "UX fixes", + "files": [ + "packages/browser-extension/src/MessageEditor.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/sidepanel.html" + ], + "paths": [ + "packages/browser-extension/src/MessageEditor.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/sidepanel.html" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-01T18:35:02+02:00", + "author": "Mario Zechner", + "text": "ux fixes packages/browser-extension/src/messageeditor.ts packages/browser-extension/src/dialogs/apikeysdialog.ts packages/browser-extension/src/sidepanel.html packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/src/MessageEditor.ts": "M", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts": "M", + "packages/browser-extension/src/sidepanel.html": "M" + } + }, + { + "id": "0e932a97df6ebba6", + "sha": "0e932a97df6e", + "subject": "More browser extension work, disable ajv validation in browser extensions, it uses eval/new Function, which is not allowed in manifest v3 extensions", + "files": [ + "package-lock.json", + "packages/ai/src/utils/validation.ts", + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/manifest.firefox.json", + "packages/browser-extension/package.json", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/MessageEditor.ts", + "packages/browser-extension/src/StreamingMessageContainer.ts", + "packages/browser-extension/src/sandbox.html", + "packages/browser-extension/src/tools/browser-javascript.ts", + "packages/browser-extension/src/tools/index.ts", + "packages/browser-extension/src/tools/javascript-repl.ts", + "packages/browser-extension/src/utils/i18n.ts" + ], + "paths": [ + "package-lock.json", + "packages/ai/src/utils/validation.ts", + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/manifest.firefox.json", + "packages/browser-extension/package.json", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/MessageEditor.ts", + "packages/browser-extension/src/StreamingMessageContainer.ts", + "packages/browser-extension/src/sandbox.html", + "packages/browser-extension/src/tools/browser-javascript.ts", + "packages/browser-extension/src/tools/index.ts", + "packages/browser-extension/src/tools/javascript-repl.ts", + "packages/browser-extension/src/utils/i18n.ts" + ], + "packages": [ + "packages/ai", + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-01T20:30:49+02:00", + "author": "Mario Zechner", + "text": "more browser extension work, disable ajv validation in browser extensions, it uses eval/new function, which is not allowed in manifest v3 extensions package-lock.json packages/ai/src/utils/validation.ts packages/browser-extension/manifest.chrome.json packages/browser-extension/manifest.firefox.json packages/browser-extension/package.json packages/browser-extension/scripts/build.mjs packages/browser-extension/src/chatpanel.ts packages/browser-extension/src/messageeditor.ts packages/browser-extension/src/streamingmessagecontainer.ts packages/browser-extension/src/sandbox.html packages/browser-extension/src/tools/browser-javascript.ts packages/browser-extension/src/tools/index.ts packages/browser-extension/src/tools/javascript-repl.ts packages/browser-extension/src/utils/i18n.ts packages/ai packages/browser-extension ", + "file_statuses": { + "package-lock.json": "M", + "packages/ai/src/utils/validation.ts": "M", + "packages/browser-extension/manifest.chrome.json": "M", + "packages/browser-extension/manifest.firefox.json": "M", + "packages/browser-extension/package.json": "M", + "packages/browser-extension/scripts/build.mjs": "M", + "packages/browser-extension/src/ChatPanel.ts": "M", + "packages/browser-extension/src/MessageEditor.ts": "M", + "packages/browser-extension/src/StreamingMessageContainer.ts": "M", + "packages/browser-extension/src/sandbox.html": "A", + "packages/browser-extension/src/tools/browser-javascript.ts": "A", + "packages/browser-extension/src/tools/index.ts": "M", + "packages/browser-extension/src/tools/javascript-repl.ts": "A", + "packages/browser-extension/src/utils/i18n.ts": "M" + } + }, + { + "id": "51f5448a5c20ef2b", + "sha": "51f5448a5c20", + "subject": "Remove tool calls for which there are no results in subsequent user messages.", + "files": [ + "CLAUDE.md", + "README.md", + "packages/ai/src/providers/transorm-messages.ts", + "packages/ai/test/tool-call-without-result.test.ts" + ], + "paths": [ + "CLAUDE.md", + "README.md", + "packages/ai/src/providers/transorm-messages.ts", + "packages/ai/test/tool-call-without-result.test.ts" + ], + "packages": [ + "packages/ai" + ], + "signals": [], + "date": "2025-10-01T22:18:30+02:00", + "author": "Mario Zechner", + "text": "remove tool calls for which there are no results in subsequent user messages. claude.md readme.md packages/ai/src/providers/transorm-messages.ts packages/ai/test/tool-call-without-result.test.ts packages/ai ", + "file_statuses": { + "CLAUDE.md": "M", + "README.md": "M", + "packages/ai/src/providers/transorm-messages.ts": "M", + "packages/ai/test/tool-call-without-result.test.ts": "A" + } + }, + { + "id": "4b0703cd5bc48580", + "sha": "4b0703cd5bc4", + "subject": "Artifacts tool, V1, htmlartifact broken due to CSP", + "files": [ + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/tools/artifacts/ArtifactElement.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts", + "packages/browser-extension/src/tools/artifacts/MarkdownArtifact.ts", + "packages/browser-extension/src/tools/artifacts/SvgArtifact.ts", + "packages/browser-extension/src/tools/artifacts/TextArtifact.ts", + "packages/browser-extension/src/tools/artifacts/artifacts.ts", + "packages/browser-extension/src/tools/artifacts/index.ts", + "packages/browser-extension/src/utils/i18n.ts" + ], + "paths": [ + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/tools/artifacts/ArtifactElement.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts", + "packages/browser-extension/src/tools/artifacts/MarkdownArtifact.ts", + "packages/browser-extension/src/tools/artifacts/SvgArtifact.ts", + "packages/browser-extension/src/tools/artifacts/TextArtifact.ts", + "packages/browser-extension/src/tools/artifacts/artifacts.ts", + "packages/browser-extension/src/tools/artifacts/index.ts", + "packages/browser-extension/src/utils/i18n.ts" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-01T23:32:14+02:00", + "author": "Mario Zechner", + "text": "artifacts tool, v1, htmlartifact broken due to csp packages/browser-extension/src/chatpanel.ts packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/tools/artifacts/artifactelement.ts packages/browser-extension/src/tools/artifacts/htmlartifact.ts packages/browser-extension/src/tools/artifacts/markdownartifact.ts packages/browser-extension/src/tools/artifacts/svgartifact.ts packages/browser-extension/src/tools/artifacts/textartifact.ts packages/browser-extension/src/tools/artifacts/artifacts.ts packages/browser-extension/src/tools/artifacts/index.ts packages/browser-extension/src/utils/i18n.ts packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/src/ChatPanel.ts": "M", + "packages/browser-extension/src/sidepanel.ts": "M", + "packages/browser-extension/src/tools/artifacts/ArtifactElement.ts": "A", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts": "A", + "packages/browser-extension/src/tools/artifacts/MarkdownArtifact.ts": "A", + "packages/browser-extension/src/tools/artifacts/SvgArtifact.ts": "A", + "packages/browser-extension/src/tools/artifacts/TextArtifact.ts": "A", + "packages/browser-extension/src/tools/artifacts/artifacts.ts": "A", + "packages/browser-extension/src/tools/artifacts/index.ts": "A", + "packages/browser-extension/src/utils/i18n.ts": "M" + } + }, + { + "id": "faefc633092c1214", + "sha": "faefc633092c", + "subject": "iframe and Firefox fixes", + "files": [ + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/manifest.firefox.json", + "packages/browser-extension/manifest.json", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/src/background.ts", + "packages/browser-extension/src/components/SandboxIframe.ts", + "packages/browser-extension/src/sandbox.html", + "packages/browser-extension/src/sandbox.js", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts", + "packages/browser-extension/src/tools/browser-javascript.ts" + ], + "paths": [ + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/manifest.firefox.json", + "packages/browser-extension/manifest.json", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/src/background.ts", + "packages/browser-extension/src/components/SandboxIframe.ts", + "packages/browser-extension/src/sandbox.html", + "packages/browser-extension/src/sandbox.js", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts", + "packages/browser-extension/src/tools/browser-javascript.ts" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-02T02:15:33+02:00", + "author": "Mario Zechner", + "text": "iframe and firefox fixes packages/browser-extension/manifest.chrome.json packages/browser-extension/manifest.firefox.json packages/browser-extension/manifest.json packages/browser-extension/scripts/build.mjs packages/browser-extension/src/background.ts packages/browser-extension/src/components/sandboxiframe.ts packages/browser-extension/src/sandbox.html packages/browser-extension/src/sandbox.js packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/tools/artifacts/htmlartifact.ts packages/browser-extension/src/tools/browser-javascript.ts packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/manifest.chrome.json": "M", + "packages/browser-extension/manifest.firefox.json": "M", + "packages/browser-extension/manifest.json": "D", + "packages/browser-extension/scripts/build.mjs": "M", + "packages/browser-extension/src/background.ts": "M", + "packages/browser-extension/src/components/SandboxIframe.ts": "A", + "packages/browser-extension/src/sandbox.html": "M", + "packages/browser-extension/src/sandbox.js": "A", + "packages/browser-extension/src/sidepanel.ts": "M", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts": "M", + "packages/browser-extension/src/tools/browser-javascript.ts": "M" + } + }, + { + "id": "af426d2682d59e23", + "sha": "af426d2682d5", + "subject": "Fix sandboxed iframe.", + "files": [ + "packages/browser-extension/src/components/SandboxIframe.ts", + "packages/browser-extension/src/components/SandboxedIframe.ts", + "packages/browser-extension/src/sandbox.js", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts" + ], + "paths": [ + "packages/browser-extension/src/components/SandboxIframe.ts", + "packages/browser-extension/src/components/SandboxedIframe.ts", + "packages/browser-extension/src/sandbox.js", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-02T02:41:15+02:00", + "author": "Mario Zechner", + "text": "fix sandboxed iframe. packages/browser-extension/src/components/sandboxiframe.ts packages/browser-extension/src/components/sandboxediframe.ts packages/browser-extension/src/sandbox.js packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/tools/artifacts/htmlartifact.ts packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/src/components/SandboxIframe.ts": "D", + "packages/browser-extension/src/components/SandboxedIframe.ts": "A", + "packages/browser-extension/src/sandbox.js": "M", + "packages/browser-extension/src/sidepanel.ts": "M", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts": "M" + } + }, + { + "id": "6a355d7a7eda30fb", + "sha": "6a355d7a7eda", + "subject": "Fix KeyStore for Firefox.", + "files": [ + "packages/browser-extension/src/state/KeyStore.ts" + ], + "paths": [ + "packages/browser-extension/src/state/KeyStore.ts" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-02T02:45:38+02:00", + "author": "Mario Zechner", + "text": "fix keystore for firefox. packages/browser-extension/src/state/keystore.ts packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/src/state/KeyStore.ts": "M" + } + }, + { + "id": "3331701e7e67b586", + "sha": "3331701e7e67", + "subject": "Clean-up", + "files": [ + "packages/browser-extension/src/AgentInterface.ts", + "packages/browser-extension/src/MessageEditor.ts", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/agent-session.ts", + "packages/browser-extension/src/tools/browser-javascript.ts" + ], + "paths": [ + "packages/browser-extension/src/AgentInterface.ts", + "packages/browser-extension/src/MessageEditor.ts", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/agent-session.ts", + "packages/browser-extension/src/tools/browser-javascript.ts" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-02T02:48:25+02:00", + "author": "Mario Zechner", + "text": "clean-up packages/browser-extension/src/agentinterface.ts packages/browser-extension/src/messageeditor.ts packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/state/agent-session.ts packages/browser-extension/src/tools/browser-javascript.ts packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/src/AgentInterface.ts": "M", + "packages/browser-extension/src/MessageEditor.ts": "M", + "packages/browser-extension/src/sidepanel.ts": "M", + "packages/browser-extension/src/state/agent-session.ts": "M", + "packages/browser-extension/src/tools/browser-javascript.ts": "M" + } + }, + { + "id": "79dd23b6dac5a88b", + "sha": "79dd23b6dac5", + "subject": "Restructuring and refactoring", + "files": [ + "packages/browser-extension/PLAN.md", + "packages/browser-extension/README.md", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/components/AgentInterface.ts", + "packages/browser-extension/src/components/AttachmentTile.ts", + "packages/browser-extension/src/components/ConsoleBlock.ts", + "packages/browser-extension/src/components/Input.ts", + "packages/browser-extension/src/components/MessageEditor.ts", + "packages/browser-extension/src/components/MessageList.ts", + "packages/browser-extension/src/components/Messages.ts", + "packages/browser-extension/src/components/ModeToggle.ts", + "packages/browser-extension/src/components/SandboxedIframe.ts", + "packages/browser-extension/src/components/StreamingMessageContainer.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/dialogs/AttachmentOverlay.ts", + "packages/browser-extension/src/dialogs/ModelSelector.ts", + "packages/browser-extension/src/sandbox.js", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/agent-session.ts" + ], + "paths": [ + "packages/browser-extension/PLAN.md", + "packages/browser-extension/README.md", + "packages/browser-extension/scripts/build.mjs", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/components/AgentInterface.ts", + "packages/browser-extension/src/components/AttachmentTile.ts", + "packages/browser-extension/src/components/ConsoleBlock.ts", + "packages/browser-extension/src/components/Input.ts", + "packages/browser-extension/src/components/MessageEditor.ts", + "packages/browser-extension/src/components/MessageList.ts", + "packages/browser-extension/src/components/Messages.ts", + "packages/browser-extension/src/components/ModeToggle.ts", + "packages/browser-extension/src/components/SandboxedIframe.ts", + "packages/browser-extension/src/components/StreamingMessageContainer.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/dialogs/AttachmentOverlay.ts", + "packages/browser-extension/src/dialogs/ModelSelector.ts", + "packages/browser-extension/src/sandbox.js", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/agent-session.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts", + "packages/browser-extension/src/tools/artifacts/artifacts.ts", + "packages/browser-extension/src/tools/browser-javascript.ts", + "packages/browser-extension/src/tools/javascript-repl.ts", + "packages/browser-extension/src/utils/live-reload.ts", + "packages/browser-extension/static/icon-128.png", + "packages/browser-extension/static/icon-16.png", + "packages/browser-extension/static/icon-48.png", + "packages/browser-extension/static/sandbox.html", + "packages/browser-extension/static/sandbox.js", + "packages/browser-extension/static/sidepanel.html" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-03T02:15:37+02:00", + "author": "Mario Zechner", + "text": "restructuring and refactoring packages/browser-extension/plan.md packages/browser-extension/readme.md packages/browser-extension/scripts/build.mjs packages/browser-extension/src/chatpanel.ts packages/browser-extension/src/components/agentinterface.ts packages/browser-extension/src/components/attachmenttile.ts packages/browser-extension/src/components/consoleblock.ts packages/browser-extension/src/components/input.ts packages/browser-extension/src/components/messageeditor.ts packages/browser-extension/src/components/messagelist.ts packages/browser-extension/src/components/messages.ts packages/browser-extension/src/components/modetoggle.ts packages/browser-extension/src/components/sandboxediframe.ts packages/browser-extension/src/components/streamingmessagecontainer.ts packages/browser-extension/src/dialogs/apikeysdialog.ts packages/browser-extension/src/dialogs/attachmentoverlay.ts packages/browser-extension/src/dialogs/modelselector.ts packages/browser-extension/src/sandbox.js packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/state/agent-session.ts packages/browser-extension/src/tools/artifacts/htmlartifact.ts packages/browser-extension/src/tools/artifacts/artifacts.ts packages/browser-extension/src/tools/browser-javascript.ts packages/browser-extension/src/tools/javascript-repl.ts packages/browser-extension/src/utils/live-reload.ts packages/browser-extension/static/icon-128.png packages/browser-extension/static/icon-16.png packages/browser-extension/static/icon-48.png packages/browser-extension/static/sandbox.html packages/browser-extension/static/sandbox.js packages/browser-extension/static/sidepanel.html packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/PLAN.md": "D", + "packages/browser-extension/README.md": "M", + "packages/browser-extension/scripts/build.mjs": "M", + "packages/browser-extension/src/ChatPanel.ts": "M", + "packages/browser-extension/src/components/AgentInterface.ts": "R096", + "packages/browser-extension/src/components/AttachmentTile.ts": "R095", + "packages/browser-extension/src/components/ConsoleBlock.ts": "R097", + "packages/browser-extension/src/components/Input.ts": "R098", + "packages/browser-extension/src/components/MessageEditor.ts": "R098", + "packages/browser-extension/src/components/MessageList.ts": "R100", + "packages/browser-extension/src/components/Messages.ts": "R097", + "packages/browser-extension/src/components/ModeToggle.ts": "R100", + "packages/browser-extension/src/components/SandboxedIframe.ts": "M", + "packages/browser-extension/src/components/StreamingMessageContainer.ts": "R100", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts": "M", + "packages/browser-extension/src/dialogs/AttachmentOverlay.ts": "R099", + "packages/browser-extension/src/dialogs/ModelSelector.ts": "M", + "packages/browser-extension/src/sandbox.js": "D", + "packages/browser-extension/src/sidepanel.ts": "M", + "packages/browser-extension/src/state/agent-session.ts": "M", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts": "M", + "packages/browser-extension/src/tools/artifacts/artifacts.ts": "M", + "packages/browser-extension/src/tools/browser-javascript.ts": "M", + "packages/browser-extension/src/tools/javascript-repl.ts": "M", + "packages/browser-extension/src/utils/live-reload.ts": "R100", + "packages/browser-extension/static/icon-128.png": "R100", + "packages/browser-extension/static/icon-16.png": "R100", + "packages/browser-extension/static/icon-48.png": "R100", + "packages/browser-extension/static/sandbox.html": "R100", + "packages/browser-extension/static/sandbox.js": "A", + "packages/browser-extension/static/sidepanel.html": "R100" + } + }, + { + "id": "6d046236bfab5c13", + "sha": "6d046236bfab", + "subject": "Fix HtmlArtifacts no loading/updating", + "files": [ + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/app.css", + "packages/browser-extension/src/components/Messages.ts", + "packages/browser-extension/src/components/SandboxedIframe.ts", + "packages/browser-extension/src/dialogs/DialogBase.ts", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/agent-session.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts", + "packages/browser-extension/src/tools/artifacts/artifacts.ts", + "packages/browser-extension/src/utils/test-sessions.ts" + ], + "paths": [ + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/app.css", + "packages/browser-extension/src/components/Messages.ts", + "packages/browser-extension/src/components/SandboxedIframe.ts", + "packages/browser-extension/src/dialogs/DialogBase.ts", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/agent-session.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts", + "packages/browser-extension/src/tools/artifacts/artifacts.ts", + "packages/browser-extension/src/utils/test-sessions.ts" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-03T11:35:12+02:00", + "author": "Mario Zechner", + "text": "fix htmlartifacts no loading/updating packages/browser-extension/src/chatpanel.ts packages/browser-extension/src/app.css packages/browser-extension/src/components/messages.ts packages/browser-extension/src/components/sandboxediframe.ts packages/browser-extension/src/dialogs/dialogbase.ts packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/state/agent-session.ts packages/browser-extension/src/tools/artifacts/htmlartifact.ts packages/browser-extension/src/tools/artifacts/artifacts.ts packages/browser-extension/src/utils/test-sessions.ts packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/src/ChatPanel.ts": "M", + "packages/browser-extension/src/app.css": "M", + "packages/browser-extension/src/components/Messages.ts": "M", + "packages/browser-extension/src/components/SandboxedIframe.ts": "M", + "packages/browser-extension/src/dialogs/DialogBase.ts": "M", + "packages/browser-extension/src/sidepanel.ts": "M", + "packages/browser-extension/src/state/agent-session.ts": "M", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts": "M", + "packages/browser-extension/src/tools/artifacts/artifacts.ts": "M", + "packages/browser-extension/src/utils/test-sessions.ts": "A" + } + }, + { + "id": "99983af597f05103", + "sha": "99983af597f0", + "subject": "Fix lints.", + "files": [ + "biome.json", + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/google.ts", + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/package.json", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/app.css", + "packages/browser-extension/src/components/ModeToggle.ts", + "packages/browser-extension/src/components/SandboxedIframe.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/dialogs/AttachmentOverlay.ts", + "packages/browser-extension/src/dialogs/DialogBase.ts", + "packages/browser-extension/src/dialogs/ModelSelector.ts", + "packages/browser-extension/src/dialogs/PromptDialog.ts", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/KeyStore.ts", + "packages/browser-extension/src/state/agent-session.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts" + ], + "paths": [ + "biome.json", + "package-lock.json", + "packages/ai/package.json", + "packages/ai/src/models.generated.ts", + "packages/ai/src/providers/google.ts", + "packages/browser-extension/manifest.chrome.json", + "packages/browser-extension/package.json", + "packages/browser-extension/src/ChatPanel.ts", + "packages/browser-extension/src/app.css", + "packages/browser-extension/src/components/ModeToggle.ts", + "packages/browser-extension/src/components/SandboxedIframe.ts", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts", + "packages/browser-extension/src/dialogs/AttachmentOverlay.ts", + "packages/browser-extension/src/dialogs/DialogBase.ts", + "packages/browser-extension/src/dialogs/ModelSelector.ts", + "packages/browser-extension/src/dialogs/PromptDialog.ts", + "packages/browser-extension/src/sidepanel.ts", + "packages/browser-extension/src/state/KeyStore.ts", + "packages/browser-extension/src/state/agent-session.ts", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts", + "packages/browser-extension/src/tools/browser-javascript.ts", + "packages/browser-extension/src/utils/auth-token.ts", + "packages/browser-extension/src/utils/test-sessions.ts", + "packages/pods/src/cli.ts", + "packages/pods/src/commands/models.ts", + "packages/pods/src/commands/pods.ts", + "packages/tui/test/differential-render.test.ts" + ], + "packages": [ + "packages/ai", + "packages/browser-extension", + "packages/pods", + "packages/tui" + ], + "signals": [], + "date": "2025-10-03T23:21:59+02:00", + "author": "Mario Zechner", + "text": "fix lints. biome.json package-lock.json packages/ai/package.json packages/ai/src/models.generated.ts packages/ai/src/providers/google.ts packages/browser-extension/manifest.chrome.json packages/browser-extension/package.json packages/browser-extension/src/chatpanel.ts packages/browser-extension/src/app.css packages/browser-extension/src/components/modetoggle.ts packages/browser-extension/src/components/sandboxediframe.ts packages/browser-extension/src/dialogs/apikeysdialog.ts packages/browser-extension/src/dialogs/attachmentoverlay.ts packages/browser-extension/src/dialogs/dialogbase.ts packages/browser-extension/src/dialogs/modelselector.ts packages/browser-extension/src/dialogs/promptdialog.ts packages/browser-extension/src/sidepanel.ts packages/browser-extension/src/state/keystore.ts packages/browser-extension/src/state/agent-session.ts packages/browser-extension/src/tools/artifacts/htmlartifact.ts packages/browser-extension/src/tools/browser-javascript.ts packages/browser-extension/src/utils/auth-token.ts packages/browser-extension/src/utils/test-sessions.ts packages/pods/src/cli.ts packages/pods/src/commands/models.ts packages/pods/src/commands/pods.ts packages/tui/test/differential-render.test.ts packages/ai packages/browser-extension packages/pods packages/tui ", + "file_statuses": { + "biome.json": "M", + "package-lock.json": "M", + "packages/ai/package.json": "M", + "packages/ai/src/models.generated.ts": "M", + "packages/ai/src/providers/google.ts": "M", + "packages/browser-extension/manifest.chrome.json": "M", + "packages/browser-extension/package.json": "M", + "packages/browser-extension/src/ChatPanel.ts": "M", + "packages/browser-extension/src/app.css": "M", + "packages/browser-extension/src/components/ModeToggle.ts": "D", + "packages/browser-extension/src/components/SandboxedIframe.ts": "M", + "packages/browser-extension/src/dialogs/ApiKeysDialog.ts": "M", + "packages/browser-extension/src/dialogs/AttachmentOverlay.ts": "M", + "packages/browser-extension/src/dialogs/DialogBase.ts": "D", + "packages/browser-extension/src/dialogs/ModelSelector.ts": "M", + "packages/browser-extension/src/dialogs/PromptDialog.ts": "D", + "packages/browser-extension/src/sidepanel.ts": "M", + "packages/browser-extension/src/state/KeyStore.ts": "M", + "packages/browser-extension/src/state/agent-session.ts": "M", + "packages/browser-extension/src/tools/artifacts/HtmlArtifact.ts": "M", + "packages/browser-extension/src/tools/browser-javascript.ts": "M", + "packages/browser-extension/src/utils/auth-token.ts": "M", + "packages/browser-extension/src/utils/test-sessions.ts": "M", + "packages/pods/src/cli.ts": "M", + "packages/pods/src/commands/models.ts": "M", + "packages/pods/src/commands/pods.ts": "M", + "packages/tui/test/differential-render.test.ts": "M" + } + }, + { + "id": "c2427d375cfb61bd", + "sha": "c2427d375cfb", + "subject": "Fix browser javascript tool wrt navigation. Needs to be its own tool call as execution context gets smoked.", + "files": [ + "packages/browser-extension/src/tools/browser-javascript.ts" + ], + "paths": [ + "packages/browser-extension/src/tools/browser-javascript.ts" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-03T23:48:15+02:00", + "author": "Mario Zechner", + "text": "fix browser javascript tool wrt navigation. needs to be its own tool call as execution context gets smoked. packages/browser-extension/src/tools/browser-javascript.ts packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/src/tools/browser-javascript.ts": "M" + } + }, + { + "id": "3481aeec26ce8fe1", + "sha": "3481aeec26ce", + "subject": "Make browser_javascript tool abortable", + "files": [ + "packages/browser-extension/src/tools/browser-javascript.ts" + ], + "paths": [ + "packages/browser-extension/src/tools/browser-javascript.ts" + ], + "packages": [ + "packages/browser-extension" + ], + "signals": [], + "date": "2025-10-04T00:45:16+02:00", + "author": "Mario Zechner", + "text": "make browser_javascript tool abortable packages/browser-extension/src/tools/browser-javascript.ts packages/browser-extension ", + "file_statuses": { + "packages/browser-extension/src/tools/browser-javascript.ts": "M" + } + }, + { + "id": "5520963841cdfd01", + "sha": "5520963841cd", + "subject": "Better detection of eval/