curo1305
0a7273b9fe
feat(12-01): normalized cloud resource capability contract and unit tests
- Define 9 action keys, 3 capability states, 6 reason codes in cloud_base.py
- Immutable CloudCapability, CloudResource, CloudListing frozen dataclasses
- Abstract CloudResourceAdapter with list_folder, get_capabilities, merge_item_capabilities
- No mutation methods in Phase 12 interface (Phase 13 boundary enforced)
- 29 unit tests covering vocabulary, validation, merge behavior, fake adapter
2026-06-18 22:34:23 +02:00
..
2026-05-22 08:53:28 +02:00
2026-06-06 22:12:57 +02:00
2026-06-04 23:19:40 +02:00
2026-06-06 00:02:27 +02:00
2026-06-12 15:50:38 +02:00
2026-06-04 19:14:48 +02:00
2026-06-04 19:10:05 +02:00
2026-05-23 13:42:37 +02:00
2026-06-04 23:15:49 +02:00
2026-06-06 00:11:41 +02:00
2026-06-06 22:12:57 +02:00
2026-06-06 17:21:14 +02:00
2026-06-06 23:03:48 +02:00
2026-05-22 19:52:36 +02:00
2026-06-08 16:35:26 +02:00
2026-06-04 19:14:48 +02:00
2026-05-28 21:06:14 +02:00
2026-06-18 22:34:23 +02:00
2026-05-28 20:58:40 +02:00
2026-06-16 11:50:17 +02:00
2026-05-31 12:04:21 +02:00
2026-06-04 23:08:16 +02:00
2026-06-06 22:12:57 +02:00
2026-05-22 08:53:28 +02:00
2026-05-28 17:10:52 +02:00
2026-05-22 09:53:39 +02:00
2026-05-28 17:10:52 +02:00
2026-06-03 18:47:49 +02:00
2026-06-01 15:43:01 +02:00
2026-06-04 18:27:49 +02:00
2026-06-06 22:12:57 +02:00
2026-05-31 15:21:02 +02:00
2026-05-23 20:32:55 +02:00
2026-05-31 15:04:53 +02:00
2026-05-30 18:56:58 +02:00
2026-06-06 17:13:50 +02:00
2026-06-05 19:15:01 +02:00
2026-05-23 20:15:44 +02:00
2026-05-31 12:04:21 +02:00
2026-05-28 21:07:18 +02:00