mirror/github-mirror.sh publishes main and its tags to a read-only GitHub mirror, adding a notice under the README title, with a systemd timer to run it hourly. A GitHub Actions workflow builds the images on the mirror and pushes them to ghcr.io. The docs point prebuilt images there, and CONTRIBUTING no longer invites issues and pull requests. upstream-status.sh now fetches without tags, so upstream's version tags stay out of local clones.
51 lines
2.0 KiB
Markdown
51 lines
2.0 KiB
Markdown
# Dotcom Arcade: notes for agents
|
|
|
|
Dotcom Arcade is a heavily modified fork of
|
|
[flashpoint-web](https://github.com/darkraise/flashpoint-web) by darkraise
|
|
(GPL-3.0), with game streaming added under `streaming/`. Coding standards and
|
|
architecture notes are in `CLAUDE.md`; feature and deployment docs are in
|
|
`docs/`.
|
|
|
|
## Upstream
|
|
|
|
- **Upstream** is https://github.com/darkraise/flashpoint-web, branch `master`.
|
|
It's read-only from here: don't push to it or open pull requests there unless
|
|
asked.
|
|
- **Most of upstream's code is still used:** the backend, the frontend's data
|
|
layer, the player, and the account and admin pages. Fixes to these should come
|
|
in from upstream rather than being rewritten here.
|
|
- **To see what upstream has changed** since it was last merged, and how each
|
|
touched file stands here, run `scripts/upstream-status.sh`.
|
|
- **To pull changes in**, follow `docs/08-development/upstream-sync.md`. In
|
|
short:
|
|
- merge upstream's `master` on a branch (don't cherry-pick);
|
|
- keep files removed here removed;
|
|
- keep the Dotcom Arcade branding;
|
|
- keep upstream's migration file names;
|
|
- have the pull request merged with a merge commit, never squashed, so the
|
|
next sync starts from the right place.
|
|
- **Parts that are only ours:**
|
|
- `streaming/`;
|
|
- `scripts/`;
|
|
- `frontend/src/components/portal/`;
|
|
- `views/GamePage.tsx`;
|
|
- `lib/saves/flashSaves.ts`;
|
|
- the discovery backend;
|
|
- `.gitea/`;
|
|
- migrations upstream doesn't have.
|
|
|
|
## GitHub mirror
|
|
|
|
`mirror/` publishes `main` to a read-only GitHub mirror from the operator's
|
|
host, never from a session; see `docs/08-development/github-mirror.md`. GitHub
|
|
runs `.github/workflows`, the forge `.gitea/workflows`; keep the two image
|
|
workflows in step.
|
|
|
|
## CI
|
|
|
|
Workflows are in `.gitea/workflows`. Jobs that run docker builds use the
|
|
`dejima-privileged` runner label; anything else uses `dejima-confined`. The
|
|
privileged job image has no Docker client, so install `docker-ce-cli` first.
|
|
Never hardcode the forge's host name: read it at run time, or take it from the
|
|
`REGISTRY_HOST` repository variable.
|