Repository navigation
Release 1.54.0: first win and community - #520
Merged
Merged
Conversation
…W3a)
- one search field on every Templates tab: every word must match title, description,
author or tags (communitySearch.matchesQuery) — the OSS GitHub gallery is searchable
with no server; the query survives a tab switch, Escape clears it first
- provider `search: true` gets list({q}) debounced 300 ms; `sorts: [{id,label}]` render as
chips beside the field (first = default, never sent); absent = absent, a 36-era provider
is called list({force}) exactly as before
- a re-list keeps the grid up ("Searching…"), an older query's late answer is dropped,
an empty answer reads "No scenes match"
- OPEN-CORE.md documents the additive members (no CLOUD_HOOKS_VERSION bump)
- unit communitySearch (7) + contentIndex memo pin; e2e community-search (OSS, 36-era and
searching providers, stale-answer counterfactual, N6 folded + unfolded)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ls after the first Play
- Welcome asks one question — Play / Remix / Template / Describe it (empty scene stays as a quiet
link) — and each answer leads straight into its own path (the Play path loads a game and
starts it; Remix / Template list the bundled starters; Describe it runs the assistant or says
how to set one up)
- the first-win quest rides the tours engine: change something → Play → invite someone, each
step completed by doing it (an undo-worthy edit, Play starting, the invite link copied or a
peer joining); a quiet ring, no dimming, hidden while the game runs; a template / remix starts
it once the scene has loaded, Play starts it after the first game ends
- tour engine: `hideWhilePlaying` + `quiet` on a TourDef, `onAdvanced` listeners (an action
completing a step, heard before the step moves on); TourCard notes Skip / Don't show
- index entries may carry a `quest` line; core keeps a default per bundled game and template
- progressive disclosure: on a first visit the advanced toolbar buttons (flow, animation, pivot,
mode) wait in the » overflow and Modules / toolboxes / Layouts behind More until the first
Play; Settings ▸ Interface ▸ "Show everything now" and "Start the first-win quest"
- the editor tour no longer starts after the Welcome — it is offered at the end of the quest
and from the logo menu ("Tour the interface")
- unit: tests/unit/onboardingQuests.test.js; e2e: tests/e2e/onboarding.test.cjs (battery),
tours.test.cjs follows the new start
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- onboarding/funnel.js: ob_view / ob_choice / ob_first_edit / ob_first_play (+ a time bucket) /
ob_first_share / ob_quest_done / ob_tour_skip (+ the step), once per browser and only for a
browser that met the Welcome; return_d1 / return_d7 / one return_w per later week for any
browser (the G1 weekly-returning line); ob_waitlist for the plugin's feature-update opt-in
- closed vocabularies only — {e, c (the Welcome answer), b (release), d desktop|touch|vr, x};
no id of any kind; the first-seen day stays in this browser
- Do Not Track / Global Privacy Control send nothing and store nothing; Settings ▸ Privacy ▸
"Count my visits anonymously" (default on, local) appears once a plugin listens; under test
nothing counts without `funnelUnderTest`
- cloudHooks `onFunnelEvent(fn)` + a 20-event boot queue; cloudApi `onFunnelEvent` /
`funnelEvent('ob_waitlist')` (additive, typeof-probed); the open-source build sends nothing
- unit: tests/unit/onboardingFunnel.test.js (rules on a synthetic clock, guards with their
counterfactuals, the seam); e2e: onboarding.test.cjs part F
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…t, funnel counters)
…ty search, anonymous counts; version set at release) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…uttons Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ame / embed 76 FW1's Welcome loads the templates index whenever it opens, and startWhatsNew still opens it (hidden under #editor-chrome) on an exported game's first visit, so the exported game requested scenes@format-2/index.json from jsDelivr - export-zip 'no request left the game's origin' red on preview-76, green on 1.44.0. Skip the fetch under embedMode. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
1.47.0 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> # Conflicts: # CHANGELOG.md
…e quest, Show everything rows; Reset tours also resets the first-game quest lock-search re-recorded on the union (LOCK_RECORD=1, run-76-int @bd850661) and checked to differ by exactly 76's rows (plus 'Show tours automatically' now describing the first-game quest instead of the editor tour). lock-settings: Reset tours now clears tour.first-win too and counts 9 tour records (76 adds the quest tours). Both ALL PASS after. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…n agrees By default a visit that met the Welcome counts its steps from memory only (once per page), with no storage. After the first successful Play a small card asks: Agree keeps the note (once per browser + came-back counts), No thanks stops the counts and remembers only the answer. DNT / GPC and the Settings switch still stop everything; switching off deletes the note. No card without a plugin. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Bumps the build group with 1 update: [svelte](https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte). Updates `svelte` from 5.57.2 to 5.57.3 - [Release notes](https://github.com/sveltejs/svelte/releases) - [Changelog](https://github.com/sveltejs/svelte/blob/main/packages/svelte/CHANGELOG.md) - [Commits](https://github.com/sveltejs/svelte/commits/svelte@5.57.3/packages/svelte) --- updated-dependencies: - dependency-name: svelte dependency-version: 5.57.3 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: build ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the runtime-patch group with 2 updates: [@threlte/extras](https://github.com/threlte/threlte/tree/HEAD/packages/extras) and [three-mesh-bvh](https://github.com/gkjohnson/three-mesh-bvh). Updates `@threlte/extras` from 9.22.3 to 9.22.4 - [Release notes](https://github.com/threlte/threlte/releases) - [Changelog](https://github.com/threlte/threlte/blob/main/packages/extras/CHANGELOG.md) - [Commits](https://github.com/threlte/threlte/commits/@threlte/extras@9.22.4/packages/extras) Updates `three-mesh-bvh` from 0.9.16 to 0.9.17 - [Release notes](https://github.com/gkjohnson/three-mesh-bvh/releases) - [Changelog](https://github.com/gkjohnson/three-mesh-bvh/blob/master/CHANGELOG.md) - [Commits](gkjohnson/three-mesh-bvh@v0.9.16...v0.9.17) --- updated-dependencies: - dependency-name: "@threlte/extras" dependency-version: 9.22.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-patch - dependency-name: three-mesh-bvh dependency-version: 0.9.17 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: runtime-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the agent group in /tools/agent with 1 update: [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk). Updates `@modelcontextprotocol/sdk` from 1.32.1 to 1.32.2 - [Release notes](https://github.com/modelcontextprotocol/typescript-sdk/releases) - [Commits](modelcontextprotocol/typescript-sdk@1.32.1...1.32.2) --- updated-dependencies: - dependency-name: "@modelcontextprotocol/sdk" dependency-version: 1.32.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: agent ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the actions group with 1 update: [actions/upload-artifact](https://github.com/actions/upload-artifact). Updates `actions/upload-artifact` from 4 to 7 - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](actions/upload-artifact@v4...v7) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
A script reads `elapsed`: seconds of the game round when one is running, otherwise seconds since this peer last entered or left Play. `time` stays the shared clock, so a pose written from it jumps at every press. It is a global rather than a parameter, so a script with its own `const elapsed` still compiles. The += warning and the agent notes now point at elapsed. The particle node's gravity says it is an acceleration along world Y: negative falls, positive rises. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A framed view (top, front, iso, focus) is 4:3 whatever the window is, so an iso at size 700 is 700x525 instead of following a wide canvas down to 700x183; current keeps the canvas shape. New optional arguments: aspect, from (a named side or yaw and pitch in degrees), camera (a free position and target), uuids (frame several), zoom and margin. The result says the camera it used and what it framed. A missing uuid is named in the error. Read-only: it renders from its own camera, nobody's view moves. tpAgent gains lastShot(), so TP_AGENT_VERSION is 1.5.0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…-up; a header button when a local model works signed out Core draws the button (welcome card, or the header with a provider set up); the plugin's mount is now only the flag. Phone: the AI sheet steps aside for the profile sheet. e2e connector-window follows. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…from #516 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ndow header row names the close button Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ar on a tablet-wide screen (N6 unfolded) put its header under it Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…w the default URL), the manual way under it with an icon copy button, How it works Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…able, its size is not 76's Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…timer Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… moved it) The star-count checks looked for .welcome-btn only; FW1 made the GitHub link a .welcome-link in the card's foot, so the button was not found and the 'hides the count' check passed on an empty string. Both checks now need the link. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Nov 2, 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.
Release 1.54.0: roadmap 76, first win and community.
In it
elapsed, particle gravity wording, screenshots from any angle; tpAgent 1.5.0; @theprototype/agent 1.54.0.Proof
🤖 Generated with Claude Code