FN-6834: use OS-available memory for system metrics
Use shared OS-available memory readings so macOS cache/inactive pages are not counted as used.
- Add a core available-memory helper that prefers `process.availableMemory()` and flags `freemem` fallback reliability.
- Route core metrics, dashboard system stats, and the dashboard TUI through the shared helper.
- Move and expand memory tests across core, dashboard routes, and verification coverage while documenting the telemetry behavior.
- Add a patch changeset for the published CLI package.
Files changed:
.changeset/fix-macos-memory-used.md | 5 ++
docs/architecture.md | 2 +-
docs/dashboard-guide.md | 2 +-
.../__tests__/available-memory.test.ts | 54 --------------
.../cli/src/commands/dashboard-tui/controller.ts | 37 +---------
.../core/src/__tests__/available-memory.test.ts | 83 ++++++++++++++++++++++
packages/core/src/__tests__/system-metrics.test.ts | 36 +++++++++-
packages/core/src/available-memory.ts | 32 +++++++++
packages/core/src/index.ts | 1 +
packages/core/src/system-metrics.ts | 9 ++-
.../dashboard/src/__tests__/routes-system.test.ts | 27 +++++++
packages/dashboard/src/routes.ts | 7 +-
.../src/__tests__/run-verification-command.test.ts | 18 +++++
13 files changed, 218 insertions(+), 95 deletions(-)
Fusion-Task-Id: FN-6834
Fusion-Task-Lineage: 2e651551-6c35-46d1-b517-535758c7ace2