Skip to content

fix(ui): remove the maintainer-extension's public UI surface#8600

Merged
loopover-orb[bot] merged 1 commit into
mainfrom
claude/remove-extension-ui-surface
Jul 25, 2026
Merged

fix(ui): remove the maintainer-extension's public UI surface#8600
loopover-orb[bot] merged 1 commit into
mainfrom
claude/remove-extension-ui-surface

Conversation

@JSONbored

Copy link
Copy Markdown
Owner

Closes #8597. First of three sequenced sub-issues under the browser-extension removal epic (#8596) — lands before the package itself is deleted (#8598) so the download button/page disappear before the zip they point at stops being generated, never the other way around.

Changes

  • Deleted apps/loopover-ui/src/routes/extension.tsx (the /extension route, its ExtensionTokenButton, download button) and extension.test.tsx
  • Removed both nav links (site footer "Product" column, command palette "Reference" group)
  • Removed the /extension sitemap entry and the README table row
  • Reworded roadmap.tsx's Phase 2 entry to drop the browser-extension framing while keeping its real remaining scope (maintainer trust checklist, install health, private/public rendering checks) — swapped the "Open extension page" link for /app/maintainer, an existing route that already covers install health and maintainer controls, rather than deleting the link outright
  • maintainer-install-trust.mdx needed more than the single section the issue's original file-level grep found: removed the "## Browser extension states" section in full (heading, code block, and the screenshot-requirement sentence after it), the "Extension sessions are scoped..." audit bullet, and the closing cross-link — reworded the "Reject UI or extension PRs" bullet to just "Reject UI PRs" since that rule was never extension-specific
  • Verified self-hosting-operations.mdx's "extension block" mention is a false positive (Docker Compose x- extension fields) and left it unchanged, per the issue's own instruction to verify rather than assume
  • routeTree.gen.ts regenerated via a real UI build, not hand-edited

Validation

  • npm --workspace @loopover/ui run typecheck: clean
  • npm run ui:lint: 0 errors
  • npm --workspace @loopover/ui run test: 86 files / 571 tests passing
  • npm run docs:drift-check: clean

Closes #8597, first of the browser-extension removal epic's three
sequenced sub-issues (#8596). Lands before the package itself is
deleted (next sub-issue) so the "Download extension" button and its
download page disappear before the zip they point at stops being
generated -- never the other way around, which would leave a live
broken download link on the public site.

Removes the dedicated /extension route and its test, both nav links
(site footer, command palette), the sitemap entry, and the README
table row. Reworded roadmap.tsx's Phase 2 entry to drop the browser-
extension framing while keeping its real remaining scope (maintainer
trust checklist, install health, private/public rendering checks) --
swapped its "Open extension page" link for /app/maintainer, a route
that already covers install health and maintainer controls, rather
than just deleting the link outright.

maintainer-install-trust.mdx needed more than the single section the
original file-level grep found: removed the "## Browser extension
states" section (heading through its code block and the screenshot-
requirement sentence immediately after it), the "Extension sessions
are scoped..." audit-expectations bullet, and the "Browser extension"
cross-link in the closing paragraph -- also reworded the "Reject UI or
extension PRs" bullet to just "Reject UI PRs" since that rule was
never extension-specific. self-hosting-operations.mdx's "extension
block" mention is a false positive (Docker Compose's `x-` extension
fields, unrelated) -- left unchanged after verifying context, per the
issue's own explicit instruction not to assume.

routeTree.gen.ts regenerated via a real `npm --workspace @loopover/ui
run build`, not hand-edited.

Validated: typecheck clean, ui:lint 0 errors, ui:test 86 files/571
tests passing, docs:drift-check clean.
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 25, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
loopover-ui 5016abf Commit Preview URL

Branch Preview URL
Jul 25 2026, 01:50 AM

@superagent-security

Copy link
Copy Markdown
Contributor

Superagent didn't find any vulnerabilities or security issues in this PR.

@codecov

codecov Bot commented Jul 25, 2026

Copy link
Copy Markdown

Bundle Report

Changes will decrease total bundle size by 14.43kB (-0.19%) ⬇️. This is within the configured threshold ✅

Detailed changes
Bundle name Size Change
loopover-ui 7.44MB -14.43kB (-0.19%) ⬇️

Affected Assets, Files, and Routes:

view changes for bundle: loopover-ui

Assets Changed:

Asset Name Size Change Total Size Change (%)
assets/add-scalar-classes-Cb6Y7aTm.js (New) 2.17MB 2.17MB 100.0% 🚀
assets/tanstack-vendor-DTIz1CC1.js (New) 739.68kB 739.68kB 100.0% 🚀
assets/docs.fumadocs-spike-api-reference-4Fnm-Kj1.js (New) 442.92kB 442.92kB 100.0% 🚀
assets/AgentScalarChatInterface.vue-im7eFlsX.js (New) 201.71kB 201.71kB 100.0% 🚀
assets/modal-D1rhSIcG.js (New) 184.38kB 184.38kB 100.0% 🚀
assets/client-yt6RMYPO.js (New) 146.06kB 146.06kB 100.0% 🚀
assets/styles-DlHeA-xU.css (New) 129.48kB 129.48kB 100.0% 🚀
assets/maintainer-panel-D3DKXMM8.js (New) 78.99kB 78.99kB 100.0% 🚀
assets/ui-vendor-vJmsPsT6.js (New) 57.04kB 57.04kB 100.0% 🚀
assets/routes-D65e16NV.js (New) 34.98kB 34.98kB 100.0% 🚀
assets/owner-panel-D1bXZlOn.js (New) 27.46kB 27.46kB 100.0% 🚀
assets/app-BUDkcMON.js (New) 25.95kB 25.95kB 100.0% 🚀
assets/app.runs-CS-jOT9Q.js (New) 23.56kB 23.56kB 100.0% 🚀
assets/miner-panel-DyTqo_xb.js (New) 20.28kB 20.28kB 100.0% 🚀
assets/maintainer-install-trust-ZUNtphD5.js (New) 18.06kB 18.06kB 100.0% 🚀
assets/api._op-Dvjs6C8D.js (New) 17.57kB 17.57kB 100.0% 🚀
assets/self-hosting-docs-audit-iabFAM4_.js (New) 16.61kB 16.61kB 100.0% 🚀
assets/app.index-D0PxB2kP.js (New) 15.62kB 15.62kB 100.0% 🚀
assets/docs._slug-Bxb33S7i.js (New) 15.37kB 15.37kB 100.0% 🚀
assets/playground-panel-Bwrg5_53.js (New) 14.49kB 14.49kB 100.0% 🚀
assets/fairness-PtXgG-Vb.js (New) 10.6kB 10.6kB 100.0% 🚀
assets/app.audit-XqxRxtQO.js (New) 10.11kB 10.11kB 100.0% 🚀
assets/app.config-generator-CEk0JPr0.js (New) 10.09kB 10.09kB 100.0% 🚀
assets/maintainers-CTDaOMN-.js (New) 8.09kB 8.09kB 100.0% 🚀
assets/miners-CKQp1HcG.js (New) 7.91kB 7.91kB 100.0% 🚀
assets/agents-DHVPEsOs.js (New) 7.8kB 7.8kB 100.0% 🚀
assets/commands-panel-lJANlSZ_.js (New) 6.65kB 6.65kB 100.0% 🚀
assets/roadmap-C1zcq-mM.js (New) 6.52kB 6.52kB 100.0% 🚀
assets/maintainer-workflow-ZCrBn6Cl.js (New) 6.52kB 6.52kB 100.0% 🚀
assets/digest-panel-CJLmtxCh.js (New) 6.18kB 6.18kB 100.0% 🚀
assets/repos._owner._repo.quality-Bs1QtmuR.js (New) 6.14kB 6.14kB 100.0% 🚀
assets/docs-nav-wFzIhTFf.js (New) 5.95kB 5.95kB 100.0% 🚀
assets/docs.index-DrH2gdWY.js (New) 5.95kB 5.95kB 100.0% 🚀
assets/api.index-BRbqjVSF.js (New) 4.7kB 4.7kB 100.0% 🚀
assets/docs-Ca7DtJ68.js (New) 2.7kB 2.7kB 100.0% 🚀
assets/api-bp3a5pl7.js (New) 2.69kB 2.69kB 100.0% 🚀
sitemap.xml -54 bytes 2.3kB -2.29%
assets/docs-page-Ct7Vpjrx.js (New) 2.1kB 2.1kB 100.0% 🚀
assets/table-CjxIrXoN.js (New) 1.75kB 1.75kB 100.0% 🚀
assets/app.workbench-BD592sUI.js (New) 1.58kB 1.58kB 100.0% 🚀
assets/tooltip-DqIGr3_4.js (New) 1.47kB 1.47kB 100.0% 🚀
assets/session-CBqBL9lg.js (New) 1.45kB 1.45kB 100.0% 🚀
assets/tabs-DekNjFrg.js (New) 1.39kB 1.39kB 100.0% 🚀
assets/app.repos-DekvhK2S.js (New) 1.07kB 1.07kB 100.0% 🚀
assets/input-PdJ1we-G.js (New) 796 bytes 796 bytes 100.0% 🚀
assets/file-cog-CaHDAy5P.js (New) 758 bytes 758 bytes 100.0% 🚀
assets/app.maintainer-DOi8YqFd.js (New) 502 bytes 502 bytes 100.0% 🚀
assets/sparkles-Djct9JoQ.js (New) 494 bytes 494 bytes 100.0% 🚀
assets/app.owner-Bsacj3XM.js (New) 474 bytes 474 bytes 100.0% 🚀
assets/app.commands-DOInNn04.js (New) 455 bytes 455 bytes 100.0% 🚀
assets/app.playground-hN93Vc8f.js (New) 442 bytes 442 bytes 100.0% 🚀
assets/index-BkZdO-wC.js (New) 438 bytes 438 bytes 100.0% 🚀
assets/app.digest-BMjWMVVC.js (New) 430 bytes 430 bytes 100.0% 🚀
assets/eye-off-DyCtgj8n.js (New) 430 bytes 430 bytes 100.0% 🚀
assets/app.miner-CoVh9_AM.js (New) 422 bytes 422 bytes 100.0% 🚀
assets/key-round-DoDqfLpd.js (New) 355 bytes 355 bytes 100.0% 🚀
assets/bot-LQL3VXGs.js (New) 328 bytes 328 bytes 100.0% 🚀
assets/trash-2-DFBN7A2r.js (New) 328 bytes 328 bytes 100.0% 🚀
assets/save-GvSVYx5W.js (New) 327 bytes 327 bytes 100.0% 🚀
assets/git-pull-request-arrow-BmN2TBKa.js (New) 321 bytes 321 bytes 100.0% 🚀
assets/wrench-Bv1bQ1-t.js (New) 303 bytes 303 bytes 100.0% 🚀
assets/list-checks-P-eHIZrc.js (New) 279 bytes 279 bytes 100.0% 🚀
assets/workflow-BaNHE_WD.js (New) 265 bytes 265 bytes 100.0% 🚀
assets/compass-D2btRIHo.js (New) 251 bytes 251 bytes 100.0% 🚀
assets/history-ax8EeqFq.js (New) 237 bytes 237 bytes 100.0% 🚀
assets/activity-DqWy3G7b.js (New) 234 bytes 234 bytes 100.0% 🚀
assets/message-square-D1k43j6C.js (New) 233 bytes 233 bytes 100.0% 🚀
assets/lock-pY5CEqLr.js (New) 206 bytes 206 bytes 100.0% 🚀
assets/rotate-cw-BN10shR2.js (New) 201 bytes 201 bytes 100.0% 🚀
assets/play-6_PFsGc-.js (New) 190 bytes 190 bytes 100.0% 🚀
assets/circle-check-BqlGFAxF.js (New) 178 bytes 178 bytes 100.0% 🚀
assets/search-A65FDPgd.js (New) 174 bytes 174 bytes 100.0% 🚀
assets/circle-C-Q5l2mY.js (New) 130 bytes 130 bytes 100.0% 🚀
assets/add-scalar-classes-NfMwGBoc.js (Deleted) -2.17MB 0 bytes -100.0% 🗑️
assets/tanstack-vendor-ucvPYKRU.js (Deleted) -740.64kB 0 bytes -100.0% 🗑️
assets/docs.fumadocs-spike-api-reference-DDBnF4d0.js (Deleted) -442.92kB 0 bytes -100.0% 🗑️
assets/AgentScalarChatInterface.vue-CirzyD98.js (Deleted) -201.71kB 0 bytes -100.0% 🗑️
assets/modal-C11XP4Ap.js (Deleted) -184.38kB 0 bytes -100.0% 🗑️
assets/client-NjAZGcJR.js (Deleted) -146.06kB 0 bytes -100.0% 🗑️
assets/styles-BxyelPIv.css (Deleted) -130.51kB 0 bytes -100.0% 🗑️
assets/maintainer-panel-RFbPFRIg.js (Deleted) -78.99kB 0 bytes -100.0% 🗑️
assets/ui-vendor-BWG6WGVk.js (Deleted) -57.04kB 0 bytes -100.0% 🗑️
assets/routes-CLdmh5nw.js (Deleted) -34.98kB 0 bytes -100.0% 🗑️
assets/owner-panel-BaCd2VZ0.js (Deleted) -27.46kB 0 bytes -100.0% 🗑️
assets/app-kv_bpDoI.js (Deleted) -25.95kB 0 bytes -100.0% 🗑️
assets/app.runs-DIOmEvai.js (Deleted) -23.56kB 0 bytes -100.0% 🗑️
assets/miner-panel-ChCvGKNg.js (Deleted) -20.28kB 0 bytes -100.0% 🗑️
assets/maintainer-install-trust-sfWxUO6-.js (Deleted) -20.04kB 0 bytes -100.0% 🗑️
assets/api._op-CfTxll6S.js (Deleted) -17.57kB 0 bytes -100.0% 🗑️
assets/self-hosting-docs-audit-CNqjese4.js (Deleted) -16.61kB 0 bytes -100.0% 🗑️
assets/app.index-8obilXYz.js (Deleted) -15.62kB 0 bytes -100.0% 🗑️
assets/docs._slug-nDBIcey0.js (Deleted) -15.37kB 0 bytes -100.0% 🗑️
assets/playground-panel-DkDrfY7L.js (Deleted) -14.49kB 0 bytes -100.0% 🗑️
assets/fairness-Cb7KAyMa.js (Deleted) -10.6kB 0 bytes -100.0% 🗑️
assets/app.audit-Dh_OU8Xq.js (Deleted) -10.11kB 0 bytes -100.0% 🗑️
assets/app.config-generator-BIjRDguc.js (Deleted) -10.09kB 0 bytes -100.0% 🗑️
assets/extension-Yue5018y.js (Deleted) -10.04kB 0 bytes -100.0% 🗑️
assets/maintainers--EA8JVqr.js (Deleted) -8.09kB 0 bytes -100.0% 🗑️
assets/miners-BNAGbvJp.js (Deleted) -7.91kB 0 bytes -100.0% 🗑️
assets/agents-0u0nPX8R.js (Deleted) -7.8kB 0 bytes -100.0% 🗑️
assets/commands-panel-B8IR5mtT.js (Deleted) -6.65kB 0 bytes -100.0% 🗑️
assets/maintainer-workflow-CUl8OLOM.js (Deleted) -6.52kB 0 bytes -100.0% 🗑️
assets/roadmap-CC91BogK.js (Deleted) -6.33kB 0 bytes -100.0% 🗑️
assets/digest-panel-DY8Wq5Xu.js (Deleted) -6.18kB 0 bytes -100.0% 🗑️
assets/repos._owner._repo.quality-CUa1Mlv9.js (Deleted) -6.14kB 0 bytes -100.0% 🗑️
assets/docs-nav-Bg7hiU8l.js (Deleted) -5.95kB 0 bytes -100.0% 🗑️
assets/docs.index-CAB-YDBE.js (Deleted) -5.79kB 0 bytes -100.0% 🗑️
assets/api.index-DrJ_quQ8.js (Deleted) -4.7kB 0 bytes -100.0% 🗑️
assets/docs-DQJf4KF1.js (Deleted) -2.7kB 0 bytes -100.0% 🗑️
assets/api-wtPNahZu.js (Deleted) -2.69kB 0 bytes -100.0% 🗑️
assets/docs-page-pscdEVTk.js (Deleted) -2.1kB 0 bytes -100.0% 🗑️
assets/table-dMCrJs1q.js (Deleted) -1.75kB 0 bytes -100.0% 🗑️
assets/app.workbench-B8mCxdex.js (Deleted) -1.58kB 0 bytes -100.0% 🗑️
assets/tooltip-DKK5XlU7.js (Deleted) -1.47kB 0 bytes -100.0% 🗑️
assets/session-Dg_XOFNI.js (Deleted) -1.45kB 0 bytes -100.0% 🗑️
assets/tabs-68EGa4dl.js (Deleted) -1.39kB 0 bytes -100.0% 🗑️
assets/app.repos-65M6Utnl.js (Deleted) -1.07kB 0 bytes -100.0% 🗑️
assets/input-Dq9rEVkq.js (Deleted) -796 bytes 0 bytes -100.0% 🗑️
assets/file-cog-B_h0fPbJ.js (Deleted) -758 bytes 0 bytes -100.0% 🗑️
assets/app.maintainer-mUDKExZn.js (Deleted) -502 bytes 0 bytes -100.0% 🗑️
assets/sparkles-BZmc9viR.js (Deleted) -494 bytes 0 bytes -100.0% 🗑️
assets/app.owner-DNAbUH21.js (Deleted) -474 bytes 0 bytes -100.0% 🗑️
assets/app.commands-BDdSMO18.js (Deleted) -455 bytes 0 bytes -100.0% 🗑️
assets/app.playground-PWSLxM8w.js (Deleted) -442 bytes 0 bytes -100.0% 🗑️
assets/reveal-BNAsQOiZ.js (Deleted) -442 bytes 0 bytes -100.0% 🗑️
assets/index-BYzK52EJ.js (Deleted) -438 bytes 0 bytes -100.0% 🗑️
assets/app.digest-DbIa3Anj.js (Deleted) -430 bytes 0 bytes -100.0% 🗑️
assets/eye-off-BPJi2Evn.js (Deleted) -430 bytes 0 bytes -100.0% 🗑️
assets/app.miner-6BdmULsh.js (Deleted) -422 bytes 0 bytes -100.0% 🗑️
assets/key-round-DJo0nBfE.js (Deleted) -355 bytes 0 bytes -100.0% 🗑️
assets/bot-CWGU5su9.js (Deleted) -328 bytes 0 bytes -100.0% 🗑️
assets/trash-2-vfJKT6DN.js (Deleted) -328 bytes 0 bytes -100.0% 🗑️
assets/save-CtSC_k6P.js (Deleted) -327 bytes 0 bytes -100.0% 🗑️
assets/git-pull-request-arrow-Bm3UtW49.js (Deleted) -321 bytes 0 bytes -100.0% 🗑️
assets/wrench-BZnMzOds.js (Deleted) -303 bytes 0 bytes -100.0% 🗑️
assets/list-checks-bcecuYHo.js (Deleted) -279 bytes 0 bytes -100.0% 🗑️
assets/shield-D5ERBebY.js (Deleted) -272 bytes 0 bytes -100.0% 🗑️
assets/workflow-BnCRe8M5.js (Deleted) -265 bytes 0 bytes -100.0% 🗑️
assets/compass-DglgaMpF.js (Deleted) -251 bytes 0 bytes -100.0% 🗑️
assets/history-DfiIJS22.js (Deleted) -237 bytes 0 bytes -100.0% 🗑️
assets/activity-BGzyJI__.js (Deleted) -234 bytes 0 bytes -100.0% 🗑️
assets/message-square-Dov6Tb1r.js (Deleted) -233 bytes 0 bytes -100.0% 🗑️
assets/lock-C9tmTK7H.js (Deleted) -206 bytes 0 bytes -100.0% 🗑️
assets/rotate-cw-CC_ZmuqS.js (Deleted) -201 bytes 0 bytes -100.0% 🗑️
assets/play-B_YRe6bs.js (Deleted) -190 bytes 0 bytes -100.0% 🗑️
assets/circle-check-C3aXC-iH.js (Deleted) -178 bytes 0 bytes -100.0% 🗑️
assets/search-DEB5VdUD.js (Deleted) -174 bytes 0 bytes -100.0% 🗑️
assets/circle-CEBGnfFU.js (Deleted) -130 bytes 0 bytes -100.0% 🗑️

@loopover-orb loopover-orb Bot added the gittensor:bug Gittensor-scored bug fix — scores a 0.05x multiplier. label Jul 25, 2026
@loopover-orb

loopover-orb Bot commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

Tip

✅ LoopOver review result - approve/merge recommended

Review updated: 2026-07-25 01:52:30 UTC

9 files · 1 AI reviewer · no blockers · readiness 100/100 · CI green · clean

✅ Suggested Action - Approve/Merge

  • safe to merge

Review summary
This PR cleanly removes the /extension route, its component, its test file, and all nav/sitemap/README references, then rewires roadmap.tsx's Phase 2 link to the existing /app/maintainer route instead of leaving a dead link. The docs edit to maintainer-install-trust.mdx correctly removes the full 'Browser extension states' section, the audit bullet, and the closing cross-link, and generalizes the 'Reject UI or extension PRs' rule to 'Reject UI PRs' since that rule was never extension-specific. routeTree.gen.ts changes are consistent with a real build regeneration (all extension references removed symmetrically across the by-path/by-to/by-id maps), and the self-hosting-operations.mdx false-positive was correctly left alone per the issue's own instruction.

Nits — 5 non-blocking
  • apps/loopover-ui/public/sitemap.xml: verify no other sitemap or robots reference (e.g. a generated sitemap index) still points at /extension, though the visible file here is clean.
  • The size-smell flag on routeTree.gen.ts is expected noise for a generated router file and not a real maintainability concern given this diff only removes lines from it.
  • None beyond what's already covered — the roadmap.tsx link swap to /app/maintainer (apps/loopover-ui/src/routes/roadmap.tsx:97-100) is the right call since that route already covers install health and maintainer controls.
  • PR author also opened the linked issue — Link an issue that was opened by a different contributor, or provide a rationale for why this self-authored issue represents genuine discovery work.
  • Code changes lack test evidence — Add focused regression tests or explain why existing coverage is sufficient.

Decision drivers

  • ✅ Code review — No blockers (1 reviewer)
  • ✅ Gate result — Passing (No configured blocker found.)
Context & advisory signals — never blocks the verdict
Signal Result Evidence
Linked issue ✅ Linked #8597
Related work ✅ No active overlap found No same-issue or scoped active PR overlap found.
Change scope ✅ 20/20 Low review scope from cached public metadata (1 linked issue).
Validation posture ✅ 25/25 PR body includes validation/test evidence.
Contributor workload ✅ 10/10 Author activity: 13 registered-repo PR(s), 13 merged, 277 issue(s).
Contributor context ✅ Confirmed Gittensor contributor JSONbored; Gittensor profile; 13 PR(s), 277 issue(s).
Improvement ℹ️ None detected risk: low · value: none · LLM: moderate
Linked issue satisfaction

Addressed
The diff deletes the /extension route and its test, removes both nav links, strips the sitemap entry and README row, removes the roadmap phase's extension framing while keeping remaining scope, removes the docs section/code-block/cross-link in maintainer-install-trust.mdx, and regenerates routeTree.gen.ts consistent with the route deletion.

Review context
  • Author: JSONbored
  • Role context: owner (maintainer lane)
  • Public audience mode: oss maintainer
  • Lane context: Repository is configured for direct PR review.
  • Public profile languages: not available
  • Official Gittensor activity: 13 PR(s), 277 issue(s).
  • PR-specific overlap: none found.
Contributor next steps
  • Start here: Treat this as maintainer-lane context rather than normal contributor-lane activity.
Signal definitions
  • Related work = same linked issue, overlapping active PRs, or title/path similarity.
  • Change scope = cached public metadata such as size labels, draft state, and review-burden hints.
  • Validation posture = whether the PR provides enough public validation/test evidence for maintainer review.
  • Contributor workload = public contributor activity and cleanup pressure, not a repo-wide quality failure.
  • Contributor context = public GitHub/Gittensor identity context; non-Gittensor status is not a blocker.
🧪 Chat with LoopOver

Ask LoopOver a question about this PR directly in a comment — grounded only in the same cached, public-safe facts shown above, never a new claim.

  • @loopover ask <question> answers contribution-quality Q&A with source citations and freshness.
  • @loopover chat <question> answers in natural prose from cached decision-pack facts via local inference (maintainer/collaborator; read-only).
  • A plain-language @loopover mention with a real question is routed to the closest matching read-only command automatically — no exact syntax required.

Full command reference: https://loopover.ai/docs/loopover-commands

🧪 Experimental — new and may change.

Visual preview
Route Viewport Before (production) After (this PR's preview) Diff
/extension/test desktop before /extension/test
before /extension/test
after /extension/test
after /extension/test
/extension/test mobile before /extension/test (mobile)
before /extension/test (mobile)
after /extension/test (mobile)
after /extension/test (mobile)
/extension desktop before /extension
before /extension
after /extension
after /extension
/extension mobile before /extension (mobile)
before /extension (mobile)
after /extension (mobile)
after /extension (mobile)

Click any thumbnail to open the full-size screenshot. Before = production · After = this PR's preview deploy.

Scroll preview
Route Before (production) After (this PR's preview)
/extension/test before /extension/test (scroll)
before /extension/test (scroll)
after /extension/test (scroll)
after /extension/test (scroll)
/extension before /extension (scroll)
before /extension (scroll)
after /extension (scroll)
after /extension (scroll)

A short scroll-through clip (desktop) — click either thumbnail to open the full animation. Evidence for scroll-linked behavior a single screenshot can't show.

🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed


💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →.

Checked by LoopOver, a quiet PR intelligence layer for OSS maintainers.

  • Re-run LoopOver review

@loopover-orb loopover-orb Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LoopOver approves — the gate is satisfied and CI is green.

@loopover-orb
loopover-orb Bot merged commit 6b1eb63 into main Jul 25, 2026
9 checks passed
@loopover-orb
loopover-orb Bot deleted the claude/remove-extension-ui-surface branch July 25, 2026 01:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gittensor:bug Gittensor-scored bug fix — scores a 0.05x multiplier.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ui: remove the maintainer-extension's public UI surface (route, nav, docs, download link)

1 participant