Files
Ein Anderssono 214f3b5cbd
Build and publish static assets / publish (push) Successful in 8m21s
Show local AI activity feedback
2026-10-19 12:36:43 +02:00

1.8 KiB

AI-spel static asset service

  • Own only public, version-pinned Piper/ONNX and browser local-AI model/runtime/prompt assets.
  • Serve under /static/ on https://ai-spel.k3s.k0.nu.
  • VERSION is the only release version source. Use scripts/bump-version.py.
  • Gitea Actions on the existing large runner verifies, builds, and publishes. Never run tests, builds, containers, images, or binaries locally; do not create runners.
  • Git release commit/tag, image, Helm chart, and manifest use the same version.
  • Use Harbor project ai-spel, Argo CD project ai-spel, and Kubernetes namespace ai-spel.
  • /static/piper-wasm-v1/ is immutable and cached for one year. Incompatible asset updates require a new path and coordinated frontend change.
  • /static/wllama-gemma3-v2/ serves the client adapter, pinned Wllama WebAssembly/runtime, the Gemma 3 1B Q4_K_M model, its manifest, and its YAML prompt. Browser runtime requests must remain same-origin under /static/; upstream URLs are allowed only in the static CI asset fetcher, never in client runtime code. Any changed adapter/model/runtime/prompt gets a new immutable path and coordinated frontend update.
  • Gemma publication is blocked unless the static release includes the applicable Gemma Terms of Use copy, prohibited-use policy reference, required Gemma notice, model provenance, and third-party runtime/license notices. The frontend must obtain explicit user acceptance before model download/use; do not publish or enable Gemma until both the legal resources and the acceptance gate are implemented and verified in CI.
  • Publish /static/version.json with version generated from VERSION in the same image as the Helm appVersion; keep it uncached and verify its value after rollout. The frontend footer displays this release independently from frontend and API versions.
  • No secrets or runtime network access.