Skip to content

v0.4

Choose a tag to compare

@github-actions github-actions released this 25 Jul 21:58
· 290 commits to main since this release

Release v0.4

Release v0.4 — incremental update from v0.33 with 32 merged PRs.

What's Changed

🐛 Bug Fixes

  • #1367: feat(#1358): [Bug] runAgentSubprocess fallback can throw synchronously and escape containment
  • #1361: feat(#1357): [Bug] Supervisor 'Pipeline Failed / Manual intervention required' drops the actual error message
  • #1359: feat(#1343): [Bug] Supervisor closes issue as 'already resolved' when work landed via sibling/parent PR
  • #1356: feat(#1344): [Bug] agent-harness blocks tail — read is O(file size) vs O(N) for tail
  • #1355: feat(#1345): [Bug] agent-harness lacks force-bypass mechanism for legitimate blocked commands
  • #1354: feat(#1346): [Bug] agent-harness blocks head — read loads entire file, head stops at N lines
  • #1351: feat(#1347): [Bug] agent-harness docs claim xxd/hexdump detection but code doesn't implement it
  • #1349: feat(#1348): [Bug] agent-harness hardcoded JSON schemas in redirect messages drift from real tool schemas

🔧 Code Quality & Architecture

  • #1352: feat(#1279): Dead Code: agent-harness - isCodeFilePath() never called
  • #1340: feat(#1290): ICA: Collapse single-implementation state interfaces in agent-harness
  • #1339: feat(#1324): ICA: providerToEnvVar duplicated Go/shell mapping
  • #1338: feat(#1323): ICA: SettingsGenerator dead code
  • #1337: feat(#1325): ICA: runInit 24-parameter orchestrator signature
  • #1336: feat(#1328): ICA: tsc-checkpoint adapter/watcher speculative seam + pass-through wrapper
  • #1335: feat(#1327): ICA: BashCommand split-brain bash classifier
  • #1334: feat(#1329): ICA: github/deps.ts dead island duplicate

✨ Features & Enhancements

  • #1385: feat(#1376): SIMPLIFY: Repeated heading-injection validation blocks (stages.ts)
  • #1384: feat(#1373): SIMPLIFY: Duplicated push-text-once streaming pattern (adapter.ts)
  • #1383: feat(#1374): SIMPLIFY: Duplicated token-usage computation (adapter.ts)
  • #1382: feat(#1377): SIMPLIFY: Deep nesting in PR ahead-count verification (pr-creation.ts)
  • #1381: feat(#1375): SIMPLIFY: agentName bare-text-wrap 3-branch conditional (stages.ts)
  • #1380: feat(#1378): SIMPLIFY: Dead ternary err === 1 ? "err" : "err" (message-renderer.ts)
  • #1379: feat(#1362): Code Simplification: extensions — 2026-07-25
  • #1371: feat(#1366): SIMPLIFY: Repeated text/thinking push guard pattern → helper functions
  • #1370: feat(#1364): SIMPLIFY: Status emoji/text dual chained ternary → single lookup
  • #1369: feat(#1363): SIMPLIFY: Severity label chained ternary → lookup object
  • #1368: feat(#1365): SIMPLIFY: Tool name advice nested ternary → lookup object
  • #1353: feat(#1278): Bug: scrapling — TypeBox schema pattern ^https?:// case-sensitive, but validateUrl accepts mixed case
  • #1350: feat(#1276): Bug: scrapling — AbortSignal not propagated to acquireCrawlLock (cancellation ignored)
  • #1341: feat(#1288): Architecture Review: root — 2026-07-19
  • #1333: feat(#1277): Bug: scrapling — postInstall exec result not checked (silent failure on scrapling.cli install)
  • #1332: feat(#1331): [Feature] Replace pi-guardian daemon with on-demand shell scan in cheasee-pi clean

Full Changelog: v0.33...v0.4