Reported issues for sceneview
Pod holds 17 of 35 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.
Back to sceneview.
Most discussed
Follow-ups from the AI-surfaces audit (#3189): four workstreams that each need their own PR
Umbrella for work surfaced by the audit in #3189 that deliberately did not land there — each item is a different subsystem, and two carry money or security. Recording them here so they don't live only in a plan doc on an unmerged branch.
Evidence for all four is in .claude/plans/ai-surfaces-cleanup.md, ai-surfaces-exploration.md and ai-surfaces-live-state.md on claude/gemini-connectors-exploration-74wsqh.
1. Build web targets — Karma/ChromeHeadless dies with no evidence
Read the thread · 2026-08-15 · open · 6 comments
Publishing is failing due to credentials not using sonatype user token
Sonatype now requires token-based authentication, and our upload-release.yml file is still using the old username and password credentials.
Failed to stop service 'maven-central-build-service'.
Upload failed: {"error":{"message":"Invalid token"}}
Read the thread · 2026-01-08 · closed · outside contributor · 5 comments
[v5] Route Sketchfab requests through mcp-gateway so the API key never ships in the binary
Track for v5. Long-term fix for #1909 (and ground for #977): route every Sketchfab call from the demo apps through mcp-gateway instead of bundling a Sketchfab token in the binary.
Why
SKETCHFAB_API_KEY is currently injected at build time into:
- Android
BuildConfig.SKETCHFAB_API_KEY(extractable from APK withstrings classes*.dex) - iOS
Info.plistSketchfabAPIKey(extractable from any .ipa)
Consequences:
- A determined user can lift the key from the published store binary,
Read the thread · 2026-05-21 · closed · outside contributor · 3 comments
CI Gate can still pass green when its CORE-CHECK GUARD disarms on a partial first read
What is left open
#3018 was a partial read of the Checks API letting CI Gate conclude over checks it had already seen. The fix carries observed check names across polls, so a check can no longer leave the gated set by disappearing.
One arm of that failure is still open: the CORE-CHECK GUARD disarms itself when it has seen zero core checks.
# ci-gate.yml:351
if [ "$any_core_seen" != true ]; then
missing_core=""
fi
That is deliberate — it is how a docs-only PR is recog
Read the thread · 2026-08-06 · closed · 2 comments
mcp: the AI-facing web guide and the artifact CDN pin still name Filament.js v1.70.2
Surfaced by the review-fanout pass on #3165 (issue #2783), which corrected the same stale 1.70.2 label in three HTML pages, the materials README and website-static/js/sceneview.js. Two mcp/ surfaces still carry it, and were deliberately left out of that PR: mcp/ is an independent track per CLAUDE.md and must never be synced from a library PR.
The two surfaces
mcp/src/extra-guides.ts:419and:530—WEB_RENDERING_GUIDEstates "SceneView Web uses Filament.js v1.70.2
Read the thread · 2026-08-14 · closed · 1 comment
pr-review.yml is failing repo-wide: reviewers never write review-verdict.json, every PR grades REVIEW_INCOMPLETE
The agent review gate is currently down for every PR, not one branch. Since it is blocking=true, it turns every PR's Agent review check red regardless of the diff — and because a missing verdict is (correctly) not a pass, it cannot be waved through either.
Evidence
Consecutive pr-review.yml runs on different head SHAs, all failure:
| run | event | head | conclusion |
|---|---|---|---|
| 30719905384 | pull_request | 1e38224a6 |
failure |
| 30719887162 | pull_request | `439 |
Read the thread · 2026-08-01 · closed · 1 comment
mcp-gateway: deployed worker is 3 tools behind main — needs wrangler deploy (manual)
Measured while verifying #2696 (JSON-RPC tools/list probes on 2026-07-12):
- Live worker (
https://sceneview-mcp.mcp-tools-lab.workers.dev— both/mcpwith a Pro key and anonymous/mcp/publicreturn identical lists): 64 tools - Gateway registry at
main: 67 tools
The delta is exactly generate_3d_model, search_android_docs, fetch_android_doc — the deployment predates them. After #2696 the vertical package READMEs say "67 tools total", so the live worker should catch up.
Read the thread · 2026-07-12 · closed · 1 comment
Telemetry: better client identification + bot detection for monetization analytics
Context
Currently the telemetry worker (telemetry-worker/) records each MCP event with a client field set to the MCP runtime name (e.g. claude-code, cursor-vscode, codex-mcp-client). This is the value the MCP runtime advertises during the handshake — see mcp/src/telemetry.ts:194-211 (recordClientInit).
This is enough to know which AI tool talks to us, but not enough to:
- Distinguish two developers using the same runtime (every
claude-codeuser shows up as one bucket
Read the thread · 2026-05-26 · closed · outside contributor · 1 comment
Most recent
Published MCP install path .claude/mcp.json never loads in Claude Code
Problem
The documented install path for the SceneView MCP server — a project-level `.claude/mcp.json` — is not a file Claude Code actually reads. Claude Code loads project-scoped MCP servers from `.mcp.json` at the repository root (or via `claude mcp add`), so every user who follows our published instructions ends up with zero `sceneview` tools available. Measured on 165 local sessions: not a single one had the SceneView MCP tools loaded.
For an SDK whose stated bar is "can an AI re
Read the thread · 2026-08-29 · closed · 0 comments
MCP spec conformance: 6 requirement(s) violated (via @hasmcp/mcp-spec-test) — spec 2026-07-28
When sceneview-mcp is tested against the newest MCP spec revision (2026-07-28) with @hasmcp/mcp-spec-test, the server responds to server/discover with a JSON-RPC -32601 Method not found error. Because server/discover is the entry point the newer revision uses to negotiate capabilities/version, everything downstream that depends on it (22 further checks) can't be verified either. Note that the server tests fully clean (0 failures) against the older 2025-11-25 revision it also advertises
Read the thread · 2026-08-24 · closed · external user · 0 comments
Working method phase 2: make /status answer a question instead of describing state
Follow-up to #3111, driven by the same telemetry pass over 30 days of session transcripts.
What the measurement says
| Surface | Invocations / 30 days |
|---|---|
/status |
546 (~18/day) |
/compact |
333 |
/close |
145 |
every project slash command (/release, /review, /version-bump, …) |
0 |
/status is, by an order of magnitude, the most-used surface in the whole setup — and it
is the one that returns the least. Its reported failure mode: it produces a report
Read the thread · 2026-08-11 · closed · 0 comments
The Kotlin bridge node-name derivations have no test source set at all
Both Android bridges hand-roll the derivation that turns a model source into the nodeName a tap publishes:
flutter/sceneview_flutter/android/src/main/kotlin/io/github/sceneview/flutter/SceneViewPlugin.kt—tapNodeName/urlPathOfreact-native/react-native-sceneview/android/src/main/java/io/github/sceneview/reactnative/SceneViewManager.kt—ModelNodeData.nodeName()/urlPathOf
Neither module has a test source set — src/main only — so nothing pins them. The Swift twin (`scene
Read the thread · 2026-08-07 · closed · 0 comments
pr-review.yml: the clean-tree assertion blames the reviewers for claude-code-action's own .claude/ restore
pr-review.yml's clean-tree assertion fails on any PR that touches .claude/**, and blames the reviewers for a write the action itself made.
Symptom
Run 31193247720 (PR #3048) failed the final step Assert the reviewers left the tree clean:
M .claude/scripts/sync-assets.sh
::error title=Review contaminated its own checkout:: ... This is #3016.
The same run reported "permission_denials_count": 0 and the fan-ou
Read the thread · 2026-08-07 · closed · 0 comments
feat(mcp): validate_code v2 — symbol-existence check backed by a Dokka-generated symbols.json
Wave-2 item 15 of the 2026-07-10 SDK ideation shortlist (see #2642 triage table). Facts re-verified against main on 2026-07-17.
Problem
The MCP tool validate_code (mcp/src/validator.ts) is a regex rule list (threading, lifecycle): a snippet can pass every rule while calling APIs that do not exist — the #1 failure mode of AI-generated SceneView code. mcp/src/generated/ contains only version.ts today; there is no symbol index.
Proposal
- Generate
symbols.jsonat build ti
Read the thread · 2026-07-17 · closed · 0 comments
mcp: 11 gateway-mounted tools missing from the tier map (silent default-to-pro) + stale PRO_UPGRADE_MESSAGE counts
Found while fixing the tool-count drifts in #2696 (programmatic enumeration of the gateway registry vs mcp/src/tiers.ts).
Problem
11 tools mounted by the gateway registry have no entry in the tier map and ride the "unknown → pro" fallback in getToolTier():
- the 5 rerun tools:
setup_rerun_project,generate_ar_logger,generate_python_sidecar,embed_web_viewer,explain_concept - 2 automotive tools added after the map was written:
get_ev_charging_station_viewer, `get_car_p
Read the thread · 2026-07-12 · closed · 0 comments
feat(mcp): generate_3d_model tool — Tripo BYOK text/image→GLB, closing the agentic asset loop
Why
Blender MCP / Unity MCP are mainstream but the whole field targets authoring tools. SceneView's MCP already covers code + docs + deploy; adding asset generation makes it the only SDK where an agent ships a complete AR app end-to-end — "Claude builds the AR furniture app AND creates the 3D model".
What
- New MCP tool
generate_3d_modelnext to the existingsearch_models: BYOK Tripo (already proven in production via the AR viewer worker) — text→3D and image→3D, returns a
Read the thread · 2026-07-10 · closed · 0 comments
feedback-worker: minor cleanups deferred from the hardening review
Follow-up to #1930 / the feedback-worker security + correctness hardening PR. These MINOR findings from the 6-agent review were deliberately deferred to keep that PR scoped to the blockers/majors.
Items
202response conflates two distinct outcomes —src/index.tsreturns202 { issue: null }both when the global hourly issue quota skipped issue creation and when the GitHub API call failed. A caller (or the demo app) cannot tell "we deliberately throttled" from "GitHub errored"
Read the thread · 2026-05-21 · closed · outside contributor · 0 comments
The remaining reports are on the project's issue tracker.