ComfyUI/app/assets/services
Matt Miller 9a7f580b37 feat(assets): require cursor o field, drop legacy permissive path
Cursor pagination hasn't shipped on either runtime yet — this PR is
still draft and cloud's mirror is just behind it — so there are no
legacy no-o cursors in the wild. Make o mandatory from day one
rather than landing permissive and tightening later.

decode_cursor now rejects any payload without o (or with a non-string
o) as malformed. CursorPayload.order becomes a required str. Tests
that constructed CursorPayload directly now pass order="desc";
test_legacy_cursor_without_order_accepted flips to
test_cursor_without_order_rejected.
2026-05-20 20:44:40 -07:00
..
__init__.py feat(assets): register output files as assets after prompt execution (#12812) 2026-03-24 20:48:55 -07:00
asset_management.py feat(assets): bind cursor to sort order + Go-compat JSON escaping 2026-05-20 13:43:09 -07:00
bulk_ingest.py feat(assets): register output files as assets after prompt execution (#12812) 2026-03-24 20:48:55 -07:00
cursor.py feat(assets): require cursor o field, drop legacy permissive path 2026-05-20 20:44:40 -07:00
file_utils.py refactor(assets): modular architecture + async two-phase scanner & background seeder (#12621) 2026-03-07 20:37:25 -05:00
hashing.py Import assets seeder later, print some package versions. (#12841) 2026-03-08 16:25:30 -04:00
ingest.py feat(assets): register output files as assets after prompt execution (#12812) 2026-03-24 20:48:55 -07:00
metadata_extract.py refactor(assets): modular architecture + async two-phase scanner & background seeder (#12621) 2026-03-07 20:37:25 -05:00
path_utils.py fix(assets): recognize temp directory in asset category resolution (#13159) 2026-03-25 19:59:59 -07:00
schemas.py feat(assets): thread cursor through schemas, service, and query layer 2026-05-20 12:58:55 -07:00
tagging.py feat(assets): align local API with cloud spec (#12863) 2026-03-16 12:34:04 -07:00