Skip to content

v0.2.0 — installer, plugins, provenance levels and resumable jobs

Choose a tag to compare

@XelHaku XelHaku released this 02 Nov 03:10
· 113 commits to main since this release

ResearchForge v0.2.0

First minor release after v0.1.21. 365 commits. No project-format change.

Highlights

  • Installer and plugins: one user-scope installer for the engine, skills and hosts; passive cross-host plugin packaging (Claude, Codex, Pi, Hermes); explicit per-host research workflow commands; compatibility-checked MCP tools per host; rforge capabilities reports engine contracts so a host can check compatibility before work starts.
  • Search and jobs: depth budgets with structured stop reasons; persisted, resumable search jobs; screening queue export/import improvements; single decode path for search stats.
  • Provenance and claims: provenance levels computed from checksummed engine runs; deterministic evidence-facet checks and citation scoring; claim exports guarded by facets.
  • Sources and parsing: optional OpenAlex API key; date-capped Europe PMC, Crossref and Semantic Scholar recording for benchmarks; parser adapters with arbitration, comparison and quality reports.
  • Meta-analysis: meta-regression, subgroup, publication-bias, sensitivity and estimator-comparison runs.
  • Benchmarks: blinded paired agent-tier protocol; locked engine replay with opt-in recording; keyless pool A plans on Europe PMC and Crossref.
  • Citations: explicitly unscreened local bibliography builds.
  • Internal: the sources, parsing and analysis packages are split by responsibility behind compatibility facades. No caller import path changed.
  • Fixes: neutral batch-resume summary; malformed report JSONL is rejected; briefs fail on unreadable results; overlap counts only real overlap; short brief timestamps render safely; duplicate comparison labels are rejected before I/O; BOM'd CSV headers import; checkpoint read races retry.

TDD receipt

  • make check — pass (Go 1.26.10, tree 058c7f2)
  • make vuln — No vulnerabilities found for this code (Go 1.26.10)
  • GitHub CI (make ci) — pass on 41be472
  • RFORGE_RELEASE_VERSION=v0.2.0 go test ./internal/docs -run '^TestPassivePluginConformance$' — pass
  • python3 -B -m unittest discover -s adapters -p test_hermes.py — pass
  • go vet ./..., git diff --check — pass

License approval receipt

  • make license-decision-live-audit
  • make license-decision-approval-gate reports approved:true
  • License SPDX identifier: MIT
  • Copyright holder: Trebuchet Dynamics
  • Approved by: XelHaku (repository owner)
  • Approval date: 2026-06-13

Compatibility

  • Project schema: 1 (unchanged)
  • Lockfile schema: 1 (unchanged)
  • Plugin manifests and install.sh now require engine 0.2.0. An older engine is rejected by the skill compatibility check and by the installer.

Known limitations

  • Live source smoke tests stay opt-in (RFORGE_RUN_LIVE_SOURCE_SMOKE=1) and are not part of CI.
  • The R/metafor integration test stays opt-in (RFORGE_RUN_R_METAFOR_INTEGRATION=1); FakeRunner coverage is the default.
  • make ci reports Go standard-library advisories on Go 1.26.6. CI uses the latest 1.26 patch; the gates above ran on Go 1.26.10.
  • install-script-smoke needs each host CLI to answer. A broken local host wrapper fails that step on the release machine; CI runs it clean.

Install

curl -fsSL https://raw.githubusercontent.com/TrebuchetDynamics/research-forge/main/install.sh | sh
# or
go install github.com/TrebuchetDynamics/research-forge/cmd/rforge@v0.2.0