Files
hypothesis-machine/CHANGELOG.md
T
Emil 18b8a3247d fix: allow research runs to restart after stop; improve FTS search, agent limits, and timeouts
- AgentTree.restart() revives a stopped run in the same session: resets the
  root, archives old branches, and restores spawnability (stop no longer
  cancels the root).
- ResearchLoop.start() restarts from stopped/completed and resets iteration
  counters; setGoal is allowed in terminal states; supervisor 'start' revives
  the tree when the root is not spawnable.
- Cancelled/failed/archived children no longer count toward the per-agent
  child limit and archived agents are ignored by the duplicate-task guard.
- cancel() no longer overwrites an already recorded agent result.
- Add agent_timeout_seconds (default 1800) so hung agent sessions fail
  instead of blocking wait() forever.
- FTS search now prefix-matches tokens (tolerates inflections) and safely
  handles punctuation/FTS5 metacharacters instead of returning false
  negatives or throwing.
- Add tests for restart semantics, child limits, result preservation,
  agent timeouts, and FTS morphology/special characters (38/38 passing).
2026-07-31 22:57:54 +03:00

2.0 KiB

Changelog

Unreleased

  • Fixed the research loop and agent tree getting permanently stuck after research_control stop: start now restarts a stopped/completed run in the same session (AgentTree.restart revives the run, archives old branches, and resets the root), ResearchLoop.start resets iteration counters, and goal changes are allowed after stop/completion.
  • Cancelled/failed/archived children no longer count toward the per-agent child limit, and archived agents are ignored by the duplicate-task guard.
  • cancel() no longer overwrites an already recorded agent result.
  • Added a per-agent execution timeout (agent_timeout_seconds, default 1800) so a hung agent session fails instead of blocking wait forever.
  • Full-text search now prefix-matches tokens (tolerates Russian/English inflections without stemming) and safely handles punctuation and FTS5 metacharacters instead of throwing or returning false negatives.

0.1.1 — 2026-07-31

  • Added GitHub CI, CodeQL, Dependabot, contribution/security templates, and the local release checklist.
  • Updated the development toolchain to ESLint 10 and aligned the minimum Node.js version with Pi 0.83 (22.19+).
  • Added the official ModelRegistry compatibility path for Pi 0.78 while retaining shared ModelRuntime behavior on Pi 0.83+.
  • Added agent_end continuation fallback for Pi versions predating agent_settled.
  • Improved startup diagnostics and verified /team through Pi 0.78 RPC mode.
  • Fixed Redis container capabilities and verified a live Firecrawl v2 scrape.

0.1.0 — 2026-07-31

  • Initial Pi extension package.
  • Recursive persistent AgentSessions and dynamic Markdown agent factory.
  • Tree limits, replication, messaging, cancellation, recovery, and /team.
  • Markdown/SQLite research memory and source provenance.
  • Local SearXNG/Firecrawl gateway with SSRF controls and cache.
  • Explicit bounded research loop.
  • Docker-only reproducible experiment runner.
  • Unit, integration, and extension smoke tests.