Repository navigation
1.45.1: path waypoints, AI connections, Add flow, HDRI drop toast, local objects in files - #483
Merged
Merged
Conversation
…ts, real reasons (1.45.1) - ai/url.js normalizeEndpointUrl: no scheme -> https:// (ComfyUI mesh -> http://), "https:/host" repaired, pasted /chat/completions (or STT) tails and trailing slashes stripped; used by providers/meshProviders/stt/client. AiSettings shows "Will call <address>" under Base URL. - client.js: Test connection stages time out at 10 s; the completion probe sends no max_tokens and its failure reason is shown; diagnoseNetwork tells unreachable from CORS (with the right flag for vLLM / Ollama / LM Studio, no vLLM blame for others) and mixed content; serverErrorHint maps 400 API_KEY_INVALID, 403, vLLM's tool-call flags, context length and unknown models. - describeAiError(error, config): the assistant shows the same reasons. - tests: unit aiUrl (15), e2e ai-connection against a mock OpenAI server (no GPU, no real keys). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…1.45.1) Capture used to end only through the card's own toggle; after a deselect the editor hid the card and every viewport click appended an invisible waypoint, so the object could not be selected again. - pathCaptureState (leaf) + pathCapture: start/end with watchers — capture ends on deselect, a graph switch, the node going away or being muted, Play, and Esc (not while typing). - A click on the patrolling object (or its ancestors) ends capture and selects it; a click that adds no point (sky) falls through to normal selection. - "Placing waypoints" toolbox (PathCaptureToolbar: count, Undo last point, Done); the card says "Placing… (Esc / Done)" with aria-pressed; a click on the node-editor pane or another node ends it. - The capturing peer holds the object at its base pose while points are placed (flowRuntime). - PathWaypoints: resolves the node across graphs, listens on the canvas in capture phase. - e2e path-capture-trap (§1-§6; §2 red on 1.45.0). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…none (1.45.1)
It used to stop at a toast ("select it in the Flow editor and click Create flow").
flowGraphs.addFlowToSceneGraph creates the object's flow seeded with Flow Input + Flow Output (so
the embed has sockets) and embeds it as ONE undo step, replicated; toast "Flow created and added
to the Scene graph" with an Open flow action. The row is disabled with "Locked by <name>" while
a peer holds the object. e2e add-flow-scene (two peers; §1 red on 1.45.0).
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
An HDRI dragged from the Explorer onto the viewport fell into the generic "Audio/text items are used where they plug in" toast. It now says "An HDRI lights the whole scene as its sky — pick it in Configure Scene ▸ Environment" with an Open Environment action. e2e hdri-drop-toast. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…enes (1.45.1) Local objects (moved to Local objects = deleted for peers) were still written into every file: the .tpscene download, the whole-scene JSON/GLTF export, the publish bundle and its signature, gallery submit and the game export — plus the payload's workspace selection. - objectPermissions.liftLocalObjects / withoutLocalObjects: lift every local-only root out of the scene tree for the build (children arrays spliced, put back in place, also on a throw; async GLTF exports restore with the animation park) and scrub lifted uuids from `workspace`. - toast "N local objects were not included — share them from the object list to include them." - moveToLocalObjects extracted from LocalObjects.svelte (the editor drop-to-local path). - e2e drafts-leak (two peers + a late joiner): later edits to a local object go out by reference and peers drop them (nothing re-appears); a late joiner never gets it; §4-§6 the files leave it out and the scene keeps it; Share brings it back. Save to Library / checkpoints / autosave keep local objects (this machine's copies) — the full design is roadmap 80. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
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.
Patch 1.45.1 (fix-batch-2). Five fixes, one commit each; CHANGELOG 1.45.1 + battery.json (5 new suites).
1. Path patrol capture trap (11388ab7 → rebased). Capture ended only through the card's toggle; after a deselect every viewport click appended an invisible waypoint and the object could not be selected again. Capture now ends on Esc, Done, deselect, a click on the object (selects it), the node-editor pane, Play, or the node going away/muted. A "Placing waypoints" toolbox shows the count, Undo last point and Done; the capturing peer holds the object still. e2e
path-capture-trap19/0 (§2 red on 1.45.0),waypoint-viz8/0.path-node's "identical patrol on both peers" drift is red on the 1.45.0 candidate too (A/B, 2/2 base runs) — pre-existing flake.2. AI connections (Settings ▸ AI; providers/client/meshProviders/stt — AiSettings layout untouched apart from one "Will call" line). Base URLs without a scheme or with a pasted
/chat/completionstail are normalized; Test connection stages time out at 10 s; the completion probe sends nomax_tokensand its reason is shown; unreachable vs CORS vs mixed content are told apart (with the right flag for vLLM / Ollama / LM Studio); 400 API_KEY_INVALID, 403, vLLM tool flags, context length and unknown models get hints, in the assistant too. UnitaiUrl15/15, e2eai-connection14/0 against a mock OpenAI server (no GPU, no real keys).3. Add flow to Scene graph creates the flow (seeded Flow Input + Flow Output) and embeds it — one undo step, replicated; disabled with "Locked by …" while a peer holds the object. e2e
add-flow-scene14/0 (two peers).4. HDRI drop toast: an HDRI dropped on the viewport says where it goes, with Open Environment. e2e
hdri-drop-toast6/0.5. Local objects in files. Measured (two peers + late joiner): edits to an object after it is moved to Local objects still go out by reference and peers drop them — nothing re-appears for anyone, and a late joiner never receives it. Files did carry local objects: .tpscene download, whole-scene JSON/GLTF export, the publish bundle (+ its signature), gallery submit, game export, and the saved selection. They now leave them out with "N local objects were not included — share them …". Save to Library / checkpoints / autosave unchanged (roadmap 80). e2e
drafts-leak18/0.Gates on the branch: check-ratchet 283 errors (baseline 287), vitest 2857/2857, check:tokens clean, build OK.
The KTX2 fix (#480) is cherry-picked onto release/1.45.1 by the integrator; its CHANGELOG line is already in the 1.45.1 entry.
🤖 Generated with Claude Code