Skip to content

feat(agents): modernize OpenCode and Claude metric feedback - #1685

Merged
dekobon merged 7 commits into
mainfrom
feat/agent-metric-feedback
Oct 22, 2026
Merged

dekobon merged 7 commits into
mainfrom
feat/agent-metric-feedback

Conversation

@dekobon

@dekobon dekobon commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Migrate the OpenCode reference plugin to V2 and explicitly register it for this project. Preserve successful tool results while appending bounded metric advice, with stale-result rejection, cancellation, and deduplication.
  • Enable the Claude Code reference PostToolUse hook through the project's settings. Share analyzer, process, path, guidance, and report helpers with OpenCode, and retain the shell compatibility entrypoint.
  • Clarify baseline-relative feedback, task scope, and justified suppression. Update setup and verification instructions, repair links, and translate the revised chapter into Japanese.
  • Add hook regression suites to local validation and CI, covering Linux, macOS, Windows, Node 24, and the Node 22.7 minimum runtime.
  • Replace yanked Tokio 1.54.0 with 1.54.1 in the lockfile to resolve the cargo-deny CI failure.

Validation

  • make pre-commit: passed after the history rewrite, final project configuration change, and Tokio lockfile update.
  • cargo test --workspace --all-features --locked: passed after the Tokio update.
  • cargo deny --all-features check advisories bans licenses sources: passed with CI's cargo-deny 0.20.2 after the Tokio update.
  • Both hook suites: 60 tests passed, including Node 22.7 compatibility and checkout-built analyzer checks.
  • Guard-removal probes confirmed that the alias-state eviction and nonregular-guidance tests detect their respective regressions.
  • Live OpenCode and Claude Code checks delivered nargs = 8 (limit 5) for a disposable fixture and stayed silent after a clean edit. Confirmed exactly one active OpenCode reference plugin.
  • English and Japanese book builds passed with the pinned translation toolchain; msgfmt --check, rendered local links/anchors, and hook configuration JSON were verified.
  • Independent review and remediation completed; the final Fable follow-up found no concrete defects.

Windows and macOS execution is covered by the CI matrix; local verification ran on Linux.

Keep the runtime reminder concise and distinguish baseline-relative findings from regressions caused by the current edit. Preserve suppression syntax and task-boundary validation guidance.
Preserve successful edit, write and patch results while appending bounded advisory context. Keep configuration and named-path identity separate from physical-file freshness and cancellation.

Share bounded subprocess, guidance and report helpers with agent adapters. Cover process-tree cleanup, stale and concurrent results, aliases, manifest discovery and isolated Git fixtures with regression tests.
Register an exec-form PostToolUse hook for successful file edits. Emit additionalContext with exit zero, honor current checkout configuration, reject stale findings and keep diagnostics in the debug channel.

Retain the shell compatibility entrypoint and add subprocess-level tests for advisory JSON, cancellation, configuration boundaries, exclusions, baselines and analyzer selection.
Run both hook suites using the checkout-built analyzer on Linux, macOS and Windows with Node 24, plus Node 22.7 compatibility on Linux. Pin setup-node to v7.1.0.

Integrate the suites with lint, pre-commit and CI, lint the compatibility wrapper explicitly and report the Node prerequisite in check-tools.
Document advisory delivery, configuration boundaries, prerequisites and verification. Correct suppression exceptions and metric-feedback scope, and distinguish the legacy OpenCode example.

Translate the updated chapter into Japanese, fix rendered links and preserve configuration literals and stable heading anchors.
@dekobon

dekobon commented Oct 22, 2026

Copy link
Copy Markdown
Owner Author

Fixed the cargo-deny failure in 4750828: Tokio 1.54.0 was yanked upstream, so the lockfile now selects 1.54.1. No other dependency resolutions changed.

Validation passed locally:

  • cargo deny --all-features check advisories bans licenses sources, using CI's cargo-deny 0.20.2
  • cargo test --workspace --all-features --locked
  • make pre-commit: BCA_GATE: pass (gate=pre-commit)

The fix is pushed; the new CI run is pending.

@codecov

codecov Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.27%. Comparing base (f92ddf0) to head (4750828).
⚠️ Report is 7 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main    #1685   +/-   ##
=======================================
  Coverage   98.26%   98.27%           
=======================================
  Files         371      371           
  Lines      108482   108482           
  Branches   108047   108047           
=======================================
+ Hits       106603   106612    +9     
+ Misses       1212     1204    -8     
+ Partials      667      666    -1     
Flag Coverage Δ
python 100.00% <ø> (ø)
rust 98.26% <ø> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 2 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@dekobon

dekobon commented Oct 22, 2026

Copy link
Copy Markdown
Owner Author

CI is green on 4750828. The updated run passed cargo-deny and all Linux, macOS, and Windows test jobs, including the agent-hook suites. No failing or pending PR checks remain.

@dekobon
dekobon merged commit 4750828 into main Oct 22, 2026
54 checks passed

This branch was successfully deployed

1 active deployment
github-pages — 4750828e Deployed Oct 22, 2026 by dekobon via deploy to GitHub Pages #836
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant