Skip to content

Latest commit

 

History

History
550 lines (303 loc) · 36.7 KB

File metadata and controls

550 lines (303 loc) · 36.7 KB

Changelog

5.1.9 (2026-08-19)

Documentation

  • condense scope sections and move them below the usage material (#775) (99f5829)
  • pi-autoformat: document scope and non-goals (#775) (25aa5cc)

5.1.8 (2026-07-29)

Documentation

  • pi-autoformat: document the unit/acceptance suite split (#678) (3f6ca72)

5.1.7 (2026-07-19)

Documentation

  • pi-autoformat: document RPC harness timeout override (#618) (af2d002)

5.1.6 (2026-06-22)

Documentation

  • pi-autoformat: document treefmt for subdirectory-scoped formatters (#459) (5c35757)

5.1.5 (2026-06-12)

Miscellaneous Chores

5.1.4 (2026-06-03)

Documentation

  • standardize and correct package READMEs (4c270ad)

5.1.3 (2026-05-26)

Bug Fixes

  • resolve pre-existing lint errors in pi-autoformat and pi-permission-system (68fd516)

5.1.2 (2026-05-25)

Documentation

5.1.1 (2026-05-25)

Bug Fixes

  • use pi-autoformat tag in status key and status line (#202) (dd7ce59)
  • use pi-autoformat tag in steering message prefixes (#202) (fa1ab2d)

Documentation

  • plan consistent pi-autoformat message tags (#202) (ef1d36f)
  • retro: add planning stage notes for issue #202 (fdbc65b)
  • retro: add TDD stage notes for issue #202 (632cd50)

5.1.0 (2026-05-24)

Features

  • add eslint config with type-aware rules and import enforcement (4fb3cc6)

5.0.4 (2026-05-23)

Bug Fixes

  • add package.json imports field for #src/#test path aliases (#157) (75b4598)

5.0.3 (2026-05-23)

Bug Fixes

  • resolve fallow dead-code warnings (2113f6b)

5.0.2 (2026-05-19)

Documentation

  • enforce one-sentence-per-line across all markdown files (a533869)

5.0.1 (2026-05-19)

Documentation

5.0.0 (2026-05-19)

⚠ BREAKING CHANGES

  • All @earendil-works/pi-* peerDependencies and devDependencies now require >=0.75.0, aligning with Pi's Node 22 minimum.
  • Minimum supported Node.js version is now >=22, aligning with Pi v0.75.0. tsconfig target raised from ES2023 to ES2024.
    • ES2024 APIs (Promise.withResolvers, Object.groupBy, Map.groupBy, Array.fromAsync) are now allowed.
    • @types/node catalog aligned to ^22.15.3.
    • pi-autoformat now declares engines.node for consistency.

Features

  • raise minimum Node.js version to 22 and bump tsconfig target to ES2024 (98a5b01)
  • raise minimum Pi dependency to v0.75.0 (1068329)

Bug Fixes

  • increase acceptance test timeout to avoid CI flakiness (#67) (50c839c)
  • unquote rumdl globs so shell expands them (3b13a20)

Documentation

  • plan fix acceptance test timeout on slow CI runners (#67) (2e1ff0a)

4.0.6 (2026-05-17)

Bug Fixes

  • restore per-package lint:md and lint scripts (0e42617)
  • use root markdownlint config from all packages (30192f8)

Documentation

  • add redirect AGENTS.md to each package subdirectory (cbdcd29)

Miscellaneous Chores

  • consolidate configs into monorepo root (8583eaf)
  • remove per-package pi-autoformat configs (b2d405a)
  • replace markdownlint-cli2 with rumdl (d8dc789)
  • update package.json URLs to monorepo (b92dbfa)

4.0.5 (2026-05-15)

Bug Fixes

  • expand tilde in file paths before resolving against cwd (2697ad3)

Documentation

  • add Configuration section to README (f22f9c8)

Miscellaneous Chores

  • format .pi/settings.json (a5daa84)
  • upgrade pnpm to 11.1.1 and update GitHub Actions (79e5b78)

4.0.4 (2026-05-08)

Miscellaneous Chores

4.0.3 (2026-05-06)

Bug Fixes

  • add repository URL for OIDC provenance publishing (4b5335e)

4.0.2 (2026-05-06)

Miscellaneous Chores

4.0.1 (2026-05-06)

Documentation

4.0.0 (2026-05-03)

⚠ BREAKING CHANGES

  • The agent_end follow-up turn mechanism has been removed. Formatting notifications are now delivered inline as steering messages between turns.
  • notifyAgent is no longer accepted in the configuration schema. The extension now notifies via steering messages at turn end.
  • notifyAgent config field has been removed. The extension now notifies via steering messages at turn end.

Features

  • add buildSteeringMessageContent helper (#31) (e0e7d86)
  • add pi-extension-lifecycle skill with turn/tool model reference (#31) (a136bc6)
  • detect content changes in flushPrompt (#31) (65c735d)
  • flush formatters at turn_end (#31) (6b27a78)
  • include failure details in steering notification (#31) (28109a6)
  • remove notifyAgent config field (#31) (d5b1d0c)
  • remove notifyAgent from schema (#31) (c936148)
  • replace agent_end follow-up with turn-end steering (#31) (8e2e7bb)
  • send steering notification after turn-end formatting (#31) (aa18c6d)

Bug Fixes

  • markdownlint table separator spacing in plan and skill (#31) (84767fa)

Documentation

  • add plan for pre-commit flush (#31) (2ffd469)
  • add table separator spacing rule to AGENTS.md (b3076e8)
  • document turn-end formatting and steering notifications (#31) (2fc6bf5)
  • plan turn-end flush with change detection (#31) (a4429a8)

Miscellaneous Chores

  • remove --fix flags from prek hooks (a9664a2)

3.0.1 (2026-05-02)

Bug Fixes

  • remove default formatter chains to prevent unwanted formatting (48f690e)

Documentation

  • update README and configuration for no default chains (6e7015b)

3.0.0 (2026-05-02)

⚠ BREAKING CHANGES

  • Removed formatMode branching from the extension runtime. The tool_result handler no longer conditionally flushes. The agent_end handler always flushes. The session_shutdown handler no longer conditionally flushes. Tests for tool and session mode behaviors have been removed.
  • The formatMode property has been removed from the JSON schema. Existing configs with formatMode will fail schema validation but the config loader still tolerates the key with a deprecation notice.
  • The formatMode config field has been removed. The runtime always uses prompt-end formatting (the previous "prompt" behavior). The config loader tolerates the legacy key, emits a config issue, and discards the value.

Features

  • add buildNotifyMessageContent helper (#27) (74d8451)
  • add notifyAgent config field (#27) (f660c84)
  • always use prompt-end formatting (#27) (991d0c8)
  • emit config issue for legacy formatMode key (#27) (98f51e9)
  • include formatter failures in follow-up message (#27) (fe41c38)
  • remove formatMode config field (#27) (d5b4484)
  • remove formatMode from config schema (#27) (bb970f1)
  • send follow-up turn after formatting (#27) (ff4b6bd)

Bug Fixes

  • safety-net flush on session_shutdown and lint fixes (#27) (3f834f0)

Documentation

  • backport prompt template improvements from pi-permission-system (59e35f3)
  • document notifyAgent and remove formatMode docs (#27) (d4b8f24)
  • plan format-before-exit follow-up turn (#27) (85eb70d)
  • plan format-before-exit follow-up turn (#27) (626a8fd)

2.4.2 (2026-05-02)

Documentation

  • drop stale v1 framing from configuration reference (5e6d765)
  • slim README and link to configuration reference (a5bbec0)

2.4.1 (2026-05-02)

Documentation

2.4.0 (2026-05-02)

Features

  • accept built-in names in chains validation (e96d346)
  • allow wildcard chain key in schema (a11d4b3)
  • build treefmt and treefmt-nix invocations (cc1f32a)
  • discover treefmt and treefmt-nix config roots (53141d2)
  • dispatch wildcard chain before per-extension chains (07758b0)
  • group files by wildcard chain first (c15b4d2)
  • parse treefmt skip patterns (973f7e4)
  • partition built-in batches by handled set (08f8016)
  • prefer treefmt-nix over treefmt at same root (c3625f3)
  • register treefmt and treefmt-nix as built-in formatters (7e53dfb)

Documentation

  • document built-in treefmt and treefmt-nix support (82d3511)
  • plan built-in treefmt and treefmt-nix support (#15) (2ce1706)

2.3.2 (2026-05-02)

Documentation

  • document acceptance-test layout and pi binary resolution (38f95fe)
  • plan expanded acceptance test coverage (#10) (382fbfc)
  • resolve pi from node_modules in acceptance plan (#10) (e262805)
  • retro: add retro notes for issue #22 (b0464d8)

2.3.1 (2026-05-02)

Documentation

  • plan adopting pi-coding-agent types (#22) (d06f43c)
  • retro: add retro notes for issue #2 (9e1ebd6)
  • retro: revert pi-mono pointer in favor of issue #22 (3289595)

Miscellaneous Chores

  • add pi-coding-agent for runtime types (2d93a5e)

2.3.0 (2026-05-02)

Features

  • add formatter run output trimming helper (4263a78)
  • add formatterOutput config object with safe defaults (c0a88e2)
  • surface failed formatter output in reports (768bf2a)
  • surface formatterOutput in the JSON schema (15cbfef)

Bug Fixes

  • preserve theme this binding when coloring the status line (6a6ec16)

Documentation

  • apply autoformat to plan 0016 (04677ee)
  • document the formatterOutput failure reporting option (6cb70c6)
  • plan optional detailed formatter output on failure (#2) (a2d466e)
  • retro: add retro notes for issue #1 (031cde3)

Miscellaneous Chores

  • update pi-autoformat config (5759bf6)

2.2.0 (2026-05-02)

Features

  • add /retro slash command for end-of-flow retrospectives (09a50ed)
  • clear autoformat status on session lifecycle boundaries (4834d45)
  • keep failure notifications and add persistent failure status (9ece2b8)
  • render formatter success summaries in the footer status (2a37b1b)
  • respect hideSummariesInTui for footer status (3cf8548)

Documentation

  • add frontmatter convention to plans and retros (2648129)
  • describe footer-status formatter summaries (1df2550)
  • plan richer TUI formatter summaries via footer status (#1) (a50fba9)
  • retro: add retro notes for issue #13 (9591d5a)

2.1.0 (2026-05-01)

Features

  • add PATH probe with per-flush cache (aa97aa7)
  • allow fallback chain steps in schema (535190e)
  • dispatch fallback chain steps (a263778)
  • resolve fallback chain steps (6daed75)
  • share PATH probe cache across flush (8d0af4d)
  • support fallback steps in chain grouping (f07acc5)
  • surface fallback context in flush reporting (2159cfb)
  • surface unknown formatter names in chains as config issues (f46f7af)
  • validate fallback chain steps in config loader (ec52a14)

Documentation

  • document deprecation pattern for removed config fields (988ae7b)
  • document fallback chain steps and project-config recommendation (3bbc846)
  • plan fallback chain step type (#13) (83df5ff)
  • prompts: renumber ship-issue steps to 1-based indexing (3f37ba6)
  • prompts: require clean git pull --ff-only before plan/tdd/ship (22cfe92)

2.0.0 (2026-05-01)

⚠ BREAKING CHANGES

  • formatterDefinition.extensions is no longer declared in schemas/pi-autoformat.schema.json. Editor validators will flag stale extensions keys as unknown properties. The runtime loader still tolerates them with a deprecation notice.
  • FormatterDefinition.extensions has been removed from the public TypeScript type and from built-in defaults. Code that reads or writes that field must be updated. On-disk configs are tolerated with a deprecation notice.

Features

  • drop extensions field from FormatterDefinition and loader (3fd791e)
  • drop extensions from pi-autoformat JSON schema (018c1a7)

Documentation

  • add issue-driven workflow prompt templates (14295be)
  • adopt one-sentence-per-line and code-fence language conventions (544fc68)
  • plan removing unused formatter extensions field (#12) (fe0b6bd)
  • reflow markdown to one sentence per line (49bdefb)
  • remove formatter extensions field and note deprecation (ddc54cd)

Miscellaneous Chores

  • add npm keywords including pi-package for registry (aee15c0)

1.0.0 (2026-05-01)

⚠ BREAKING CHANGES

  • removes resolveFormatterChainForFile, executeFormatterChain, and FormatterExecutionResult. Default formatter commands no longer include $FILE; the schema rejects $FILE in formatter command arguments.
  • failure summaries are now grouped per batch instead of per file (one line per failed batch listing the files it ran against).
  • PromptAutoformatterResult now exposes groups[] instead of files[]; each group runs its chain once with all files appended.
  • $FILE substitution is no longer supported. File paths are appended to the command automatically by the batch executor.

Features

  • add resolveChain for name-based formatter resolution (b67dbc3)
  • batch-dispatch chain steps via executeChainGroup (83a6627)
  • drop $FILE substitution and per-file dispatch path (d26f825)
  • group touched files by chain identity (6a8832b)
  • reject $FILE in formatter commands (3865b34)
  • report formatter results per batch (d16d7b1)
  • switch PromptAutoformatter to group-based batch dispatch (42845ee)

Documentation

  • document batch-by-default formatter dispatch (1e363d2)
  • plan batch-by-default formatter dispatch (#14) (ce330cd)

0.4.0 (2026-05-01)

Features

  • config: add customMutationTools and eventBusMutationChannel schema (f2a3ac4)
  • extract touched paths from declared custom tool inputs (665aaed)
  • subscribe to EventBus channel for peer-emitted touched files (8986535)
  • wire customMutationTools into default autoformatter (638f203)

Documentation

  • add plan for additional Pi mutation tools (5c3fb35)
  • capture design philosophy in AGENTS.md and README design goals (e318d1b)
  • document customMutationTools and eventBusMutationChannel (5cc7c71)

0.3.1 (2026-04-29)

Bug Fixes

  • do not bypass realpath escape check via lexical path in scope test (89bbae5)
  • pass typecheck for AutoformatConfig and TestPi in tests (f6e57b1)

Documentation

  • add status badges to README (358ca02)
  • bump pnpm badge to >=10 to match packageManager (175fd83)

0.3.0 (2026-04-29)

Features

  • add format scope filter with repo-root default and cwd fallback (aa5449b)
  • detect file mutations from shell commands (opt-in) (3d06d48)

Documentation

  • add plan for shell-driven mutation coverage (3784e7c)

0.2.0 (2026-04-29)

Features

  • add default formatter config with user overrides (9d0d458)
  • add extension-owned config loader (cca9655)
  • add prompt-end autoformatter orchestration (4bbacba)
  • add touched-file queue with prompt-flush semantics (b6cdec0)
  • execute formatter chains sequentially with non-blocking failures (869a8b9)
  • polish autoformat reporting (f480c44)
  • require explicit formatter chains (2eda3a4)
  • resolve formatter chains from config registry (b28eeec)
  • wire autoformatting into pi lifecycle (786f0f5)

Documentation

  • add configuration schema and package docs (032f3ad)
  • clarify formatter command resolution (fb10662)
  • mark v1 plan complete (b25e42e)

Miscellaneous Chores

  • add prek and formatter configuration (02eb50b)
  • add project autoformat config (d09ab48)
  • initialize pnpm package metadata (8644504)
  • initialize repository plan and agent guidance (548fa70)