# OpusR-Client — Aufgaben ## Phase 1: Basis (CLI + REST) - [x] Projektstruktur, Cargo.toml, CLAUDE.md - [x] Datenmodelle (TableInfo, ColumnInfo, QueryFilter) - [x] DB2 REST Client (reqwest, Basic Auth, TLS) - [x] Service-Layer (opusrTables, opusrColumns, opusrQuery) - [x] CLI mit clap (tables, columns, query, test) - [x] Auth-Modul (Login-Prompt, Password ohne Echo) - [ ] Kompilierung verifizieren (cargo build --release) - [ ] Unit-Tests mit wiremock - [ ] Integration-Test gegen echten Host ## Phase 2: PassTicket Auth - [ ] Login-Service auf z/OS (RACF verify + IRRSGS00) - [ ] PTKTDATA-Profil in RACF definieren - [ ] PassTicketManager: obtain → cache → refresh cycle - [ ] Token-Refresh vor Ablauf (9 min Intervall) ## Phase 3: TUI (ratatui) - [ ] Tabellenliste als navigierbare Liste - [ ] Spalten-Selektion (Checkboxen) - [ ] Daten-View mit horizontalem Scrollen - [ ] Filter-Eingabezeile - [ ] Line Commands (wie ISPF — Aktion pro Zeile) - [ ] Navigationslogik aus @D Macros (JSON-Config) ## Phase 4: Produktreife - [ ] Client-Zertifikate als Alternative zu PassTickets - [ ] Config-Datei (~/.opusr/config.toml) - [ ] Audit-Logging (jeder REST-Call) - [ ] Cross-Compilation (Windows, Linux, macOS) - [ ] MSI/deb/rpm Installer - [ ] Kundenhandbuch