Repository navigation
Bridge 2b: community contributions and the setup checklist - #157
Merged
Merged
Conversation
…dule user refusals The heartbeat reply lists accepts ["setup"]; the Bridge's setup checklist is read leniently and bounded, and its can_contribute wins over the estimates' (Status.CanContribute), which the estimate now reads too. GET /server's bridge block goes only to a signed-in caller. Module listener routes refuse kid and demo accounts.
…ibutions module Two community job kinds (meta is a new feature family). A job that files to the community answers 404 module_off while the module is off, sidecars.generate with contribute issue included, and 409 cannot_contribute unless the Bridge can. meta.correct files only fields an admin edited on the book, with the book's value, and the server stamps its source. generate and contribute refuse each other while open (contribute_open, generate_open). Notifications word the new kinds; a test mounts every builtin module route.
…list - The generate dialogs' contribute switch shows while the contributions module is on and the Bridge can contribute, and starts on. - Share with the community on the Community card queues sidecars.contribute for what the community lacks; its status and issue links show there, and a share in progress holds Generate back (contribute_open). - Suggest corrections: a review of the admin's edited fields against the community's (auto or maintainer badge per field, rows to untick, evidence required and prefilled) queues one meta.correct job; its issue shows in the Community card. - Settings > Bridge gains a Setup card from the reusable BridgeSetupList, with the GitHub account and agent credential read-only and a link to the Bridge's Accounts tab; the Generate section names the setup step it waits on. - With the module off every Contribute, Share and Suggest control is gone.
…ibutions is off A queued sidecars.contribute job is held from claims while the module is off, so it no longer refuses a new generate job (409 contribute_open) nor shows as the estimate's open_job: like a parked one, the generate job cancels it. A claimed or running one still blocks.
A correction batch inside every per-field bound could pass the 16 KiB params cap (and the queue route's 32 KiB body bound) once multi-byte or escaped. meta.correct now takes 128 KiB (kindSpec.maxParams), other kinds keep 16 KiB, and the route's body bound follows bridge.MaxParamsBytes. A value or the evidence holding a bidirectional embedding, override or isolate control is refused at queue time, as the community refuses it.
The refused-credential park points at the Accounts tab as well as the agent container's own credential, and the setup hint lists what the Accounts tab takes (a Claude subscription token, an Anthropic or OpenAI API key), not a ChatGPT sign-in.
…mp the dialog's book title
… no Retry The Bridge now wakes jobs parked agent_credential_refused when the Accounts tab changes the agent credential, and one replaced in the agent container is tried again at the park's retry_at. The notification and the console's park sentence (all six locales) say so instead of asking for a Retry.
The contrib_unavailable notification asked for a retry on the Bridge; a GitHub sign-in on the Bridge's Accounts tab re-admits the parked book, so the job carries on by itself.
This was referenced Oct 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bridge Phase 2b: community contributions through the Bridge (BRIDGE-PLAN.md "Phase 2b"), plus the console half of FIRST-RUN-PLAN F2 (the Bridge setup checklist).
accepts:["setup"]; a Bridge then sends asetupblock (paired, libraries, asr, agent, budget, github).contributecomes fromsetup.can_contributewhen present (ends the 2a flag flap). GET /server'sbridgeblock only for signed-in, non-demo callers.sidecars.contribute(Share with the community) andmeta.correct(Suggest corrections), behind thecontributionsmodule (404module_off). Refusals: 409contribute_open, 400not_edited, 409cannot_contribute. Module user routes refuse kids and demo accounts.&#Xtoo), bidirectional overrides and control characters refused, lengths counted as written.Gates:
scripts/build-admin.sh(1005 tests),go build,go vet,go test -race ./...,golangci-lint0 issues. Reviews: /simplify and /code-review max on every round.Verified live (Playwright, 1440 and 390, dark; fake GitHub and fake meta): module off/on surfaces, setup card, Share and corrections queue and file, one issue per request after a dropped answer, character references flagged in the dialog and refused with 400, park cards in en/de, GET /server bridge block. A real device-flow sign-in against the real App is an owner step.
Merges together with the FIRST-RUN-PLAN F1 server PR (decision 2).
Pairs with KodeStar/audiosilo-meta#2703, KodeStar/audiosilo-meta-community#428, #157, KodeStar/audiosilo-frontend#118, KodeStar/audiosilo-bridge#6, KodeStar/audiosilo-docs#150, KodeStar/audiosilo#72.