fetch_ml/internal
Jeremie Fraeys c6a224d5fc
feat(cli,server): unify info command with remote/local support
Enhance ml info to query server when connected, falling back to local
manifests when offline. Unifies behavior with other commands like run,
exec, and cancel.

CLI changes:
- Add --local and --remote flags for explicit control
- Auto-detect connection state via mode.detect()
- queryRemoteRun(): Query server via WebSocket for run details
- queryLocalRun(): Read local run_manifest.json
- displayRunInfo(): Shared display logic for both sources
- Add connection status indicators (Remote: connecting.../connected)

WebSocket protocol:
- Add query_run_info opcode (0x28) to cli and server
- Add sendQueryRunInfo() method to ws/client.zig
- Protocol: [opcode:1][api_key_hash:16][run_id_len:1][run_id:var]

Server changes:
- Add handleQueryRunInfo() handler to ws/handler.go
- Returns run_id, job_name, user, timestamp, overall_sha, files_count
- Checks PermJobsRead permission
- Looks up run in experiment manager

Usage:
  ml info abc123              # Auto: tries remote, falls back to local
  ml info abc123 --local      # Force local manifest lookup
  ml info abc123 --remote     # Force remote query (fails if offline)
2026-03-05 12:07:00 -05:00
..
api feat(cli,server): unify info command with remote/local support 2026-03-05 12:07:00 -05:00
audit security: improve audit, crypto, and config handling 2026-03-04 13:23:42 -05:00
auth refactor(auth): add tenant scoping and permission enhancements 2026-02-26 12:06:08 -05:00
config security: improve audit, crypto, and config handling 2026-03-04 13:23:42 -05:00
container refactor(jupyter): enhance security and scheduler integration 2026-02-26 12:06:35 -05:00
crypto security: improve audit, crypto, and config handling 2026-03-04 13:23:42 -05:00
domain refactor: misc improvements across codebase 2026-03-05 10:58:22 -05:00
envpool refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
errtypes refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
experiment refactor(jupyter): enhance security and scheduler integration 2026-02-26 12:06:35 -05:00
fileutil refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
jupyter refactor(jupyter): enhance security and scheduler integration 2026-02-26 12:06:35 -05:00
logging refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
manifest feat: enhance task domain and scheduler protocol 2026-03-04 13:23:38 -05:00
metrics refactor: Phase 6 - Complete migration, remove legacy files 2026-02-17 14:39:48 -05:00
middleware fix: resolve TODOs and standardize tests 2026-02-19 15:34:59 -05:00
network refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
privacy refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
prommetrics feat(api): refactor websocket handlers; add health and prometheus middleware 2026-01-05 12:31:07 -05:00
queue refactor(queue): integrate scheduler backend and storage improvements 2026-02-26 12:06:46 -05:00
resources refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
scheduler refactor(scheduler): remove dead code 2026-03-04 13:35:18 -05:00
security refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
storage refactor(queue): integrate scheduler backend and storage improvements 2026-02-26 12:06:46 -05:00
telemetry Fix multi-user authentication and clean up debug code 2025-12-06 12:35:32 -05:00
tracking refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
validation feat: add security monitoring and validation framework 2026-02-19 15:34:25 -05:00
worker feat: enhance worker execution and scheduler service templates 2026-03-04 13:24:20 -05:00