Skip to content

Releases: JSONbored/loopover

ui-kit: v1.1.0

Choose a tag to compare

@JSONbored JSONbored released this 17 Jul 19:25
Immutable release. Only release title and notes can be modified.
bf53679

1.1.0 (2026-07-17)

Features

  • ui-kit: port state-views.tsx primitives into @loopover/ui-kit (#6539) (8eb1933), closes #6506

Fixes

  • config: scrub remaining pre-rename gittensory references (23152da)
  • config: scrub remaining pre-rename gittensory references (e4b0f8c)
  • ui: add a shared bg-surface-code token for the always-dark code surface (#6957) (334ee58)

@loopover/miner v3.1.1

Choose a tag to compare

@github-actions github-actions released this 17 Jul 20:44
Immutable release. Only release title and notes can be modified.
0a2484f

Published @loopover/miner v3.1.1 to npm with provenance.

Install:

npm install -g @loopover/miner@3.1.1

miner: v3.1.0

Choose a tag to compare

@JSONbored JSONbored released this 17 Jul 20:05
Immutable release. Only release title and notes can be modified.
fe49ac8

3.1.0 (2026-07-17)

Features

  • miner-ui: add discover and attempt HTTP action routes (#6574) (5c34c3a), closes #6522
  • miner: add config-gated chat action-dispatch scaffolding (#6542) (c9984c1), closes #6519
  • miner: add the ContributionProfile local cache store + doctor/migrate integration (#6797) (#7001) (9171769)
  • miner: consult selfLoopAutonomy in decideNextAction's pass-to-handoff step (#6581) (7a275c7), closes #6560
  • miner: consume ORB live gate thresholds in self-review-context (1cb09e4)
  • miner: design the ContributionProfile schema + caching shape (#6795) (#6970) (ad8536e)
  • miner: exclude discover candidates assigned to the repo owner (7a7f90a)
  • miner: exclude discover candidates assigned to the repo owner (995686f)
  • miner: implement generic ContributionProfile extraction (#6796) (#6979) (018e261)
  • miner: probe ORB live-gate-thresholds in self-review-context (087a0e3)
  • miner: register governor pause/resume chat actions (#6521) (#6587) (ad4486f)
  • miner: wire chat action-dispatch to the existing discover/attempt routes (#6837) (#6855) (a4c76a6)
  • miner: wire chat action-dispatch to the existing portfolio release/requeue routes (#6838) (#6850) (61202e3)
  • miner: wire ContributionProfile eligibility filtering into discover (08e56fb)
  • miner: wire ContributionProfile eligibility filtering into discover (#6798) (324490b)
  • purge: add purgeByRepo method to portfolio queue and run state stores (#6694) (11a6dac)

Fixes

  • config: scrub remaining pre-rename gittensory references (23152da)
  • config: scrub remaining pre-rename gittensory references (e4b0f8c)
  • miner: add the tenant_id column to governor-ledger and plan-store (#6707) (28f7f05), closes #6597
  • miner: cover four omitted stores in doctor and migrate (#6928) (e1df4aa)
  • miner: enforce maxConcurrentClaims atomically across sibling processes (#6912) (b1a2bbd), closes #6758
  • miner: expire claims orphaned by a dead process at claim time (#6441) (4d326e4), closes #6156
  • miner: fail fast instead of hanging when init --interactive has no TTY (#6907) (fa52680), closes #6846
  • miner: flag real LOOPOVER_MINER_* env vars missing from DEPLOYMENT.md (#6601) (2e12f63)
  • miner: flag real LOOPOVER_MINER_* env vars missing from DEPLOYMENT.md (#6601) (b586810)
  • miner: forward HOME and the real coding-agent credential to CLI subprocesses (4a852de)
  • miner: open doctor's laptop-state check read-only (camelCase readOnly) (#6866) (81a3a03)
  • miner: open the worktree allocator through local-store's openLocalStoreDb (#6600) (#6704) (4e9aa2d)
  • miner: reject blank acceptance hints as an objective success signal (#6766) (25792fd)
  • miner: reject blank acceptance hints as an objective success signal (#6766) (fd730f1)
  • miner: release the primed portfolio claim when --max-cycles is exhausted (d2244e9)
  • miner: release the primed portfolio claim when --max-cycles is exhausted (c976ca3)
  • miner: report the real post-failure schema version for a partially-applied migration (#6860) (4b786b1)
  • miner: require a closing keyword in self-review's linked-PR extractor (#6769) (6f5520d)
  • miner: require a closing keyword in self-review's linked-PR extractor (#6769) (5192411)
  • miner: retain a crashed attempt's worktree for post-mortem (#6867) (8ef43a4)
  • miner: retry GitHub rate-limit responses in http-retry instead of aborting the poll (#6761) (#6878) (58cd901)
  • miner: route the governor/prediction/plan local stores through openLocalStoreDb (#6667) (0591ffc)
  • miner: scope the managed-PR queue row to the polled forge host (de1c473)
  • miner: scope the managed-PR queue row to the polled forge host (492aef3)
  • miner: serialize per-repo base clone to prevent concurrent git races (#6917) (2e2f588), closes #6762
    ...
Read more

@loopover/mcp v3.1.1

Choose a tag to compare

@github-actions github-actions released this 17 Jul 20:48
Immutable release. Only release title and notes can be modified.
0a2484f

Published @loopover/mcp v3.1.1 to npm with provenance.

Install:

npm install -g @loopover/mcp@3.1.1

mcp: v3.1.0

Choose a tag to compare

@JSONbored JSONbored released this 17 Jul 20:05
Immutable release. Only release title and notes can be modified.
8ab3a4d

3.1.0 (2026-07-17)

Features

  • api: add a REST route + CLI mirror for loopover_check_test_evidence (#6810) (d45d8fd), closes #6749
  • api: add a REST route + CLI mirror for loopover_evaluate_escalation (#6805) (f8d1628), closes #6754
  • api: add a REST route + CLI mirror for loopover_get_pr_ai_review_findings (#6676) (885336a), closes #6619
  • api: add a REST route + CLI mirror for loopover_simulate_open_pr_pressure (#6915) (68b8694), closes #6751
  • api: add a REST route + CLI mirror for loopover_suggest_boundary_tests (80869bd)
  • api: add a REST route + CLI mirror for loopover_suggest_boundary_tests (4d5212e), closes #6750
  • api: add GET /v1/repos/:owner/:repo/automation-state + CLI mirror (#6742) (#6964) (c566906)
  • api: add POST /v1/repos/:owner/:repo/repo-docs/refresh + CLI mirror (#6973) (f1e9632)
  • api: mirror loopover_propose_action to REST and the CLI (#6744) (#7030) (a752b8f)
  • api: REST + CLI mirror for contributor notifications (#6745) (#7018) (447ee82)
  • api: REST + CLI mirror for loopover_build_results_payload (#6904) (7f7ea50), closes #6752
  • api: REST + CLI mirror for loopover_check_improvement_potential (#6955) (27c7c59)
  • api: REST + CLI mirror for loopover_explain_review_risk (#6980) (#7026) (15715dc)
  • api: REST + CLI mirror for loopover_intake_idea (#6916) (f1fb812), closes #6755
  • api: REST + CLI mirror for loopover_pr_outcome (#6747) (748acee)
  • api: REST + CLI mirror for loopover_pr_outcome (#6747) (efbe09c)
  • api: REST + stdio mirror for loopover_build_progress_snapshot (#6943) (d6cf892)
  • api: REST + stdio mirror for loopover_plan_idea_claims (#6952) (8fa47d1), closes #6756
  • mcp: add a contributor-profile CLI command (#6961) (484c9c8)
  • mcp: add a loopover_get_bounty_advisory CLI mirror (#6954) (7733371)
  • mcp: add a loopover_get_maintainer_lane CLI mirror (#6942) (71bc183)
  • mcp: add a maintain audit-feed CLI mirror for loopover_get_agent_audit_feed (#6733) (#6933) (5347291)
  • mcp: add a maintain outcome-calibration CLI mirror (#6960) (a4310f1)
  • mcp: add a typed PostHog wrapper module for packages/loopover-mcp (7152db6)
  • mcp: add maintain onboarding-pack CLI mirror (#6913) (96ee9c4)
  • mcp: CLI mirror for loopover_draft_pr_body (#6974) (13bd48b)
  • mcp: CLI mirror for loopover_explain_gate_disposition (#6966) (4966070)
  • mcp: CLI stdio mirror for loopover_get_repo_outcome_patterns (#6962) (244988b)
  • mcp: mirror contributor-issue-draft generation to an MCP tool + maintain CLI (#7019) (bd4c172), closes #6757
  • mcp: mirror loopover_monitor_open_prs to the stdio wrapper and CLI (#6789) (544cb31)
  • mcp: record local stdio tool calls at the dispatch chokepoint (#6432) (45fe399), closes #6238
  • mcp: register loopover_close_pr write-tool in both MCP surfaces (#6615) (#6715) (3f6591d)
  • mcp: register plan-DAG tools + local scorer in packages/loopover-mcp (1aa6603)
  • mcp: register plan-DAG tools + local scorer in packages/loopover-mcp (f096969), closes #6150
  • mcp: register the 8 miner write-tools on the local stdio server (#6390) (9197680), closes #6149
  • mcp: register the maintain REST surface as local stdio tools (#6382) (aa83a48), closes #6152
  • mcp: REST route + CLI mirror for loopover_get_eligibility_plan (#6692) (bb028ec), closes #6621
  • mcp: REST routes + CLI resource mirrors for finding-taxonomy and enrichment-analyzers (#6709) (b0677cd), closes #6620
  • mcp: validate .loopover.yml offline by extracting buildFocusManifestValidation into @loopover/engine (#6425) ([22faecf](http...
Read more

engine: v3.2.0

Choose a tag to compare

@JSONbored JSONbored released this 17 Jul 19:25
Immutable release. Only release title and notes can be modified.
1695b57

3.2.0 (2026-07-17)

Features

  • api: add a REST route + CLI mirror for loopover_check_test_evidence (#6810) (d45d8fd), closes #6749
  • config: make sweepWatchdog staleness threshold configurable (#6594) (#6639) (0e313c8)
  • engine: add a stable, versioned getTrackRecordSummary read API (2958302)
  • engine: add selfLoopAutonomy to AmsPolicySpec (bd614bf)
  • engine: add selfLoopAutonomy to AmsPolicySpec (880b973), closes #6559
  • engine: define a shared TrustSignal type for ORB/AMS reputation bridging (7ee0670)
  • engine: define a shared TrustSignal type for ORB/AMS reputation bridging (145a279)
  • mcp: CLI mirror for loopover_draft_pr_body (#6974) (13bd48b)
  • mcp: CLI mirror for loopover_explain_gate_disposition (#6966) (4966070)
  • mcp: validate .loopover.yml offline by extracting buildFocusManifestValidation into @loopover/engine (#6425) (22faecf), closes #6269
  • miner: add read-only chat grounding over the existing miner MCP tools (#6570) (ed16fef), closes #6517
  • miner: consult selfLoopAutonomy in decideNextAction's pass-to-handoff step (#6581) (7a275c7), closes #6560
  • orb: add the opt-in federated collector transport client (push/pull) (#6537) (8ab3472), closes #6479
  • orb: export a signed, anonymized federated calibration bundle (opt-in) (#6505) (53ce7b2), closes #6478
  • orb: trust-gate inbound federated bundles per the #6477 key-trust design (#6649) (729254a)
  • review: bridge a submitter's AMS track record into ORB reputation, upgrade-only (#6566) (97a1938), closes #6485
  • review: give LOOPOVER_REVIEW_PLANNER a per-repo config override (b429292)
  • review: give LOOPOVER_REVIEW_PLANNER a per-repo config override (73eb87d)
  • selfhost: make LOOPOVER_REVIEW_DRAFT and LOOPOVER_AUTO_FILE_DRIFT_ISSUES .loopover.yml-controllable (85e8301)
  • selfhost: make LOOPOVER_REVIEW_DRAFT and LOOPOVER_AUTO_FILE_DRIFT_ISSUES .loopover.yml-controllable (0d3f4cb)
  • selfhost: make LOOPOVER_REVIEW_OPS and LOOPOVER_PUBLIC_STATS .loopover.yml-controllable (87c3e6b)
  • selfhost: make LOOPOVER_REVIEW_OPS and LOOPOVER_PUBLIC_STATS .loopover.yml-controllable (bc2f899)
  • selfhost: make LOOPOVER_SWEEP_WATCHDOG and LOOPOVER_PR_RECONCILIATION .loopover.yml-controllable (3ac9501)
  • selfhost: make LOOPOVER_SWEEP_WATCHDOG and LOOPOVER_PR_RECONCILIATION .loopover.yml-controllable (7ca394a), closes #6558

Fixes

  • config: scrub remaining pre-rename gittensory references (23152da)
  • config: scrub remaining pre-rename gittensory references (e4b0f8c)
  • correct four stale 'improvementSignal not wired yet' comments (#6691) (2d493cd)
  • discovery-index: cap the untrusted response candidate list (#6774) (ff46459)
  • discovery-index: cap the untrusted response candidate list (#6774) (ca5c81a)
  • engine: align predicted-gate collision risk with live-gate twin (#6671) (2df475c), closes #6629
  • engine: cap predicted-gate's local linked-issue extractor at the canonical 50 (#6771) (fcf41bc)
  • engine: cap predicted-gate's local linked-issue extractor at the canonical 50 (#6771) (0fe3e99)
  • engine: exclude inline code spans in predicted-gate extractLinkedIssueNumbers (e6ef456)
  • engine: exclude inline code spans in predicted-gate extractLinkedIssueNumbers (#6630) (6ac8c1f)
  • engine: exclude lockfiles and dependency manifests from trivial-churn detection (ed882b7)
  • engine: exclude lockfiles and dependency manifests from trivial-churn detection (a2d8306)
  • engine: exempt generated/vendored/minified files from missing-test-evidence signal (2c59771)
  • engine: exempt generated/vendored/minified files from the missing-test-evidence signal (203e7c7)
  • engine: filter maintainer-authored manifest fields out of public findings (99aeead)
  • engine: filter maintainer-authored manifest fields out of public findings (5f5a6fc), closes #6770
  • engine: floor percentComplete at 0 so it stays in its documented 0-100 range (#6773) (ab9cb63)
  • engine: floor percentComplete at 0 so it stays in its documented 0-100 range (#6773) (84543ed)
  • engine: honor no-issue rationale in predicted preflight (#6645) (8b20ad6), closes #6628
  • engine: stop the collision rep...
Read more

loopover-orb orb-v2.1.0-beta.8

Pre-release

Choose a tag to compare

@github-actions github-actions released this 17 Jul 05:05
Immutable release. Only release title and notes can be modified.
9f77ee9

LoopOver Orb container image:

docker pull ghcr.io/jsonbored/loopover-selfhost:orb-v2.1.0-beta.8

Multi-arch (linux/amd64 + linux/arm64). See https://loopover.ai/docs/maintainer-self-hosting for setup.
Includes the Claude Code / Codex subscription CLIs by default; credentials stay runtime-only.
Sentry release id baked into the image: gittensory-orb@2.1.0-beta.8.

What's Changed

🚀 Features

  • feat(api): add a REST route + CLI mirror for loopover_get_pr_ai_review_findings by @davion-knight in #6676
  • refactor(settings): drop 19 contributor-cap/review-nag/rate-limit config-as-code-only DB columns by @JSONbored in #6699
  • feat(mcp): REST route + CLI mirror for loopover_get_eligibility_plan by @dhgoal in #6692
  • feat(api): add REST mirrors for the finding-taxonomy and enrichment-analyzers MCP resources by @davion-knight in #6706
  • feat(mcp): REST routes + CLI resource mirrors for finding-taxonomy and enrichment-analyzers by @dhgoal in #6709
  • refactor(gate): delete the dead firstTimeContributorGrace surface end-to-end by @JSONbored in #6714

🐛 Fixes

Full Changelog: orb-v2.1.0-beta.7...orb-v2.1.0-beta.8

loopover-orb orb-v2.1.0-beta.7

Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Jul 18:55
Immutable release. Only release title and notes can be modified.
d912992

LoopOver Orb container image:

docker pull ghcr.io/jsonbored/loopover-selfhost:orb-v2.1.0-beta.7

Multi-arch (linux/amd64 + linux/arm64). See https://loopover.ai/docs/maintainer-self-hosting for setup.
Includes the Claude Code / Codex subscription CLIs by default; credentials stay runtime-only.
Sentry release id baked into the image: gittensory-orb@2.1.0-beta.7.

What's Changed

🚀 Features

🐛 Fixes

  • feat(ci): auto-sync the MCP known-latest constant, never a manual bump by @JSONbored in #6638
  • fix(config): migrate badgeEnabled/publicQualityMetrics off the DB by @JSONbored in #6647
  • test(ui): guard the Cloudflare build's self-heal step against regression by @JSONbored in #6648
  • fix(github): reject a malformed three-segment repoFullName in comments.ts by @ultrahighsuper in #6640
  • docs(selfhost): document the GPU-reservation force-recreate gotcha for ollama by @JSONbored in #6652
  • test(settings): inject Batch C gate/AI-review fields via the manifest (queue core) by @JSONbored in #6653
  • test(settings): inject Batch C gate/AI-review fields via the manifest (small files) by @JSONbored in #6656
  • fix(auth): send the canonical PRODUCT_USER_AGENT from github-oauth.ts by @galuis116 in #6637
  • test(settings): inject Batch C gate/AI-review fields via the manifest (queue rest) by @JSONbored in #6654
  • fix(review): trim whitespace on three truthy env flag checks by @RealDiligent in #6641
  • refactor(signals): reuse slop.ts's canonical clamp in improvement.ts by @galuis116 in #6643
  • fix(engine): harden applyContributorCalibration against NaN inputs by @RealDiligent in #6651
  • fix(engine): honor no-issue rationale in predicted preflight by @jsdevninja in #6645
  • fix(mcp): honor free-text tests evidence in loopover_check_test_evidence by @ultrahighsuper in #6657
  • fix(agent-actions): cancel in-flight CI on a blacklist close too (#6659) by @JSONbored in #6669
  • fix(github): resolve GraphQL cache TTL per cache class by @claytonlin1110 in #6655
  • fix(engine): exclude inline code spans in predicted-gate extractLinkedIssueNumbers by @ultrahighsuper in #6658
  • fix(github): compare the bot login case-insensitively when dismissing its approval by @luciferlive112116 in #6662
  • fix(review): align lockfile-tamper finding text with lockfile-entry check by @RealDiligent in #6663
  • fix(github): reject per-segment whitespace in splitRepo by @RealDiligent in #6664
  • fix(miner): route the governor/prediction/plan local stores through openLocalStoreDb by @lourincedaging0-commits in #6667
  • fix(review): guard fix-handoff suggestion blocks against an embedded code fence by @ultrahighsuper in #6668
  • fix(engine): align predicted-gate collision risk with live gate by @RealDiligent in #6671
  • fix(ci): stop draft PRs from wasting CI/review-pipeline resources (#6670) by @JSONbored in #6679

Full Changelog: orb-v2.1.0-beta.6...orb-v2.1.0-beta.7

loopover-orb orb-v2.1.0-beta.6

Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Jul 16:57
Immutable release. Only release title and notes can be modified.
42805e0

LoopOver Orb container image:

docker pull ghcr.io/jsonbored/loopover-selfhost:orb-v2.1.0-beta.6

Multi-arch (linux/amd64 + linux/arm64). See https://loopover.ai/docs/maintainer-self-hosting for setup.
Includes the Claude Code / Codex subscription CLIs by default; credentials stay runtime-only.
Sentry release id baked into the image: gittensory-orb@2.1.0-beta.6.

What's Changed

🚀 Features

🐛 Fixes

  • chore(ui): remove dead Breadcrumbs and ScrollFlow components by @luciferlive112116 in #6450
  • fix(miner-ui): render oldestQueuedAgeMs in the overview portfolio card (#6185) by @shin-core in #6451
  • fix(ui): content-shaped loading skeletons for dead-letter/maintainer/miner panels (#6178) by @nghetienhiep in #6452
  • fix(ui): adopt TableScroll + caption + scope=col a11y pattern across 8 tables by @nghetienhiep in #6453
  • fix(review): linked-issue claim priority theft, unscoped PR-mention pollution, hard-rule stickiness, and draft-cycling double-count by @JSONbored in #6455
  • fix(miner-ui): render the events-by-type breakdown ledgers already fetches by @luciferlive112116 in #6456
  • fix(review): thread commitMessages to the live slop gate, wire screenshot-gate advisory mode, and scope rate limits per-repo by @JSONbored in #6457
  • fix(review): freshness-gate shadow-override promotion, audit-before-write ordering, and clear_at preservation by @JSONbored in #6458
  • fix(review): defang prompt-injection payloads in RAG-retrieved reference context by @JSONbored in #6459
  • fix(review): redact cohort/miner-originated/human-originated/raw-trust and bare score in public sanitizers by @JSONbored in #6460
  • fix(review): include the PR body in the AI-review cache fingerprint by @JSONbored in #6463
  • fix(review): honor selftune opt-out and revoked autonomy in override read-back by @JSONbored in #6464
  • fix(review): pin expectedHeadSha on the contributor_cap close action by @JSONbored in #6466
  • fix(review): correlate screenshot-table presence-mode evidence to the PR head SHA by @JSONbored in #6467
  • fix(settings): give loopover its own autonomy config-as-code by @JSONbored in #6468
  • fix(engine): exempt generated/vendored/minified files from the missing-test-evidence signal by @JSONbored in #6469
  • fix(engine): stop the collision report using unscoped issue.linkedPrs for risk escalation by @JSONbored in #6470
  • fix(review): give score-breakdown.ts its own vocabulary instead of the public sanitizer by @JSONbored in #6473
  • fix(ui): forward errorKind so dashboards show connectivity-aware errors by @luciferlive112116 in #6476
  • fix(db): renumber colliding migration 0156 to 0157 by @JSONbored in #6484
  • fix(ui): render generatedAt on GateOutcomeCard and ActivationPreview by @galuis116 in #6492
  • fix(test): stop createTestEnv() default leaking the bundled self-repo manifest by @JSONbored in #6493
  • fix(ui): rename remaining user-visible gittensory branding to LoopOver by @JSONbored in #6499
  • fix(db): grandfather the 0156 migration-number collision by @JSONbored in #6494
  • fix(settings): restore draftPrClosePolicy after it was dropped by the autonomy config-as-code PR by @JSONbored in #6496
  • fix(ci): repair two functional breaks left by the gittensory->loopover rename by @JSONbored in #6497
  • fix(config): scrub remaining pre-rename gittensory references by @JSONbored in #6532
  • refactor(test): move queue-4.test.ts's Batch A fields to manifest injection by @JSONbored in #6528
  • docs(config): fix remaining gittensory residue in shipped config examples by @JSONbored in #6502
  • fix(ui): wire StateBoundary's errorLabel at the six real dashboard call sites by @galuis116 in #6523
  • chore: rename npm package metadata from gittensory to loopover by @JSONbored in #6500
  • fix(miner): wire DEPLOYMENT.md audit into real CI execution by @RealDiligent in #6524
  • feat(mcp): register plan-DAG tools + local scorer in packages/loopover-mcp by @galuis116 in #6526
  • fix(ci): capture review-enrichment node:test coverage for Codecov by @RealDiligent in #6527
  • refactor(test): move queue-2.test.ts's Batch A fields to manifest injection by @JSONbored in #6531
  • refactor(test): move queue.test.ts/queue-5.test.ts's Batch A fields to manifest injection by @JSONbored in #6533
  • refactor(test): move queue-3/queue-lifecycle-guards Batch A fields to manifest injection...
Read more

gittensory-orb orb-v2.1.0-beta.5

Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Jul 08:42
Immutable release. Only release title and notes can be modified.
fada218

LoopOver Orb container image:

docker pull ghcr.io/jsonbored/loopover-selfhost:orb-v2.1.0-beta.5

Multi-arch (linux/amd64 + linux/arm64). See https://loopover.ai/docs/maintainer-self-hosting for setup.
Includes the Claude Code / Codex subscription CLIs by default; credentials stay runtime-only.
Sentry release id baked into the image: gittensory-orb@2.1.0-beta.5.

What's Changed

🚀 Features

  • feat(engine): add a stable, versioned getTrackRecordSummary read API by @lourincedaging0-commits in #6316
  • feat(mcp): add a typed PostHog wrapper module for packages/loopover-mcp by @claytonlin1110 in #6368
  • feat(mcp): register the maintain REST surface as local stdio tools by @luciferlive112116 in #6382
  • docs(ams): port docs/env-reference.md to a generated website docs page (docs.ams-env-reference.tsx) by @oktofeesh1 in #6385
  • feat(ui): adopt RefreshMeta on owner, miner, and digest panels by @jsdevninja in #6387
  • feat(mcp): register the 8 miner write-tools on the local stdio server by @davion-knight in #6390
  • feat(engine): define a shared TrustSignal type for ORB/AMS reputation bridging by @lourincedaging0-commits in #6379
  • docs(ams): port docs/discovery-plane-operator-guide.md to a website docs page (docs.ams-discovery-plane.tsx) by @oktofeesh1 in #6391
  • docs(ams): port docs/miner-goal-spec.md to a website docs page (docs.ams-goal-spec.tsx) by @oktofeesh1 in #6397
  • docs: cover MCP tool-call telemetry in the privacy boundary by @luciferlive112116 in #6422
  • docs(ams): port docs/fleet-run-manifest.md to a website docs page (docs.ams-fleet-manifest.tsx) by @oktofeesh1 in #6433
  • feat(mcp): validate .loopover.yml offline by extracting buildFocusManifestValidation into @loopover/engine by @davion-knight in #6425
  • feat(mcp): record local stdio tool calls at the dispatch chokepoint by @luciferlive112116 in #6432

🐛 Fixes

  • fix(mcp): honor --help for analyze-branch and preflight by @bohdansolovie in #6326
  • feat(review): downscale desktop Visual-preview thumbnails in self-host mode by @JSONbored in #6347
  • docs(selfhost): .env.example documents the current Orb collector/broker defaults by @dhgoal in #6352
  • fix(ci): check-orb-release-due picks the true latest orb tag, not a stale beta by @dhgoal in #6353
  • fix(mcp): treat a bare help positional as --help in parseOptions (#6257) by @nickmopen in #6362
  • fix(selfhost): fail open with a metric on a token-cache Redis error by @galuis116 in #6364
  • docs(selfhost): describe what the starters actually ship for critical secrets by @luciferlive112116 in #6365
  • docs(selfhost): document CONFIG_DIR_EMPTY_ACKNOWLEDGED in .env.example by @galuis116 in #6367
  • fix(ui): mount ConfigGeneratorYamlPreview in the config generator panel by @jsdevninja in #6371
  • fix(ci): regenerate fumadocs collections unconditionally in validate-code by @JSONbored in #6375
  • fix(mcp): drop autonomy levels the server removed in #4620 from the CLI by @luciferlive112116 in #6378
  • fix(mcp): print unknown API compatibility in status (#6263) by @thomasalvaedison7777-lgtm in #6363
  • fix(mcp): redact a parenthesis/bracket/colon-prefixed local path in redactLocalPath by @joaovictor91123 in #6369
  • fix(ci): wait for all 6 test shards before Codecov posts a patch status by @JSONbored in #6386
  • feat(review): give LOOPOVER_REVIEW_PLANNER a per-repo config override by @JSONbored in #6321
  • feat(selfhost): make LOOPOVER_REVIEW_OPS and LOOPOVER_PUBLIC_STATS .loopover.yml-controllable by @JSONbored in #6372
  • feat(loopover)!: full production cutover to loopover.ai, retire gittensory.aethereal.dev routes by @JSONbored in #6380
  • docs: update remaining links/prose from gittensory.aethereal.dev to loopover.ai by @JSONbored in #6381
  • fix(selfhost): guard pg-adapter's rollback so it can't mask the original batch error by @galuis116 in #6392
  • feat(selfhost): make LOOPOVER_REVIEW_DRAFT and LOOPOVER_AUTO_FILE_DRIFT_ISSUES .loopover.yml-controllable by @JSONbored in #6373
  • fix(ci): resolve wrangler via require.resolve, never PATH, for cf-typegen by @JSONbored in #6384
  • chore(rees): remove dead captureError export in review-enrichment/src/sentry.ts by @galuis116 in #6393
  • fix(selfhost): raise ollama's default batch size to match bge-m3's context window by @JSONbored in #6394
  • docs(rees): README analyzer table lists all 57 registered analyzers by @dhgoal in #6395
  • fix(ci): derive version-copy floor from single source of truth by @nghetienhiep in #6374
  • fix(db): order pull-request list queries deterministically by @JSONbored in #6388
  • fix(mcp): sanitize every terminal path that prints API-controlled text by @luciferlive112116 in #6396
  • test(ci): give check-mcp-package.mjs an injectable, unit-testable seam by @nghetienhiep in #6389
  • chore(miner): remove dead config-precedence.js wrapper module (#6159) by @shin-core in #6400
  • docs: document OLLAMA_NUM_BATCH in .env.example by @JSONbored in #6423
  • fix(api): open the public no-credential routes to any CORS origin by @JSONbored in #6401
  • chore(mcp): remove dead referenceScorePreviewCommand export in local-branch.js by @galuis116 in #6402
  • chore(ci): add .github/superagent.yml, exempt established repeat contributors by @JSONbored in #6435
  • fix(engine): exclude lockfiles and dependency manifests from trivial-churn detection by @JSONbored in #6429
  • chore(signals): converge change-guardrail.ts and preflight-limits.ts onto their @loopover/engine shims by @galuis116 in #6403
  • fix(extension): handle a rejected sendMessage in loadOpportunityBadge by @dhgoal in #6430
  • chore(miner-ui): move 3 test-only fixture factories out of the lib's public API into their test files by @real-venus in #6438
  • chore(review): converge 9 hand-duplicated src/review/ files onto their @loopover/engine shims by @galuis116 in #6437
  • fix(miner): expire claims orphaned by a dead process at claim time by @luciferlive112116 in #6441
  • fix(ci): check-mcp-package imports the shared secret-shape detector by @dhgoal in #6447
  • fix(ci): skip the heavy job fan-out for draft pull requests by @JSONbored in #6448
  • chore(engine): remove dead isDuplicateClusterWinner (#6172) by @shin-core in #6434

New Contributors

Full Changelog: orb-v2.1.0-beta.4...orb-v2.1.0-beta.5