Skip to content

FolioSpace Library 1.01

Choose a tag to compare

@funland funland released this 20 Sep 18:13
· 11 commits to main since this release

FolioSpace Library 1.01

Highlights

  • MAME clients can reuse an existing audited launch profile across releases when
    trusted listxml evidence proves the full ROM/dependency definition unchanged.
    Exact profiles stay preferred; cross-version responses echo the client runtime
    and add optional contentAudit provenance.
  • Bundles 1,889 content definitions for 631 sets across MAME 0.287, 0.288 and
    0.289, and includes the foliospace-mame-content-registry administrator tool.
    No ROMs, BIOS files, firmware, or private catalog data are included.
  • Preserves public 1.00 FBNeo behavior: App hashes and coreBuildId values are
    diagnostic for supported official clients, not reasons to reject an otherwise
    approved profile. Client/platform/runtime and ROM/dependency checks remain.
  • Retains CIA installation, resumable downloads, bilingual first-run setup and
    the existing library APIs.
  • Builds portable web assets on the native GitHub runner and cross-compiles Go
    for each target architecture, avoiding ARM64-emulated npm ci. The release job
    now has a 30-minute timeout.

Docker

docker pull funland/foliospace-library:1.01

Published by GitHub Actions for linux/amd64 and linux/arm64, with latest
pointing to the same release. Back up persistent /config data before upgrading
an installation. Publishing an image does not upgrade an existing container.

An existing /config/policies/mame-content-equivalence.json remains authoritative
and is not overwritten. Bundled defaults apply only when that file is absent.
Existing audited profiles are required; this release does not auto-import games
or rebuild an operator's catalog. See the
compatibility and upgrade notes.

Validation

  • Full Go test suite and go vet ./....
  • Frontend: 34 tests, TypeScript checking and Vite production build.
  • Compose configuration validation without starting a service.
  • All 1,889 bundled records reproduced from their official listxml archives;
    archive and registry SHA-256 values checked.
  • HTTP coverage for exact profiles, cross-version content, missing dependencies,
    changed source bytes, custom-registry overrides and bundled defaults.
  • Existing FBNeo compatibility tests cover changed/unknown build IDs and App
    hashes on supported official Apple, Windows and Android clients.

The unchanged frontend lockfile reports three dependency-audit findings in
build tooling (Vite, PostCSS and nanoid). These packages run in the build stage;
the final image copies static assets, not Node.js or the Vite development server.
This release does not claim a clean dependency-security audit or client gameplay
certification.

The first pre-publication build was cancelled after ARM64-emulated npm ci
stopped making progress; the AMD64 build had already completed. No 1.01 image
was published by that attempt. The draft tag was corrected to include only this
build-pipeline fix, without changing the application compatibility behavior.
The approach follows Docker's native-stage cross-compilation guidance.

简体中文

1.01 增加 MAME 跨版本内容兼容、内置证据和管理员生成工具,保留 FBNeo
不按 App 指纹或构建标识拦截的现有行为。支持 AMD64 / ARM64,不包含或下载
ROM、BIOS、固件。发布镜像不会自动替换已有容器,也不会覆盖管理员策略或改写游戏。