301 Commits
Author SHA1 Message Date
Lovehsigure_520 28dec4bc5f fix(ci): update release README links through PR (#2152) 2026-08-11 17:55:47 +08:00
Makitoandautofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> 42aaa514a6 chore(ci): add workflow to upload glossary to crowdin (#2220)
This pull request adds a workflow to upload the TBX output from the
glossary to Crowdin.

Improves #2148.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-05 01:26:30 +09:00
Neko Ayaka a239ebbb06 chore(ci): set allow-unsafe-pr-checkout for PR deploy 2026-08-04 18:08:55 +08:00
Lovehsigure_520 9164ca1bab ci(stage-tamagotchi): add Steam desktop deployment workflow (#1827) 2026-08-04 16:44:40 +08:00
Garfield Lee cfd9c26f09 feat(stage-tamagotchi-godot): migrate C# projects to .NET 10 (#2169) 2026-08-02 18:43:24 +08:00
RainbowBird 54a48158cd fix(workflows): update Cloudflare API token and project name for auth UI deployment 2026-07-30 02:18:57 +08:00
Kobi Hikri 2ae95253d9 chore(ci): attach provenance and SBOM attestations to the released image (#2149) 2026-07-29 11:31:43 +08:00
0xSelenicDove 8893ba81a6 fix(*): harden local service boundaries (#2062) 2026-07-17 17:50:50 +08:00
RainbowBird 63532367a9 chore: remove admin dashboard 2026-07-02 02:22:16 +08:00
RainbowBird a331d3a42a feat(auth): update AUTH_UI_URL to point to accounts.airi.build 2026-06-09 18:01:34 +08:00
RainbowBird 7fa7f8a072 feat(admin-ui): update admin UI URLs to remove trailing slashes and adjust redirects 2026-06-09 17:46:58 +08:00
RainbowBird 11b820a77f feat(admin-ui): implement standalone admin UI with Cloudflare Pages deployment 2026-06-09 17:09:06 +08:00
RainbowBird 57ba232432 feat(auth): migrate auth ui to unique domain 2026-06-09 00:15:34 +08:00
RainbowBird 3a16224e72 refactor(docker): consolidate Dockerfile logic and remove unused files 2026-06-05 22:49:36 +08:00
Weathercoldautofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>Rin
f459d00954 chore(ci): use personal access token for hash update (#1925)
## Description

Unfortunately the method of manually calling CI on the PR branch used by
#1907 doesn't count as status check of that PR (#1924), probably because
the called workflow inherits the context of the calling workflow, which
is not triggered by the PR. I read the docs and the most straightforward
solution is using a PAT, which does trigger the pull_request event.
Alternatively you can open PR with a custom github app, which is more
complicated but allows the app to bypass ruleset and commit directly to
main. Or just disable mandatory status checks.

## Linked Issues



## Additional Context

<!-- e.g. is there anything you'd like reviewers to focus on? -->

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Rin <shinohara-rin@users.noreply.github.com>
2026-06-04 18:12:51 +08:00
Liet Blue dc6807a21f feat(server-dashboard): add admin UI for AIRI operations (#1942) 2026-06-04 16:16:19 +08:00
Weathercold 052dc03ad2 chore(ci): open and auto-merge PR when updating hashes (#1907) 2026-06-01 23:17:09 +08:00
0xSelenicDove 32e4acc89f test: resolve spine typecheck and unit test failures in CI (#1895) 2026-05-28 21:16:33 +08:00
Neko Ayaka 92e0f9be24 chore(ci): incorrect install order 2026-05-28 04:40:49 +08:00
Neko Ayaka d9b3651c99 chore(ci): now requires unit tests 2026-05-28 04:34:45 +08:00
Lovehsigure_520 241d7d142e chore(ci): auto-merge sponsors updates (#1850) 2026-05-22 15:53:57 +08:00
Lovehsigure_520 7534adf476 docs(README.md): refresh release download links (#1846) 2026-05-21 03:05:01 +08:00
Andrew Qi cd0d7fe28e chore(ci): add stage-tamagotchi-godot in publish (#1841) 2026-05-21 03:04:22 +08:00
Lovehsigure_520 65751f598d chore(ci): mirror release assets to GitCode (#1797)
## Summary

Adds GitCode Release mirroring for AIRI release assets.

- Adds a reusable `.github/scripts/publish-gitcode-release.sh` helper
that creates or reuses the matching GitCode release, compares GitHub and
GitCode asset names, downloads only missing `AIRI-*` and `latest-*.yml`
assets, uploads them through GitCode's upload URL API, and verifies the
final asset list.
- Hooks the mirror step into desktop, Android, and iOS release workflows
so assets produced by separate release jobs can converge on the same
GitCode release.
- Keeps the mirror idempotent so repeated or concurrent release
workflows skip already mirrored files.

## Why

GitHub Releases are slow for many mainland China users. GitCode provides
a domestic fallback release page, but manually copying installers after
every release is error-prone and tedious.

## Validation

- `bash -n .github/scripts/publish-gitcode-release.sh`
- YAML parsing for:
  - `.github/workflows/release-tamagotchi.yml`
  - `.github/workflows/release-pocket-android.yml`
  - `.github/workflows/release-pocket-ios.yml`
- `git diff --check -- .github/scripts/publish-gitcode-release.sh
.github/workflows/release-tamagotchi.yml
.github/workflows/release-pocket-android.yml
.github/workflows/release-pocket-ios.yml`
- Local idempotency check against existing `v0.10.1` GitHub/GitCode
releases:
  - GitCode release already exists
  - all mirrored assets already present
  - final asset verification passed

## Setup Required

The target repository needs these GitHub Secrets:

- `GITCODE_TOKEN`
- `GITCODE_OWNER`
- `GITCODE_REPO`

For the current GitCode project, `GITCODE_OWNER` should remain `MoeruAI`
because GitCode's API and release download paths currently resolve that
namespace even though the UI displays `moeru-ai`.
2026-05-19 21:49:26 +08:00
Lovehsigure_520 a04048c768 fix(ci): open PR for sponsors updates (#1848)
## Summary

- change the sponsors workflow to create or update a generated-assets PR
instead of pushing directly to `main`
- publish generated SponsorKit assets to
`automation/update-sponsors-svg`
- use the existing `PAT_SLASH_COMMAND_DISPATCH` token when available so
the generated PR can trigger downstream checks, with `github.token` as a
fallback

## Why

The sponsors generation step now succeeds, but direct pushes to `main`
are rejected by repository rules because required checks are expected. A
PR-based update path keeps generated assets behind the normal branch
protection flow.

## Verification

- `ruby -e 'require "yaml";
YAML.load_file(".github/workflows/sponsors-svg.yml"); puts "yaml ok"'`
- `ruby -e 'require "yaml";
wf=YAML.load_file(".github/workflows/sponsors-svg.yml");
run=wf.fetch("jobs").fetch("generate").fetch("steps").find { |s|
s["name"] == "Create or update sponsors PR" }.fetch("run");
IO.popen(["bash", "-n"], "w") { |io| io.write(run) }; abort "bash -n
failed" unless $?.success?; puts "bash syntax ok"'`
- `git diff --check`
- `pnpm install --frozen-lockfile --ignore-scripts`
- `pnpm exec moeru-lint .github/workflows/sponsors-svg.yml` (workflow
file is ignored by repo lint config; command exited 0 with ignored-file
warning)
2026-05-19 20:06:17 +08:00
Weathercold d9dd2862e9 chore(ci): Remove CI concurrency group & small fixes (#1758)
## Description

<!-- Please insert your description here and especially provide info
about the "what" this PR is solving -->

It has no effect. The actions are run in parallel anyway. They have been
previously updated to not fail when run in parallel.

## Linked Issues

<!-- Optional, if you have any -->

## Additional Context

<!-- e.g. is there anything you'd like reviewers to focus on? -->
2026-05-04 06:37:35 +08:00
Makito 9dc78be7c1 chore(ci): simplify inputs for pocket-ios release workflow 2026-04-28 16:58:13 +09:00
Makito d413225346 chore(ci): change code sign style to manual for pocket-ios release build 2026-04-28 03:03:17 +09:00
RainbowBird 5d5f739eba revert(server/docker): restore assets distribution image 2026-04-28 00:54:13 +08:00
RainbowBird c0859c9798 fix(server/docker): squash auth ui to server image 2026-04-28 00:34:14 +08:00
Neko Ayaka a9359a3924 chore(ci): skip windows if signpath.io failed to sign us 2026-04-26 05:43:57 +08:00
Lilia_Chenandautofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> c6c0494998 feat(stage-tamagotchi-godot): add Godot stage G0 sidecar preview (#1724)
## Summary

Add the G0 Godot Stage sidecar preview for `stage-tamagotchi`.

## Design

- Keep Electron as the desktop host and run Godot as a separate sidecar
window by design.
- Use the settings window as the entry point for starting/stopping the
experimental Godot Stage.
- Require explicit `GODOT4` in development mode instead of
auto-discovering local Godot installs.
- Use the packaged sidecar under `process.resourcesPath/godot-stage` in
the packaged runtime.
- Close the Godot WebSocket lifecycle channel on startup failure and
stage shutdown.

## Changes

- Add the Electron main-side Godot Stage lifecycle service.
- Add renderer/settings wiring for switching to the experimental Godot
Stage.
- Add the minimal Godot stage runtime skeleton and WebSocket handshake
path.
- Add Godot export presets for sidecar builds.
- Add sidecar path verification for the Godot export preset and
`electron-builder` resource contract.
- Document the development runtime setup and packaging expectations.

## CI/CD

- Align Godot CI to `4.6.2`.
- Add Linux Godot export smoke coverage as the fastest CI export path.
- Add sidecar contract verification to CI.
- Run packaged sidecar verification after `electron-builder --dir`.

CD is intentionally deferred in this PR. The release workflow still
needs a later step to export the Godot sidecar before packaging release
artefacts.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-04-25 00:56:03 +08:00
Andrew QiNekogemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>Qigithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
0976c53d32 chore(ci): modified CI for Godot stage (#1716)
## Description

This PR adds basic CI for Godot stage via ci.yml.

---------

Co-authored-by: Neko <neko@ayaka.moe>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Qi <shengen.qi@hpe.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-04-23 22:06:15 +08:00
Liet Blue 61371060e7 fix(ci): harden pr-triage prompt against WASM guard UTF-8 crash (#1653)
The WASM guard (lib.rs:939) panics on `&output_json[..500]` when the
serialized output contains CJK characters at the byte boundary. This
poisons the guard for the entire session.

- Flip call order: get_files first (ASCII-dominant response), get second
- Add fallback: curl GitHub API when MCP server dies
- Narrow bash restriction: allow read-only shell for data retrieval
- Recompile lock file
2026-04-13 16:24:15 +08:00
Rin b7e9ce1a3d fix(ci): min-integrity: none for safeoutput mcp call (#1645) 2026-04-12 18:02:58 +08:00
Rin 4e1946da43 fix(ci): pr triage permission (#1619) 2026-04-11 01:03:03 +08:00
Neko Ayaka 139e71824f chore(ci): incorrect build name 2026-04-10 20:08:36 +08:00
Neko Ayaka b59c8d0861 chore(ci): with name, and should support branch for tag name 2026-04-10 19:49:07 +08:00
Neko Ayaka 9fe3abdf5b chore(ci): publishes ui-server-auth as assets image 2026-04-10 19:36:53 +08:00
Neko 4da2ab8924 chore(ci): remove notification completely 2026-04-10 03:05:18 +08:00
RainbowBird 525e13a179 chore(workflow): remove luoling8192 from PR deploying notifaction 2026-04-09 22:41:41 +08:00
Neko Ayaka 12c585d856 chore(ci): android now publishes to itch.io 2026-04-08 01:16:37 +08:00
Makito 1326a3c31a chore(ci): add on.release trigger for stage-pocket iOS workflow 2026-04-08 00:23:56 +09:00
Neko Ayaka f649006948 chore(ci): missing bundle name export 2026-04-06 21:37:34 +08:00
Makito 46d04479de chore(ci): install iTMSTransporter for stage-pocket iOS workflow 2026-04-05 20:03:15 +09:00
Makito ed3382c461 chore(ci): adjust inputs for stage-pocket iOS workflow 2026-04-05 19:45:59 +09:00
Makito c1fb62317a chore(ci): upload IPA to TestFlight 2026-04-05 19:39:38 +09:00
Rin 2876817f6f chore(ci): add label sync and PR triage workflows (#1575) 2026-04-05 03:11:13 +08:00
Makito f4b61c69e1 chore(ci): upload iOS build artifacts to releases 2026-04-05 01:44:58 +09:00
Makito 34ec68034b chore(ci): include build number in IPA filename 2026-04-04 20:19:15 +09:00