Introduce seed-telegrams tool for generating synthetic telegrams for testing and development. Enhance README with detailed usage instructions, command-line parameters, and examples. Add unit tests for telegram generation and status selection logic to ensure robustness. Update documentation to reflect new features and usage scenarios.

This commit is contained in:
windyboy
2025-11-16 17:24:16 +08:00
parent 06b2495d77
commit 12fda00df9
9 changed files with 730 additions and 80 deletions
+19
View File
@@ -31,6 +31,25 @@ Stop and clean the stack when finished:
docker compose -f docker-compose.dev.yml down -v
```
In development (`GO_ENV=dev` or unset), if you run the application while
stopping and recreating the NATS/JetStream containers (for example:
```bash
docker compose -f docker-compose.dev.yml down -v
docker compose -f docker-compose.dev.yml up -d postgres nats nats-box
```
), the JetStream state will be reset. The processor behaves as follows:
- The NATS client keeps retrying the connection and automatically reconnects
when NATS is back.
- The JetStream consumer detects missing streams/consumers and, in dev/test
environments, uses shared `EnsureStream`/`ensureConsumer` logic to
auto-recreate them.
- In production environments, missing streams/consumers are treated as
configuration/operational errors and are not auto-recreated; operators
should investigate and fix the underlying issue.
### Using Taskfile shortcuts
The `Taskfile.yml` includes helper targets that wrap the commands above: