@forgeax/game 0.3.7 → 0.3.9
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 +30 -148
- package/assets/extensions/asset3d/cli.mjs +2236 -0
- package/assets/extensions/asset3d/extension.json +7 -0
- package/assets/extensions/asset3d/skills/art-3d-asset-library/SKILL.md +166 -0
- package/assets/licenses/fflate.txt +21 -0
- package/assets/skills/forgeax-game/SKILL.md +17 -16
- package/dist/main.js +535 -2478
- package/docs/asset3d.md +84 -204
- package/docs/plugin-integration-standard.md +196 -0
- package/package.json +4 -10
- package/assets/asset3d/adapter/SKILL.md +0 -56
- package/assets/asset3d/provider/asset3d-search-provider-a274238712c1dced99e4aa3148a0d15904ce2a90-darwin-arm64.tar.gz +0 -0
- package/assets/asset3d/provider/asset3d-search-provider-a274238712c1dced99e4aa3148a0d15904ce2a90-linux-x64.tar.gz +0 -0
- package/assets/asset3d/schemas/receipt-1.0.0.json +0 -29
- package/assets/asset3d/schemas/result-1.0.0.json +0 -361
- package/assets/asset3d/vibegame-art-3d-asset-library-2.0.0.tgz +0 -0
- package/assets/asset3d/vibegame-art-3d-asset-library-2.0.0.tgz.sha256 +0 -1
- package/docs/release-0.3.0.md +0 -100
- package/docs/release-0.3.1.md +0 -107
- package/docs/release-0.3.2.md +0 -90
- package/docs/release-0.3.3.md +0 -73
- package/docs/release-0.3.4.md +0 -66
- package/docs/release-0.3.5.md +0 -32
package/docs/release-0.3.3.md
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
# `@forgeax/game` 0.3.3 release guide
|
|
2
|
-
|
|
3
|
-
Version `0.3.3` adds the EA depot without removing the public AW path. The packaged
|
|
4
|
-
provider is unchanged; one explicit library selection binds the matching depot and
|
|
5
|
-
gateway together.
|
|
6
|
-
|
|
7
|
-
> [!IMPORTANT]
|
|
8
|
-
> EA is currently available only through the office-network `local` gateway.
|
|
9
|
-
> There is no reachability-based fallback: silently changing libraries would make
|
|
10
|
-
> identical queries resolve to different assets.
|
|
11
|
-
|
|
12
|
-
## User contract
|
|
13
|
-
|
|
14
|
-
```bash
|
|
15
|
-
# Public/default
|
|
16
|
-
npx -y @forgeax/game@0.3.3 asset3d enable
|
|
17
|
-
|
|
18
|
-
# Office network
|
|
19
|
-
npx -y @forgeax/game@0.3.3 asset3d enable --library ea
|
|
20
|
-
|
|
21
|
-
npx -y @forgeax/game@0.3.3 asset3d doctor --json
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
The selected mode writes these non-secret provider settings:
|
|
25
|
-
|
|
26
|
-
| Mode | Depot | Built-in gateway |
|
|
27
|
-
|:--|:--|:--|
|
|
28
|
-
| Default or `--library aw` | `aw` | Existing public AW service |
|
|
29
|
-
| `--library ea` | `ea` | `http://test-ultrongw.woa.com/trpc.oasismetric.omcontentserver.http` |
|
|
30
|
-
|
|
31
|
-
`FORGEAX_ASSET_LIBRARY=aw|ea` is the deployment selector. `--base-url` and
|
|
32
|
-
`FORGEAX_ASSET_LIBRARY_BASE_URL` remain gateway overrides and never change the
|
|
33
|
-
selected depot. The project stores only the service URL, depot name, private
|
|
34
|
-
credential-file path, and live-derived download origins.
|
|
35
|
-
|
|
36
|
-
## Transaction-bound search
|
|
37
|
-
|
|
38
|
-
`search_asset` accepts the execution UUID returned by `asset3d begin`; it no longer
|
|
39
|
-
accepts a caller-selected `output_dir`. The Game Plugin bridge verifies the execution
|
|
40
|
-
and exact query list, then injects the private quarantine path before invoking the
|
|
41
|
-
packaged provider. This removes agent path guesses such as `assets` from the tool
|
|
42
|
-
contract while preserving the existing provider implementation.
|
|
43
|
-
|
|
44
|
-
The bridge also persists the exact checked TextContent by execution. A normal commit
|
|
45
|
-
is now `asset3d commit --execution <uuid> --json`; agents no longer reconstruct large
|
|
46
|
-
provider JSON as shell input.
|
|
47
|
-
|
|
48
|
-
`asset3d enable` now installs the generic `asset3d-search` bridge into every Agent
|
|
49
|
-
host previously selected by `install`. The user-level launch command carries no key
|
|
50
|
-
and no project path; it discovers the active project's owned Provider configuration
|
|
51
|
-
from its working directory. Disabled projects advertise zero Asset3D tools. Start a
|
|
52
|
-
new Agent session after enabling so the host refreshes its MCP tool inventory.
|
|
53
|
-
|
|
54
|
-
## Verified migration
|
|
55
|
-
|
|
56
|
-
- [x] EA access check succeeded through the packaged provider.
|
|
57
|
-
- [x] Query `wooden barrel` returned EA asset `SM_Prop_Bucket_001.zip`.
|
|
58
|
-
- [x] The provider downloaded and converted the result to GLB.
|
|
59
|
-
- [x] Delivered result was 565,650 bytes with SHA-256
|
|
60
|
-
`17897a89e652170e7ab98b08dd71f10c4289e58b38caac52e0b41e44b5f72185`.
|
|
61
|
-
- [x] The primary GLB was 314,908 bytes.
|
|
62
|
-
- [ ] Registry publication and registry-downloaded tarball verification.
|
|
63
|
-
|
|
64
|
-
## Release gates
|
|
65
|
-
|
|
66
|
-
```bash
|
|
67
|
-
bun run typecheck
|
|
68
|
-
bun test test/*.test.ts
|
|
69
|
-
FORGEAX_ASSET3D_PROVIDER_BUNDLE=<audited-provider-archive> bun run build
|
|
70
|
-
FORGEAX_ASSET3D_PROVIDER_BUNDLE=<audited-provider-archive> \
|
|
71
|
-
npm pack --ignore-scripts --json --pack-destination <audited-directory>
|
|
72
|
-
bun scripts/check-package-artifact.ts <audited-directory>/forgeax-game-0.3.3.tgz
|
|
73
|
-
```
|
package/docs/release-0.3.4.md
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
# @forgeax/game 0.3.4 release contract
|
|
2
|
-
|
|
3
|
-
Version `0.3.4` adds a self-contained Linux x64 Asset3D Provider while preserving
|
|
4
|
-
the existing opt-in workflow. Ordinary `install` and `init` remain platform-neutral
|
|
5
|
-
and keep Asset3D disabled. A user enables Asset3D only from an initialized game:
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npx -y @forgeax/game@0.3.4 asset3d enable
|
|
9
|
-
npx -y @forgeax/game@0.3.4 asset3d doctor --json
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
## Supported Provider targets
|
|
13
|
-
|
|
14
|
-
| Host | Provider archive SHA-256 | Status |
|
|
15
|
-
|---|---|---|
|
|
16
|
-
| Darwin arm64 | `9492c507a3afe5cafcd50b5f782b313c8716c2e52f5def06592c6a100c0459db` | Supported |
|
|
17
|
-
| Linux x64 | `e6ac3df76c8b82f9fe2c063dd3f221324a9dad5176fd52535a5144b0ff6002d8` | Supported; Python 3.11 or 3.12 required |
|
|
18
|
-
|
|
19
|
-
Both archives bind Provider commit
|
|
20
|
-
`c181c48fbffc933a7ce9a0836f7878ca5e6d77e1`. The package build fails if either
|
|
21
|
-
source archive is absent, is a symlink, or differs from its approved digest. The npm
|
|
22
|
-
artifact gate repeats those checks against the packed bytes.
|
|
23
|
-
|
|
24
|
-
The offline wheelhouses omit upstream dependency test suites and redact
|
|
25
|
-
credential-shaped user-info from dependency documentation examples. Runtime modules
|
|
26
|
-
and package metadata remain present, each rewritten wheel is re-RECORDed and
|
|
27
|
-
hash-locked, and the resulting platform archives are byte-reproducible. This keeps
|
|
28
|
-
test-only public tokens and false credential patterns out of the npm payload.
|
|
29
|
-
|
|
30
|
-
Linux arm64 and Windows are not part of this release. `asset3d enable` fails closed
|
|
31
|
-
with `asset3d_provider_target_unreleased` on those hosts; it does not install a
|
|
32
|
-
different target or fall back to downloaded Provider code.
|
|
33
|
-
|
|
34
|
-
## Linux release gate
|
|
35
|
-
|
|
36
|
-
The Ubuntu x64 CI job performs the Linux-specific verification from the same package
|
|
37
|
-
assets that are published:
|
|
38
|
-
|
|
39
|
-
1. Provision the Provider into an empty managed cache without downloading Provider
|
|
40
|
-
code or Python dependencies.
|
|
41
|
-
2. Verify the archive manifest, target, file digests, wheel lock, and converter.
|
|
42
|
-
3. Execute the bundled Linux x64 `FBX2glTF` binary.
|
|
43
|
-
4. Launch the installed Provider over stdio MCP and require `search_asset` in
|
|
44
|
-
`tools/list`.
|
|
45
|
-
|
|
46
|
-
This proves Linux provisioning and MCP capability discovery. It does not substitute
|
|
47
|
-
for an authenticated request to the internal AW service, which requires network
|
|
48
|
-
reachability and user credentials and remains a separate environment acceptance
|
|
49
|
-
gate.
|
|
50
|
-
|
|
51
|
-
## Maintainer checklist
|
|
52
|
-
|
|
53
|
-
- [ ] `bun run typecheck`
|
|
54
|
-
- [ ] `bun test`
|
|
55
|
-
- [ ] `bun run build`
|
|
56
|
-
- [ ] `npm pack --ignore-scripts --pack-destination <empty-directory>`
|
|
57
|
-
- [ ] `bun run release:check -- <exact-tarball>`
|
|
58
|
-
- [ ] Ubuntu x64 `asset3d-linux-x64` CI job is green on the exact release commit.
|
|
59
|
-
- [ ] The packed artifact contains both Provider archives and no credential, source
|
|
60
|
-
checkout, managed cache, or provisioned Python environment.
|
|
61
|
-
- [ ] The exact tarball passes the repository secret and private-path scans before
|
|
62
|
-
publication.
|
|
63
|
-
|
|
64
|
-
The AW production default and explicit EA override remain as documented in
|
|
65
|
-
[`release-0.3.3.md`](release-0.3.3.md). Credential storage and real search/import
|
|
66
|
-
acceptance boundaries remain unchanged and are defined in [`asset3d.md`](asset3d.md).
|
package/docs/release-0.3.5.md
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
# @forgeax/game 0.3.5
|
|
2
|
-
|
|
3
|
-
## Compatibility repair
|
|
4
|
-
|
|
5
|
-
| Boundary | Release behavior |
|
|
6
|
-
|:--|:--|
|
|
7
|
-
| Engine SDK | Exact dependency 0.1.26, commit `f3d0db12405e168e4204e32a9cde32e0df8d87ae` |
|
|
8
|
-
| Project discovery | Recognizes strict `forge.json` v2 with `defaultScene`; does not inject the forbidden legacy `entry` field |
|
|
9
|
-
| SDK manifest | Validates the released 1.7.0 manifest and exact Engine/DevKit identities |
|
|
10
|
-
| Preview | Uses Engine-owned `--port 0` allocation instead of conflicting with another game on port 5173 |
|
|
11
|
-
| Asset3D upgrade | Refreshes existing older package-owned bridges during install/update; preserves custom configurations |
|
|
12
|
-
|
|
13
|
-
## Install or update
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npx -y @forgeax/game@0.3.5 install --ide codex,cursor,claude
|
|
17
|
-
# In a genuinely empty game directory:
|
|
18
|
-
npx -y @forgeax/game@0.3.5 init
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
For an existing Engine 0.1.26 project, run `update --ide codex` with this package,
|
|
22
|
-
then restart the host session. Asset3D remains opt-in with `asset3d enable`.
|
|
23
|
-
|
|
24
|
-
> [!IMPORTANT]
|
|
25
|
-
> This release pins Engine 0.1.26. It does not silently migrate games using Engine
|
|
26
|
-
> 0.1.7. Keep those games on plugin 0.3.4 until deliberately migrating through the
|
|
27
|
-
> Engine-supported workflow. Do not add `entry` to a v2 manifest to work around the
|
|
28
|
-
> old plugin's project detection.
|
|
29
|
-
|
|
30
|
-
The plugin must return Engine-owned Preview readiness and matching root/build
|
|
31
|
-
identity. A direct Engine CLI preview or a listening port alone is not MCP
|
|
32
|
-
acceptance. Asset search/import and visible gameplay require separate verification.
|