Commit Graph

45 Commits

Author SHA1 Message Date
af1a865fd6 Merge pull request 'Add station listing and cargo queries to admin client' (#21) from claude/station-realtime-planned-data-0fc51a into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 20s
Continuous Integration / tests-and-coverage (push) Successful in 23s
Reviewed-on: #21
2026-07-23 21:52:35 +02:00
81a4d9333d Add station listing and cargo queries to admin client
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 20s
Continuous Integration / tests-and-coverage (pull_request) Successful in 24s
Extends the AdminBridge GameScript JSON channel (the same relay used by
list_vehicles/get_timetable) with station support:

- list_stations(): enumerate stations, fire-and-forget like list_vehicles().
- get_station(): authoritative per-cargo snapshot of a station's live state,
  with both the real-time waiting amount (GSStation.GetCargoWaiting) and the
  planned cargodist link-graph flow (GetCargoPlanned), plus rating.
- get_station_cargo(): break one cargo type down by source station and by
  next hop (the cargodist routing destination) for both waiting and planned
  amounts, with optional from_station/via_station filters.

All three use stock GameScript API (no server patch, unlike timetables).
Refactors the shared GS request/reply correlation out of get_timetable and
get_station into a _gs_query() helper. Companion handlers must be added to
the server-side AdminBridge GameScript (not tracked in this repo).

Includes unit + e2e tests, a worked demo in main_admin.py, and protocol docs.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-23 21:48:20 +02:00
c39f970ef9 Merge pull request 'Added real timetable support' (#20) from add-real-timetable-support into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 20s
Continuous Integration / tests-and-coverage (push) Successful in 24s
Reviewed-on: #20
2026-07-23 21:02:37 +02:00
36fc118da3 Merge branch 'main' into add-real-timetable-support
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 26s
Continuous Integration / tests-and-coverage (pull_request) Successful in 24s
2026-07-23 21:00:50 +02:00
3b54a722d6 Added real timetable support
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 33s
Continuous Integration / tests-and-coverage (pull_request) Successful in 26s
2026-07-23 20:59:28 +02:00
38cc5ae40c Merge pull request 'Update actions/setup-python action to v7' (#19) from renovate/actions-setup-python-7.x into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 20s
Continuous Integration / tests-and-coverage (push) Successful in 23s
Reviewed-on: #19
2026-07-21 20:09:28 +02:00
dfb88523f1 Merge branch 'main' into renovate/actions-setup-python-7.x
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 20s
Continuous Integration / tests-and-coverage (pull_request) Successful in 24s
2026-07-21 20:07:54 +02:00
5db0dab9bf Merge pull request 'Update actions/checkout digest to 3d3c42e' (#18) from renovate/actions-checkout-digest into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 22s
Continuous Integration / tests-and-coverage (push) Successful in 26s
Reviewed-on: #18
2026-07-21 20:07:47 +02:00
71bef5a8a2 Update actions/setup-python action to v7
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 1m55s
Continuous Integration / tests-and-coverage (pull_request) Successful in 24s
2026-07-21 02:22:10 +00:00
df9c7b3f06 Update actions/checkout digest to 3d3c42e
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 55s
Continuous Integration / tests-and-coverage (pull_request) Successful in 24s
2026-07-21 02:22:05 +00:00
954663e80c Merge pull request 'Add vehicle timetable get/set support' (#17) from claude/listing-vehicles-support-d07bf0 into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 21s
Continuous Integration / tests-and-coverage (push) Successful in 25s
Reviewed-on: #17
2026-07-16 23:26:14 +02:00
6a28e4acff Merge branch 'main' into claude/listing-vehicles-support-d07bf0
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 21s
Continuous Integration / tests-and-coverage (pull_request) Successful in 25s
2026-07-16 23:25:21 +02:00
b33869334a Add vehicle timetable get/set support
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 22s
Continuous Integration / tests-and-coverage (pull_request) Successful in 24s
Timetables have no GameScript API surface, so this implements real
DoCommands over the game port (ClientCommand/ServerCommand) instead of
the Admin GameScript relay used for list_vehicles(): change_timetable(),
autofill_timetable(), set_timetable_start(), and set_vehicle_on_time()
send commands, while get_vehicle_timetable() reconstructs state purely
by observing ServerCommand broadcasts, since no query command exists.

Includes the custom varuint wire codec these commands require, a full
usage guide (docs/TIMETABLES.md), and a worked demo in main.py.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-16 23:21:21 +02:00
fa1741f95b Merge pull request 'Add vehicle listing support to admin client' (#16) from claude/listing-vehicles-support-d07bf0 into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 22s
Continuous Integration / tests-and-coverage (push) Successful in 24s
Reviewed-on: #16
2026-07-16 20:46:58 +02:00
0a8271d57c Add vehicle listing support to admin client
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 31s
Continuous Integration / tests-and-coverage (pull_request) Successful in 25s
The Admin Network has no native packet for listing individual vehicles,
so list_vehicles() sends a "list_vehicles" command over the existing
GameScript JSON channel and relies on a companion server-side script to
reply with vehicle data via ServerGamescript. Requires subscribing to
Gamescript updates (documented in docs/PROTOCOL.md) to receive the reply.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-16 20:44:44 +02:00
309f1da762 Merge pull request 'Update debian Docker tag to trixie-20260713' (#15) from renovate/debian-13.x into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 20s
Continuous Integration / tests-and-coverage (push) Successful in 24s
Reviewed-on: #15
2026-07-15 09:14:53 +02:00
2526b8aec4 Merge branch 'main' into renovate/debian-13.x
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 21s
Continuous Integration / tests-and-coverage (pull_request) Successful in 23s
2026-07-15 09:13:54 +02:00
38e0604cf3 Merge pull request 'Update debian:bookworm-slim Docker digest to 7b140f3' (#14) from renovate/debian-bookworm-slim into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 22s
Continuous Integration / tests-and-coverage (push) Successful in 24s
Reviewed-on: #14
2026-07-15 09:13:09 +02:00
d87f26a8ef Update debian Docker tag to trixie-20260713
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 20s
Continuous Integration / tests-and-coverage (pull_request) Successful in 23s
2026-07-15 02:22:08 +00:00
d0c4d9218d Update debian:bookworm-slim Docker digest to 7b140f3
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 48s
Continuous Integration / tests-and-coverage (pull_request) Successful in 26s
2026-07-15 02:22:04 +00:00
ab8ab7390e Merge pull request 'Update debian Docker tag to v13' (#13) from renovate/debian-13.x into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 30s
Continuous Integration / tests-and-coverage (push) Successful in 23s
Reviewed-on: #13
2026-07-03 14:48:46 +02:00
eb507b9f11 Update debian Docker tag to v13
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 23s
Continuous Integration / tests-and-coverage (pull_request) Successful in 22s
2026-07-02 02:22:50 +00:00
2d5e57998b Merge pull request 'Update debian Docker tag to bookworm-20260623' (#12) from renovate/debian-12.x into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 22s
Continuous Integration / tests-and-coverage (push) Successful in 24s
Reviewed-on: #12
2026-07-01 20:31:44 +02:00
aea5cf124c Update debian Docker tag to bookworm-20260623
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 21s
Continuous Integration / tests-and-coverage (pull_request) Successful in 23s
2026-07-01 02:22:45 +00:00
5d5329d197 Merge pull request 'Pin dependencies' (#11) from renovate/pin-dependencies into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 21s
Continuous Integration / tests-and-coverage (push) Successful in 23s
Reviewed-on: #11
2026-06-30 23:47:15 +02:00
17d68fa984 Pin dependencies
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 20s
Continuous Integration / tests-and-coverage (pull_request) Successful in 23s
2026-06-30 02:22:41 +00:00
fc30def3e7 Merge pull request 'Add admin port support with other major refactorations' (#9) from add-admin-port-support into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 19s
Continuous Integration / tests-and-coverage (push) Successful in 23s
Reviewed-on: #9
2026-06-29 20:00:37 +02:00
c69f146e65 Fixed ruff issues
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 21s
Continuous Integration / tests-and-coverage (pull_request) Successful in 23s
2026-06-29 19:58:16 +02:00
94c0cf6ad7 Added auto_exclude to public_calls.py file
Some checks failed
Continuous Integration / lint-and-security (pull_request) Failing after 18s
Continuous Integration / tests-and-coverage (pull_request) Successful in 23s
2026-06-29 19:54:50 +02:00
aebd5f4ef5 Add admin port support with other major refactorations
Some checks failed
Continuous Integration / lint-and-security (pull_request) Failing after 39s
Continuous Integration / tests-and-coverage (pull_request) Successful in 24s
2026-06-29 19:47:48 +02:00
df629b2922 Merge pull request 'Update actions/setup-python digest to ece7cb0' (#8) from renovate/actions-setup-python-digest into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 36s
Continuous Integration / tests-and-coverage (push) Successful in 22s
Reviewed-on: #8
2026-06-26 00:50:31 +02:00
2575b35000 Update actions/setup-python digest to ece7cb0
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 3m35s
Continuous Integration / tests-and-coverage (pull_request) Successful in 38s
2026-06-25 02:22:41 +00:00
cb4c2df25a Merge pull request 'Update actions/checkout action to v7' (#7) from renovate/actions-checkout-7.x into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 59s
Continuous Integration / tests-and-coverage (push) Successful in 23s
Reviewed-on: #7
2026-06-19 22:35:42 +02:00
7f2b16b581 Update actions/checkout action to v7
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 2m25s
Continuous Integration / tests-and-coverage (pull_request) Successful in 47s
2026-06-19 02:21:55 +00:00
4165ddbf89 Merge pull request 'Update actions/setup-python action to v6' (#6) from renovate/actions-setup-python-6.x into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 19s
Continuous Integration / tests-and-coverage (push) Successful in 20s
Reviewed-on: #6
2026-06-07 12:05:05 +02:00
94d1e1db5e Merge branch 'main' into renovate/actions-setup-python-6.x
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 24s
Continuous Integration / tests-and-coverage (pull_request) Successful in 21s
2026-06-07 12:03:29 +02:00
458f3cbb8f Merge pull request 'Update actions/checkout action to v6' (#3) from renovate/actions-checkout-6.x into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 28s
Continuous Integration / tests-and-coverage (push) Successful in 24s
Reviewed-on: #3
2026-06-07 12:03:21 +02:00
f6298c9bc3 Update actions/setup-python action to v6
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 1m49s
Continuous Integration / tests-and-coverage (pull_request) Successful in 19s
2026-06-07 02:22:20 +00:00
d75c9870fc Update actions/checkout action to v6
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 22s
Continuous Integration / tests-and-coverage (pull_request) Successful in 21s
2026-06-07 02:22:14 +00:00
9ee4070a44 Merge pull request 'Removed codeql action' (#5) from remove-codeql into main
All checks were successful
Continuous Integration / lint-and-security (push) Successful in 19s
Continuous Integration / tests-and-coverage (push) Successful in 21s
Reviewed-on: #5
2026-06-06 09:47:22 +02:00
1f62d515fd Merge branch 'main' into remove-codeql
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 19s
Continuous Integration / tests-and-coverage (pull_request) Successful in 20s
2026-06-06 09:45:04 +02:00
2542db2097 Removed codeql action
All checks were successful
Continuous Integration / lint-and-security (pull_request) Successful in 31s
Continuous Integration / tests-and-coverage (pull_request) Successful in 22s
2026-06-06 09:44:39 +02:00
18900885d8 Merge pull request 'Added renovate config' (#1) from add-renovate-config into main
Some checks failed
Continuous Integration / lint-and-security (push) Successful in 33s
Continuous Integration / tests-and-coverage (push) Successful in 23s
CodeQL Analysis / Analyze (python) (push) Failing after 3m27s
Reviewed-on: #1
2026-06-05 23:50:02 +02:00
f09fba7bdf Added renovate config
Some checks failed
Continuous Integration / lint-and-security (pull_request) Successful in 29s
Continuous Integration / tests-and-coverage (pull_request) Successful in 20s
CodeQL Analysis / Analyze (python) (pull_request) Failing after 52m27s
2026-06-05 23:23:55 +02:00
cb6849ed55 Initialized openttd-client repo
Some checks failed
Continuous Integration / lint-and-security (push) Successful in 4m14s
Continuous Integration / tests-and-coverage (push) Successful in 33s
CodeQL Analysis / Analyze (python) (push) Failing after 4m17s
2026-06-05 23:18:09 +02:00