mirror of
https://github.com/n30nex/CartoLite-Server.git
synced 2026-10-15 22:39:54 +00:00
* Add shared visual controls and native prebuilt worldwide Docker releases * Validate shared styles, synthetic buildings, and date-line-safe packet geometry * Document the release and bound decorative work in dense route views * Remove the retired terrain-history collection cache * Address review feedback on terrain updates, legends, and responsive buildings * Keep the region and packet legends separate on compact screens * Separate building, camera, and responsive browser checks * Wait for the complete synthetic snapshot before upgrade checks
1.7 KiB
1.7 KiB
CartoLite Server agent instructions
Purpose
CartoLite Server is a compact worldwide MeshCore map and Netgraph: a Go MQTT/HTTP process, a vanilla TypeScript/MapLibre client, transient Canvas animation, and one atomic checkpoint. Keep it suitable for independent self-hosting. Netgraph areas use coordinate-derived global grid squares, never country-specific lists.
Boundaries
- Never expose public keys, observer keys, raw path hex, packet hashes, packet payloads, decoded message text, credentials, or resolver reasons.
- Never infer ambiguous, non-forwarder, missing-coordinate, missing-RF, or distance-gated route hops.
- Keep public API schema v2 synchronized between Go and TypeScript.
- Do not add analytics, accounts, chat, packet history, SQLite, an Android app, country-specific data, or Labs.
- Use synthetic fixtures only. Never commit live broker data,
.env, checkpoints, captures, or secret files.
Delivery
- Preserve the scratch, non-root, read-only, capability-free container.
- Published images must contain no operator or CI map key. The default provider is key-free; optional browser-visible CARTO keys are read from a mounted runtime secret and exposed only in the explicit public map configuration.
- Build/test/release only in GitHub Actions; do not build or run containers on the shared workstation.
- Promote tested amd64/arm64 image digests without rebuilding. The default Compose install must consume a published image.
- Keep
REGION_ALLOWLISToptional and exact when configured. - Run frontend tests/build, Go tests/vet/race, integration/privacy smoke tests, and
git diff --checkbefore release. - Preserve unrelated work and never force-push shared branches.