transceiver-db/sync/history/2026-05-06-magatama-ui-cache-runpod-tooltip-changelog-fix.md

4.0 KiB

MAGATAMA UI / Cache / RunPod / Tooltip / Changelog Fix

Date: 2026-05-06 Author: Codex

Scope

Addressed the current MAGATAMA operator complaints in one block:

  • training UI still showed 1097
  • findings page looked blank
  • attack paths looked empty/broken
  • Switchblade port hover only showed a help cursor / question mark
  • changelog looked stale

What Was Fixed

1. Training truth source

magatamallm RunPod launches still logged the old legacy deduplicated fixes.jsonl count (1097) during SSE startup.

This was corrected so RunPod launches now:

  • still dedupe the legacy fix corpus where needed
  • but no longer present that count as the operator-facing training truth
  • instead emit the lane-specific RunPod manifest totals after dataset refresh

Live verified via public MAGATAMA API:

  • collectedExamples = 15620
  • effectiveExamples = 15620
  • evalExamples = 1736
  • totalExamples = 17356
  • newSinceLastTraining = 15620

2. RunPod completion truthfulness

RunPod worker jobs could return COMPLETED even though the logs contained real training failures.

MAGATAMA now inspects worker logs for markers such as:

  • Traceback
  • SyntaxError
  • non-zero exit status
  • explicit train/fine-tune failure text

If such evidence exists, the run is recorded as worker-failed instead of being treated as a clean success.

3. Findings page no longer looks broken when empty

The live findings API currently returns:

  • findings = []
  • total = 0

The UI now renders an explicit empty-state row when there are no open findings or when filters hide everything, instead of leaving the table visually blank.

4. Attack Paths empty-state clarified

Attack Paths previously looked broken when the selected scope had zero assets.

The UI now explicitly states:

  • the current scope has 0 assets
  • operators should widen location/datacenter/rack scope
  • the graph stays intentionally empty when no correlated multi-step paths exist

5. Frontend cache + scope hardening

Frontend cache handling was improved:

  • cache version bumped to 2026-05-06b
  • stale legacy magatama_api_cache:* entries are cleared
  • per-endpoint TTLs were introduced
  • invalid scope selections are normalized
  • empty scoped selections reset rather than silently trapping the UI in misleading empty views

6. Switchblade port hover improved

The old port chips relied only on browser-native title behavior.

Now:

  • port chips carry data-tooltip
  • custom tooltip CSS is shipped live
  • usage/state text should appear as a real hover bubble

Live Erik file check confirmed:

  • data-tooltip markers present
  • tooltip CSS present

7. Changelog self-healing

The public changelog cache in MAGATAMA core previously returned cached data indefinitely if structurally valid.

Now:

  • cached changelog older than 6 hours triggers a rebuild from git history

Live verified on Erik through dashboard proxy:

  • generatedAt = 2026-05-06T15:18:42.708Z
  • latest entries include fresh 2026-04-30 material again

Files Touched In MAGATAMA

  • packages/dashboard/public/index-v2.html
  • packages/dashboard/src/server.ts
  • packages/core/src/routes/changelog.ts

Deployment Status

Built locally and redeployed to Erik:

  • dashboard dist synced
  • core dist synced
  • index-v2.html synced
  • PM2 restarted:
    • magatama-dashboard
    • magatama

Important Live Evidence

  • public api/llm/status shows lane-export counts, not 1097
  • public api/findings?limit=1 returns empty findings cleanly
  • Erik live dashboard file contains:
    • API_CACHE_VERSION = '2026-05-06b'
    • data-tooltip
    • Im aktuellen Scope liegen 0 Assets.
    • Klicken für Details

Open Truths

  • current live findings are genuinely 0; this is not a hidden frontend-only failure
  • Attack Paths can still be empty if there are truly no scoped assets or no correlated attack stories
  • RunPod serverless still needs endpoint-side reliability; the MAGATAMA-side truthfulness improvements do not by themselves fix a broken RunPod release/worker pipeline