Skip to content

gittensory-orb orb-v2.1.0-beta.4

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Jul 05:09
Immutable release. Only release title and notes can be modified.
b7e1bec

LoopOver Orb container image:

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

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.4.

What's Changed

🚀 Features

  • feat(miner): export buildIssueQualityReport for self-review (#6057) by @bohdansolovie in #6142
  • feat(mcp): register 4 maintainer/repo-owner intake tools in packages/loopover-mcp by @jaytbarimbao-collab in #6199
  • refactor(settings): converge 4 duplicated settings files onto their loopover-engine shims by @nghetienhiep in #6201
  • feat(miner-ui): add a pause-reason input to the governor control (#6186) by @nghetienhiep in #6207
  • feat(api): expose self-tune override audit and clear routes (#6168) by @nghetienhiep in #6215
  • feat(api): wire internal decision/calibration routes, drop duplicate handleParity by @nghetienhiep in #6216
  • feat(miner): wire the leakage-safe replay harness into the calibration flow (#3011) by @nghetienhiep in #6219
  • feat(mcp): add loopover_get_pr_reviewability tool on both MCP servers by @lourincedaging0-commits in #6222
  • feat(docs): migrate loopover-ui docs pages to fumadocs-mdx content pipeline by @oktofeesh1 in #6271
  • docs(mcp): clarify ambiguous loopover-mcp stdio tool descriptions for LLM selection by @nghetienhiep in #6270
  • feat(review): expose a repo's effective self-tuned gate thresholds via a read-only endpoint by @lourincedaging0-commits in #6307
  • feat(mcp): compute loopover_lint_pr_text in-process from the shared engine by @nghetienhiep in #6308
  • docs(ams): port DEPLOYMENT.md to a website docs page (docs.ams-deployment.tsx) by @oktofeesh1 in #6312
  • docs(ams): port docs/operations-runbook.md to a website docs page (docs.ams-operations-runbook.tsx) by @oktofeesh1 in #6318
  • feat(mcp): add tools search <query> for fuzzy tool discovery by @nghetienhiep in #6317
  • feat(mcp): compute loopover_check_slop_risk in-process from the shared engine by @nghetienhiep in #6329
  • docs(ams): port docs/observability.md to a website docs page (docs.ams-observability.tsx) by @oktofeesh1 in #6331
  • feat(registry): add subnet-funded pool association to the repo model (#6320) by @nghetienhiep in #6333
  • feat(mcp): categorize and group loopover-mcp tools output (#6301) by @nghetienhiep in #6336
  • docs(ams): port docs/unattended-scheduling.md to a website docs page (docs.ams-unattended-scheduling.tsx) by @oktofeesh1 in #6338
  • feat(miner): add tenant-scoping columns to all four local ledger schemas by @JSONbored in #6340
  • feat(review): add a visible caption under each Visual/Scroll preview thumbnail by @JSONbored in #6341
  • feat(mcp): add telemetry enable/disable CLI command with persisted opt-in by @nghetienhiep in #6348
  • docs(ams): port docs/sizing.md to a website docs page (docs.ams-sizing.tsx) by @oktofeesh1 in #6351
  • feat(mcp): add a typed posthog telemetry wrapper for the remote server by @nghetienhiep in #6355
  • feat(mcp): instrument the remote tool-dispatch chokepoint with PostHog events by @claytonlin1110 in #6358
  • docs(ams): port docs/config-precedence.md to a website docs page (docs.ams-config-precedence.tsx) by @oktofeesh1 in #6360

🐛 Fixes

  • feat(grafana): add additive maintainer review event panels by @james3773 in #6138
  • fix(settings): parse PROTECTED_AUTOCLOSE_AUTHORS_EXTRA via the shared login-list parser (#audit-3.13) by @real-venus in #6214
  • fix(queue): honor autoCloseExemptLogins in the repeated-draft-cycling review-evasion guard by @real-venus in #6217
  • fix(engine): detect activity changes once the progress tail is full by @luciferlive112116 in #6218
  • chore(signals): remove dead deriveContributionLanes superseded by onboarding-pack's contribution-lane model by @real-venus in #6220
  • chore(miner): remove dead parseJsonFlag from portfolio-queue-cli by @dhgoal in #6198
  • docs(miner): fix stale header comment in submission-freshness-check by @dhgoal in #6200
  • fix(github): only swallow 404 in removePullRequestLabel (#6192) by @bohdansolovie in #6211
  • chore(review): remove dead isIgnoredReviewAuthor wrapper (zero callers, thinly wraps decideReviewEligibility) by @real-venus in #6223
  • fix(miner): expose the freeform idea feasibility gate via a CLI command by @nghetienhiep in #6224
  • fix(engine): normalize classifyPortfolioConvergence's numeric inputs by @luciferlive112116 in #6225
  • docs(review): stop claiming the self-improve D1 tables don't exist by @luciferlive112116 in #6232
  • fix(settings): accept [bot]-suffixed logins in contributorBlacklist by @jaytbarimbao-collab in #6233
  • docs(miner-ui): README no longer claims the data views are unshipped by @dhgoal in #6242
  • fix(miner): exit 2, not 1, on a secret-mount failure by @dhgoal in #6248
  • fix(miner): wrap pr-disposition-poller GitHub calls in fetchWithRetry (#4829) by @jaytbarimbao-collab in #6265
  • fix(engine): converge gate-verdict + finding-severity calibration onto reviewer-consensus's zero-weight + malformed-repo handling by @real-venus in #6251
  • chore(miner): remove 3 dead pre-unification governor gates superseded by the chokepoint ladder by @real-venus in #6278
  • test(github): verify installation-token isolation under multi-tenant concurrency by @JSONbored in #6277
  • test(queue): verify concurrent cross-tenant execution isolation by @JSONbored in #6299
  • fix(ui): generate fumadocs-mdx collections/* via postinstall by @oktofeesh1 in #6310
  • fix(security): redact Linear and session GitHub ciphertext in D1 export by @RealDiligent in #6309
  • fix(mcp): complete tab-completion for cache list by @luciferlive112116 in #6298
  • fix(github): retry label and assignee writes on stale installation tokens by @bohdansolovie in #6306
  • docs(selfhost): document Sentry once, matching the code's own default by @luciferlive112116 in #6315
  • docs(db): guardrail listInstallations/listRepositories against tenant-facing misuse by @JSONbored in #6328
  • fix(review): exclude bare .ts app-source files from isVisualPath by @JSONbored in #6330
  • feat(selfhost): give sweep-watchdog and PR-reconciliation a per-repo opt-out by @JSONbored in #6319
  • fix(ci): derive production-smoke MCP versions from package.json by @RealDiligent in #6334
  • fix(review): make the visual-preview poll budget durable per head SHA by @JSONbored in #6335
  • fix(selfhost): fail fast when a configured _FILE secret is unreadable by @RealDiligent in #6337
  • refactor(mcp): consolidate local-path redaction into one shared module by @nghetienhiep in #6339
  • fix(mcp): align env token precedence with the documented order by @nghetienhiep in #6342
  • fix(selfhost): log blob-store path-traversal gets distinctly from misses by @RealDiligent in #6343
  • fix(ci): exit non-zero when lockfile workspace sync misses by @RealDiligent in #6344
  • fix(ci): share MCP tarball allowlist including shipped lib files by @RealDiligent in #6346
  • fix(rees): reconstruct trailing-newline patches instead of failing closed (#6254) by @nickmopen in #6354
  • fix(rees): use the shared diff-file-header predicate in api-break/caller-impact (#6255) by @nickmopen in #6356
  • fix(selfhost): route boot-time advisories through console.error so Sentry can see them by @JSONbored in #6350
  • chore(selfhost): remove dead nonConsumingRetryDelayMs export by @galuis116 in #6357
  • fix(selfhost): move Sentry init before emptyConfigDirAdvisory so it can alert too by @JSONbored in #6359
  • feat(miner): defend the coding agent's instructions against prompt injection in issue text by @JSONbored in #6345

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