pi-taskflow 0.0.14 → 0.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md ADDED
@@ -0,0 +1,135 @@
1
+ # Changelog
2
+
3
+ All notable changes to pi-taskflow are documented here. This project follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) format.
4
+
5
+ ## [0.0.16] — 2026-06-09
6
+
7
+ ### Added
8
+ - Built-in agents configurable via `/tf init` — customize model role, thinking level, and tools per agent.
9
+ - Community PR support: `feat/configurable-builtin-agents` (thanks @yolonir).
10
+ - Multi-language READMEs: 简体中文, हिन्दी, Español, العربية, বাংলা, Português, Русский.
11
+ - `AGENTS.md` project guide — agent pipeline rules, review routing, executor selection, escalation paths.
12
+ - GitHub issue templates (bug report + feature request) and PR template.
13
+
14
+ ### Changed
15
+ - Social preview OG image for npm/ GitHub card.
16
+ - Internal docs reorganized under `docs/internal/` for clean project root.
17
+ - Run cleanup made configurable with `.pi/` creation notification.
18
+ - npm tarball slimmed — only essential files shipped.
19
+
20
+ ### Tests
21
+ - 10 previously uncovered critical code paths covered (runtime branches, interpolate edge cases, transient error heuristics, store concurrency).
22
+ - Total: **524 tests** (was 394).
23
+
24
+ ## [0.0.15] — 2026-06-09
25
+
26
+ ### Added
27
+ - Built-in agent auto-sync to project `.pi/agents/` — first-class community collaboration.
28
+ - Tool description updated: `taskflow` now replaces `subagent` as the recommended delegation API.
29
+
30
+ ### Changed
31
+ - Multi-language READMEs completed with >2% native-speaker coverage (7 languages).
32
+
33
+ ## [0.0.14] — 2026-06-08
34
+
35
+ ### Added
36
+ - Static DAG verification (`verify.ts`) — dead-end detection, gate exhaustion, ref integrity, concurrency warnings, guard contradictions — all computed at 0 tokens before a single agent runs.
37
+ - `onBlock: "retry"` — retry upstream phases when a gate blocks, instead of halting the run.
38
+ - Declarative eval gates — machine-checkable criteria that run *before* the LLM gate.
39
+ - Budget and idle-watchdog guards on `onBlock:retry` loops + nested recursion depth cap.
40
+
41
+ ## [0.0.13] — 2026-06-07
42
+
43
+ ### Added
44
+ - `loop` phase — iterate a task until a condition, convergence, or cap.
45
+ - `tournament` phase — best-of-N with a judge (or aggregate mode).
46
+ - Cross-run memoization (`cache: { scope: "cross-run" }`) with git/file/glob/env fingerprints, TTL, and LRU eviction.
47
+ - Interactive `/tf init` with action menu, role-aware model pickers, diff preview, and atomic merge-write.
48
+ - 18 built-in agents with 6 model roles (`{{fast}}`, `{{strong}}`, `{{thinker}}`, `{{arbiter}}`, `{{vision}}`, `{{reasoner}}`).
49
+
50
+ ### Fixed
51
+ - P0 cache-key correctness after adversarial cross-review.
52
+ - `/tf init` compile error and custom model registry validation.
53
+ - Multi-agent review must-fixes (F1 label parse, F5 missing modelRoles).
54
+
55
+ ## [0.0.12] — 2026-06-05
56
+
57
+ ### Added
58
+ - Model role system with `/tf init` interactive setup.
59
+ - Per-phase `model`, `thinking`, `tools` overrides.
60
+
61
+ ## [0.0.11] — 2026-06-04
62
+
63
+ ### Added
64
+ - Full control-flow & reliability layer: `when` guards, `join: any` OR-joins, `retry` with backoff, `approval` human-in-the-loop, `flow` sub-flow composition, `budget` caps.
65
+ - Idle watchdog (kills wedged subagents after 5 minutes of silence).
66
+ - Transient error auto-retry (rate-limit / 5xx / timeout).
67
+
68
+ ### Changed
69
+ - README rewritten as flagship landing page with hero flow diagram and competitive comparison.
70
+
71
+ ## [0.0.10] — 2026-06-03
72
+
73
+ ### Added
74
+ - Live DAG render with timing, cost, and sub-task progress in the TUI.
75
+ - `approval` phase type (approve / reject / edit).
76
+ - Cross-session resume with per-phase input-hash caching.
77
+
78
+ ## [0.0.9] — 2026-06-02
79
+
80
+ ### Added
81
+ - `map` phase dynamic fan-out over JSON arrays.
82
+ - `reduce` phase aggregation.
83
+ - `gate` phase with `VERDICT: PASS / BLOCK` parsing.
84
+ - `/tf:<name>` command shortcuts for saved flows.
85
+
86
+ ## [0.0.8] — 2026-06-01
87
+
88
+ ### Added
89
+ - 13 dogfooding fixes + 6 meta-bug hardening.
90
+ - Run state storage: per-flow subdirectories, index, file lock, TTL cleanup.
91
+ - Agent availability query command + unknown-agent runtime degradation.
92
+
93
+ ### Fixed
94
+ - Stalled subagent kill and negative-timer freeze.
95
+ - Index concurrency lock + stale-lock atomic preemption + flowName path-escape hardening.
96
+
97
+ ## [0.0.7] — 2026-05-31
98
+
99
+ ### Fixed
100
+ - 11 critical defects from adversarial review batch fix.
101
+
102
+ ## [0.0.6] — 2026-05-30
103
+
104
+ ### Added
105
+ - Structural refactor of control flow and reliability features.
106
+ - Self-audit and repair loop.
107
+
108
+ ## [0.0.5] — 2026-05-29
109
+
110
+ ### Added
111
+ - Shorthand modes (`task`, `tasks`, `chain`) — same shape as the built-in subagent tool.
112
+ - `/tf save`, `/tf list`, `/tf show` commands.
113
+
114
+ ## [0.0.4] — 2026-05-28
115
+
116
+ ### Added
117
+ - Initial DSL: `agent`, `parallel` phases.
118
+ - `{args.X}`, `{steps.ID.output}`, `{previous.output}` interpolation.
119
+ - DAG validation: cycle detection, reference soundness.
120
+
121
+ ## [0.0.3] — 2026-05-27
122
+
123
+ ### Added
124
+ - Inline flow execution via `taskflow` tool.
125
+ - Run state persistence for resume.
126
+
127
+ ## [0.0.2] — 2026-05-26
128
+
129
+ ### Added
130
+ - Extension scaffolding: tool registration, command registration, agent discovery.
131
+
132
+ ## [0.0.1] — 2026-05-25
133
+
134
+ ### Added
135
+ - Initial release. Declarative DAG orchestration for Pi subagents.
package/README.md CHANGED
@@ -7,10 +7,23 @@
7
7
  <a href="https://www.npmjs.com/package/pi-taskflow"><img src="https://img.shields.io/npm/dm/pi-taskflow?style=flat-square&color=6E8BFF&label=downloads" alt="npm downloads"></a>
8
8
  <a href="./LICENSE"><img src="https://img.shields.io/badge/license-MIT-43D9AD?style=flat-square" alt="MIT license"></a>
9
9
  <a href="#whats-inside"><img src="https://img.shields.io/badge/runtime%20deps-0-43D9AD?style=flat-square" alt="zero runtime dependencies"></a>
10
- <a href="#whats-inside"><img src="https://img.shields.io/badge/tests-371-6E8BFF?style=flat-square" alt="371 tests"></a>
10
+ <a href="https://github.com/heggria/pi-taskflow/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/heggria/pi-taskflow/ci.yml?branch=main&style=flat-square&label=CI" alt="CI status"></a>
11
+ <a href="#whats-inside"><img src="https://img.shields.io/badge/tests-524-6E8BFF?style=flat-square" alt="524 tests"></a>
12
+ <a href="#whats-inside"><img src="https://img.shields.io/badge/dogfooded-%E2%9C%93-43D9AD?style=flat-square" alt="dogfooded"></a>
11
13
  <a href="https://pi.dev"><img src="https://img.shields.io/badge/for-Pi%20coding%20agent-B692FF?style=flat-square" alt="for the Pi coding agent"></a>
12
14
  </p>
13
15
 
16
+ <p align="center">
17
+ <b>English</b> ·
18
+ <a href="./README.zh-CN.md">简体中文</a> ·
19
+ <a href="./README.hi.md">हिन्दी</a> ·
20
+ <a href="./README.es.md">Español</a> ·
21
+ <a href="./README.ar.md">العربية</a> ·
22
+ <a href="./README.bn.md">বাংলা</a> ·
23
+ <a href="./README.pt.md">Português</a> ·
24
+ <a href="./README.ru.md">Русский</a>
25
+ </p>
26
+
14
27
  <p><strong>Declarative DAG orchestration for <a href="https://pi.dev">Pi</a> subagents.</strong><br/>
15
28
  Fan out · gate · resume · save as a command — intermediate results stay out of your context.</p>
16
29
 
@@ -574,7 +587,7 @@ Copy one into `.pi/taskflows/<name>.json` (or `~/.pi/agent/taskflows/`) and it r
574
587
 
575
588
  <div align="center">
576
589
 
577
- **0 runtime dependencies** · **371 tests** · **10 phase types** · **cross-session resume** · **cross-run memoization** · **~4.9k LOC runtime**
590
+ **0 runtime dependencies** · **524 tests** · **9 phase types** · **cross-session resume** · **cross-run memoization** · **~4.9k LOC runtime**
578
591
 
579
592
  </div>
580
593
 
@@ -583,11 +596,25 @@ Copy one into `.pi/taskflows/<name>.json` (or `~/.pi/agent/taskflows/`) and it r
583
596
  - **Hardened by design.** Path-traversal defense (lexical + `realpath`), runId validation, HTML/error sanitization, atomic writes, stale-lock stealing via `rename`, and an idle watchdog that kills wedged subagents.
584
597
  - **Dogfooded.** Every new feature has to survive the project's own `self-improve` taskflow before it ships.
585
598
 
586
- If this saves you a context window, **drop a ⭐ on [GitHub](https://github.com/heggria/pi-taskflow)** — it genuinely helps.
599
+ ## 🍽️ We eat our own dog food
600
+
601
+ Every feature in `pi-taskflow` ships **through `pi-taskflow`.**
602
+
603
+ Our `self-improve` flow is a 10-phase DAG — it audits the codebase, patches defects, verifies correctness, gates on quality, and surfaces the report — all declaratively. It's saved as `/tf:self-improve` and run before every release. No other agent orchestrator in the Pi ecosystem builds itself with itself.
604
+
605
+ | Campaign | Scale | Phases | Outcome |
606
+ |----------|-------|--------|---------|
607
+ | [v0.0.8 dogfood](./docs/dogfooding-v0.0.8-report.md) | Full codebase audit → triage → fix → verify | 10 phases, 234 tests | 13 fixes, all pass |
608
+ | [v0.0.6 self-audit](./docs/self-audit-report.md) | inventory → map audit → gate → approval → map fix → reduce | 9 phases | 11 critical defects fixed |
609
+ | [Cross-run cache dogfood](./docs/rfc-cross-run-memoization.md) | Real runtime + on-disk store | Dedicated test harness | Cache correctness under adversarial fingerprints |
610
+ | [Adversarial cross-review](./docs/brainstorm-adversarial-review-report.md) | Multi-agent adversarial review | `tournament` + `gate` | P0 cache-key fix shipped |
611
+ | [Init redesign review](./docs/issue-necessity-review-report.md) | Necessity audit → parallel checks → verdict | 7 phases | Full redesign plan validated |
612
+
613
+ > **Meta:** we used `pi-taskflow`'s `map` fan-out, `gate` verdicts, `approval` human-in-the-loop, `tournament` best-of-N, `loop` until-done, and `cross-run` cache — to build `pi-taskflow`.
587
614
 
588
615
  ## Status & limits
589
616
 
590
- **v0.0.13** — loop-until-done (`loop` phase: iterate to a condition, convergence, or cap), tournament (best-of-N with a judge), cross-run memoization (content-addressed cache with git/file/glob/env fingerprints and TTL), interactive `/tf init` with role-aware model pickers + diff preview + atomic merge-write, 18 built-in agents with 6 model roles. Full control-flow & reliability layer (`when` guards, `join: any`, `retry`/backoff, `approval`, `flow` composition, `budget` caps, idle watchdog) on top of the DSL + DAG runtime (`agent`/`parallel`/`map`/`gate`/`reduce`). Inline + saved flows, cross-session resume, live progress, and isolated context. A run executes as one streaming tool call.
617
+ **v0.0.16** — loop-until-done (`loop` phase: iterate to a condition, convergence, or cap), tournament (best-of-N with a judge), cross-run memoization (content-addressed cache with git/file/glob/env fingerprints and TTL), interactive `/tf init` with role-aware model pickers + diff preview + atomic merge-write, configurable built-in agents, 18 built-in agents with 6 model roles. Full control-flow & reliability layer (`when` guards, `join: any`, `retry`/backoff, `approval`, `flow` composition, `budget` caps, idle watchdog) on top of the DSL + DAG runtime (`agent`/`parallel`/`map`/`gate`/`reduce`). Inline + saved flows, cross-session resume, live progress, and isolated context. A run executes as one streaming tool call.
591
618
 
592
619
  Known boundaries (tracked, bounded — no surprises mid-flow):
593
620