Repository navigation
impartus-cli: v0.1.21
0.1.21 (2026-08-12)
Features
- cli: add Bubble Tea lecture workspace (e29e6d8)
- cli: add Bubble Tea lecture workspace (3b61e9e)
- cli: add generic durable lecture auto-download (1c8cd29)
- cli: add generic durable lecture auto-download (20edc73)
- cli: add stable download artifact manifest v1 (ca7d0f9)
- cli: add stable download artifact manifest v1 (fd1706a)
- cli: persist artifacts, playback, and download jobs (27741b5)
- cli: persist artifacts, playback, and download jobs (7247710)
- cli: supervise mpv over private JSON IPC (496c8ac)
- cli: supervise mpv over private JSON IPC (4b08667)
Bug Fixes
- app: await player result on cancellation (99d1449)
- app: distinguish transport timeouts from cancellation (6acfecc)
- app: terminalize failed library commits (119acd0)
- artifact: enforce manifest trust boundaries (892152b)
- artifact: harden output descriptor opening (a22895a)
- artifact: reject conflicting lecture scope (535e45b)
- artifact: reject symlink materializations (ade77dd)
- artifact: resolve omitted institute scope (282941f)
- artifact: revalidate manifest materializations (6962a2f)
- cli: accept verify flags after artifact id (ea10c31)
- cli: preserve terminal outcome consistency (4138d49)
- cli: redact returned automation errors (5f26c30)
- cli: remove stale download import (2971f07)
- cli: remove stale event imports (c8e6bfc)
- cli: share interactive lecture scope resolution (0a26717)
- cli: skip empty library commits (5d69039)
- cli: skip playlists without selected media (8561009)
- config: allow pipeline env opt-out (15d2014)
- config: canonicalize validated views (66a4529)
- config: reject noncanonical media values (75bef0b)
- doctor: honor Windows permission semantics (499a9a8)
- doctor: reject ACL ownership controls (06ef296)
- doctor: verify private state ownership (a6febee)
- downloader: attempt downloads with unset retry limit (9688ad4)
- downloader: plan single-camera downloads (0c06aba)
- downloader: preserve cancellation and redaction safety (d799df1)
- downloader: preserve cancellation diagnostics (ce771bd)
- downloader: preserve completed pipeline results (636f254)
- downloader: reject empty media batches (fbbfb20)
- downloader: reject incomplete pipeline results (e700cb4)
- downloader: reject unavailable selected media (6319ff9)
- downloader: retain pipeline failure details (6cc1422)
- downloader: scrub response bodies at source (780794e)
- downloader: scrub upstream response secrets (db6a1e5)
- downloader: stabilize pipeline failure handling (4f547bf)
- download: preserve partial and playback compatibility (3042ebd)
- download: reject empty playlist batches (996a491)
- download: surface incomplete lecture batches (c3095a8)
- events: avoid nonterminal lecture failures (d7bd999)
- events: close unavailable lecture lifecycle (14cb551)
- events: distinguish transport timeouts from cancellation (5e1f1bd)
- events: fail closed on library commit errors (8ce1eb5)
- events: keep lifecycle v1 to approved names (667ad9c)
- events: preserve unavailable media lifecycle (1a1dc30)
- events: restore original lifecycle contract (061a27e)
- events: sever secret-bearing error chains (4a10302)
- library: canonicalize durable video selections (d56e9c3)
- library: canonicalize expected file views (3212334)
- library: clear stale hashes on re-record (1a0469b)
- library: encode Windows SQLite file URIs (8a135a2)
- library: harden ACL and file verification (e6114b2)
- library: harden final artifact commits (9e617db)
- library: harden private error persistence (a624f05)
- library: scope recovery and hash publication (b7309c3)
- library: tolerate concurrent ACL setup (65ab367)
- library: validate recovered media containers (c4942f4)
- library: validate recovered media on one descriptor (ea6d4b7)
- playback: require verified terminal events (6781c81)
- playback: surface proxy authorization failures (fbb35b9)
- playback: verify Windows privacy and auth failures (1eae540)
- player: close IPC before classifying cancellation (b7974ae)
- player: drain in-flight terminal handlers (f5639f0)
- player: drain terminal failures before cancellation (8d199b3)
- player: harden terminal event handling (0e60977)
- player: hide unverified eof events (0d05634)
- player: ignore idle eof notifications (7e650fc)
- player: keep platform defaults portable (e340df0)
- player: preserve cancellation over clean quit (580a548)
- player: preserve ready failures on cancellation (fd2541a)
- player: retain terminal state after disconnect (cdbce3c)
- player: surface safe playback failures (3417fdd)
- secrets: cover signed response credentials (eb27aca)
- secrets: preserve redacted assignment context (4e6ad07)
- secrets: redact arbitrary authorization schemes (0742e86)
- secrets: redact arbitrary authorization schemes (e65b41c)
- secrets: redact bare inline tokens (5511b4e)
- secrets: redact inline password values (86723bf)
- secrets: redact short inline credentials (8f9cbd4)
- secrets: redact standalone key assignments (8cece66)
- secrets: redact strong credential headers (8595b97)
- security: refresh vulnerable runtime base (ff194bf)
- security: refresh vulnerable runtime base (57594f1)
- server: skip unavailable selected media (757c3f0)
- tui: align planned outputs and retry help (7cb9977)
- tui: bound resume readiness wait (02da028)
- tui: format playback clocks with hours (2d190f2)
- tui: hand off bounded resume telemetry (c94fc8d)
- tui: harden playback lifecycle (638e321)
- tui: harden playback state transitions (280c347)
- tui: persist durable download jobs (511332a)
- tui: preserve terminal readiness failures (e6380a6)
- tui: redact backend errors at render boundary (040a332)
- tui: replay resume readiness events (9440eca)
- tui: sanitize terminal-bound metadata (88e071a)
- watch: align filtering and durable progress (9daa29a)
- watch: align redaction and budget docs (00216db)
- watch: classify empty filtered selections (3fbf6bf)
- watch: close final review gaps (4d2dcf3)
- watch: consolidate scope and recovery paths (712009e)
- watch: enforce budget before playlist fetch (4107ea0)
- watch: enforce forced one-cycle runs (23aa68d)
- watch: harden review edge cases (1523332)
- watch: preserve cancellation lifecycle semantics (9297435)
- watch: preserve recovered artifact events (d704da8)
- watch: print forced cycle summary (6b56d58)
- watch: recover only watcher-owned jobs (40d303e)
- watch: retain partial terminal results (06b52c9)
Performance
- downloader: enable bounded pipeline by default (8899e56)
- downloader: enable bounded pipeline by default (e2e7db7)
Refactoring
- app: narrow durable library boundary (31ffdb5)
- artifact: keep manifest boundary independent (225602f)
- artifact: split stable file validation (5352383)
- cli: split download presentation concerns (476e339)
- config: centralize artifact view selection (b8c703b)
- downloader: type planned output views (ad0b325)
- library: reuse selection normalization (5810b82)
- library: share artifact view validation (ae333ce)
- library: split container signature validation (5e07820)
- player: share playback error boundary (725ca13)
- selection: centralize artifact vocabulary (13937a9)
- selection: unify view membership policy (8f1c29c)
Documentation
- close architecture review gaps (0ee8ebf)
- downloader: clarify cancellation precedence (f493908)
- pin remaining execution contracts (0f50ab8)
- plan consolidated lecture product (489d330)
- remove unsupported OpenClaw manifest (#133) (70401a1)
Testing
- cli: avoid verify result shadowing (c5f2326)
- cli: satisfy interactive scope lint checks (8fca189)
- config: isolate env-sensitive defaults (a498611)
- doctor: provide stacked library check (770da54)
- events: cover strong credential headers (f52c0fa)
- library: cover strong credential persistence (d8e9391)
- player: cover unexpected terminal reasons (051126a)
- player: synchronize cancellation after launch (29e281c)
- tui: cover digest authorization redaction (707091b)
- tui: cover strong credential headers (20a7275)
- watch: avoid retryable job shadowing (60179c7)
- watch: cover arbitrary authorization schemes (b96461a)
- watch: use valid recovered media fixtures (6062b08)