84 lines
3.0 KiB
Markdown
84 lines
3.0 KiB
Markdown
# Changelog
|
|
All notable changes to **Series3 Agent** will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
---
|
|
|
|
## [1.2.1] - 2026-03-03
|
|
|
|
### Changed
|
|
- Changed the name of the program to "series3-agent", this was done to align with the s4/thor agent and because it represents the program's functionality better.
|
|
- All instances of "emitter" changed to agent.
|
|
- config.ini added to .gitignore, replaced with a template example file.
|
|
- README.md updated to reflect changes.
|
|
|
|
---
|
|
|
|
## [1.2.0] - 2025-12-04
|
|
|
|
### Changed
|
|
- Removed roster CSV dependency and all Dropbox refresh/hot-reload logic; heartbeat now only enumerates `.MLG` files.
|
|
- Added `MAX_EVENT_AGE_DAYS` filter to ignore stale events and log when no recent activity exists.
|
|
- Simplified heartbeat output/logging to show detected units only; logging hardened to never crash the agent.
|
|
|
|
---
|
|
|
|
## [1.1.1] - 2025-12-02
|
|
|
|
### Added
|
|
- Example `config.ini` now ships with API heartbeat settings enabled (`API_ENABLED`, `API_URL`, `API_INTERVAL_SECONDS`, `SOURCE_ID`, `SOURCE_TYPE`).
|
|
|
|
---
|
|
|
|
## [1.1.0] - 2025-12-01
|
|
|
|
### Added
|
|
- Standardized SFM telemetry payload builder and periodic HTTP heartbeat POST via `urllib`.
|
|
- Config support for API heartbeat (`API_ENABLED`, `API_URL`, `API_INTERVAL_SECONDS`, `SOURCE_ID`, `SOURCE_TYPE`); payload includes file path/size metadata.
|
|
|
|
### Changed
|
|
- Refactored scanner to retain file paths and header sniff cache; reformatted logging/ANSI handling.
|
|
|
|
---
|
|
|
|
## [1.0.1] - 2025-11-20
|
|
|
|
### Added
|
|
- `API_URL` config key and `report_to_server` per-unit POST hook (adds `requests` dependency).
|
|
|
|
### Changed
|
|
- Example `config.ini` roster URL updated; merged into `main`.
|
|
|
|
---
|
|
|
|
## [1.0.0] - 2025-11-17
|
|
|
|
### Added
|
|
- **Automatic roster refresh** from Dropbox at a configurable interval (`ROSTER_REFRESH_MIN_SECONDS`).
|
|
- **Hot-reload** of roster file without restarting the script.
|
|
- **Failsafe reload:** if the new roster is missing or invalid, the previous good roster is retained.
|
|
- **Atomic roster downloads** (temp file in-place replace) to avoid partial/corrupted CSVs.
|
|
- **Startup config echo** printing WATCH_PATH, ROSTER_FILE, and ROSTER_URL visibility.
|
|
- **Active / Bench / Ignored** unit categories for clearer fleet status mapping.
|
|
|
|
### Fixed
|
|
- Removed stray `note=note_suffix` bug in the Unexpected Units section.
|
|
- Removed duplicate `import time`.
|
|
- Removed duplicate roster load during startup (roster now loads once).
|
|
- Cleaned indentation for Python 3.8 compatibility.
|
|
|
|
### Changed
|
|
- Reset versioning from legacy `v5.9 beta` to **v1.0.0** (clean semver baseline).
|
|
- Main script normalized as `series3_emitter.py` (later renamed to `series3_agent.py` in v1.2.1).
|
|
|
|
---
|
|
|
|
[Unreleased]: https://example.com/compare/v1.2.0...HEAD
|
|
[1.2.0]: https://example.com/releases/v1.2.0
|
|
[1.1.1]: https://example.com/releases/v1.1.1
|
|
[1.1.0]: https://example.com/releases/v1.1.0
|
|
[1.0.1]: https://example.com/releases/v1.0.1
|
|
[1.0.0]: https://example.com/releases/v1.0.0
|