fix(config): adjust story sweep rotation region and stage count
This commit is contained in:
parent
a5d70e5ec6
commit
62206494d5
@ -1,32 +1,36 @@
|
|||||||
---
|
---
|
||||||
name: deploy-gpu
|
name: deploy-gpu
|
||||||
description: Sync this repo's working tree to nik-gpu, refresh the flat runtime paths via setup.sh, and optionally smoke-test one task against the live game. Use when the user asks to deploy, push, sync, or ship code to nik-gpu, or wants to try a task live after an edit.
|
description: Sync this repo's working tree to nik-gpu, where it runs directly out of the git checkout, and optionally smoke-test one task against the live game. Use when the user asks to deploy, push, sync, or ship code to nik-gpu, or wants to try a task live after an edit.
|
||||||
disable-model-invocation: true
|
disable-model-invocation: true
|
||||||
---
|
---
|
||||||
|
|
||||||
# /deploy-gpu
|
# /deploy-gpu
|
||||||
|
|
||||||
Deploys the current working tree to `nik-gpu` and refreshes the runtime paths
|
Deploys the current working tree to `nik-gpu`. See `README.md`'s "Deploying
|
||||||
`~/ba_dailies.sh` actually executes from. See `README.md`'s "Deploying your
|
your changes" section and `CLAUDE.md`'s "Deployment model" for the source of
|
||||||
changes" section and `CLAUDE.md`'s "Deployment model" for the source of truth
|
truth this skill wraps — if either has changed, follow the doc over this
|
||||||
this skill wraps — if either has changed, follow the doc over this file.
|
file.
|
||||||
|
|
||||||
Optional task argument (smoke test): $ARGUMENTS
|
Optional task argument (smoke test): $ARGUMENTS
|
||||||
|
|
||||||
## Why two steps, not just rsync
|
## The checkout IS the runtime
|
||||||
|
|
||||||
`rsync` only updates the git checkout at `nik-gpu:~/repo/ba-auto-daily/`. The
|
As of 2026-07-18, `ba_dailies.sh` runs directly out of the git checkout at
|
||||||
launcher itself runs from separate flat paths (`~/ba_dailies.sh`,
|
`nik-gpu:~/repo/ba-auto-daily/` — there is no separate flat-path copy
|
||||||
`~/ba_daily.py`, `~/ba_auto/`, `~/ba_assets/`) that only `setup.sh` copies
|
(`~/ba_dailies.sh`, `~/ba_daily.py`, `~/ba_auto/`, `~/ba_assets/`) for
|
||||||
into. Skipping the `setup.sh` step means nik-gpu keeps executing old code
|
`setup.sh` to keep in sync. If those flat paths turn up on nik-gpu, they're
|
||||||
even though the rsync "succeeded".
|
stale leftovers from the pre-2026-07-18 model — don't assume anything reads
|
||||||
|
from them.
|
||||||
|
|
||||||
|
This means a plain rsync is normally enough on its own; `setup.sh` is no
|
||||||
|
longer a required second step for an ordinary code change.
|
||||||
|
|
||||||
## Steps
|
## Steps
|
||||||
|
|
||||||
1. From the repo root, run:
|
1. From the repo root, run:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
rsync -av --delete \
|
rsync -av \
|
||||||
--exclude='.git/' \
|
--exclude='.git/' \
|
||||||
--exclude='__pycache__/' \
|
--exclude='__pycache__/' \
|
||||||
--exclude='*.pyc' \
|
--exclude='*.pyc' \
|
||||||
@ -37,7 +41,12 @@ even though the rsync "succeeded".
|
|||||||
./ nik-gpu:~/repo/ba-auto-daily/
|
./ nik-gpu:~/repo/ba-auto-daily/
|
||||||
```
|
```
|
||||||
|
|
||||||
2. Run:
|
2. Only run `setup.sh` if this deploy also needs it — a fresh/empty checkout,
|
||||||
|
a new Python dependency, a new host-level tool requirement (e.g. a
|
||||||
|
tesseract language pack), or the venv otherwise needs
|
||||||
|
installing/reinstalling. It's idempotent and safe to re-run, but it no
|
||||||
|
longer copies any files anywhere, so don't run it out of habit expecting
|
||||||
|
it to "finish" the deploy — step 1's rsync already did:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
ssh nik-gpu "cd ~/repo/ba-auto-daily && ./setup.sh"
|
ssh nik-gpu "cd ~/repo/ba-auto-daily && ./setup.sh"
|
||||||
@ -47,21 +56,24 @@ even though the rsync "succeeded".
|
|||||||
missing `tesseract`) rather than treating the deploy as done.
|
missing `tesseract`) rather than treating the deploy as done.
|
||||||
|
|
||||||
3. **Only if a task name was given in `$ARGUMENTS`** (e.g. `/deploy-gpu
|
3. **Only if a task name was given in `$ARGUMENTS`** (e.g. `/deploy-gpu
|
||||||
cafe`), run it live as a smoke test:
|
cafe`), run it live as a smoke test, from the checkout path directly:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
ssh nik-gpu "~/ba_dailies.sh <task>"
|
ssh nik-gpu "~/repo/ba-auto-daily/ba_dailies.sh <task>"
|
||||||
```
|
```
|
||||||
|
|
||||||
Do not invent a task to run if none was given — several tasks
|
Do not invent a task to run if none was given — several tasks
|
||||||
(`story_sweep`, `shop_common`, `shop_tactical`, `lesson`) spend real AP,
|
(`story_sweep`, `story_sweep_hard`, `shop_common`, `shop_tactical`,
|
||||||
credits, tactical coin, or lesson tickets, and running one without the
|
`lesson`, `arena`, `bounty`, `event_sweep`) spend real AP, credits,
|
||||||
user asking for that specific task would be an unrequested spend.
|
tactical coin, lesson tickets, an arena ticket, or a bounty ticket, and
|
||||||
|
running one without the user asking for that specific task would be an
|
||||||
|
unrequested spend.
|
||||||
|
|
||||||
Exit code 0 only means the script ran without a Python exception, not
|
Exit code 0 only means the script ran without a Python exception, not
|
||||||
that the in-game action succeeded — surface the task's own log lines
|
that the in-game action succeeded — surface the task's own log lines
|
||||||
(e.g. `claiming all`, `nothing to claim`, `patted N sparkle(s)`) to the
|
(e.g. `claiming all`, `nothing to claim`, `patted N sparkle(s)`) to the
|
||||||
user, not just the exit code.
|
user, not just the exit code.
|
||||||
|
|
||||||
4. Summarize what happened: deploy succeeded/failed, and if a task was
|
4. Summarize what happened: deploy succeeded/failed, whether `setup.sh` was
|
||||||
smoke-tested, what its log output actually said.
|
needed/run, and if a task was smoke-tested, what its log output actually
|
||||||
|
said.
|
||||||
|
|||||||
@ -364,8 +364,8 @@ STORY_SWEEP_TARGETS = []
|
|||||||
# ordinal modulo, not the calendar day-of-year, so the cycle doesn't skip or
|
# ordinal modulo, not the calendar day-of-year, so the cycle doesn't skip or
|
||||||
# repeat around a year boundary. Set STORY_SWEEP_ROTATION_REGION to None to
|
# repeat around a year boundary. Set STORY_SWEEP_ROTATION_REGION to None to
|
||||||
# disable this and only sweep STORY_SWEEP_TARGETS.
|
# disable this and only sweep STORY_SWEEP_TARGETS.
|
||||||
STORY_SWEEP_ROTATION_REGION = 30
|
STORY_SWEEP_ROTATION_REGION = 29
|
||||||
STORY_SWEEP_ROTATION_STAGE_COUNT = 6
|
STORY_SWEEP_ROTATION_STAGE_COUNT = 5
|
||||||
STORY_SWEEP_ROTATION_COUNT = "max"
|
STORY_SWEEP_ROTATION_COUNT = "max"
|
||||||
|
|
||||||
# Hard story AP sweep (module/explore_tasks/sweep_task.py's sweep_hard_task).
|
# Hard story AP sweep (module/explore_tasks/sweep_task.py's sweep_hard_task).
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user