# CHANGELOG

本文件记录已发布版本的用户可见变更。更细的过程见 git log。破坏性变更标 **BREAKING**。

## 0.3.0 — 2026-11-03

- `/todos` 有参数补全。输入 `clear`、`export` 或 `import` 时列出候选，Tab 收下当前项。关掉的子命令不列。
- `/todos import ` 之后列会话目录下的文件与目录。目录带 `/`。带空格的路径自动加引号。
- 命令列表里 `/todos` 的说明写出子命令：`clear | export | import <file>`。pi 不给扩展命令转发参数提示语，这句说明是唯一提示。
- 发布：`CHANGELOG.md` 进 `files`。pi 在扩展更新后，于 "Extension Updates" 下显示比上次所见版本更新的条目。

## 0.2.0 — 2026-11-01

- **BREAKING**：源码并入 [setwhite/pi-extensions](https://github.com/setwhite/pi-extensions)，只从 npm 安装。pi 的 git 安装只认仓库根，指不到子目录。`git:` 安装留在旧仓，不再更新。
- 开发：CI、发布、提交前闸、lockfile 与行尾策略收成仓库一份。提交前闸改跑全部三个包。

## 0.1.6 — 2026-11-01

- **行为变更**：widget 行预算溢出时，未完成项先占行。剩下的行按表序补已完成项。仍放不下时，收成 `+N more`。原先空出的行不复用：1 条未完成加 8 条已完成，原先只用 3 行（1 行任务加 `+8 more`），现在用满 `maxLines`。

## 0.1.5 — 2026-10-25

- 无运行时变更：README 澄清 `guidance` 的空值语义。缺键才回退默认值。显式空串与空数组是覆盖。补充三条对应测试。

## 0.1.4 — 2026-10-25

- 无运行时变更：文档重组。spec 瘦身为契约，决策拆成单文件，新增 ARCHITECTURE 与 GLOSSARY。README 中英两版按 ASD-STE10 重写，代码注释精简。

## 0.1.3 — 2026-10-22

- 无运行时变更（运行时与 0.1.2 相同）。仓库加了发布物与依赖方向的执行器与提交前闸。CI 与发布流水线加固：action 按 commit SHA 固定，lint 挡 warning，publish 前对真实 tarball 断言，每日依赖审计。

## 0.1.2 — 2026-10-21

- 无功能变更。重新发布，以触发 npm 搜索索引重建。0.1.1 未被 `/-/v1/search` 索引，pi.dev 列表未收录。

## 0.1.1 — 2026-10-18

- **行为变更**：自动清空从「模型这波活干完（`agent_settled`）」挪到「用户发下一条消息（`input`）」。`lifecycle.onFinish` 的默认档由 `model` 改成 `clear`。已完成的表会留到用户发下一条消息。想立刻收起，按 `alt+t`。要恢复旧行为，写 `"onFinish": "model"`。
- `clear` 档下不再注册「干完发 `tasks: []` 能清空」的 guideline。模型侧文案由 141 字符缩到 80。
- 文档：npm 安装去掉「暂不可用」标记。

## 0.1.0 — 2026-10-18

- 首个发布。
- 工具 `todo(tasks)`：一次调用提交完整有序表，整表替换。`tasks: []` 表示清空。没有 id、key、action、baseVersion。
- 输入框上方常驻任务表：默认最多 9 行，溢出先丢已完成的项。`alt+t` 折叠，任务表不动。
- compaction、切分支、`--continue` 之后自动回放。状态只写 `pi-todo-state` 快照这一条账。
- `/todos` 全列清单，`/todos clear` 清空，`/todos export` 导出 markdown，`/todos import <file>` 读回。
- 配置 `<agent dir>/pi-todo/config.json`：扩展只读。JSON 坏、未知键、类型或枚举错抛错，并带字段路径。数值越界 clamp。
- `lifecycle.onFinish` 三档：`model`（默认）/ `keep` / `clear`。
- 零运行时依赖。
