@hypersoniclabs/helix-cli 0.1.25-helix3.479 → 0.1.25-helix3.480
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 +2 -1
- package/dist/index.js +17 -2
- package/dist/index.js.map +1 -1
- package/dist/scenePerf/byteRules.d.ts +28 -0
- package/dist/scenePerf/byteRules.js +251 -0
- package/dist/scenePerf/byteRules.js.map +1 -0
- package/dist/scenePerf/commands.d.ts +3 -0
- package/dist/scenePerf/commands.js +95 -0
- package/dist/scenePerf/commands.js.map +1 -0
- package/dist/scenePerf/format.d.ts +3 -0
- package/dist/scenePerf/format.js +25 -0
- package/dist/scenePerf/format.js.map +1 -0
- package/dist/scenePerf/gate.d.ts +23 -0
- package/dist/scenePerf/gate.js +39 -0
- package/dist/scenePerf/gate.js.map +1 -0
- package/dist/scenePerf/glb.d.ts +44 -0
- package/dist/scenePerf/glb.js +179 -0
- package/dist/scenePerf/glb.js.map +1 -0
- package/dist/scenePerf/index.d.ts +5 -0
- package/dist/scenePerf/index.js +19 -0
- package/dist/scenePerf/index.js.map +1 -0
- package/dist/scenePerf/ktx2.d.ts +27 -0
- package/dist/scenePerf/ktx2.js +53 -0
- package/dist/scenePerf/ktx2.js.map +1 -0
- package/dist/scenePerf/run.d.ts +31 -0
- package/dist/scenePerf/run.js +65 -0
- package/dist/scenePerf/run.js.map +1 -0
- package/dist/scenePerf/source.d.ts +15 -0
- package/dist/scenePerf/source.js +73 -0
- package/dist/scenePerf/source.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/docs/scene-perf.md +59 -0
- package/package.json +3 -2
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_abs.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_audio.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_engine.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_expression.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_jbeam.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_materials.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_stock_events.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/fmod_studio.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/fsb5.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/sim_audio.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/sim_audio_ac.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/sim_audio_beamng.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/sim_audio_fixtures.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/test_beamng_engine.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/test_sim_audio.cpython-312.pyc +0 -0
package/README.md
CHANGED
|
@@ -104,7 +104,8 @@ The token is stored in `~/.helix/credentials.json` (mode `600`). It's sent as
|
|
|
104
104
|
| `helix world audit\|source-audit\|perf-gate\|prove-live` | Run the blocking world QA, performance, and deployed-build identity gates. |
|
|
105
105
|
| `helix world performance-report [bundle] [--scene <scene-v2.json>] [--package <package-version.json>] [--snapshot <inspect.json>] [--perf <receipt.json>]` | Analyze exact declared scene resources and existing reference-profile budgets, while keeping authored geometry/material/delivery estimates separate from supplied runtime claims. Prints actionable instancing, Palette, lighting, transfer, and visual-QA guidance; it never predicts FPS from static counts. |
|
|
106
106
|
| `helix world scene-source inventory\|compile <helsinki\|bistro> <archive>` | Verify and safely inventory a known CC BY source archive, then compile deterministic local proxy/detail GLBs and an existing-schema Scene v2 package. |
|
|
107
|
-
| `helix world scene-source publish <world-id> <package-dir> [--publish]` | Validate the Scene v2 package and print its multipart build receipt. Execution remains dry-run-only until backend private-pin entitlement lands; `--publish` currently fails closed, and access control never changes CC BY rights. |
|
|
107
|
+
| `helix world scene-source publish <world-id> <package-dir> [--publish]` | Validate the Scene v2 package, refuse it if it breaks the open-world performance rules (docs/scene-perf.md; no override), and print its multipart build receipt. Execution remains dry-run-only until backend private-pin entitlement lands; `--publish` currently fails closed, and access control never changes CC BY rights. |
|
|
108
|
+
| `helix scene validate <dir\|file> [--perf] [--tier desktop\|mobile\|desktop,mobile] [--out <report.json>]` | Check a Scene v2 package against the shared validator and, with `--perf`, the 14 open-world performance rules (textures, geometry, cells, draws, budget, first-playable bytes). Exit 0 pass, 1 refused, 2 cannot be judged. See `docs/scene-perf.md`. |
|
|
108
109
|
| `helix continuum publish-source-map\|publish-scratch\|publish-package\|publish-glb\|make-item\|publish-owned-item` | Resume exact-CID object adoption/ingestion, Package lease/seal, optional explicitly authorized Listing, and WorldRelease publication through one creator-owned pipeline. |
|
|
109
110
|
| `helix continuum receipt <job-id>` | Read the sanitized durable receipt for a completed Continuum publication. |
|
|
110
111
|
| `helix unreal init\|validate\|doctor\|package [project]` | Create and gate a shared-runtime or native-game publish manifest, check optional editor MCP, and assemble a local upload-shaped package. |
|
package/dist/index.js
CHANGED
|
@@ -41,7 +41,8 @@ const moveUx_1 = require("./visualQa/moveUx");
|
|
|
41
41
|
const validate_1 = require("./vehicle/validate");
|
|
42
42
|
const commander_1 = require("commander");
|
|
43
43
|
const commands_1 = require("./sceneHlod/commands");
|
|
44
|
-
const commands_2 = require("./
|
|
44
|
+
const commands_2 = require("./scenePerf/commands");
|
|
45
|
+
const commands_3 = require("./city/source/commands");
|
|
45
46
|
const command_1 = require("./city/import/osm/command");
|
|
46
47
|
const placementRequest_1 = require("./placementRequest");
|
|
47
48
|
const bundle_1 = require("./bundle");
|
|
@@ -6019,10 +6020,11 @@ const scene = program
|
|
|
6019
6020
|
.command('scene')
|
|
6020
6021
|
.description('Bring a captured world into the scene sources a HELIX world streams');
|
|
6021
6022
|
(0, commands_1.registerSceneHlodCommands)(scene, fail);
|
|
6023
|
+
(0, commands_2.registerScenePerfCommands)(scene);
|
|
6022
6024
|
const city = program
|
|
6023
6025
|
.command('city')
|
|
6024
6026
|
.description('City pipelines: the neutral city source every importer writes and every generator reads');
|
|
6025
|
-
(0,
|
|
6027
|
+
(0, commands_3.registerCitySourceCommands)(city, fail);
|
|
6026
6028
|
(0, command_1.registerCityImportOsm)(city, fail);
|
|
6027
6029
|
const sceneImport = scene
|
|
6028
6030
|
.command('import')
|
|
@@ -6588,6 +6590,19 @@ sceneSource
|
|
|
6588
6590
|
requiresAuth: opts.requiresAuth,
|
|
6589
6591
|
visibility: opts.visibility,
|
|
6590
6592
|
});
|
|
6593
|
+
// The open-world performance contract (docs/scene-perf.md): refuse before a byte is uploaded. No override flag.
|
|
6594
|
+
{
|
|
6595
|
+
const { enforceScenePerfGate, ScenePerfRefusal } = await Promise.resolve().then(() => __importStar(require('./scenePerf/gate')));
|
|
6596
|
+
try {
|
|
6597
|
+
const perf = await enforceScenePerfGate({ scene: input.scene, resources: input.resources.map((resource) => ({ path: resource.path, bytes: resource.bytes })) }, { tiers: opts.supportsMobile ? ['desktop', 'mobile'] : ['desktop'], profile: opts.profile });
|
|
6598
|
+
process.stderr.write(`✔ performance contract: ${perf.rules.filter((rule) => rule.passed).length}/${perf.rules.length} rule checks pass${perf.warned.length ? ` (warnings: ${perf.warned.join(', ')}; run helix scene validate --perf for detail)` : ''}\n`);
|
|
6599
|
+
}
|
|
6600
|
+
catch (error) {
|
|
6601
|
+
if (error instanceof ScenePerfRefusal)
|
|
6602
|
+
fail(`✖ ${error.message}`);
|
|
6603
|
+
throw error;
|
|
6604
|
+
}
|
|
6605
|
+
}
|
|
6591
6606
|
if (!opts.publish) {
|
|
6592
6607
|
console.log(JSON.stringify(createSceneV2DryRunReceipt(input), null, 2));
|
|
6593
6608
|
return;
|