41 lines
2.4 KiB
Markdown
41 lines
2.4 KiB
Markdown
# Agent changelog
|
|
|
|
## 2026-10-12
|
|
|
|
### 1.9.3 — Protect private bank configuration (EC #152)
|
|
|
|
- Exclude the generated bank config from file manifests and reject file reads,
|
|
staged changes, stale activations, rollback snapshots and log reads targeting
|
|
it. Creation and rebuilding still inject the private instance credential.
|
|
- Package and offline-sign this release, then update agents before resuming
|
|
drift recovery. Old private-file stages fail safely and require a fresh plan.
|
|
|
|
### 1.9.1 — Public game-bank endpoint
|
|
|
|
- Companion to [TWS scripts #13](https://gitea.thewrightserver.net/josh/tws-zombies-scripts/issues/13).
|
|
In `agent/ec_agent.py`, stop generating `tws_bank_url` in
|
|
`electric_cherry_bank.cfg`; continue injecting the private per-instance token.
|
|
Launch configuration still supplies `tws_server_id`. The host's enrolled
|
|
controller address and authentication remain unchanged.
|
|
- Recognize journals for `https://ec.thewrightserver.net/api/bank` and the legacy
|
|
bank URL derived from the enrolled controller. Reject other URLs and preserve
|
|
unresolved storage. Settlement still goes only through the enrolled controller's
|
|
authenticated, operation- and instance-scoped API. Original transaction IDs and
|
|
commit/cancel decisions are preserved across lost replies and retries.
|
|
- Compatibility: pair with T5/T6 bank scripts `2.0.0` and existing TWS plugins
|
|
`1.1.0+`. No new Python dependency, controller migration or protocol change.
|
|
Old scripts still fall back to the public endpoint when the dvar is absent.
|
|
- Deployment: package and offline-sign the release, update/restart host agents,
|
|
then rebuild through EC when a server's bank endpoint changes. Rebuild stops
|
|
the game and drains old decisions before starting the replacement or deleting
|
|
storage. An endpoint that already matches needs only a map restart for the
|
|
script update. Follow the [bank rollout procedure](../docs/guides/bank.md#upgrading-from-a-controller-derived-game-endpoint).
|
|
Packaging refreshes `static/agent/ec-agent.py` and `manifest.json` and removes
|
|
the old signature; a new offline signature is required before publishing.
|
|
No signing or deployment was performed.
|
|
- Regression coverage in `agent/tests/test_agent.py`: generated credentials,
|
|
public and legacy journals for both games, rebuild/removal, lost replies,
|
|
agent restart, unchanged identities and rejection of untrusted endpoints.
|
|
Live Windows/Plutonium endpoint migration and signed host rollout remain to
|
|
be validated.
|