verify-frontend

A live verification guide for changes to the Massing web application and 3D viewer. It covers checking the code and driving the running application to confirm that the interface works.

In plain words
What is it for?
Use it after changing the web app to run type checks, linting, tests, and a build, then verify the real interface, viewer, project loading, and related user flows.
Why use it?
It helps distinguish real application failures from misleading symptoms such as a blocked server or a canvas with zero width.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/ibuilder/massing/verify-frontend
Any agent
npx skills add ibuilder/massing --skill verify-frontend
Clone the repo
git clone --depth 1 https://github.com/ibuilder/massing

Made for: Claude Code, Codex.

Per session 73 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 999 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00073 $0.00999
Opus 5 $0.00036 $0.00500
Sonnet 5 $0.00015 $0.00200
Haiku 4.5 $0.00007 $0.00100

Measured 3d ago against content hash e7d9ce184084, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

verify-frontend scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/verify-frontend/SKILL.md · 63 lines

How it starts

The opening of the file, as written. The whole thing — 63 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Verify a Massing frontend change

Standing directions for this repo: docs/roadmap-directions.md. Read those first.

The "preview stall" was diagnosed and FIXED in v0.3.703 — it was never the geometry loader. Five SSE endpoints polled the database inside async def gen(), blocking the event loop for every other client; two open tabs left the server wedged and every request timed out, including the app's boot api.health(). That left projectId unset, so the portal showed "No project open" while a model sat rendered on screen. Fixed with run_in_threadpool; measured >8s timeouts → ~20 ms. Full live verification now works — start both servers and drive the real app.

A SECOND "stall" was diagnosed and fixed 2026-08-02, and it was not the loader either — the canvas had width ZERO. Container 830x572, canvas 0x493, four meshes and 230 triangles built and visible, .frag 200, worker fine, console clean. The renderer sizes itself once at construction; if the container is not at final width yet, that first size sticks for ever. A ResizeObserver in createViewer now tracks it (apps/web/src/viewer/canvasResize.test.ts).

Twice now, "the geometry loader stalls" has meant something else entirely — once a blocked event loop, once a zero-width canvas. Before writing that sentence a third time, ask the page:

const c = document.querySelector('canvas'), k = document.querySelector('#container');
({ canvas: c.width+'x'+c.height, container: k.clientWidth+'x'+k.clientHeight })   // canvas ≈ container × devicePixelRatio

and count what is actually in the scene (v.viewer.world._scene.three, not v.world). A caveat nobody re-tests becomes folklore: this skill asserted the stall in its own frontmatter for weeks while its body said it was fixed, and the contradiction propagated into eight changelog entries.

Always

cd apps/web && export PATH="/c/Program Files/nodejs:$PATH"
npm run typecheck && npm run lint      # Node 24 (Node 18 breaks the build)
npx vitest run <path/if/covered>
npm run build                          # strongest compile check; ~1 min

Read the full file on GitHub · 63 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 63 lines · 73 tokens per session scan A e7d9ce184084

Subscribe to this mod's changes

verify-frontend is a skill published in the GitHub repository ibuilder/massing (132 stars, last pushed 3d ago), licensed MIT. It adds 73 tokens to every session and 999 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

ara3d-sdk

Use when processing AEC/BIM 3D data in .NET 8 — mesh generation and transformation, SIMD-accelerated math, IFC/STEP/PLY to glTF/GLB/VIM conversion, plugin development. Ara3D-SDK: high-performance .NET 3D geometry and BIM library suite.

znlgis/opengis-skills · 70 tokens

elements

Use when generating building information models (BIM) programmatically in C#/.NET — wall, beam, column, floor creation, geometry kernel (BREP/CSG), glTF/IFC/JSON serialization, MEP systems, spatial grids. Hypar Elements: the smallest useful BIM — a cross-platform C# library for creating building elements without…

znlgis/opengis-skills · 81 tokens

tauri-impl-testing

Use when writing tests for Tauri 2 commands, mocking IPC calls, or setting up E2E test suites. Prevents untestable command handlers and stale mock state from missing clearMocks() between tests. Covers Rust unit testing, frontend IPC mocking with mockIPC/mockWindows, WebDriver E2E testing, and integration testing.…

OpenAEC-Foundation/OpenAEC-Workspace-Composer · 103 tokens

fy_layout

Use when doing construction site layout planning with the FeiYang LightCAD platform — fence, lawn, foundation pit, road, prefab house 2D/3D modeling. FYLayout: construction site layout secondary development plugin for LightCAD/LightBIM.

znlgis/opengis-skills · 56 tokens

xbim

Use when processing BIM/IFC data in .NET/C# — IFC reading/writing, model validation, quantity takeoff, geometry extraction. xBIM: .NET BIM/IFC toolkit for building information modeling workflows.

znlgis/opengis-skills · 49 tokens

3d-skills

Use when working with 3D Gaussian Splatting (3DGS), .ply model cleanup/compression/publishing, interactive 360-degree panorama visualization and virtual tours, AEC/BIM 3D data processing, or CSG solid modeling. Index of 5 skills: SuperSplat, Photo-Sphere-Viewer, Ara3D-SDK, Elements, and OpenCSG.NET.

znlgis/opengis-skills · 86 tokens