@aura3d/engine 4.3.5 → 4.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -11
- package/dist/aura3d-cli/cli-help.d.ts.map +1 -1
- package/dist/aura3d-cli/cli-help.js +3 -0
- package/dist/aura3d-cli/cli-help.js.map +1 -1
- package/dist/aura3d-cli/cli.d.ts.map +1 -1
- package/dist/aura3d-cli/cli.js +26 -1
- package/dist/aura3d-cli/cli.js.map +1 -1
- package/dist/aura3d-cli/deploy-browser-check.d.ts +78 -0
- package/dist/aura3d-cli/deploy-browser-check.d.ts.map +1 -0
- package/dist/aura3d-cli/deploy-browser-check.js +167 -0
- package/dist/aura3d-cli/deploy-browser-check.js.map +1 -0
- package/dist/create-aura3d/index.js +1 -1
- package/dist/rendering/index.js +1 -1
- package/package.json +25 -25
- package/templates/cinematic-scene/package.json +2 -2
- package/templates/mini-game/package.json +2 -2
- package/templates/product-viewer/package.json +2 -2
- package/templates/production-asset-inspector/package.json +1 -1
- package/templates/production-material-studio/package.json +1 -1
- package/templates/production-product-configurator/package.json +1 -1
- package/templates/production-product-viewer/package.json +1 -1
package/README.md
CHANGED
|
@@ -5,19 +5,25 @@
|
|
|
5
5
|
[](https://opensource.org/licenses/MIT)
|
|
6
6
|
[](https://www.typescriptlang.org/)
|
|
7
7
|
|
|
8
|
-
**
|
|
8
|
+
**The TypeScript 3D engine that ships the whole stack.** Aura3D is a browser 3D engine with its own renderer, plus the toolchain around it: typed and licensed assets, lighting looks, a game kit and deploy checks. It is built for agent-written browser 3D, and people who write it by hand use the same API. The current version is in [`CHANGELOG.md`](./CHANGELOG.md).
|
|
9
|
+
|
|
10
|
+
A lit, shadowed, framed product with orbit controls, in 10 lines:
|
|
9
11
|
|
|
10
12
|
```ts
|
|
11
|
-
import { createAuraApp, looks, model, scene } from "@aura3d/engine";
|
|
13
|
+
import { camera, createAuraApp, interactions, looks, model, scene } from "@aura3d/engine";
|
|
12
14
|
import { assets } from "./aura-assets";
|
|
13
15
|
|
|
14
16
|
createAuraApp("#app", {
|
|
15
|
-
scene: scene()
|
|
17
|
+
scene: scene()
|
|
18
|
+
.add(looks.preset("product-studio"))
|
|
19
|
+
.add(model(assets.product, { name: "product", targetHeight: 1.6, castShadow: true }))
|
|
20
|
+
.add(interactions.orbit({ target: "product" }))
|
|
21
|
+
.camera(camera.frameAsset(assets.product, { targetHeight: 1.6 })),
|
|
16
22
|
...looks.appOptions("product-studio")
|
|
17
23
|
});
|
|
18
24
|
```
|
|
19
25
|
|
|
20
|
-
A `looks.preset` supplies image-based light, a shadow-casting key, fog, background and a post grade as one unit. `model(assets.
|
|
26
|
+
A `looks.preset` supplies image-based light, a shadow-casting key, fog, background and a post grade as one unit. `model(assets.product)` is a typed asset generated by the CLI, never a raw URL. The same scene in three.js is 38 lines before orbit controls ([tagline check](./evidence/vs-threejs/tagline-check/); line counts include imports and skip blank and comment lines).
|
|
21
27
|
|
|
22
28
|
## Start in five commands
|
|
23
29
|
|
|
@@ -29,7 +35,7 @@ npx @aura3d/cli@latest assets resolve "robot" --name robot # assets add also w
|
|
|
29
35
|
npm run build && npx @aura3d/cli@latest check-deploy --dist dist
|
|
30
36
|
```
|
|
31
37
|
|
|
32
|
-
Templates: `product-viewer` (default), `cinematic-scene`, `mini-game`, `racing-starter`, `falling-blocks-starter`, `fighting-game`, `character-controller`, `arena-shooter` and more (`npx create-aura3d@latest --help`).
|
|
38
|
+
Templates: `product-viewer` (default), `cinematic-scene`, `mini-game`, `racing-starter`, `falling-blocks-starter`, `fighting-game`, `character-controller`, `arena-shooter` and more (`npx create-aura3d@latest --help`).
|
|
33
39
|
|
|
34
40
|
## If you are an AI agent
|
|
35
41
|
|
|
@@ -41,7 +47,7 @@ Read [`llms.txt`](./llms.txt) (one screen, the fast path), then [`docs/agents/ag
|
|
|
41
47
|
- **Typed, provenance-checked assets.** `assets search`, `assets resolve`, `assets add`, `assets import-meshy`, `assets optimize`, `assets validate`. In production a model needs a same-origin URL, a sha256 and provenance, otherwise it draws nothing. Meshy generation goes through the CLI with admission records.
|
|
42
48
|
- **Game kit.** `@aura3d/engine/game` (`createGame`: lifecycle, pause, results, DOM HUD, touch, juice, sound), `createFixedStepLoop`, `installQaHooks` and seeded replay, `createCueBank` audio synth, `defineModelAssets`, racket-sports and other genre kits.
|
|
43
49
|
- **Safety net.** `installSafetyNet` from `@aura3d/debug`: `?diag=1` panel, quality switches and black-frame self-heal. Custom shader failures are reported, not silent.
|
|
44
|
-
- **Checks.** `aura3d doctor`, `aura3d check-deploy
|
|
50
|
+
- **Checks.** `aura3d doctor`, `aura3d check-deploy` (add `--browser` to load every route in headless Chromium and fail on failed requests and console errors), route-health and screenshot evidence, the look-dev loop (`aura3d look capture`, `aura3d look lint`).
|
|
45
51
|
- **Migration.** `aura3d migrate three` is a codemod that records each approximation. It is not a drop-in claim.
|
|
46
52
|
|
|
47
53
|
Kit documentation: [`docs/api/game-kit.md`](./docs/api/game-kit.md), [`qa-kit.md`](./docs/api/qa-kit.md), [`safety-net.md`](./docs/api/safety-net.md), [`audio-synth.md`](./docs/api/audio-synth.md), [`model-loader.md`](./docs/api/model-loader.md), [`glsl-chunks.md`](./docs/api/glsl-chunks.md), [`scatter-merge.md`](./docs/api/scatter-merge.md), [`cli-asset-tools.md`](./docs/api/cli-asset-tools.md), [`toon.md`](./docs/api/toon.md).
|
|
@@ -50,9 +56,16 @@ Kit documentation: [`docs/api/game-kit.md`](./docs/api/game-kit.md), [`qa-kit.md
|
|
|
50
56
|
|
|
51
57
|
The [showcase index](https://aura3d.auraone.ai/apps/showcase-index/) has 25 playable games across racing, sports, action, platformers and arcade, including Aura Slam 3D (tennis, with a deterministic replay gate), Apex Overdrive (racing), Glint Courier (maze chase) and Craterline GP (bike racing). Each page states its limits; the games are independent work, not affiliated with any other game or studio. Games are checked on software WebGL2 in remote runs; real-GPU confirmation is partial and tracked in [`evidence/`](./evidence/).
|
|
52
58
|
|
|
53
|
-
##
|
|
59
|
+
## Why Aura3D instead of three.js
|
|
60
|
+
|
|
61
|
+
three.js gives you a renderer. Aura3D is a complete TypeScript 3D engine and toolchain with its own renderer, so the parts three.js leaves to you come built in:
|
|
62
|
+
|
|
63
|
+
- **A lit, shadowed, framed product in 10 lines.** The same scene in three.js is 38 lines before orbit controls ([tagline check](./evidence/vs-threejs/tagline-check/)). In our five-scene benchmark, a PBR viewer with HDR lighting, shadow, bloom and orbit controls is 24 lines instead of 49, with 1 import instead of 8 ([results](./evidence/vs-threejs/RESULTS.md)).
|
|
64
|
+
- **Assets you can trust.** Every model is typed, hashed and licensed; in production an unverified model doesn't draw.
|
|
65
|
+
- **The game stack included.** HUD, touch controls, audio cues, a fixed-step loop, seeded replay, a safety net and smooth motion on 120 and 144 Hz displays.
|
|
66
|
+
- **Built for AI coding agents.** `llms.txt`, 14 skills and compiled recipes ship with every new project.
|
|
54
67
|
|
|
55
|
-
|
|
68
|
+
Porting an existing three.js project: [`docs/migration/from-threejs.md`](./docs/migration/from-threejs.md).
|
|
56
69
|
|
|
57
70
|
## Packages
|
|
58
71
|
|
|
@@ -67,7 +80,7 @@ Public packages (all at the same version; `@aura3d/engine` is the root of this r
|
|
|
67
80
|
| `@aura3d/rendering` | Render device, WebGL2 backend, materials, passes |
|
|
68
81
|
| `@aura3d/assets`, `@aura3d/asset-index` | Asset loading and caching; asset search across public sources |
|
|
69
82
|
| `@aura3d/animation`, `@aura3d/audio`, `@aura3d/input`, `@aura3d/controls` | Clips and state machines, audio buses, input, camera controls |
|
|
70
|
-
| `@aura3d/physics`, `@aura3d/physics-rapier`, `@aura3d/navigation-recast` |
|
|
83
|
+
| `@aura3d/physics`, `@aura3d/physics-rapier`, `@aura3d/navigation-recast` | Physics, with optional Rapier and navigation adapters |
|
|
71
84
|
| `@aura3d/ecs`, `@aura3d/scripting` | ECS and behaviour graphs |
|
|
72
85
|
| `@aura3d/debug` | Diagnostics and the runtime safety net |
|
|
73
86
|
| `@aura3d/product-studio`, `@aura3d/apps`, `@aura3d/workflows`, `@aura3d/react`, `@aura3d/editor-runtime` | Product viewers, app presets, workflows, React host, editor runtime |
|
|
@@ -76,14 +89,14 @@ Public packages (all at the same version; `@aura3d/engine` is the root of this r
|
|
|
76
89
|
|
|
77
90
|
## Claims and verification
|
|
78
91
|
|
|
79
|
-
Every public claim follows [`docs/agents/claims-and-boundaries.md`](./docs/agents/claims-and-boundaries.md): label the capability, and claim only what a judged capture or retained evidence shows. Published gates include route health, typed provenance, public-API surface checks, package-size checks and `check-deploy`.
|
|
92
|
+
Every public claim follows [`docs/agents/claims-and-boundaries.md`](./docs/agents/claims-and-boundaries.md): label the capability, and claim only what a judged capture or retained evidence shows. Published gates include route health, typed provenance, public-API surface checks, package-size checks and `check-deploy`. Release notes are in [`CHANGELOG.md`](./CHANGELOG.md).
|
|
80
93
|
|
|
81
94
|
## Documentation
|
|
82
95
|
|
|
83
96
|
- [`docs/index.md`](./docs/index.md): hub for humans and agents
|
|
84
97
|
- [`docs/agents/README.md`](./docs/agents/README.md): agent docs index
|
|
85
98
|
- [`docs/api/public-api.md`](./docs/api/public-api.md): public API
|
|
86
|
-
- [`docs/
|
|
99
|
+
- [`docs/aura3d-vs-threejs.md`](./docs/aura3d-vs-threejs.md) and [`docs/migration/from-threejs.md`](./docs/migration/from-threejs.md): why Aura3D over three.js, and how to port
|
|
87
100
|
- [`docs/workflows/game-conversion-playbook.md`](./docs/workflows/game-conversion-playbook.md): turning a browser game into an Aura3D game
|
|
88
101
|
- Site: https://aura3d.auraone.ai
|
|
89
102
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-help.d.ts","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli-help.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,iKACqI,CAAC;AAEjK,wBAAgB,aAAa,IAAI,MAAM,CA4BtC;AAED,wBAAgB,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"cli-help.d.ts","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli-help.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,iKACqI,CAAC;AAEjK,wBAAgB,aAAa,IAAI,MAAM,CA4BtC;AAED,wBAAgB,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAwCrD"}
|
|
@@ -63,6 +63,9 @@ Commands:
|
|
|
63
63
|
aura3d animation scene <new|show|cast add|prop add|set|block|camera|shot|dialogue|render|...> (agent-native Scene-Tool CLI)
|
|
64
64
|
aura3d doctor
|
|
65
65
|
aura3d check-deploy --dist dist [--release] [--source [src]] [--asset assetId|--no-assets]
|
|
66
|
+
Static check of the build output against aura.assets.json (hashed assets, unreferenced files, licence gates with --release).
|
|
67
|
+
aura3d check-deploy --dist dist --browser [--route /path ...] [--browser-timeout ms] [--browser-settle ms]
|
|
68
|
+
Also loads each route (default /) from a local static server in headless Chromium and fails on HTTP errors, failed requests, uncaught errors and console errors. Needs Playwright in your project (npm i -D playwright, npx playwright install chromium).
|
|
66
69
|
aura3d init --agent all [--skills core|all|none] [--template <create-aura3d template>]
|
|
67
70
|
Writes agent instruction files, Aura3D agent skills (per client skills dir), and llms.txt; never overwrites user-edited files.`;
|
|
68
71
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-help.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli-help.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GACzB,8JAA8J,CAAC;AAEjK,MAAM,UAAU,aAAa;IAC3B,OAAO;;;;;;;;;;;;;;;;;WAiBE,cAAc;;;;;;;;;8BASK,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,YAAoB;IAC3C,OAAO;;;0SAGiS,cAAc;;iRAEvC,cAAc;;;;;;;;;;;;;;;;;;;;;;;4CAuBnP,YAAY;2DACG,YAAY
|
|
1
|
+
{"version":3,"file":"cli-help.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli-help.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GACzB,8JAA8J,CAAC;AAEjK,MAAM,UAAU,aAAa;IAC3B,OAAO;;;;;;;;;;;;;;;;;WAiBE,cAAc;;;;;;;;;8BASK,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,YAAoB;IAC3C,OAAO;;;0SAGiS,cAAc;;iRAEvC,cAAc;;;;;;;;;;;;;;;;;;;;;;;4CAuBnP,YAAY;2DACG,YAAY;;;;;;;;;qIAS8D,CAAC;AACtI,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":";AAoCA,OAAO,wBAAwB,CAAC"}
|
package/dist/aura3d-cli/cli.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { spawnSync } from "node:child_process";
|
|
3
|
+
import { resolve } from "node:path";
|
|
3
4
|
import { addAsset, bindGameRouteEvidence, certifyGameGeometry, checkDeploy, createCharacterAssemblyPlan, createAssetThumbnails, doctor, initAgentFiles, initAgentSetup, inspectAsset, importMeshyAsset, listAssets, scanAssets, validateAnimationAssets, validateGameAssets, validateAssets, validateAnimationStudioAssets, parseAnimationClipMap, writeTypedAssets, readAssetManifest } from "./index.js";
|
|
4
5
|
import { createCliOptionReaders, printSearchReport, profileUsage, } from "./cli-options.js";
|
|
5
6
|
import { assetsAddHelp, mainHelp } from "./cli-help.js";
|
|
6
7
|
import { writeRouteTypedAssets } from "./asset-route-typegen.js";
|
|
8
|
+
import { runBrowserDeployCheck } from "./deploy-browser-check.js";
|
|
7
9
|
import { runResolve, runSearch } from "./pull-bridge.js";
|
|
8
10
|
import { LADDER_ROLES, printLadderReport, runResolveLadder } from "./resolve-ladder.js";
|
|
9
11
|
import { cliCommandFor, cliCommandNames } from "./contracts/commands.js";
|
|
@@ -424,7 +426,30 @@ async function main() {
|
|
|
424
426
|
await runAnimationCommand(args[1]);
|
|
425
427
|
}
|
|
426
428
|
else if (command === "check-deploy") {
|
|
427
|
-
|
|
429
|
+
const staticResult = checkDeploy({ distDir: readOption("--dist"), ...readAssetValidationOptions() });
|
|
430
|
+
if (!hasFlag("--browser")) {
|
|
431
|
+
print(staticResult);
|
|
432
|
+
}
|
|
433
|
+
else {
|
|
434
|
+
// Runtime pass: open the built site in a headless browser and fail on HTTP errors, failed requests, uncaught errors and console errors.
|
|
435
|
+
const routes = args.flatMap((arg, index) => (arg === "--route" && args[index + 1] && !args[index + 1].startsWith("--") ? [args[index + 1]] : []));
|
|
436
|
+
const timeout = readOption("--browser-timeout");
|
|
437
|
+
const settle = readOption("--browser-settle");
|
|
438
|
+
const browserResult = await runBrowserDeployCheck({
|
|
439
|
+
distDir: resolve(process.cwd(), readOption("--dist") ?? "dist"),
|
|
440
|
+
routes,
|
|
441
|
+
...(timeout ? { timeoutMs: Number(timeout) } : {}),
|
|
442
|
+
...(settle ? { settleMs: Number(settle) } : {})
|
|
443
|
+
}).catch((error) => ({ ok: false, failures: [String(error.message ?? error)], warnings: [], routes: [] }));
|
|
444
|
+
const failures = [...staticResult.failures, ...browserResult.failures];
|
|
445
|
+
print({
|
|
446
|
+
...staticResult,
|
|
447
|
+
ok: failures.length === 0,
|
|
448
|
+
failures,
|
|
449
|
+
warnings: [...staticResult.warnings, ...browserResult.warnings],
|
|
450
|
+
messages: failures.length === 0 ? [`${staticResult.messages.join(" ")} Browser pass: ${browserResult.routes.length} route(s) loaded with no HTTP errors, failed requests or console errors.`] : failures
|
|
451
|
+
});
|
|
452
|
+
}
|
|
428
453
|
}
|
|
429
454
|
else if (command === "init") {
|
|
430
455
|
const agent = readOption("--agent") ?? "generic";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { type Server } from "node:http";
|
|
2
|
+
export interface BrowserRouteReport {
|
|
3
|
+
readonly route: string;
|
|
4
|
+
readonly status: number | null;
|
|
5
|
+
readonly consoleErrors: readonly string[];
|
|
6
|
+
readonly consoleWarnings: readonly string[];
|
|
7
|
+
readonly pageErrors: readonly string[];
|
|
8
|
+
readonly failedRequests: readonly string[];
|
|
9
|
+
readonly badResponses: readonly string[];
|
|
10
|
+
/** `data-aura3d-error` on <body> when the app reported a boot failure. */
|
|
11
|
+
readonly appError?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface BrowserDriver {
|
|
14
|
+
/** Open `url`, wait for the page to settle, and report what the browser saw. */
|
|
15
|
+
visit(url: string, route: string, options: {
|
|
16
|
+
readonly timeoutMs: number;
|
|
17
|
+
readonly settleMs: number;
|
|
18
|
+
}): Promise<BrowserRouteReport>;
|
|
19
|
+
close(): Promise<void>;
|
|
20
|
+
}
|
|
21
|
+
export interface BrowserDeployCheckOptions {
|
|
22
|
+
readonly distDir: string;
|
|
23
|
+
/** Routes to open, relative to the site root. Defaults to `/`. */
|
|
24
|
+
readonly routes?: readonly string[];
|
|
25
|
+
/** Where Playwright is resolved from. Defaults to the folder that contains `distDir`. */
|
|
26
|
+
readonly projectDir?: string;
|
|
27
|
+
readonly timeoutMs?: number;
|
|
28
|
+
readonly settleMs?: number;
|
|
29
|
+
/** Test seam: replaces the Playwright-backed driver. */
|
|
30
|
+
readonly driver?: BrowserDriver;
|
|
31
|
+
}
|
|
32
|
+
export interface BrowserDeployCheckResult {
|
|
33
|
+
readonly ok: boolean;
|
|
34
|
+
readonly failures: readonly string[];
|
|
35
|
+
readonly warnings: readonly string[];
|
|
36
|
+
readonly routes: readonly BrowserRouteReport[];
|
|
37
|
+
}
|
|
38
|
+
/** Static file server over `dist` that behaves like a plain static host: no SPA fallback, so a missing file is a real 404. */
|
|
39
|
+
export declare function startStaticServer(distDir: string): Promise<{
|
|
40
|
+
readonly server: Server;
|
|
41
|
+
readonly origin: string;
|
|
42
|
+
}>;
|
|
43
|
+
interface ChromiumLike {
|
|
44
|
+
launch(options: {
|
|
45
|
+
headless: boolean;
|
|
46
|
+
args: string[];
|
|
47
|
+
}): Promise<{
|
|
48
|
+
newContext(options?: Record<string, unknown>): Promise<{
|
|
49
|
+
newPage(): Promise<PageLike>;
|
|
50
|
+
close(): Promise<void>;
|
|
51
|
+
}>;
|
|
52
|
+
close(): Promise<void>;
|
|
53
|
+
}>;
|
|
54
|
+
}
|
|
55
|
+
interface PageLike {
|
|
56
|
+
on(event: string, handler: (value: never) => void): void;
|
|
57
|
+
goto(url: string, options: {
|
|
58
|
+
waitUntil: string;
|
|
59
|
+
timeout: number;
|
|
60
|
+
}): Promise<{
|
|
61
|
+
status(): number;
|
|
62
|
+
} | null>;
|
|
63
|
+
waitForLoadState(state: string, options: {
|
|
64
|
+
timeout: number;
|
|
65
|
+
}): Promise<void>;
|
|
66
|
+
waitForTimeout(ms: number): Promise<void>;
|
|
67
|
+
evaluate<T>(fn: () => T): Promise<T>;
|
|
68
|
+
}
|
|
69
|
+
export declare function loadChromium(projectDir: string, moduleNames?: readonly string[]): ChromiumLike;
|
|
70
|
+
/** Driver backed by Playwright's Chromium. Software WebGL flags let headless runs without a GPU boot Aura3D apps. */
|
|
71
|
+
export declare function createPlaywrightDriver(projectDir: string): BrowserDriver;
|
|
72
|
+
export declare function evaluateRouteReport(report: BrowserRouteReport): {
|
|
73
|
+
readonly failures: string[];
|
|
74
|
+
readonly warnings: string[];
|
|
75
|
+
};
|
|
76
|
+
export declare function runBrowserDeployCheck(options: BrowserDeployCheckOptions): Promise<BrowserDeployCheckResult>;
|
|
77
|
+
export {};
|
|
78
|
+
//# sourceMappingURL=deploy-browser-check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy-browser-check.d.ts","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/deploy-browser-check.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
// `aura3d check-deploy --browser`: load the built site in a headless browser and fail on what a visitor would hit.
|
|
2
|
+
// The static check (hashed assets, unreferenced files, licence gates) lives in index.ts `checkDeploy`; this adds a runtime pass:
|
|
3
|
+
// every route is opened from a local static server over `dist`, and any HTTP error, failed request, uncaught exception or
|
|
4
|
+
// console error fails the check. Playwright is an optional peer: it is resolved from the project being checked.
|
|
5
|
+
import { existsSync, readFileSync, statSync } from "node:fs";
|
|
6
|
+
import { createRequire } from "node:module";
|
|
7
|
+
import { createServer } from "node:http";
|
|
8
|
+
import { extname, join, normalize, resolve, sep } from "node:path";
|
|
9
|
+
const MIME = {
|
|
10
|
+
".html": "text/html; charset=utf-8", ".js": "text/javascript", ".mjs": "text/javascript", ".css": "text/css", ".json": "application/json",
|
|
11
|
+
".glb": "model/gltf-binary", ".gltf": "model/gltf+json", ".bin": "application/octet-stream", ".hdr": "application/octet-stream",
|
|
12
|
+
".ktx2": "image/ktx2", ".wasm": "application/wasm", ".png": "image/png", ".jpg": "image/jpeg", ".jpeg": "image/jpeg", ".webp": "image/webp",
|
|
13
|
+
".svg": "image/svg+xml", ".ico": "image/x-icon", ".woff": "font/woff", ".woff2": "font/woff2", ".txt": "text/plain; charset=utf-8",
|
|
14
|
+
".mp3": "audio/mpeg", ".ogg": "audio/ogg", ".wav": "audio/wav", ".webm": "video/webm", ".mp4": "video/mp4"
|
|
15
|
+
};
|
|
16
|
+
/** Static file server over `dist` that behaves like a plain static host: no SPA fallback, so a missing file is a real 404. */
|
|
17
|
+
export function startStaticServer(distDir) {
|
|
18
|
+
const root = resolve(distDir);
|
|
19
|
+
return new Promise((resolvePromise, reject) => {
|
|
20
|
+
const server = createServer((request, response) => {
|
|
21
|
+
const pathname = decodeURIComponent(new URL(request.url ?? "/", "http://localhost").pathname);
|
|
22
|
+
const relative = normalize(pathname).replace(/^([/\\])+/, "");
|
|
23
|
+
const candidates = [join(root, relative), join(root, relative, "index.html"), join(root, `${relative}.html`)];
|
|
24
|
+
const file = candidates.find((candidate) => (candidate === root || candidate.startsWith(root + sep)) && existsSync(candidate) && statSync(candidate).isFile());
|
|
25
|
+
if (!file) {
|
|
26
|
+
response.writeHead(404, { "content-type": "text/plain" });
|
|
27
|
+
response.end("not found");
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
const body = readFileSync(file);
|
|
31
|
+
response.writeHead(200, { "content-type": MIME[extname(file).toLowerCase()] ?? "application/octet-stream", "content-length": body.length, "cache-control": "no-store" });
|
|
32
|
+
response.end(body);
|
|
33
|
+
});
|
|
34
|
+
server.once("error", reject);
|
|
35
|
+
server.listen(0, "127.0.0.1", () => {
|
|
36
|
+
const address = server.address();
|
|
37
|
+
resolvePromise({ server, origin: `http://127.0.0.1:${typeof address === "object" && address ? address.port : 0}` });
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
const PLAYWRIGHT_MODULES = ["playwright", "@playwright/test", "playwright-core"];
|
|
42
|
+
export function loadChromium(projectDir, moduleNames = PLAYWRIGHT_MODULES) {
|
|
43
|
+
const projectRequire = createRequire(join(resolve(projectDir), "package.json"));
|
|
44
|
+
for (const name of moduleNames) {
|
|
45
|
+
try {
|
|
46
|
+
const loaded = projectRequire(name);
|
|
47
|
+
if (loaded.chromium)
|
|
48
|
+
return loaded.chromium;
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
// try the next candidate
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
throw new Error("check-deploy --browser needs Playwright in the project being checked. Install it with `npm i -D playwright` and `npx playwright install chromium`, or leave out --browser for the static check.");
|
|
55
|
+
}
|
|
56
|
+
/** Driver backed by Playwright's Chromium. Software WebGL flags let headless runs without a GPU boot Aura3D apps. */
|
|
57
|
+
export function createPlaywrightDriver(projectDir) {
|
|
58
|
+
const chromium = loadChromium(projectDir);
|
|
59
|
+
let browserPromise;
|
|
60
|
+
const browser = () => (browserPromise ??= chromium.launch({ headless: true, args: ["--use-angle=swiftshader", "--enable-unsafe-swiftshader", "--ignore-gpu-blocklist"] }));
|
|
61
|
+
return {
|
|
62
|
+
async visit(url, route, { timeoutMs, settleMs }) {
|
|
63
|
+
const context = await (await browser()).newContext({ viewport: { width: 1280, height: 720 } });
|
|
64
|
+
const page = await context.newPage();
|
|
65
|
+
const consoleErrors = [];
|
|
66
|
+
const consoleWarnings = [];
|
|
67
|
+
const pageErrors = [];
|
|
68
|
+
const failedRequests = [];
|
|
69
|
+
const badResponses = [];
|
|
70
|
+
page.on("console", ((message) => {
|
|
71
|
+
const text = message.text().slice(0, 300);
|
|
72
|
+
if (message.type() === "error")
|
|
73
|
+
consoleErrors.push(text);
|
|
74
|
+
else if (message.type() === "warning")
|
|
75
|
+
consoleWarnings.push(text);
|
|
76
|
+
}));
|
|
77
|
+
page.on("pageerror", ((error) => pageErrors.push(String(error.message ?? error).slice(0, 300))));
|
|
78
|
+
page.on("requestfailed", ((request) => failedRequests.push(`${new URL(request.url()).pathname} (${request.failure()?.errorText ?? "failed"})`)));
|
|
79
|
+
page.on("response", ((response) => {
|
|
80
|
+
if (response.status() >= 400)
|
|
81
|
+
badResponses.push(`${response.status()} ${new URL(response.url()).pathname}`);
|
|
82
|
+
}));
|
|
83
|
+
try {
|
|
84
|
+
const response = await page.goto(url, { waitUntil: "load", timeout: timeoutMs });
|
|
85
|
+
await page.waitForLoadState("networkidle", { timeout: timeoutMs }).catch(() => undefined);
|
|
86
|
+
await page.waitForTimeout(settleMs);
|
|
87
|
+
const appError = await page.evaluate(() => document.body?.dataset?.aura3dError ?? "");
|
|
88
|
+
return {
|
|
89
|
+
route,
|
|
90
|
+
status: response ? response.status() : null,
|
|
91
|
+
consoleErrors,
|
|
92
|
+
consoleWarnings,
|
|
93
|
+
pageErrors,
|
|
94
|
+
failedRequests,
|
|
95
|
+
badResponses,
|
|
96
|
+
...(appError ? { appError } : {})
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
finally {
|
|
100
|
+
await context.close();
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
async close() {
|
|
104
|
+
if (browserPromise)
|
|
105
|
+
await (await browserPromise).close();
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
/** A missing favicon is reported, but is not worth failing a deploy on. */
|
|
110
|
+
const WARN_ONLY_PATHS = /^404 \/(favicon\.ico|apple-touch-icon[^/]*\.png)$/;
|
|
111
|
+
export function evaluateRouteReport(report) {
|
|
112
|
+
const failures = [];
|
|
113
|
+
const warnings = [];
|
|
114
|
+
const at = `Route ${report.route}`;
|
|
115
|
+
if (report.status === null || report.status >= 400)
|
|
116
|
+
failures.push(`${at} answered ${report.status ?? "no response"}.`);
|
|
117
|
+
for (const response of report.badResponses)
|
|
118
|
+
(WARN_ONLY_PATHS.test(response) ? warnings : failures).push(`${at} request failed with HTTP ${response}.`);
|
|
119
|
+
for (const request of report.failedRequests)
|
|
120
|
+
failures.push(`${at} request did not complete: ${request}.`);
|
|
121
|
+
for (const error of report.pageErrors)
|
|
122
|
+
failures.push(`${at} threw an uncaught error: ${error}`);
|
|
123
|
+
for (const message of report.consoleErrors) {
|
|
124
|
+
// The browser echoes "Failed to load resource" for every bad response; those are already reported with their path above.
|
|
125
|
+
if (/^Failed to load resource/i.test(message) && (report.badResponses.length > 0 || report.failedRequests.length > 0))
|
|
126
|
+
continue;
|
|
127
|
+
failures.push(`${at} logged a console error: ${message}`);
|
|
128
|
+
}
|
|
129
|
+
if (report.appError)
|
|
130
|
+
failures.push(`${at} reported an app boot error (data-aura3d-error): ${report.appError}`);
|
|
131
|
+
for (const message of report.consoleWarnings)
|
|
132
|
+
warnings.push(`${at} logged a console warning: ${message}`);
|
|
133
|
+
return { failures, warnings };
|
|
134
|
+
}
|
|
135
|
+
export async function runBrowserDeployCheck(options) {
|
|
136
|
+
const distDir = resolve(options.distDir);
|
|
137
|
+
if (!existsSync(join(distDir, "index.html")) && !(options.routes ?? []).length) {
|
|
138
|
+
return { ok: false, failures: [`Browser check found no index.html in ${distDir}. Run your build first.`], warnings: [], routes: [] };
|
|
139
|
+
}
|
|
140
|
+
const projectDir = resolve(options.projectDir ?? join(distDir, ".."));
|
|
141
|
+
const driver = options.driver ?? createPlaywrightDriver(projectDir);
|
|
142
|
+
const { server, origin } = await startStaticServer(distDir);
|
|
143
|
+
const routes = (options.routes?.length ? options.routes : ["/"]).map((route) => (route.startsWith("/") ? route : `/${route}`));
|
|
144
|
+
const failures = [];
|
|
145
|
+
const warnings = [];
|
|
146
|
+
const reports = [];
|
|
147
|
+
try {
|
|
148
|
+
for (const route of routes) {
|
|
149
|
+
try {
|
|
150
|
+
const report = await driver.visit(`${origin}${route}`, route, { timeoutMs: options.timeoutMs ?? 30_000, settleMs: options.settleMs ?? 2_000 });
|
|
151
|
+
reports.push(report);
|
|
152
|
+
const verdict = evaluateRouteReport(report);
|
|
153
|
+
failures.push(...verdict.failures);
|
|
154
|
+
warnings.push(...verdict.warnings);
|
|
155
|
+
}
|
|
156
|
+
catch (error) {
|
|
157
|
+
failures.push(`Route ${route} could not be opened: ${String(error.message ?? error).split("\n")[0]}`);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
finally {
|
|
162
|
+
await driver.close().catch(() => undefined);
|
|
163
|
+
await new Promise((done) => server.close(() => done()));
|
|
164
|
+
}
|
|
165
|
+
return { ok: failures.length === 0, failures, warnings, routes: reports };
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=deploy-browser-check.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy-browser-check.js","sourceRoot":"","sources":["../../../../packages/aura3d-cli/src/deploy-browser-check.ts"],"names":[],"mappings":"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"}
|
|
@@ -75,7 +75,7 @@ export function createA3DProject(options) {
|
|
|
75
75
|
const dependencies = { ...(packageJson.dependencies ?? {}) };
|
|
76
76
|
const auraDependencies = Object.keys(dependencies).filter((name) => name.startsWith("@aura3d/"));
|
|
77
77
|
if (auraDependencies.length === 0) {
|
|
78
|
-
dependencies["@aura3d/engine"] = options.packageVersion ?? "4.3.
|
|
78
|
+
dependencies["@aura3d/engine"] = options.packageVersion ?? "4.3.7";
|
|
79
79
|
}
|
|
80
80
|
else if (options.packageVersion) {
|
|
81
81
|
for (const dependency of auraDependencies)
|
package/dist/rendering/index.js
CHANGED
|
@@ -104,7 +104,7 @@ export { isTextureBinding, TextureBinding } from "./TextureBinding.js";
|
|
|
104
104
|
* `AnimationMixerThreeCompat`, `SkeletonThreeCompat` and `MorphTargetMixerThreeCompat`, the symbols WS-1.6
|
|
105
105
|
* found the parity generator was failing to grep. Only the rendering one was fabricated.
|
|
106
106
|
*
|
|
107
|
-
* Retrievable from git history; recorded in `docs/architecture/2.0-removals.md`.
|
|
107
|
+
* Retrievable from git history; recorded in `docs/archive/docs/architecture/2.0-removals.md`.
|
|
108
108
|
*/
|
|
109
109
|
export { ProductionWebGL2Renderer, ProductionRuntimeRenderer, ProductionWebGPURenderer, analyzePixels, bindTransmissionBackdropCapture, createSceneColorMipLevels, createTransmissionBackdropSource, createContactShadowPass, createProductionOrbitControlPreset, createDualProbeEnvironmentLightingResources, createProductionEnvironmentLightingResources, createProductionPbrHdrPipelineFromRadiance, createProductionToneMappingPolicy, createProductionWebGPUReport, describeWebGPULostDevice, resolveProductionRuntimeRendererBackend, screenWebGPURenderBundlePrototype, WEBGPU_PARITY_PLAN, loadProductionHdrEnvironmentFile, loadProductionHdrEnvironment, normalizeTransmissionBackdropCapture, parseProductionRadianceHDR, rendererFeatureReport, rendererInteractiveFeatureReport, rendererProofCapture, rendererShadowReport, validateProductionRendererInput, summarizeProductionAnimationWorkflow, summarizeProductionProductionProof, summarizeProductionWebGL2Proof } from "./production-runtime/index.js";
|
|
110
110
|
export { ShaderModule } from "./ShaderModule.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aura3d/engine",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.7",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -149,31 +149,31 @@
|
|
|
149
149
|
"vite": "^7.3.2",
|
|
150
150
|
"vitest": "^3.1.3",
|
|
151
151
|
"recast-navigation": "0.43.1",
|
|
152
|
-
"@aura3d/animation": "4.3.
|
|
153
|
-
"@aura3d/
|
|
154
|
-
"@aura3d/
|
|
155
|
-
"@aura3d/audio": "4.3.
|
|
156
|
-
"@aura3d/assets": "4.3.
|
|
157
|
-
"@aura3d/cli": "4.3.
|
|
158
|
-
"@aura3d/
|
|
159
|
-
"@aura3d/
|
|
160
|
-
"@aura3d/
|
|
161
|
-
"@aura3d/
|
|
162
|
-
"@aura3d/editor-runtime": "4.3.
|
|
163
|
-
"@aura3d/engine-runtime": "4.3.
|
|
152
|
+
"@aura3d/animation": "4.3.7",
|
|
153
|
+
"@aura3d/asset-index": "4.3.7",
|
|
154
|
+
"@aura3d/apps": "4.3.7",
|
|
155
|
+
"@aura3d/audio": "4.3.7",
|
|
156
|
+
"@aura3d/assets": "4.3.7",
|
|
157
|
+
"@aura3d/cli": "4.3.7",
|
|
158
|
+
"@aura3d/core": "4.3.7",
|
|
159
|
+
"@aura3d/controls": "4.3.7",
|
|
160
|
+
"@aura3d/debug": "4.3.7",
|
|
161
|
+
"@aura3d/ecs": "4.3.7",
|
|
162
|
+
"@aura3d/editor-runtime": "4.3.7",
|
|
163
|
+
"@aura3d/engine-runtime": "4.3.7",
|
|
164
164
|
"@aura3d/game": "4.0.7",
|
|
165
|
-
"@aura3d/
|
|
166
|
-
"@aura3d/
|
|
167
|
-
"@aura3d/navigation-recast": "4.3.
|
|
168
|
-
"@aura3d/physics": "4.3.
|
|
169
|
-
"@aura3d/
|
|
170
|
-
"@aura3d/
|
|
171
|
-
"@aura3d/react": "4.3.
|
|
172
|
-
"@aura3d/rendering": "4.3.
|
|
173
|
-
"@aura3d/
|
|
174
|
-
"@aura3d/
|
|
175
|
-
"@aura3d/workflows": "4.3.
|
|
176
|
-
"create-aura3d": "4.3.
|
|
165
|
+
"@aura3d/input": "4.3.7",
|
|
166
|
+
"@aura3d/math": "4.3.7",
|
|
167
|
+
"@aura3d/navigation-recast": "4.3.7",
|
|
168
|
+
"@aura3d/physics": "4.3.7",
|
|
169
|
+
"@aura3d/physics-rapier": "4.3.7",
|
|
170
|
+
"@aura3d/product-studio": "4.3.7",
|
|
171
|
+
"@aura3d/react": "4.3.7",
|
|
172
|
+
"@aura3d/rendering": "4.3.7",
|
|
173
|
+
"@aura3d/scripting": "4.3.7",
|
|
174
|
+
"@aura3d/scene": "4.3.7",
|
|
175
|
+
"@aura3d/workflows": "4.3.7",
|
|
176
|
+
"create-aura3d": "4.3.7"
|
|
177
177
|
},
|
|
178
178
|
"dependencies": {
|
|
179
179
|
"@gltf-transform/core": "4.5.1",
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
"test:browser": "playwright test tests/route-health.spec.ts tests/screenshot.spec.ts --workers=1"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@aura3d/engine": "4.3.
|
|
16
|
-
"@aura3d/assets": "4.3.
|
|
15
|
+
"@aura3d/engine": "4.3.7",
|
|
16
|
+
"@aura3d/assets": "4.3.7"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
19
|
"@playwright/test": "1.59.1",
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
"test:browser": "playwright test tests/route-health.spec.ts tests/playable.spec.ts tests/screenshot.spec.ts tests/certified-rig.spec.ts --workers=1"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@aura3d/engine": "4.3.
|
|
16
|
-
"@aura3d/assets": "4.3.
|
|
15
|
+
"@aura3d/engine": "4.3.7",
|
|
16
|
+
"@aura3d/assets": "4.3.7"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
19
|
"@playwright/test": "1.59.1",
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
"test:browser": "playwright test tests/route-health.spec.ts tests/screenshot.spec.ts --workers=1"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@aura3d/engine": "4.3.
|
|
16
|
-
"@aura3d/assets": "4.3.
|
|
15
|
+
"@aura3d/engine": "4.3.7",
|
|
16
|
+
"@aura3d/assets": "4.3.7"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
19
|
"@playwright/test": "1.59.1",
|