diff --git a/AGENTS.md b/AGENTS.md index 31116a0..621ab5d 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,24 +1,24 @@ # AGENTS.md — vela-snake -Guidance for AI agents working on this repo. Humans can read it too, we don't judge. +Guidance for AI agents working on this repo. Humans can read it too. ## What this is Textured Snake for the Xiaomi Watch S4 (round 466px screen, Vela quickapp). Package `com.ilias.snake`. Source of truth for releases: https://gitea.oimcloud.myaddr.tools/oiwmiodev/vela-snake (Big Intelligence group). -Upstream codex-bot/vela-snake is read-only for us (no write permission). +Upstream codex-bot/vela-snake is read-only for this account (no write permission). ## Hard rules -- Never commit `sign/*.pem` (gitignored on purpose). Currently the toolkit's - default debug keys are used; if real keys appear, keep them out of git. +- Never commit `sign/*.pem` (gitignored on purpose). Builds currently use the + toolkit's default debug keys; if real keys are added, keep them out of git. - Never edit files under `node_modules/`. The toolkit is locked at aiot-toolkit 2.0.5; do not upgrade it casually (release uses plain JS, not JSC/protobuf). - Tests must pass before any commit: `npm test` (pure Node, no watch needed). - Bump `versionName`/`versionCode` in `src/manifest.json` for any release. Hotfixes: `0.9-Hotfix.1` style, versionCode still increments (integer only). -- The user hates em dashes. Don't use them in docs, commits or comments. +- No em dashes in docs, commits or comments. ## Crown control (the fragile part) @@ -36,6 +36,9 @@ dial visually pinned, reversals impossible. If scroll-delta extraction proves unreliable on hardware, the fallback is accepting codex-bot issue #2's conclusion (swipe-only input) and removing the scroll wrapper. +Crown work happens on the `crown-experimental` branch; `main` tracks the +released state. + ## Layout invariants - Dial/board: 466px screen, board at 49px offset, 368px circle, 32px cells, @@ -51,7 +54,7 @@ conclusion (swipe-only input) and removing the scroll wrapper. crown scroll path), upgrade regressions, numeric layout, randomized property tests and art checks. When fixing a bug, add a failing test first, then fix. Node tests are not device tests: behavior on the actual watch is the only -final proof, and the user is the one with the watch. +final proof, and whoever has the watch does that testing. ## Release checklist @@ -59,12 +62,14 @@ final proof, and the user is the one with the watch. 2. `src/manifest.json` version bumped. 3. `npm run release`, verify dist/com.ilias.snake.release..rpk exists. 4. Commit + push to origin (oiwmiodev/vela-snake). -5. `tea releases create --repo oiwmiodev/vela-snake --tag v ...` and - attach the rpk with `tea releases assets create`. Download the asset back - and byte-compare before claiming success. +5. Create the release with `tea releases create --repo oiwmiodev/vela-snake + --tag v` and attach the rpk with `tea releases assets create`. + Download the asset back and byte-compare before claiming success. 6. Release notes: real changelog, never "see commit history". ## Git -Commit as: `git -c user.name='omachy form the big pc republic' -c -user.email='oamrchyt@bigpc.com'`. Pushes go to origin (the org repo). +Git identity is not globally configured; commits must set the repo persona +(the "big pc republic" identity used across this Gitea, see prior commits) +via `git -c user.name=... -c user.email=...` or local config. Pushes go to +origin (the org repo). Auth uses the `oimcloud` tea login.