feat: add Open Lab research-community prototype - #162
Draft
lksbrssr wants to merge 80 commits into
Draft
Conversation
Add six scoped routes, deterministic signal experiments and paired audit packets. Preserve brochure copy and centralize unavailable auth/record seams for parent integration. Cover draft recovery, public consent, filtering and keyboard accessibility with mounted interaction tests.
Open Lab no longer inherits OS-dark on a first visit. The before-paint boot script and LabShell layout effect keep /lab light unless the visitor explicitly chose appearance, restore marketing OS preference on exit, and never persist the implicit default. Feed, detail, and composer colors use shell tokens with separate primary/selected ink, and the compact workshop heading now outranks the app-shell h1 without !important.
…oarding. First-login and ongoing editors now offer the same DISCIPLINES list, enforce the writer's visible max of eight, keep saved custom and legacy values removable, and recommend populated bottleneck cases instead of invented field IDs.
Keep unfinished builds resumable by stable ID, persist local media with captions, attach results to the originating source, and stop packet/result CTAs from dropping or substituting task identity.
The Observatory map still painted hardcoded charcoal grid and connector strokes in light mode. Geometry now follows the instrument line token, with the selected question using the accent color.
…econd marketing page
People choose a branch of the tech tree instead of a field map. A saved research proposal now celebrates a new beginning of infinity.
Unsigned people still get a persistent profile control. The observatory drops leftover marketing chrome and sits in a shorter in-app canvas.
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.
Open Lab v3 — a compact research workshop
Draft review preview, not a launch. Make a build, offer a bounded test, return evidence—including an uncertain or negative result—and revise the idea. This revision addresses navigation density, daily catch-up, external science apps, portable work handoffs, and a much broader science tech tree.
What changed
The underlying v2 local invention/media loop, public-source provenance, skippable identity entry, global Demo isolation and separate AT Protocol identity/consent boundaries remain. These browser-local workflows are not cross-user synchronization, native Bluesky follows, public uploads, real community participation, payments or Hypercert issuance.
Exact revision and verification
Head:
a6498ae2cdd83530bdd08d9eea053cf7425cbc82.scrollWidth === innerWidth.Native evidence and limits · Science-map decision · Science source provenance · Apps/handoff boundaries.
Hosted preview
Open the branch review preview
Immutable deployment · Vercel deployment.
Deployment
dpl_GqM5vACtQZqiqQUBfp131goeEpJais READY on the existingprotocol/plrd.orgprojectprj_ZHINneYGpk2Kjr7NVq9MxuILij5N, non-production target, exact head above. The branch alias readback identifies that same deployment. Vercel and Preview Comments checks passed; both/lab/URLs returned HTTP 200 withX-Robots-Tag: noindex.The actual branch URL passed 10 read-only route checks (five routes at 1440px desktop and 320px touch-mobile emulation), plus a 390px app-drawer check. The hosted catalog has its five editorial apps and no demo prelude; the hosted tech tree exposes the 4,516-topic source. No account grant or public write was performed.
Canonical-origin capabilities:
mode=ready,canSignIn=true,canConnect=true,canPublish=false,oauthVerified=false,schemaPublished=false. Public OAuth metadata returned 200 JSON without a redirect/login wall and with the exact branch-origin client ID/callback, authenticationnone, and DPoP binding. The unique deployment origin correctly reports unconfigured and returns metadata 404; no configuration change was made.Held account and launch gates
Keep draft; do not merge or launch. No production deployment, DNS/domain activation, native public follow, public post or infrastructure/environment change is included.
openlab.plrd.orgremains a plan only.No real-account OAuth roundtrip or public-account mutation. Configuration readiness is not provider consent, callback/refresh/logout proof, or an authenticated profile/follow/publication receipt. Custom publication remains off. The unique deployment origin intentionally fails closed for OAuth; use the canonical branch origin for a future separately consented account test.
Not a released community: shared indexing/discovery, canonical schema publication, moderation/abuse operations and cross-user synchronization remain separate gates. Local reviews/listings are not public records or endorsements. No private Interventions material is included.
External tool execution is not proven. A native marimo launch opened the exact external URL, but this container's browser allowlist blocked loading that domain; a separate cookieless HTTP check returned 200. No allowlist workaround, external agent execution or GitHub issue write was performed.
Dependency/hosting follow-up remains: Next.js is still pinned to
15.5.9; GitHub's existing default-branch dependency findings are not cleared by this scoped preview review. Preview noindex response headers do not constitute dedicated-domain SEO or production security signoff.Narrow classic-scrollbar desktop caveat: the site's pre-existing
body min-width:320pxcauses 15px horizontal overflow at a 320px desktop viewport with a reserved vertical scrollbar. This was reproduced in the hosted check and verified in the prior revision; 320px touch-mobile emulation fits without overflow. It is not being mislabeled as a clean classic-scrollbar desktop pass.Actual screenshots — local synthetic evidence
These 9 images are native localhost dev-server captures at runtime
4584de13227bbb38f45002dd0beac5e1e4e10e41, not hosted screenshots or account receipts. Runtime/dependencies are unchanged at the final head; the later changes add evidence and align one legacy route-composition test. The production-built head was independently exercised afterward. Each image's GitHub blob was read back and matched against the local Git object. Historical-person activity and QA task/result content are explicitly synthetic.Daily catch-up, desktop.

Daily catch-up, 390×844; instructions collapsed and compact mobile controls.

Broad science tech tree, bounded root Map.

Find tools leads with the app catalog, not demo chatter.

Source-linked topic, dark appearance, mobile app drawer, handoff and proposal evidence
Deep source-linked topic detail.

Explicit dark Map appearance; geometry is a navigation layout, not measured relationships.

Source-linked app drawer, 390×844.

Portable agent brief; preparation, not an executed agent run.

Compact bottleneck/proposal workbench.
