Vito
d9537a726c
feat(workspace): complete shared inspector and collection viewer ( #224 )
...
* feat(inspector): expose bounded physical file evidence
* fix(inspector): distinguish ambiguous saved associations
* feat(inspector): derive conservative generation facts
* fix(inspector): guard fact ancestry and inspection state
* feat(inspector): share complete file details and exports
* fix(inspector): preserve fact states and touch targets
* feat(viewer): navigate the loaded media collection
Refs #216
* fix(viewer): refit after current stage geometry changes
Ref #216 . Observe the current media stage after readiness and wrapped title changes without rebuilding focused controls or resetting transforms at unchanged dimensions.
* feat(viewer): add lifecycle-safe slideshow and media preferences
* fix(viewer): resume gallery continuation after close (#216 )
* fix(images): guard source recovery and wrap viewer actions
Clear stale root and folder intent, cancel old pages, and wait for current source discovery before loading a refreshed collection. Preserve safe retry through failed, superseded, and disposed discovery.
Wrap narrow viewer footer actions and wait for measured gallery viewport settling in responsive checks. Refs #216 ; addresses PR #224 review.
* test(viewer): await gallery layout after viewport changes
Require actual inner, root client, and document widths to agree after each responsive-case viewport and CSS zoom transition. Keep the existing exact frame, overflow, focus, and coarse target assertions unchanged.
Observed PR #224 CI initial mobile resize at537px before pending card relayout settled to356px. Refs #216 .
2026-10-18 09:41:53 -07:00
Vito
4ef236aaf7
feat(history): persist exact run output references ( #214 )
...
* feat(history): define bounded output reference contracts
* feat(database): migrate execution output evidence to schema v3
* feat(history): persist immutable run output references
* test(history): isolate mocked node gallery monitor
* feat(history): capture bounded output descriptors with shared leases
* fix(history): authenticate payload owners and release failed captures
* feat(history): attach output evidence to exact finalized attempts
* test(history): verify run output evidence on real ComfyUI
* fix(history): release idle worker payload references
* docs(history): clarify defensive lease cleanup
* test(history): align output fixtures with native path styles
* test(history): separate restore completion from writer drain
* test(history): bound batch drains by progress and total time
2026-10-17 23:26:37 -07:00
Vito
bae542c9ac
feat(history): persist exact execution prompt contexts ( #213 )
...
* feat(history): define exact bounded execution contexts
* fix(history): retain observable sources and validate evidence
* feat(history): migrate execution contexts to schema v2
* feat(history): persist immutable execution context snapshots
* fix(history): preserve package identity for execution contexts
* feat(history): bound context payloads beside lifecycle finalization
* fix(history): fence context commits and resolve stored run identity
* fix(history): bound persisted identifier bytes before restore reads
* feat(history): bind exact runtime context to execution attempts
* test(history): discover owner invalidation callback regression
* feat(history): capture cached prompt strings without mutating host caches
* test(history): verify durable contexts on real ComfyUI hosts
* fix(history): scope transforms to captured source paths
* test(ci): update execution context tooling fixtures (#209 )
* fix(history): harden context validation and worker fixtures (#209 )
* fix(history): honor close deadlines after early joins (#209 )
2026-10-17 19:51:22 -07:00
Vito
763e6b37b1
feat(history): record durable ComfyUI execution attempts ( #212 )
...
* feat(history): normalize bounded execution evidence (#209 )
* fix(history): bound lifecycle kind checks before hashing (#209 )
* feat(history): persist execution attempts with restore fencing (#209 )
* test(api): bootstrap standalone backup restore fixtures (#209 )
* feat(history): isolate bounded asynchronous ledger writes (#209 )
* feat(history): observe actual queue attempts without altering execution (#209 )
* fix(database): honor package-scoped configuration (#211 )
* test(history): exercise real cached and headless executions (#209 )
* fix(history): reject unsupported uniqueness and isolate package fixtures (#209 )
* test(history): support Python 3.10 package fixture cleanup (#209 )
2026-10-17 16:42:07 -07:00
Vito
dc345671ae
feat(workspace): inspect and send positive and negative prompts ( #206 )
...
* feat(workspace): inspect and send positive and negative prompts
* docs(workspace): capture complete inspector and viewer previews
* docs(inspector): explain the subprocess cleanup race
* fix(workspace): defer observed gallery layout writes (#207 )
* fix(inspector): keep path-only prompt associations unverified
2026-10-17 13:43:19 -07:00
Vito
76e9b51079
feat(bridge): add acknowledged ComfyUI prompt destinations ( #203 )
...
* feat(bridge): add guarded PromptManager prompt destinations
* fix(ci): install shared contracts before frontend unit tests
* test(comfyui): wait for paired editor resize before measuring layout
2026-10-17 13:14:02 -07:00
Vito
590aa2cd0e
feat(workspace): add native Images browsing and infinite scroll ( #201 )
...
* feat(workspace): add native image browsing and continuous loading
* test(workspace): assert empty collections through their status
* fix(workspace): rescan refreshed images and expose ancestor folders
2026-10-17 11:22:10 -07:00
Vito
d4bb5c5ba9
feat(ui): add the tested opt-in Prompt Manager workspace shell ( #198 )
...
* docs(ui): prototype unified prompt management application
* docs(ui): add masonry and per-image tagging to application concept
* docs(ui): make gallery concept use continuous infinite scrolling
* feat(ui): introduce the tested application workspace shell
* fix(docs): preserve concept controls across cached navigation
* test(ci): emit Python tracebacks for native test crashes
* test(ui): cover workspace restoration across cached navigation
2026-10-17 10:36:30 -07:00
Vito
f98f6fa08d
test(ci): validate shared toolkit in real PromptManager hosts ( #189 )
...
* test(ci): prove shared toolkit with real PromptManager host coverage
* test(ci): match KikoTools Python 3.13 compatibility coverage
2026-10-16 20:56:50 -07:00
Vito
5ded3189c1
test: cover backup restore and destructive browser workflows ( #185 )
2026-10-16 07:56:15 -07:00
Vito
f1b1d4731b
test: exercise real page workflows and enforce frontend coverage ( #181 )
2026-10-16 06:45:20 -07:00