rcf-lite 0.25.0 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +45 -0
- package/blueprints/application-account-settings/CHANGELOG.md +35 -2
- package/blueprints/application-account-settings/README.md +10 -10
- package/blueprints/application-account-settings/blueprint.json +23 -3
- package/blueprints/application-account-settings/contributions/adrs/adr-2601-application-account-settings-capability-vocabulary.json +1 -1
- package/blueprints/application-account-settings/contributions/adrs/adr-2604-application-account-settings-reauth-window.json +5 -5
- package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-001.json +6 -2
- package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-002.json +4 -0
- package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-003.json +7 -3
- package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-004.json +4 -0
- package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-005.json +4 -0
- package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-006.json +6 -2
- package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-007.json +22 -0
- package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-009.json +21 -0
- package/blueprints/application-account-settings/contributions/tacs/tac-2601-application-account-settings-shell.json +8 -4
- package/blueprints/application-account-settings/contributions/tacs/tac-2602-application-account-settings-capability-discovery.json +3 -3
- package/blueprints/application-account-settings/contributions/tacs/tac-2604-application-account-settings-session-store.json +13 -7
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25101.json +19 -3
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25102.json +27 -2
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25103.json +13 -2
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25104.json +23 -2
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25105.json +51 -3
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25106.json +25 -6
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25107.json +13 -2
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25108.json +27 -2
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25109.json +4 -2
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25110.json +13 -2
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25111.json +71 -0
- package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25112.json +77 -0
- package/blueprints/application-account-settings/docs/topics.md +5 -5
- package/blueprints/application-account-settings/guide/application-account-settings.md +1 -1
- package/blueprints/application-account-settings/probe-packs/application-account-settings.pack.mjs +2 -2
- package/blueprints/application-admin-console/CHANGELOG.md +42 -6
- package/blueprints/application-admin-console/README.md +4 -4
- package/blueprints/application-admin-console/blueprint.json +31 -1
- package/blueprints/application-admin-console/contributions/adrs/adr-2201-application-admin-console-capability-vocabulary.json +2 -2
- package/blueprints/application-admin-console/contributions/adrs/adr-2203-application-admin-console-invite-transport.json +5 -5
- package/blueprints/application-admin-console/contributions/adrs/adr-2204-application-admin-console-audit-retention.json +7 -7
- package/blueprints/application-admin-console/contributions/adrs/adr-2214-application-admin-console-consume-zero-trust-gate.json +3 -3
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-001.json +4 -0
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-002.json +5 -1
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-003.json +4 -0
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-004.json +4 -0
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-005.json +6 -2
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-006.json +4 -0
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-007.json +22 -0
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-008.json +22 -0
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-009.json +21 -0
- package/blueprints/application-admin-console/contributions/requirements/application-admin-console-req-014.json +6 -2
- package/blueprints/application-admin-console/contributions/tacs/tac-2201-application-admin-console-shell.json +9 -7
- package/blueprints/application-admin-console/contributions/tacs/tac-2202-application-admin-console-capability-discovery.json +6 -6
- package/blueprints/application-admin-console/contributions/tacs/tac-2204-application-admin-console-audit-view.json +1 -1
- package/blueprints/application-admin-console/contributions/tacs/tac-2214-application-admin-console-access-gated-signin-surface.json +5 -5
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21101.json +4 -2
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21102.json +4 -2
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21103.json +10 -4
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21104.json +13 -2
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21105.json +15 -3
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21106.json +35 -2
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21107.json +22 -3
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21108.json +4 -2
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21109.json +4 -2
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21110.json +68 -0
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21111.json +76 -0
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21112.json +77 -0
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21815.json +21 -2
- package/blueprints/application-admin-console/contributions/user-stories/application-admin-console-us-21816.json +21 -2
- package/blueprints/application-admin-console/docs/topics.md +1 -1
- package/blueprints/application-admin-console/guide/application-admin-console.md +3 -3
- package/blueprints/application-admin-console/probe-packs/application-admin-console.pack.mjs +2 -2
- package/blueprints/application-api-rest/CHANGELOG.md +26 -0
- package/blueprints/application-api-rest/assets/samples/request-response-pairs.md +2 -0
- package/blueprints/application-api-rest/blueprint.json +1 -1
- package/blueprints/application-api-rest/contributions/adrs/adr-301-application-api-rest-error-envelope.json +1 -1
- package/blueprints/application-api-rest/contributions/adrs/adr-302-application-api-rest-auth-model.json +1 -1
- package/blueprints/application-api-rest/contributions/adrs/adr-303-application-api-rest-api-versioning.json +1 -1
- package/blueprints/application-api-rest/contributions/adrs/adr-304-application-api-rest-logging.json +1 -1
- package/blueprints/application-api-rest/contributions/adrs/adr-305-application-api-rest-pagination.json +1 -1
- package/blueprints/application-api-rest/contributions/adrs/adr-306-application-api-rest-idempotency.json +3 -3
- package/blueprints/application-api-rest/contributions/adrs/adr-307-application-api-rest-openapi-generation.json +1 -1
- package/blueprints/application-api-rest/contributions/adrs/adr-308-application-api-rest-rate-limiting.json +1 -1
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-001.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-002.json +7 -3
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-003.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-004.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-005.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-006.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-007.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-008.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-009.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-010.json +8 -4
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-011.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-012.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-013.json +7 -3
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-014.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-015.json +6 -2
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-016.json +6 -2
- package/blueprints/application-api-rest/contributions/tacs/tac-301-application-api-rest-request-pipeline.json +1 -1
- package/blueprints/application-api-rest/contributions/tacs/tac-302-application-api-rest-auth-middleware.json +1 -1
- package/blueprints/application-api-rest/contributions/tacs/tac-303-application-api-rest-contract-surface.json +2 -2
- package/blueprints/application-api-rest/contributions/tacs/tac-304-application-api-rest-resource-layer.json +1 -1
- package/blueprints/application-api-rest/contributions/tacs/tac-305-application-api-rest-observability.json +1 -1
- package/blueprints/application-api-rest/contributions/tacs/tac-306-application-api-rest-operability.json +1 -1
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2101.json +13 -7
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2102.json +27 -13
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2103.json +18 -9
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2104.json +32 -10
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2105.json +19 -6
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2106.json +14 -8
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2107.json +20 -12
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2108.json +37 -15
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2109.json +15 -9
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2110.json +21 -11
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2111.json +42 -8
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2112.json +23 -13
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2113.json +17 -11
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2114.json +13 -8
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2115.json +13 -8
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2116.json +11 -6
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2117.json +19 -14
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2118.json +20 -10
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2119.json +20 -7
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2120.json +16 -10
- package/blueprints/application-api-rest/docs/topics.md +1 -1
- package/blueprints/application-charts/CHANGELOG.md +24 -3
- package/blueprints/application-charts/README.md +5 -5
- package/blueprints/application-charts/blueprint.json +112 -18
- package/blueprints/application-charts/contributions/adrs/adr-1901-application-charts-engine-choice.json +1 -1
- package/blueprints/application-charts/contributions/adrs/adr-1902-application-charts-accessible-palette.json +1 -1
- package/blueprints/application-charts/contributions/adrs/adr-1903-application-charts-motion.json +1 -1
- package/blueprints/application-charts/contributions/requirements/application-charts-req-001.json +11 -4
- package/blueprints/application-charts/contributions/requirements/application-charts-req-002.json +11 -4
- package/blueprints/application-charts/contributions/requirements/application-charts-req-003.json +10 -3
- package/blueprints/application-charts/contributions/requirements/application-charts-req-004.json +10 -3
- package/blueprints/application-charts/contributions/tacs/tac-1901-application-charts-render-shell.json +3 -2
- package/blueprints/application-charts/contributions/tacs/tac-1902-application-charts-keyboard-traversal.json +1 -1
- package/blueprints/application-charts/contributions/user-stories/application-charts-us-18101.json +50 -6
- package/blueprints/application-charts/contributions/user-stories/application-charts-us-18102.json +58 -6
- package/blueprints/application-charts/contributions/user-stories/application-charts-us-18103.json +54 -6
- package/blueprints/application-charts/contributions/user-stories/application-charts-us-18104.json +55 -6
- package/blueprints/application-charts/contributions/user-stories/application-charts-us-18105.json +64 -8
- package/blueprints/application-charts/contributions/user-stories/application-charts-us-18106.json +45 -7
- package/blueprints/application-charts/docs/topics.md +3 -3
- package/blueprints/application-charts/guide/application-charts.md +3 -3
- package/blueprints/application-charts/probe-packs/application-charts.pack.mjs +2 -2
- package/blueprints/application-dashboard/CHANGELOG.md +24 -3
- package/blueprints/application-dashboard/README.md +8 -8
- package/blueprints/application-dashboard/blueprint.json +147 -21
- package/blueprints/application-dashboard/contributions/adrs/adr-2001-application-dashboard-primary-kpi-enum.json +4 -4
- package/blueprints/application-dashboard/contributions/adrs/adr-2002-application-dashboard-timeframe-presets.json +1 -1
- package/blueprints/application-dashboard/contributions/adrs/adr-2003-application-dashboard-export-formats.json +1 -1
- package/blueprints/application-dashboard/contributions/requirements/application-dashboard-req-001.json +10 -3
- package/blueprints/application-dashboard/contributions/requirements/application-dashboard-req-002.json +11 -4
- package/blueprints/application-dashboard/contributions/requirements/application-dashboard-req-003.json +10 -3
- package/blueprints/application-dashboard/contributions/requirements/application-dashboard-req-004.json +11 -4
- package/blueprints/application-dashboard/contributions/requirements/application-dashboard-req-005.json +11 -4
- package/blueprints/application-dashboard/contributions/tacs/tac-2001-application-dashboard-tile-grid.json +1 -1
- package/blueprints/application-dashboard/contributions/tacs/tac-2002-application-dashboard-filter-chrome.json +1 -1
- package/blueprints/application-dashboard/contributions/tacs/tac-2003-application-dashboard-export-handle.json +1 -1
- package/blueprints/application-dashboard/contributions/user-stories/application-dashboard-us-19101.json +54 -6
- package/blueprints/application-dashboard/contributions/user-stories/application-dashboard-us-19102.json +54 -6
- package/blueprints/application-dashboard/contributions/user-stories/application-dashboard-us-19103.json +58 -6
- package/blueprints/application-dashboard/contributions/user-stories/application-dashboard-us-19104.json +55 -7
- package/blueprints/application-dashboard/contributions/user-stories/application-dashboard-us-19105.json +54 -6
- package/blueprints/application-dashboard/contributions/user-stories/application-dashboard-us-19106.json +60 -8
- package/blueprints/application-dashboard/contributions/user-stories/application-dashboard-us-19107.json +57 -9
- package/blueprints/application-dashboard/docs/topics.md +4 -4
- package/blueprints/application-dashboard/guide/application-dashboard.md +3 -3
- package/blueprints/application-dashboard/probe-packs/application-dashboard.pack.mjs +4 -4
- package/blueprints/application-datatable/CHANGELOG.md +23 -2
- package/blueprints/application-datatable/README.md +3 -3
- package/blueprints/application-datatable/blueprint.json +167 -25
- package/blueprints/application-datatable/contributions/adrs/adr-1801-application-datatable-pattern-choice.json +1 -1
- package/blueprints/application-datatable/contributions/adrs/adr-1802-application-datatable-url-state.json +1 -1
- package/blueprints/application-datatable/contributions/adrs/adr-1803-application-datatable-page-size.json +1 -1
- package/blueprints/application-datatable/contributions/adrs/adr-1804-application-datatable-selection-persistence.json +1 -1
- package/blueprints/application-datatable/contributions/requirements/application-datatable-req-001.json +11 -4
- package/blueprints/application-datatable/contributions/requirements/application-datatable-req-002.json +11 -4
- package/blueprints/application-datatable/contributions/requirements/application-datatable-req-003.json +10 -3
- package/blueprints/application-datatable/contributions/requirements/application-datatable-req-004.json +11 -4
- package/blueprints/application-datatable/contributions/requirements/application-datatable-req-005.json +10 -3
- package/blueprints/application-datatable/contributions/requirements/application-datatable-req-006.json +10 -3
- package/blueprints/application-datatable/contributions/tacs/tac-1801-application-datatable-shell.json +1 -1
- package/blueprints/application-datatable/contributions/tacs/tac-1802-application-datatable-query-adapter.json +1 -1
- package/blueprints/application-datatable/contributions/tacs/tac-1803-application-datatable-selection-model.json +2 -2
- package/blueprints/application-datatable/contributions/user-stories/application-datatable-us-17101.json +29 -7
- package/blueprints/application-datatable/contributions/user-stories/application-datatable-us-17102.json +29 -7
- package/blueprints/application-datatable/contributions/user-stories/application-datatable-us-17103.json +28 -6
- package/blueprints/application-datatable/contributions/user-stories/application-datatable-us-17104.json +65 -7
- package/blueprints/application-datatable/contributions/user-stories/application-datatable-us-17105.json +32 -7
- package/blueprints/application-datatable/contributions/user-stories/application-datatable-us-17106.json +60 -7
- package/blueprints/application-datatable/contributions/user-stories/application-datatable-us-17107.json +72 -7
- package/blueprints/application-datatable/contributions/user-stories/application-datatable-us-17108.json +59 -9
- package/blueprints/application-datatable/contributions/user-stories/application-datatable-us-17109.json +58 -9
- package/blueprints/application-datatable/docs/topics.md +2 -2
- package/blueprints/application-datatable/guide/application-datatable.md +1 -1
- package/blueprints/application-empty-error-states/CHANGELOG.md +33 -3
- package/blueprints/application-empty-error-states/README.md +3 -3
- package/blueprints/application-empty-error-states/blueprint.json +35 -1
- package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-001.json +4 -0
- package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-002.json +7 -3
- package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-003.json +4 -0
- package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-004.json +6 -2
- package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-005.json +7 -3
- package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-006.json +21 -0
- package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-007.json +21 -0
- package/blueprints/application-empty-error-states/contributions/tacs/tac-2301-application-empty-error-states-state-machine.json +7 -4
- package/blueprints/application-empty-error-states/contributions/tacs/tac-2303-application-empty-error-states-offline-buffer.json +3 -2
- package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22101.json +17 -2
- package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22102.json +31 -2
- package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22103.json +27 -2
- package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22104.json +13 -2
- package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22105.json +33 -2
- package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22106.json +13 -2
- package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22107.json +23 -2
- package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22108.json +27 -2
- package/blueprints/application-empty-error-states/docs/topics.md +1 -1
- package/blueprints/application-empty-error-states/probe-packs/application-empty-error-states.pack.mjs +93 -9
- package/blueprints/application-error-handling/CHANGELOG.md +17 -0
- package/blueprints/application-error-handling/blueprint.json +104 -19
- package/blueprints/application-error-handling/contributions/adrs/adr-1701-application-error-handling-record-shape.json +1 -1
- package/blueprints/application-error-handling/contributions/adrs/adr-1702-application-error-handling-classification-vocabulary.json +1 -1
- package/blueprints/application-error-handling/contributions/adrs/adr-1703-application-error-handling-transport-mapping.json +1 -1
- package/blueprints/application-error-handling/contributions/requirements/application-error-handling-req-001.json +10 -3
- package/blueprints/application-error-handling/contributions/requirements/application-error-handling-req-002.json +10 -3
- package/blueprints/application-error-handling/contributions/requirements/application-error-handling-req-003.json +10 -3
- package/blueprints/application-error-handling/contributions/requirements/application-error-handling-req-004.json +10 -3
- package/blueprints/application-error-handling/contributions/tacs/tac-1701-application-error-handling-boundary.json +1 -1
- package/blueprints/application-error-handling/contributions/tacs/tac-1702-application-error-handling-record-factory.json +1 -1
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16101.json +63 -4
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16102.json +49 -4
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16103.json +51 -5
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16104.json +49 -4
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16105.json +49 -4
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16106.json +49 -4
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16107.json +53 -4
- package/blueprints/application-error-handling/docs/topics.md +1 -1
- package/blueprints/application-file-upload/CHANGELOG.md +36 -3
- package/blueprints/application-file-upload/README.md +1 -1
- package/blueprints/application-file-upload/blueprint.json +56 -1
- package/blueprints/application-file-upload/contributions/adrs/adr-2402-application-file-upload-accepted-set.json +3 -3
- package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-001.json +4 -0
- package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-002.json +7 -3
- package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-003.json +6 -2
- package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-004.json +6 -2
- package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-005.json +4 -0
- package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-006.json +21 -0
- package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-007.json +21 -0
- package/blueprints/application-file-upload/contributions/tacs/tac-2401-application-file-upload-input.json +4 -2
- package/blueprints/application-file-upload/contributions/tacs/tac-2402-application-file-upload-transport.json +7 -2
- package/blueprints/application-file-upload/contributions/tacs/tac-2403-application-file-upload-progress-announcer.json +16 -6
- package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23101.json +23 -2
- package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23102.json +29 -4
- package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23103.json +13 -2
- package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23104.json +45 -2
- package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23105.json +37 -2
- package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23106.json +13 -2
- package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23107.json +17 -2
- package/blueprints/application-file-upload/docs/topics.md +1 -1
- package/blueprints/application-file-upload/probe-packs/application-file-upload.pack.mjs +14 -5
- package/blueprints/application-forms-wizard/CHANGELOG.md +34 -3
- package/blueprints/application-forms-wizard/README.md +2 -2
- package/blueprints/application-forms-wizard/blueprint.json +57 -1
- package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-001.json +4 -0
- package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-002.json +6 -2
- package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-003.json +6 -2
- package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-004.json +6 -2
- package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-005.json +4 -0
- package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-006.json +21 -0
- package/blueprints/application-forms-wizard/contributions/tacs/tac-2501-application-forms-wizard-task-list.json +6 -4
- package/blueprints/application-forms-wizard/contributions/tacs/tac-2502-application-forms-wizard-error-summary.json +4 -3
- package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24101.json +35 -2
- package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24102.json +27 -2
- package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24103.json +21 -2
- package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24104.json +13 -2
- package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24105.json +33 -2
- package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24106.json +18 -3
- package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24107.json +23 -2
- package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24108.json +13 -2
- package/blueprints/application-forms-wizard/docs/topics.md +1 -1
- package/blueprints/application-forms-wizard/probe-packs/application-forms-wizard.pack.mjs +3 -3
- package/blueprints/application-notifications-in-app/CHANGELOG.md +35 -3
- package/blueprints/application-notifications-in-app/README.md +5 -5
- package/blueprints/application-notifications-in-app/blueprint.json +150 -22
- package/blueprints/application-notifications-in-app/contributions/requirements/application-notifications-in-app-req-001.json +11 -4
- package/blueprints/application-notifications-in-app/contributions/requirements/application-notifications-in-app-req-002.json +8 -1
- package/blueprints/application-notifications-in-app/contributions/requirements/application-notifications-in-app-req-003.json +10 -3
- package/blueprints/application-notifications-in-app/contributions/requirements/application-notifications-in-app-req-004.json +11 -4
- package/blueprints/application-notifications-in-app/contributions/requirements/application-notifications-in-app-req-005.json +12 -5
- package/blueprints/application-notifications-in-app/contributions/requirements/application-notifications-in-app-req-006.json +21 -0
- package/blueprints/application-notifications-in-app/contributions/tacs/tac-2102-application-notifications-in-app-centre.json +14 -8
- package/blueprints/application-notifications-in-app/contributions/tacs/tac-2103-application-notifications-in-app-preferences.json +2 -2
- package/blueprints/application-notifications-in-app/contributions/user-stories/application-notifications-in-app-us-20101.json +29 -5
- package/blueprints/application-notifications-in-app/contributions/user-stories/application-notifications-in-app-us-20102.json +43 -5
- package/blueprints/application-notifications-in-app/contributions/user-stories/application-notifications-in-app-us-20103.json +39 -5
- package/blueprints/application-notifications-in-app/contributions/user-stories/application-notifications-in-app-us-20104.json +31 -5
- package/blueprints/application-notifications-in-app/contributions/user-stories/application-notifications-in-app-us-20105.json +50 -8
- package/blueprints/application-notifications-in-app/contributions/user-stories/application-notifications-in-app-us-20106.json +19 -4
- package/blueprints/application-notifications-in-app/contributions/user-stories/application-notifications-in-app-us-20107.json +19 -4
- package/blueprints/application-notifications-in-app/contributions/user-stories/application-notifications-in-app-us-20108.json +19 -4
- package/blueprints/application-notifications-in-app/docs/topics.md +1 -1
- package/blueprints/application-notifications-in-app/guide/application-notifications-in-app.md +1 -1
- package/blueprints/application-notifications-in-app/probe-packs/application-notifications-in-app.pack.mjs +4 -4
- package/blueprints/application-onboarding-tour/CHANGELOG.md +33 -2
- package/blueprints/application-onboarding-tour/README.md +2 -2
- package/blueprints/application-onboarding-tour/blueprint.json +22 -2
- package/blueprints/application-onboarding-tour/contributions/adrs/adr-2702-application-onboarding-tour-completion-store-shape.json +4 -4
- package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-001.json +6 -2
- package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-002.json +6 -2
- package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-003.json +4 -0
- package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-004.json +4 -0
- package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-005.json +22 -0
- package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-006.json +22 -0
- package/blueprints/application-onboarding-tour/contributions/tacs/tac-2702-application-onboarding-tour-checklist-slot.json +2 -1
- package/blueprints/application-onboarding-tour/contributions/tacs/tac-2703-application-onboarding-tour-completion-store.json +7 -7
- package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26101.json +67 -2
- package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26102.json +35 -2
- package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26103.json +13 -2
- package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26104.json +33 -2
- package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26105.json +13 -2
- package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26106.json +13 -2
- package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26107.json +17 -2
- package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26108.json +62 -0
- package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26109.json +72 -0
- package/blueprints/application-onboarding-tour/docs/topics.md +3 -3
- package/blueprints/application-onboarding-tour/guide/application-onboarding-tour.md +1 -1
- package/blueprints/application-onboarding-tour/probe-packs/application-onboarding-tour.pack.mjs +2 -2
- package/blueprints/application-spa/CHANGELOG.md +30 -0
- package/blueprints/application-spa/README.md +8 -8
- package/blueprints/application-spa/blueprint.json +1 -1
- package/blueprints/application-spa/contributions/adrs/adr-201-application-spa-routing.json +1 -1
- package/blueprints/application-spa/contributions/adrs/adr-202-application-spa-theming.json +1 -1
- package/blueprints/application-spa/contributions/adrs/adr-203-application-spa-client-state.json +1 -1
- package/blueprints/application-spa/contributions/adrs/adr-204-application-spa-error-envelope.json +1 -1
- package/blueprints/application-spa/contributions/adrs/adr-205-application-spa-auth-model.json +1 -1
- package/blueprints/application-spa/contributions/adrs/adr-206-application-spa-iconography.json +1 -1
- package/blueprints/application-spa/contributions/adrs/adr-207-application-spa-motion.json +1 -1
- package/blueprints/application-spa/contributions/adrs/adr-208-application-spa-i18n.json +1 -1
- package/blueprints/application-spa/contributions/adrs/adr-209-application-spa-telemetry-naming.json +1 -1
- package/blueprints/application-spa/contributions/requirements/application-spa-req-001.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-002.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-003.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-004.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-005.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-006.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-007.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-008.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-009.json +7 -3
- package/blueprints/application-spa/contributions/requirements/application-spa-req-010.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-011.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-012.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-013.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-014.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-015.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-016.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-017.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-018.json +7 -3
- package/blueprints/application-spa/contributions/requirements/application-spa-req-019.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-020.json +6 -2
- package/blueprints/application-spa/contributions/requirements/application-spa-req-021.json +6 -2
- package/blueprints/application-spa/contributions/tacs/tac-201-application-spa-app-shell.json +4 -3
- package/blueprints/application-spa/contributions/tacs/tac-202-application-spa-theme-system.json +1 -1
- package/blueprints/application-spa/contributions/tacs/tac-203-application-spa-component-library.json +1 -1
- package/blueprints/application-spa/contributions/tacs/tac-204-application-spa-client-data-layer.json +1 -1
- package/blueprints/application-spa/contributions/tacs/tac-205-application-spa-forms-engine.json +1 -1
- package/blueprints/application-spa/contributions/tacs/tac-206-application-spa-telemetry.json +1 -1
- package/blueprints/application-spa/contributions/tacs/tac-207-application-spa-token-adherence-probe.json +1 -1
- package/blueprints/application-spa/contributions/tacs/tac-208-application-spa-icon-adherence-probe.json +1 -1
- package/blueprints/application-spa/contributions/tacs/tac-209-application-spa-csp-styled-adherence-probe.json +3 -3
- package/blueprints/application-spa/contributions/tacs/tac-210-application-spa-external-dependency-provisioning-probe.json +2 -2
- package/blueprints/application-spa/contributions/tacs/tac-211-application-spa-core-flow-e2e-probe.json +2 -2
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1101.json +22 -8
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1102.json +18 -9
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1103.json +13 -7
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1104.json +15 -10
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1105.json +13 -7
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1106.json +12 -7
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1107.json +25 -6
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1108.json +17 -9
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1109.json +17 -9
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1110.json +19 -10
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1111.json +19 -11
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1112.json +15 -8
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1113.json +15 -8
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1114.json +15 -10
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1115.json +13 -7
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1116.json +15 -9
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1117.json +20 -10
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1118.json +9 -5
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1119.json +11 -6
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1120.json +16 -10
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1121.json +13 -7
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1122.json +13 -7
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1123.json +28 -9
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1124.json +11 -6
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1125.json +14 -8
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1126.json +24 -9
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1127.json +11 -6
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1128.json +11 -7
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1129.json +25 -5
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1130.json +25 -5
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1131.json +19 -9
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1132.json +40 -10
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1133.json +35 -9
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1134.json +23 -3
- package/blueprints/application-spa/contributions/user-stories/application-spa-us-1135.json +19 -3
- package/blueprints/application-spa/docs/topics.md +1 -1
- package/blueprints/application-spa/guide/application-spa.md +2 -2
- package/blueprints/delivery-ci-workflows/CHANGELOG.md +18 -0
- package/blueprints/delivery-ci-workflows/README.md +1 -1
- package/blueprints/delivery-ci-workflows/blueprint.json +62 -1
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-001.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-002.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-003.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-004.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-005.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-006.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-007.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-008.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-009.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-010.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-011.json +6 -2
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-012.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-013.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-014.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-015.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-016.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-017.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-018.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-019.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-020.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-021.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-022.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/requirements/delivery-ci-workflows-req-023.json +4 -0
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6101.json +20 -4
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6102.json +19 -3
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6103.json +20 -4
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6104.json +20 -4
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6105.json +20 -4
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6106.json +20 -4
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6107.json +20 -4
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6108.json +20 -4
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6109.json +12 -5
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6110.json +21 -5
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6111.json +21 -5
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6112.json +35 -5
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6113.json +21 -5
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6114.json +8 -5
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6115.json +21 -5
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6116.json +19 -3
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6117.json +19 -3
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6118.json +21 -5
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6119.json +19 -3
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6120.json +19 -3
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6121.json +23 -6
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6122.json +24 -7
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6123.json +21 -5
- package/blueprints/delivery-ci-workflows/contributions/user-stories/delivery-ci-workflows-us-6124.json +19 -3
- package/blueprints/delivery-ci-workflows/docs/topics.md +1 -1
- package/blueprints/deploy-cloudflare-workers/CHANGELOG.md +17 -2
- package/blueprints/deploy-cloudflare-workers/README.md +2 -2
- package/blueprints/deploy-cloudflare-workers/blueprint.json +4 -4
- package/blueprints/deploy-cloudflare-workers/contributions/adrs/adr-1303-deploy-cloudflare-workers-preview-vs-production.json +1 -1
- package/blueprints/deploy-cloudflare-workers/contributions/adrs/adr-1306-deploy-cloudflare-workers-spa-shape.json +2 -2
- package/blueprints/deploy-cloudflare-workers/contributions/probes/assets-manifest-scan.mjs +25 -7
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-001.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-002.json +6 -2
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-003.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-004.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-005.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-006.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-007.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-008.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-009.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-010.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-011.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-012.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-013.json +5 -1
- package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-014.json +7 -3
- package/blueprints/deploy-cloudflare-workers/contributions/tacs/tac-1301-deploy-cloudflare-workers-deploy-adapter.json +3 -2
- package/blueprints/deploy-cloudflare-workers/contributions/tacs/tac-1302-deploy-cloudflare-workers-wrangler-manifest.json +5 -2
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12101.json +21 -9
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12102.json +23 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12103.json +7 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12104.json +7 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12105.json +11 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12106.json +7 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12107.json +7 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12108.json +15 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12109.json +11 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12110.json +7 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12111.json +11 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12112.json +11 -4
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12113.json +41 -3
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12114.json +17 -2
- package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12115.json +18 -3
- package/blueprints/deploy-cloudflare-workers/docs/topics.md +1 -1
- package/blueprints/deploy-cloudflare-workers/guide/deploy-cloudflare-workers.md +7 -2
- package/blueprints/deploy-hetzner-server/CHANGELOG.md +39 -2
- package/blueprints/deploy-hetzner-server/README.md +12 -12
- package/blueprints/deploy-hetzner-server/blueprint.json +2 -2
- package/blueprints/deploy-hetzner-server/contributions/adrs/adr-3801-deploy-hetzner-server-cloud-host-contract.json +2 -2
- package/blueprints/deploy-hetzner-server/contributions/adrs/adr-3803-deploy-hetzner-server-provisioning-tool.json +2 -2
- package/blueprints/deploy-hetzner-server/contributions/probes/cloud-init-render-lint.mjs +12 -5
- package/blueprints/deploy-hetzner-server/contributions/probes/hcloud-dry-run-mock.mjs +68 -20
- package/blueprints/deploy-hetzner-server/contributions/probes/manifest-schema-validate.mjs +8 -6
- package/blueprints/deploy-hetzner-server/contributions/probes/probe-utils.mjs +7 -1
- package/blueprints/deploy-hetzner-server/contributions/probes/real-account-cloud-init-hardened.mjs +2 -1
- package/blueprints/deploy-hetzner-server/contributions/requirements/deploy-hetzner-server-req-001.json +6 -2
- package/blueprints/deploy-hetzner-server/contributions/requirements/deploy-hetzner-server-req-002.json +6 -2
- package/blueprints/deploy-hetzner-server/contributions/requirements/deploy-hetzner-server-req-003.json +5 -1
- package/blueprints/deploy-hetzner-server/contributions/requirements/deploy-hetzner-server-req-004.json +5 -1
- package/blueprints/deploy-hetzner-server/contributions/requirements/deploy-hetzner-server-req-005.json +6 -2
- package/blueprints/deploy-hetzner-server/contributions/requirements/deploy-hetzner-server-req-006.json +5 -1
- package/blueprints/deploy-hetzner-server/contributions/schemas/hetzner-server.schema.json +1 -1
- package/blueprints/deploy-hetzner-server/contributions/templates/cloud-init.yaml.tmpl +26 -6
- package/blueprints/deploy-hetzner-server/contributions/user-stories/deploy-hetzner-server-us-37101.json +63 -2
- package/blueprints/deploy-hetzner-server/contributions/user-stories/deploy-hetzner-server-us-37102.json +35 -2
- package/blueprints/deploy-hetzner-server/contributions/user-stories/deploy-hetzner-server-us-37103.json +59 -2
- package/blueprints/deploy-hetzner-server/contributions/user-stories/deploy-hetzner-server-us-37104.json +31 -2
- package/blueprints/deploy-hetzner-server/contributions/user-stories/deploy-hetzner-server-us-37105.json +25 -2
- package/blueprints/deploy-hetzner-server/contributions/user-stories/deploy-hetzner-server-us-37106.json +35 -2
- package/blueprints/deploy-hetzner-server/contributions/user-stories/deploy-hetzner-server-us-37107.json +31 -2
- package/blueprints/deploy-hetzner-server/contributions/user-stories/deploy-hetzner-server-us-37108.json +43 -2
- package/blueprints/deploy-hetzner-server/contributions/user-stories/deploy-hetzner-server-us-37109.json +31 -2
- package/blueprints/deploy-hetzner-server/docs/topics.md +3 -3
- package/blueprints/deploy-hetzner-server/guide/deploy-hetzner-server.md +12 -11
- package/blueprints/edge-cloudflare-access/CHANGELOG.md +35 -3
- package/blueprints/edge-cloudflare-access/README.md +2 -2
- package/blueprints/edge-cloudflare-access/blueprint.json +12 -2
- package/blueprints/edge-cloudflare-access/contributions/probes/real-account-gated-url.mjs +10 -2
- package/blueprints/edge-cloudflare-access/contributions/probes/wrangler-seam.mjs +1 -1
- package/blueprints/edge-cloudflare-access/contributions/requirements/edge-cloudflare-access-req-001.json +5 -1
- package/blueprints/edge-cloudflare-access/contributions/requirements/edge-cloudflare-access-req-002.json +5 -1
- package/blueprints/edge-cloudflare-access/contributions/requirements/edge-cloudflare-access-req-003.json +5 -1
- package/blueprints/edge-cloudflare-access/contributions/requirements/edge-cloudflare-access-req-004.json +6 -2
- package/blueprints/edge-cloudflare-access/contributions/requirements/edge-cloudflare-access-req-005.json +5 -1
- package/blueprints/edge-cloudflare-access/contributions/requirements/edge-cloudflare-access-req-006.json +7 -3
- package/blueprints/edge-cloudflare-access/contributions/requirements/edge-cloudflare-access-req-007.json +22 -0
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34101.json +13 -3
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34102.json +63 -2
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34103.json +18 -3
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34104.json +36 -3
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34105.json +13 -3
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34106.json +9 -3
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34107.json +68 -3
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34108.json +5 -3
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34109.json +10 -4
- package/blueprints/edge-cloudflare-access/contributions/user-stories/edge-cloudflare-access-us-34110.json +33 -0
- package/blueprints/edge-cloudflare-access/docs/topics.md +2 -2
- package/blueprints/edge-cloudflare-rate-limiting/CHANGELOG.md +35 -1
- package/blueprints/edge-cloudflare-rate-limiting/README.md +3 -3
- package/blueprints/edge-cloudflare-rate-limiting/blueprint.json +1 -1
- package/blueprints/edge-cloudflare-rate-limiting/contributions/probes/real-account-burst-and-429.mjs +10 -2
- package/blueprints/edge-cloudflare-rate-limiting/contributions/requirements/edge-cloudflare-rate-limiting-req-001.json +6 -2
- package/blueprints/edge-cloudflare-rate-limiting/contributions/requirements/edge-cloudflare-rate-limiting-req-002.json +5 -1
- package/blueprints/edge-cloudflare-rate-limiting/contributions/requirements/edge-cloudflare-rate-limiting-req-003.json +5 -1
- package/blueprints/edge-cloudflare-rate-limiting/contributions/requirements/edge-cloudflare-rate-limiting-req-004.json +6 -2
- package/blueprints/edge-cloudflare-rate-limiting/contributions/requirements/edge-cloudflare-rate-limiting-req-005.json +5 -1
- package/blueprints/edge-cloudflare-rate-limiting/contributions/tacs/tac-3701-edge-cloudflare-rate-limiting-manifest-schema.json +2 -2
- package/blueprints/edge-cloudflare-rate-limiting/contributions/tacs/tac-3703-edge-cloudflare-rate-limiting-drift-audit-runner.json +2 -2
- package/blueprints/edge-cloudflare-rate-limiting/contributions/user-stories/edge-cloudflare-rate-limiting-us-36101.json +27 -3
- package/blueprints/edge-cloudflare-rate-limiting/contributions/user-stories/edge-cloudflare-rate-limiting-us-36102.json +9 -3
- package/blueprints/edge-cloudflare-rate-limiting/contributions/user-stories/edge-cloudflare-rate-limiting-us-36103.json +24 -5
- package/blueprints/edge-cloudflare-rate-limiting/contributions/user-stories/edge-cloudflare-rate-limiting-us-36104.json +88 -3
- package/blueprints/edge-cloudflare-rate-limiting/contributions/user-stories/edge-cloudflare-rate-limiting-us-36105.json +5 -3
- package/blueprints/edge-cloudflare-rate-limiting/contributions/user-stories/edge-cloudflare-rate-limiting-us-36106.json +22 -3
- package/blueprints/edge-cloudflare-rate-limiting/contributions/user-stories/edge-cloudflare-rate-limiting-us-36107.json +16 -5
- package/blueprints/edge-cloudflare-rate-limiting/contributions/user-stories/edge-cloudflare-rate-limiting-us-36108.json +14 -3
- package/blueprints/edge-cloudflare-rate-limiting/docs/topics.md +1 -1
- package/blueprints/edge-cloudflare-rate-limiting/guide/edge-cloudflare-rate-limiting.md +2 -2
- package/blueprints/edge-cloudflare-tunnel/CHANGELOG.md +49 -4
- package/blueprints/edge-cloudflare-tunnel/README.md +20 -21
- package/blueprints/edge-cloudflare-tunnel/blueprint.json +29 -4
- package/blueprints/edge-cloudflare-tunnel/contributions/adrs/adr-4001-edge-cloudflare-tunnel-ingress-bridge-contract.json +4 -4
- package/blueprints/edge-cloudflare-tunnel/contributions/adrs/adr-4002-edge-cloudflare-tunnel-connector-runtime.json +1 -1
- package/blueprints/edge-cloudflare-tunnel/contributions/probes/manifest-schema-validate.mjs +7 -4
- package/blueprints/edge-cloudflare-tunnel/contributions/probes/probe-utils.mjs +13 -2
- package/blueprints/edge-cloudflare-tunnel/contributions/probes/real-account-connector-healthy.mjs +109 -21
- package/blueprints/edge-cloudflare-tunnel/contributions/probes/real-account-tunnel-hostname-routes.mjs +123 -30
- package/blueprints/edge-cloudflare-tunnel/contributions/requirements/edge-cloudflare-tunnel-req-001.json +6 -2
- package/blueprints/edge-cloudflare-tunnel/contributions/requirements/edge-cloudflare-tunnel-req-002.json +5 -1
- package/blueprints/edge-cloudflare-tunnel/contributions/requirements/edge-cloudflare-tunnel-req-003.json +7 -3
- package/blueprints/edge-cloudflare-tunnel/contributions/requirements/edge-cloudflare-tunnel-req-004.json +5 -1
- package/blueprints/edge-cloudflare-tunnel/contributions/requirements/edge-cloudflare-tunnel-req-005.json +5 -1
- package/blueprints/edge-cloudflare-tunnel/contributions/requirements/edge-cloudflare-tunnel-req-006.json +22 -0
- package/blueprints/edge-cloudflare-tunnel/contributions/requirements/edge-cloudflare-tunnel-req-007.json +22 -0
- package/blueprints/edge-cloudflare-tunnel/contributions/tacs/tac-4001-edge-cloudflare-tunnel-connector-shape.json +1 -1
- package/blueprints/edge-cloudflare-tunnel/contributions/tacs/tac-4004-edge-cloudflare-tunnel-zone-and-hostname-apply.json +29 -0
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39101.json +39 -3
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39102.json +23 -4
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39103.json +53 -3
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39104.json +33 -3
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39105.json +25 -3
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39106.json +86 -2
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39107.json +25 -3
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39108.json +35 -2
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39109.json +74 -0
- package/blueprints/edge-cloudflare-tunnel/contributions/user-stories/edge-cloudflare-tunnel-us-39110.json +60 -0
- package/blueprints/edge-cloudflare-tunnel/docs/topics.md +2 -2
- package/blueprints/edge-cloudflare-tunnel/guide/edge-cloudflare-tunnel.md +60 -13
- package/blueprints/edge-cloudflare-turnstile/CHANGELOG.md +33 -1
- package/blueprints/edge-cloudflare-turnstile/README.md +2 -2
- package/blueprints/edge-cloudflare-turnstile/blueprint.json +1 -1
- package/blueprints/edge-cloudflare-turnstile/contributions/requirements/edge-cloudflare-turnstile-req-001.json +6 -2
- package/blueprints/edge-cloudflare-turnstile/contributions/requirements/edge-cloudflare-turnstile-req-002.json +5 -1
- package/blueprints/edge-cloudflare-turnstile/contributions/requirements/edge-cloudflare-turnstile-req-003.json +6 -2
- package/blueprints/edge-cloudflare-turnstile/contributions/requirements/edge-cloudflare-turnstile-req-004.json +5 -1
- package/blueprints/edge-cloudflare-turnstile/contributions/requirements/edge-cloudflare-turnstile-req-005.json +5 -1
- package/blueprints/edge-cloudflare-turnstile/contributions/tacs/tac-3601-edge-cloudflare-turnstile-widget-mount.json +2 -2
- package/blueprints/edge-cloudflare-turnstile/contributions/tacs/tac-3602-edge-cloudflare-turnstile-server-verifier.json +2 -2
- package/blueprints/edge-cloudflare-turnstile/contributions/user-stories/edge-cloudflare-turnstile-us-35101.json +46 -5
- package/blueprints/edge-cloudflare-turnstile/contributions/user-stories/edge-cloudflare-turnstile-us-35102.json +53 -2
- package/blueprints/edge-cloudflare-turnstile/contributions/user-stories/edge-cloudflare-turnstile-us-35103.json +81 -2
- package/blueprints/edge-cloudflare-turnstile/contributions/user-stories/edge-cloudflare-turnstile-us-35104.json +29 -6
- package/blueprints/edge-cloudflare-turnstile/contributions/user-stories/edge-cloudflare-turnstile-us-35105.json +14 -4
- package/blueprints/edge-cloudflare-turnstile/contributions/user-stories/edge-cloudflare-turnstile-us-35106.json +9 -3
- package/blueprints/edge-cloudflare-turnstile/contributions/user-stories/edge-cloudflare-turnstile-us-35107.json +5 -3
- package/blueprints/edge-cloudflare-turnstile/contributions/user-stories/edge-cloudflare-turnstile-us-35108.json +5 -3
- package/blueprints/edge-cloudflare-turnstile/docs/topics.md +1 -1
- package/blueprints/edge-cloudflare-turnstile/probe-packs/edge-cloudflare-turnstile.pack.mjs +27 -5
- package/blueprints/email-smtp-resend/CHANGELOG.md +24 -0
- package/blueprints/email-smtp-resend/README.md +2 -2
- package/blueprints/email-smtp-resend/assets/stub-adapter.md +2 -0
- package/blueprints/email-smtp-resend/blueprint.json +119 -17
- package/blueprints/email-smtp-resend/contributions/requirements/email-smtp-resend-req-001.json +7 -3
- package/blueprints/email-smtp-resend/contributions/requirements/email-smtp-resend-req-002.json +4 -0
- package/blueprints/email-smtp-resend/contributions/requirements/email-smtp-resend-req-003.json +4 -0
- package/blueprints/email-smtp-resend/contributions/requirements/email-smtp-resend-req-004.json +4 -0
- package/blueprints/email-smtp-resend/contributions/requirements/email-smtp-resend-req-005.json +4 -0
- package/blueprints/email-smtp-resend/contributions/requirements/email-smtp-resend-req-006.json +4 -0
- package/blueprints/email-smtp-resend/contributions/tacs/tac-401-email-smtp-resend-send-adapter.json +3 -3
- package/blueprints/email-smtp-resend/contributions/tacs/tac-402-email-smtp-resend-webhook-verifier.json +7 -2
- package/blueprints/email-smtp-resend/contributions/user-stories/email-smtp-resend-us-4101.json +15 -8
- package/blueprints/email-smtp-resend/contributions/user-stories/email-smtp-resend-us-4102.json +27 -7
- package/blueprints/email-smtp-resend/contributions/user-stories/email-smtp-resend-us-4103.json +49 -4
- package/blueprints/email-smtp-resend/contributions/user-stories/email-smtp-resend-us-4104.json +6 -3
- package/blueprints/email-smtp-resend/contributions/user-stories/email-smtp-resend-us-4105.json +21 -5
- package/blueprints/email-smtp-resend/contributions/user-stories/email-smtp-resend-us-4106.json +27 -7
- package/blueprints/email-smtp-resend/docs/topics.md +1 -1
- package/blueprints/email-smtp-resend/guide/email-smtp-resend.md +2 -2
- package/blueprints/jobs-background/CHANGELOG.md +30 -6
- package/blueprints/jobs-background/README.md +8 -8
- package/blueprints/jobs-background/blueprint.json +55 -2
- package/blueprints/jobs-background/contributions/adrs/adr-3102-jobs-background-scheduler-mode.json +1 -1
- package/blueprints/jobs-background/contributions/adrs/adr-3103-jobs-background-requires-applied-capabilities.json +6 -6
- package/blueprints/jobs-background/contributions/probes/fake-clock-cron.mjs +1 -1
- package/blueprints/jobs-background/contributions/probes/probe-utils.mjs +4 -4
- package/blueprints/jobs-background/contributions/requirements/jobs-background-req-001.json +7 -3
- package/blueprints/jobs-background/contributions/requirements/jobs-background-req-002.json +7 -3
- package/blueprints/jobs-background/contributions/requirements/jobs-background-req-003.json +5 -1
- package/blueprints/jobs-background/contributions/requirements/jobs-background-req-004.json +5 -1
- package/blueprints/jobs-background/contributions/requirements/jobs-background-req-005.json +5 -1
- package/blueprints/jobs-background/contributions/requirements/jobs-background-req-006.json +5 -1
- package/blueprints/jobs-background/contributions/tacs/tac-3101-jobs-background-job-definition.json +5 -5
- package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30101.json +20 -3
- package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30102.json +44 -9
- package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30103.json +48 -3
- package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30104.json +63 -3
- package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30105.json +20 -3
- package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30106.json +20 -3
- package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30107.json +20 -3
- package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30108.json +21 -3
- package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30109.json +23 -6
- package/blueprints/jobs-background/docs/topics.md +3 -3
- package/blueprints/jobs-background/guide/jobs-background.md +6 -6
- package/blueprints/messaging-queue-cloudflare/CHANGELOG.md +41 -6
- package/blueprints/messaging-queue-cloudflare/README.md +6 -6
- package/blueprints/messaging-queue-cloudflare/blueprint.json +127 -19
- package/blueprints/messaging-queue-cloudflare/contributions/adrs/adr-3001-messaging-queue-cloudflare-adapter.json +3 -3
- package/blueprints/messaging-queue-cloudflare/contributions/adrs/adr-3002-messaging-queue-cloudflare-delivery-semantics.json +1 -1
- package/blueprints/messaging-queue-cloudflare/contributions/probes/real-account-concurrency-smoke.mjs +192 -37
- package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-001.json +6 -2
- package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-002.json +6 -2
- package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-003.json +5 -1
- package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-004.json +6 -2
- package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-005.json +6 -2
- package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-006.json +6 -2
- package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29101.json +22 -4
- package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29102.json +23 -4
- package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29103.json +20 -3
- package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29104.json +29 -7
- package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29105.json +20 -3
- package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29106.json +25 -4
- package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29107.json +25 -3
- package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29108.json +28 -6
- package/blueprints/messaging-queue-cloudflare/docs/topics.md +3 -3
- package/blueprints/messaging-queue-cloudflare/guide/messaging-queue-cloudflare.md +7 -5
- package/blueprints/object-storage-s3/CHANGELOG.md +32 -4
- package/blueprints/object-storage-s3/README.md +16 -3
- package/blueprints/object-storage-s3/blueprint.json +162 -20
- package/blueprints/object-storage-s3/contributions/adrs/adr-2905-object-storage-s3-hetzner-object-storage-provider.json +30 -0
- package/blueprints/object-storage-s3/contributions/probes/hetzner-object-storage-round-trip.mjs +136 -0
- package/blueprints/object-storage-s3/contributions/probes/run-hetzner-object-storage-round-trip.mjs +11 -0
- package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-001.json +6 -2
- package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-002.json +6 -2
- package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-003.json +5 -1
- package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-004.json +6 -2
- package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-005.json +6 -2
- package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-006.json +6 -2
- package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-101.json +22 -0
- package/blueprints/object-storage-s3/contributions/tacs/tac-2904-object-storage-s3-hetzner-endpoint-helper.json +34 -0
- package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28101.json +36 -4
- package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28102.json +32 -5
- package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28103.json +42 -3
- package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28104.json +22 -4
- package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28105.json +25 -4
- package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28106.json +13 -5
- package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28107.json +10 -4
- package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28108.json +12 -4
- package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28110.json +42 -0
- package/blueprints/object-storage-s3/docs/topics.md +1 -1
- package/blueprints/object-storage-s3/guide/object-storage-s3.md +37 -1
- package/blueprints/observability-essentials/CHANGELOG.md +21 -0
- package/blueprints/observability-essentials/README.md +1 -1
- package/blueprints/observability-essentials/assets/probe-samples/probe-response-baseline.v2.json +17 -0
- package/blueprints/observability-essentials/blueprint.json +32 -1
- package/blueprints/observability-essentials/contributions/adrs/adr-801-observability-essentials-health-probes.json +1 -1
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-001.json +4 -0
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-002.json +4 -0
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-003.json +4 -0
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-004.json +4 -0
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-005.json +4 -0
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-006.json +6 -2
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-007.json +7 -3
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-008.json +4 -0
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-009.json +4 -0
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-010.json +4 -0
- package/blueprints/observability-essentials/contributions/tacs/tac-802-observability-essentials-readiness-probe.json +6 -1
- package/blueprints/observability-essentials/contributions/tacs/tac-803-observability-essentials-status-page.json +1 -1
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7101.json +25 -7
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7102.json +9 -5
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7103.json +51 -6
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7104.json +7 -4
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7105.json +6 -3
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7106.json +37 -6
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7107.json +18 -11
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7108.json +6 -3
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7109.json +7 -4
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7110.json +8 -5
- package/blueprints/observability-essentials/docs/topics.md +2 -2
- package/blueprints/observability-essentials/guide/observability-essentials.md +1 -1
- package/blueprints/observability-logging/CHANGELOG.md +19 -4
- package/blueprints/observability-logging/README.md +1 -1
- package/blueprints/observability-logging/blueprint.json +76 -28
- package/blueprints/observability-logging/contributions/adrs/adr-1605-observability-logging-serialisation-refusal.json +25 -0
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-001.json +10 -3
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-002.json +8 -1
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-003.json +8 -1
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-004.json +8 -1
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-005.json +8 -1
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-006.json +16 -0
- package/blueprints/observability-logging/contributions/tacs/tac-1601-observability-logging-logger-factory.json +4 -4
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15101.json +62 -8
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15102.json +11 -6
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15103.json +37 -5
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15104.json +35 -4
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15105.json +24 -6
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15106.json +22 -4
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15107.json +34 -3
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15108.json +21 -3
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15109.json +71 -0
- package/blueprints/observability-logging/docs/topics.md +1 -1
- package/blueprints/observability-probe-endpoints/CHANGELOG.md +17 -0
- package/blueprints/observability-probe-endpoints/README.md +1 -1
- package/blueprints/observability-probe-endpoints/blueprint.json +40 -1
- package/blueprints/observability-probe-endpoints/contributions/requirements/observability-probe-endpoints-req-001.json +6 -2
- package/blueprints/observability-probe-endpoints/contributions/requirements/observability-probe-endpoints-req-002.json +4 -0
- package/blueprints/observability-probe-endpoints/contributions/requirements/observability-probe-endpoints-req-003.json +4 -0
- package/blueprints/observability-probe-endpoints/contributions/requirements/observability-probe-endpoints-req-004.json +4 -0
- package/blueprints/observability-probe-endpoints/contributions/requirements/observability-probe-endpoints-req-005.json +4 -0
- package/blueprints/observability-probe-endpoints/contributions/requirements/observability-probe-endpoints-req-006.json +4 -0
- package/blueprints/observability-probe-endpoints/contributions/requirements/observability-probe-endpoints-req-007.json +4 -0
- package/blueprints/observability-probe-endpoints/contributions/requirements/observability-probe-endpoints-req-008.json +4 -0
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14101.json +30 -9
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14102.json +24 -6
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14103.json +6 -3
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14104.json +9 -6
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14105.json +49 -4
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14106.json +9 -6
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14107.json +12 -8
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14108.json +6 -3
- package/blueprints/observability-probe-endpoints/docs/topics.md +2 -2
- package/blueprints/observability-probe-endpoints/guide/observability-probe-endpoints.md +3 -6
- package/blueprints/persistence-data-d1/CHANGELOG.md +19 -0
- package/blueprints/persistence-data-d1/README.md +1 -1
- package/blueprints/persistence-data-d1/assets/batch-usage/batch-atomicity-example.md +2 -0
- package/blueprints/persistence-data-d1/assets/facade-shape/facade-module-shape.md +2 -0
- package/blueprints/persistence-data-d1/blueprint.json +106 -22
- package/blueprints/persistence-data-d1/contributions/adrs/adr-1404-persistence-data-d1-store-boundary.json +4 -4
- package/blueprints/persistence-data-d1/contributions/requirements/persistence-data-d1-req-001.json +5 -1
- package/blueprints/persistence-data-d1/contributions/requirements/persistence-data-d1-req-002.json +5 -1
- package/blueprints/persistence-data-d1/contributions/requirements/persistence-data-d1-req-003.json +5 -1
- package/blueprints/persistence-data-d1/contributions/requirements/persistence-data-d1-req-004.json +7 -3
- package/blueprints/persistence-data-d1/contributions/requirements/persistence-data-d1-req-005.json +5 -1
- package/blueprints/persistence-data-d1/contributions/requirements/persistence-data-d1-req-006.json +5 -1
- package/blueprints/persistence-data-d1/contributions/requirements/persistence-data-d1-req-007.json +5 -1
- package/blueprints/persistence-data-d1/contributions/user-stories/persistence-data-d1-us-13101.json +35 -4
- package/blueprints/persistence-data-d1/contributions/user-stories/persistence-data-d1-us-13102.json +25 -4
- package/blueprints/persistence-data-d1/contributions/user-stories/persistence-data-d1-us-13103.json +11 -4
- package/blueprints/persistence-data-d1/contributions/user-stories/persistence-data-d1-us-13104.json +13 -6
- package/blueprints/persistence-data-d1/contributions/user-stories/persistence-data-d1-us-13105.json +11 -4
- package/blueprints/persistence-data-d1/contributions/user-stories/persistence-data-d1-us-13106.json +7 -4
- package/blueprints/persistence-data-d1/contributions/user-stories/persistence-data-d1-us-13107.json +23 -3
- package/blueprints/persistence-data-d1/docs/topics.md +1 -1
- package/blueprints/persistence-data-postgres/CHANGELOG.md +18 -2
- package/blueprints/persistence-data-postgres/README.md +1 -1
- package/blueprints/persistence-data-postgres/blueprint.json +201 -23
- package/blueprints/persistence-data-postgres/contributions/adrs/adr-2801-persistence-data-postgres-driver.json +1 -1
- package/blueprints/persistence-data-postgres/contributions/adrs/adr-2805-persistence-data-postgres-connection-pool-posture.json +1 -1
- package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-001.json +6 -2
- package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-002.json +6 -2
- package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-003.json +5 -1
- package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-004.json +7 -3
- package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-005.json +6 -2
- package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-006.json +6 -2
- package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-007.json +7 -3
- package/blueprints/persistence-data-postgres/contributions/tacs/tac-2802-persistence-data-postgres-migration-runner.json +2 -2
- package/blueprints/persistence-data-postgres/contributions/tacs/tac-2803-persistence-data-postgres-transaction-helper.json +5 -5
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27101.json +22 -4
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27102.json +118 -3
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27103.json +20 -3
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27104.json +26 -5
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27105.json +62 -3
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27106.json +20 -3
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27107.json +20 -3
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27108.json +20 -3
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27109.json +20 -3
- package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27110.json +48 -3
- package/blueprints/persistence-data-postgres/docs/topics.md +1 -1
- package/blueprints/persistence-data-sqlite/CHANGELOG.md +14 -0
- package/blueprints/persistence-data-sqlite/blueprint.json +146 -30
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-001.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-002.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-003.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-004.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-005.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-006.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-007.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-008.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-009.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-010.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/requirements/persistence-data-sqlite-req-011.json +5 -1
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5101.json +35 -4
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5102.json +7 -4
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5103.json +19 -3
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5104.json +21 -4
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5105.json +7 -4
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5106.json +11 -4
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5107.json +7 -4
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5108.json +7 -4
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5109.json +11 -8
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5110.json +23 -3
- package/blueprints/persistence-data-sqlite/contributions/user-stories/persistence-data-sqlite-us-5111.json +19 -3
- package/blueprints/persistence-data-sqlite/docs/topics.md +1 -1
- package/blueprints/persistence-data-sqlite/guide/persistence-data-sqlite.md +1 -1
- package/blueprints/platform-cloudflare-cron-triggers/CHANGELOG.md +40 -2
- package/blueprints/platform-cloudflare-cron-triggers/blueprint.json +78 -17
- package/blueprints/platform-cloudflare-cron-triggers/contributions/adrs/adr-3301-platform-cloudflare-cron-triggers-scheduled-trigger-contract.json +2 -2
- package/blueprints/platform-cloudflare-cron-triggers/contributions/probes/real-account-scheduled-smoke.mjs +24 -3
- package/blueprints/platform-cloudflare-cron-triggers/contributions/probes/skew-tolerance.mjs +1 -1
- package/blueprints/platform-cloudflare-cron-triggers/contributions/requirements/platform-cloudflare-cron-triggers-req-001.json +6 -2
- package/blueprints/platform-cloudflare-cron-triggers/contributions/requirements/platform-cloudflare-cron-triggers-req-002.json +5 -1
- package/blueprints/platform-cloudflare-cron-triggers/contributions/requirements/platform-cloudflare-cron-triggers-req-003.json +5 -1
- package/blueprints/platform-cloudflare-cron-triggers/contributions/requirements/platform-cloudflare-cron-triggers-req-004.json +6 -2
- package/blueprints/platform-cloudflare-cron-triggers/contributions/tacs/tac-3301-platform-cloudflare-cron-triggers-scheduled-handler.json +1 -1
- package/blueprints/platform-cloudflare-cron-triggers/contributions/user-stories/platform-cloudflare-cron-triggers-us-32101.json +86 -5
- package/blueprints/platform-cloudflare-cron-triggers/contributions/user-stories/platform-cloudflare-cron-triggers-us-32102.json +69 -5
- package/blueprints/platform-cloudflare-cron-triggers/contributions/user-stories/platform-cloudflare-cron-triggers-us-32103.json +51 -4
- package/blueprints/platform-cloudflare-cron-triggers/contributions/user-stories/platform-cloudflare-cron-triggers-us-32104.json +65 -4
- package/blueprints/platform-cloudflare-cron-triggers/contributions/user-stories/platform-cloudflare-cron-triggers-us-32105.json +68 -5
- package/blueprints/platform-cloudflare-cron-triggers/contributions/user-stories/platform-cloudflare-cron-triggers-us-32106.json +62 -3
- package/blueprints/platform-cloudflare-cron-triggers/contributions/user-stories/platform-cloudflare-cron-triggers-us-32107.json +56 -3
- package/blueprints/platform-cloudflare-cron-triggers/docs/topics.md +4 -4
- package/blueprints/platform-cloudflare-durable-objects/CHANGELOG.md +57 -2
- package/blueprints/platform-cloudflare-durable-objects/README.md +6 -6
- package/blueprints/platform-cloudflare-durable-objects/blueprint.json +3 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/adrs/adr-3401-platform-cloudflare-durable-objects-single-cell-contract.json +1 -1
- package/blueprints/platform-cloudflare-durable-objects/contributions/adrs/adr-3402-platform-cloudflare-durable-objects-websocket-hub-contract.json +1 -1
- package/blueprints/platform-cloudflare-durable-objects/contributions/probes/namespace-facade-ready.mjs +3 -3
- package/blueprints/platform-cloudflare-durable-objects/contributions/probes/probe-utils.mjs +28 -14
- package/blueprints/platform-cloudflare-durable-objects/contributions/probes/real-account-storage-smoke.mjs +139 -27
- package/blueprints/platform-cloudflare-durable-objects/contributions/probes/sole-reader-scan.mjs +40 -39
- package/blueprints/platform-cloudflare-durable-objects/contributions/probes/storage-round-trip.mjs +26 -16
- package/blueprints/platform-cloudflare-durable-objects/contributions/probes/websocket-hub-broadcast.mjs +31 -34
- package/blueprints/platform-cloudflare-durable-objects/contributions/probes/wrangler-seam.mjs +11 -5
- package/blueprints/platform-cloudflare-durable-objects/contributions/requirements/platform-cloudflare-durable-objects-req-001.json +5 -1
- package/blueprints/platform-cloudflare-durable-objects/contributions/requirements/platform-cloudflare-durable-objects-req-002.json +6 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/requirements/platform-cloudflare-durable-objects-req-003.json +5 -1
- package/blueprints/platform-cloudflare-durable-objects/contributions/requirements/platform-cloudflare-durable-objects-req-004.json +5 -1
- package/blueprints/platform-cloudflare-durable-objects/contributions/requirements/platform-cloudflare-durable-objects-req-005.json +6 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/requirements/platform-cloudflare-durable-objects-req-006.json +6 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/requirements/platform-cloudflare-durable-objects-req-007.json +5 -1
- package/blueprints/platform-cloudflare-durable-objects/contributions/requirements/platform-cloudflare-durable-objects-req-008.json +5 -1
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33101.json +73 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33102.json +59 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33103.json +77 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33104.json +75 -6
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33105.json +73 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33106.json +49 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33107.json +45 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33108.json +84 -3
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33109.json +45 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33110.json +59 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33111.json +45 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33112.json +53 -2
- package/blueprints/platform-cloudflare-durable-objects/contributions/user-stories/platform-cloudflare-durable-objects-us-33113.json +68 -5
- package/blueprints/platform-cloudflare-durable-objects/docs/topics.md +2 -2
- package/blueprints/platform-cloudflare-durable-objects/guide/platform-cloudflare-durable-objects.md +9 -9
- package/blueprints/platform-cloudflare-kv/CHANGELOG.md +83 -2
- package/blueprints/platform-cloudflare-kv/README.md +40 -14
- package/blueprints/platform-cloudflare-kv/blueprint.json +115 -20
- package/blueprints/platform-cloudflare-kv/contributions/adrs/adr-3201-platform-cloudflare-kv-key-value-store-contract.json +3 -3
- package/blueprints/platform-cloudflare-kv/contributions/probes/cache-aside-hit-then-miss.mjs +26 -26
- package/blueprints/platform-cloudflare-kv/contributions/probes/event-secrecy.mjs +49 -31
- package/blueprints/platform-cloudflare-kv/contributions/probes/facade-round-trip.mjs +58 -16
- package/blueprints/platform-cloudflare-kv/contributions/probes/list-with-prefix.mjs +6 -5
- package/blueprints/platform-cloudflare-kv/contributions/probes/real-account-eventual-consistency-smoke.mjs +165 -66
- package/blueprints/platform-cloudflare-kv/contributions/requirements/platform-cloudflare-kv-req-001.json +6 -2
- package/blueprints/platform-cloudflare-kv/contributions/requirements/platform-cloudflare-kv-req-002.json +5 -1
- package/blueprints/platform-cloudflare-kv/contributions/requirements/platform-cloudflare-kv-req-003.json +5 -1
- package/blueprints/platform-cloudflare-kv/contributions/requirements/platform-cloudflare-kv-req-004.json +6 -2
- package/blueprints/platform-cloudflare-kv/contributions/requirements/platform-cloudflare-kv-req-005.json +7 -3
- package/blueprints/platform-cloudflare-kv/contributions/requirements/platform-cloudflare-kv-req-006.json +22 -0
- package/blueprints/platform-cloudflare-kv/contributions/requirements/platform-cloudflare-kv-req-007.json +22 -0
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31101.json +59 -2
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31102.json +45 -2
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31103.json +73 -3
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31104.json +67 -2
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31105.json +59 -2
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31106.json +45 -2
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31107.json +45 -2
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31108.json +45 -2
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31109.json +92 -0
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31110.json +88 -0
- package/blueprints/platform-cloudflare-kv/contributions/user-stories/platform-cloudflare-kv-us-31111.json +89 -0
- package/blueprints/platform-cloudflare-kv/docs/topics.md +2 -2
- package/blueprints/platform-cloudflare-kv/guide/platform-cloudflare-kv.md +2 -2
- package/blueprints/platform-docker-compose-host/CHANGELOG.md +37 -3
- package/blueprints/platform-docker-compose-host/README.md +7 -7
- package/blueprints/platform-docker-compose-host/blueprint.json +23 -6
- package/blueprints/platform-docker-compose-host/contributions/adrs/adr-3901-platform-docker-compose-host-contract.json +3 -3
- package/blueprints/platform-docker-compose-host/contributions/adrs/adr-3902-platform-docker-compose-host-reverse-proxy.json +4 -4
- package/blueprints/platform-docker-compose-host/contributions/adrs/adr-3903-platform-docker-compose-host-reject-coolify.json +2 -2
- package/blueprints/platform-docker-compose-host/contributions/adrs/adr-3904-platform-docker-compose-host-log-driver.json +2 -2
- package/blueprints/platform-docker-compose-host/contributions/probes/probe-utils.mjs +1 -1
- package/blueprints/platform-docker-compose-host/contributions/probes/real-account-minimal-stack-up.mjs +2 -3
- package/blueprints/platform-docker-compose-host/contributions/probes/real-account-reload-burst.mjs +1 -1
- package/blueprints/platform-docker-compose-host/contributions/requirements/platform-docker-compose-host-req-001.json +6 -2
- package/blueprints/platform-docker-compose-host/contributions/requirements/platform-docker-compose-host-req-002.json +5 -1
- package/blueprints/platform-docker-compose-host/contributions/requirements/platform-docker-compose-host-req-003.json +6 -2
- package/blueprints/platform-docker-compose-host/contributions/requirements/platform-docker-compose-host-req-004.json +5 -1
- package/blueprints/platform-docker-compose-host/contributions/requirements/platform-docker-compose-host-req-005.json +6 -2
- package/blueprints/platform-docker-compose-host/contributions/requirements/platform-docker-compose-host-req-006.json +6 -2
- package/blueprints/platform-docker-compose-host/contributions/requirements/platform-docker-compose-host-req-007.json +22 -0
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38101.json +73 -2
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38102.json +67 -2
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38103.json +59 -2
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38104.json +75 -2
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38105.json +49 -2
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38106.json +45 -2
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38107.json +49 -2
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38108.json +49 -2
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38109.json +57 -2
- package/blueprints/platform-docker-compose-host/contributions/user-stories/platform-docker-compose-host-us-38110.json +92 -0
- package/blueprints/platform-docker-compose-host/docs/topics.md +4 -4
- package/blueprints/platform-docker-compose-host/guide/platform-docker-compose-host.md +6 -6
- package/blueprints/security-auth-clerk/CHANGELOG.md +24 -4
- package/blueprints/security-auth-clerk/README.md +1 -1
- package/blueprints/security-auth-clerk/blueprint.json +21 -1
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-001.json +6 -2
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-002.json +5 -1
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-003.json +6 -2
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-004.json +6 -2
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-005.json +5 -2
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-006.json +5 -1
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-007.json +4 -1
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-008.json +4 -1
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-009.json +4 -1
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-010.json +22 -0
- package/blueprints/security-auth-clerk/contributions/requirements/security-auth-clerk-req-011.json +22 -0
- package/blueprints/security-auth-clerk/contributions/tacs/tac-1001-security-auth-clerk-middleware.json +14 -4
- package/blueprints/security-auth-clerk/contributions/tacs/tac-1003-security-auth-clerk-session-verifier.json +7 -1
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9101.json +6 -3
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9102.json +19 -3
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9103.json +6 -3
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9104.json +6 -3
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9105.json +4 -2
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9106.json +4 -2
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9107.json +4 -2
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9108.json +13 -3
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9109.json +8 -2
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9110.json +4 -2
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9111.json +4 -2
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9112.json +102 -0
- package/blueprints/security-auth-clerk/contributions/user-stories/security-auth-clerk-us-9113.json +103 -0
- package/blueprints/security-auth-clerk/docs/topics.md +1 -1
- package/blueprints/security-auth-keycloak/CHANGELOG.md +23 -4
- package/blueprints/security-auth-keycloak/README.md +1 -1
- package/blueprints/security-auth-keycloak/blueprint.json +101 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-001.json +5 -2
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-002.json +5 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-003.json +5 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-004.json +5 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-005.json +6 -2
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-006.json +6 -2
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-007.json +4 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-008.json +4 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-009.json +4 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-010.json +4 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-011.json +5 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-012.json +4 -1
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-013.json +22 -0
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-014.json +22 -0
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-015.json +22 -0
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-016.json +22 -0
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-017.json +22 -0
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-018.json +22 -0
- package/blueprints/security-auth-keycloak/contributions/requirements/security-auth-keycloak-req-019.json +22 -0
- package/blueprints/security-auth-keycloak/contributions/tacs/tac-1201-security-auth-keycloak-discovery-client.json +4 -2
- package/blueprints/security-auth-keycloak/contributions/tacs/tac-1202-security-auth-keycloak-jwt-verifier.json +8 -2
- package/blueprints/security-auth-keycloak/contributions/tacs/tac-1203-security-auth-keycloak-introspection-client.json +8 -2
- package/blueprints/security-auth-keycloak/contributions/tacs/tac-1204-security-auth-keycloak-provider-router.json +3 -1
- package/blueprints/security-auth-keycloak/contributions/tacs/tac-1205-security-auth-keycloak-role-adapter.json +2 -1
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11101.json +6 -3
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11102.json +10 -3
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11103.json +12 -2
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11104.json +8 -2
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11105.json +6 -3
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11106.json +18 -3
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11107.json +6 -3
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11108.json +6 -3
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11109.json +4 -2
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11110.json +6 -3
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11111.json +14 -3
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11112.json +4 -2
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11113.json +4 -2
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11114.json +72 -0
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11115.json +88 -0
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11116.json +117 -0
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11117.json +117 -0
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11118.json +117 -0
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11119.json +117 -0
- package/blueprints/security-auth-keycloak/contributions/user-stories/security-auth-keycloak-us-11120.json +103 -0
- package/blueprints/security-auth-keycloak/docs/topics.md +1 -1
- package/blueprints/security-auth-keycloak/guide/security-auth-keycloak.md +1 -1
- package/blueprints/security-auth-magic-link/CHANGELOG.md +19 -3
- package/blueprints/security-auth-magic-link/README.md +1 -1
- package/blueprints/security-auth-magic-link/blueprint.json +1 -1
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-001.json +4 -1
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-002.json +5 -1
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-003.json +6 -2
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-004.json +5 -1
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-005.json +5 -1
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-006.json +4 -1
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-007.json +4 -1
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-008.json +5 -1
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-009.json +5 -1
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-010.json +6 -2
- package/blueprints/security-auth-magic-link/contributions/requirements/security-auth-magic-link-req-011.json +6 -2
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3101.json +10 -5
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3102.json +8 -4
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3103.json +6 -3
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3104.json +8 -4
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3105.json +6 -3
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3106.json +6 -3
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3107.json +8 -4
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3108.json +6 -3
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3109.json +6 -3
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3110.json +6 -3
- package/blueprints/security-auth-magic-link/contributions/user-stories/security-auth-magic-link-us-3111.json +14 -3
- package/blueprints/security-auth-magic-link/docs/topics.md +1 -1
- package/blueprints/security-auth-magic-link/guide/security-auth-magic-link.md +1 -1
- package/blueprints/security-auth-oauth2/CHANGELOG.md +21 -4
- package/blueprints/security-auth-oauth2/README.md +1 -1
- package/blueprints/security-auth-oauth2/blueprint.json +33 -2
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-001.json +5 -2
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-002.json +5 -1
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-003.json +5 -1
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-004.json +4 -1
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-005.json +5 -1
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-006.json +6 -2
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-007.json +4 -1
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-008.json +6 -2
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-009.json +5 -1
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-010.json +4 -1
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-011.json +22 -0
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-012.json +22 -0
- package/blueprints/security-auth-oauth2/contributions/requirements/security-auth-oauth2-req-013.json +22 -0
- package/blueprints/security-auth-oauth2/contributions/tacs/tac-1102-security-auth-oauth2-provider-adapter.json +2 -1
- package/blueprints/security-auth-oauth2/contributions/tacs/tac-1103-security-auth-oauth2-session-bridge.json +9 -2
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10101.json +6 -3
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10102.json +6 -3
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10103.json +4 -2
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10104.json +4 -2
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10105.json +8 -4
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10106.json +6 -3
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10107.json +6 -3
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10108.json +6 -3
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10109.json +4 -2
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10110.json +4 -2
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10111.json +17 -2
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10112.json +82 -0
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10113.json +68 -0
- package/blueprints/security-auth-oauth2/contributions/user-stories/security-auth-oauth2-us-10114.json +88 -0
- package/blueprints/security-auth-oauth2/docs/topics.md +1 -1
- package/blueprints/security-secrets-management/CHANGELOG.md +14 -2
- package/blueprints/security-secrets-management/blueprint.json +168 -31
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-001.json +5 -1
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-002.json +6 -2
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-003.json +6 -2
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-004.json +5 -1
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-005.json +6 -2
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-006.json +5 -1
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-007.json +5 -1
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-008.json +5 -1
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-009.json +5 -1
- package/blueprints/security-secrets-management/contributions/requirements/security-secrets-management-req-010.json +6 -3
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8101.json +6 -3
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8102.json +6 -3
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8103.json +4 -2
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8104.json +6 -3
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8105.json +8 -4
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8106.json +6 -3
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8107.json +6 -3
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8108.json +6 -3
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8109.json +6 -3
- package/blueprints/security-secrets-management/contributions/user-stories/security-secrets-management-us-8110.json +6 -3
- package/blueprints/security-secrets-management/docs/topics.md +1 -1
- package/fixtures/canary-manifest.json +9 -9
- package/guidance/harness-template.md +67 -0
- package/guidance/managed/agent-instructions-block.hash +1 -1
- package/guidance/managed/agent-instructions-block.md +67 -0
- package/package.json +2 -2
- package/rcf/code-nodes/cn-500.json +12 -0
- package/rcf/code-nodes/cn-510.json +12 -0
- package/rcf/code-nodes/cn-520.json +14 -0
- package/rcf/code-nodes/cn-521.json +12 -0
- package/rcf/code-nodes/cn-522.json +13 -0
- package/rcf/code-nodes/cn-523.json +12 -0
- package/rcf/code-nodes/cn-524.json +14 -0
- package/rcf/code-nodes/cn-525.json +12 -0
- package/rcf/code-nodes/cn-526.json +14 -0
- package/rcf/fbs/fbs-160.json +15 -0
- package/rcf/fbs/fbs-165.json +15 -0
- package/rcf/fbs/fbs-170.json +16 -0
- package/rcf/fbs/fbs-171.json +16 -0
- package/rcf/fbs/fbs-172.json +15 -0
- package/rcf/fbs/fbs-173.json +17 -0
- package/rcf/fbs/fbs-174.json +17 -0
- package/rcf/requirements/req-140.json +149 -0
- package/rcf/requirements/req-145.json +53 -0
- package/rcf/requirements/req-150.json +20 -0
- package/rcf/requirements/req-151.json +85 -0
- package/rcf/requirements/req-152.json +20 -0
- package/rcf/requirements/req-153.json +59 -0
- package/rcf/requirements/req-154.json +44 -0
- package/rcf/test-suites/ts-050.json +1 -1
- package/rcf/test-suites/ts-052.json +1 -1
- package/rcf/test-suites/ts-053.json +2 -2
- package/rcf/test-suites/ts-054.json +2 -2
- package/rcf/test-suites/ts-055.json +2 -2
- package/rcf/test-suites/ts-056.json +4 -4
- package/rcf/test-suites/ts-057.json +2 -2
- package/rcf/test-suites/ts-071.json +2 -2
- package/rcf/test-suites/ts-086.json +2 -2
- package/rcf/test-suites/ts-170.json +22 -0
- package/rcf/test-suites/ts-175.json +22 -0
- package/rcf/test-suites/ts-180.json +30 -0
- package/rcf/test-suites/ts-181.json +30 -0
- package/rcf/test-suites/ts-182.json +22 -0
- package/rcf/test-suites/ts-183.json +38 -0
- package/rcf/test-suites/ts-184.json +38 -0
- package/rcf/user-stories/us-14001.json +21 -0
- package/rcf/user-stories/us-14501.json +24 -0
- package/rcf/user-stories/us-15001.json +26 -0
- package/rcf/user-stories/us-15101.json +26 -0
- package/rcf/user-stories/us-15201.json +21 -0
- package/rcf/user-stories/us-15301.json +31 -0
- package/rcf/user-stories/us-15401.json +31 -0
- package/rcf/user-stories/us-7701.json +3 -3
- package/releases/releases.yaml +21 -1
- package/src/blueprint/apply.js +64 -0
- package/src/blueprint/consistency-lint.js +432 -0
- package/src/blueprint/disposition-ledger.js +224 -0
- package/src/blueprint/dispositions.js +44 -0
- package/src/blueprint/index.js +19 -0
- package/src/browser-verify/manifest-writer.js +53 -2
- package/src/browser-verify/pack-runner.js +18 -0
- package/src/cli/blueprint.js +103 -0
- package/src/cli/view.js +22 -11
- package/src/setup/identity-seed.js +18 -0
|
@@ -16,12 +16,63 @@
|
|
|
16
16
|
"when": "the probe runs",
|
|
17
17
|
"then": "with the account: the round-trip returns and the probe passes. Without the account: accountBoundSkipped:true and exit 0.",
|
|
18
18
|
"testable": true,
|
|
19
|
-
"scope": "runtime"
|
|
19
|
+
"scope": "runtime",
|
|
20
|
+
"disposition": "fixed"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"id": "AC-33112-2",
|
|
24
|
+
"description": "Bounded-wait: the real-account probe caps its round-trip attempts at 30 seconds. If the storage.put or storage.get calls do not settle within the cap, the probe returns aggregateVerdict:\"fail\" with reason CF_DO_ROUND_TRIP_TIMEOUT and the observed elapsed millis.",
|
|
25
|
+
"given": "a real-account probe whose CF API calls hang past 30 seconds",
|
|
26
|
+
"when": "the probe caps the wait",
|
|
27
|
+
"then": "aggregateVerdict is \"fail\" with reason CF_DO_ROUND_TRIP_TIMEOUT and elapsed millis",
|
|
28
|
+
"testable": true,
|
|
29
|
+
"scope": "deployed",
|
|
30
|
+
"disposition": "fixed",
|
|
31
|
+
"ownerRef": {
|
|
32
|
+
"tacId": "TAC-3401-platform-cloudflare-durable-objects-namespace-facade",
|
|
33
|
+
"field": "interfaces.createDoFacade"
|
|
34
|
+
},
|
|
35
|
+
"vendorCitation": {
|
|
36
|
+
"url": "https://developers.cloudflare.com/durable-objects/",
|
|
37
|
+
"verifiedOn": "2026-09-09"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"id": "AC-33112-3",
|
|
42
|
+
"description": "Partial env-var configuration: with CI_HAS_CLOUDFLARE_ACCOUNT=true but CF_API_TOKEN missing, the probe refuses before any API call with a named error kind CF_MISSING_TOKEN naming the missing variable. Same for CF_ACCOUNT_ID or CF_DO_NAMESPACE_ID.",
|
|
43
|
+
"given": "CI_HAS_CLOUDFLARE_ACCOUNT=true with CF_API_TOKEN unset",
|
|
44
|
+
"when": "the probe runs",
|
|
45
|
+
"then": "the probe refuses with CF_MISSING_TOKEN naming the missing variable",
|
|
46
|
+
"testable": true,
|
|
47
|
+
"scope": "deployed",
|
|
48
|
+
"disposition": "fixed",
|
|
49
|
+
"ownerRef": {
|
|
50
|
+
"tacId": "TAC-3401-platform-cloudflare-durable-objects-namespace-facade",
|
|
51
|
+
"field": "interfaces.createDoFacade"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"id": "AC-33112-4",
|
|
56
|
+
"description": "Non-2xx API response: if the Cloudflare API returns a 401, 403 or 5xx during the round-trip, the probe surfaces the observed HTTP status and response body, and returns aggregateVerdict:\"fail\" with reason CF_DO_HTTP_ERROR. 4xx is not retried; 5xx retries once.",
|
|
57
|
+
"given": "a real-account probe where the DO API returns 403",
|
|
58
|
+
"when": "the probe attempts the round-trip",
|
|
59
|
+
"then": "aggregateVerdict is \"fail\" with reason CF_DO_HTTP_ERROR, HTTP status and body",
|
|
60
|
+
"testable": true,
|
|
61
|
+
"scope": "deployed",
|
|
62
|
+
"disposition": "fixed",
|
|
63
|
+
"ownerRef": {
|
|
64
|
+
"tacId": "TAC-3401-platform-cloudflare-durable-objects-namespace-facade",
|
|
65
|
+
"field": "interfaces.createDoFacade"
|
|
66
|
+
},
|
|
67
|
+
"vendorCitation": {
|
|
68
|
+
"url": "https://developers.cloudflare.com/durable-objects/platform/limits/",
|
|
69
|
+
"verifiedOn": "2026-09-09"
|
|
70
|
+
}
|
|
20
71
|
}
|
|
21
72
|
],
|
|
22
73
|
"tacIds": [
|
|
23
74
|
"TAC-3401-platform-cloudflare-durable-objects-namespace-facade"
|
|
24
75
|
],
|
|
25
76
|
"createdAt": "2026-09-07T14:00:00.000Z",
|
|
26
|
-
"updatedAt": "2026-09-
|
|
77
|
+
"updatedAt": "2026-09-09T22:00:00.000Z"
|
|
27
78
|
}
|
|
@@ -11,15 +11,78 @@
|
|
|
11
11
|
"acceptanceCriteria": [
|
|
12
12
|
{
|
|
13
13
|
"id": "AC-33113-1",
|
|
14
|
-
"description": "The wrangler-seam probe, when the fixture has been prepared with `pnpm install --ignore-workspace` so the wrangler devDependency is on the tree, spawns `wrangler dev --local --port 0` from the cf-platform fixture, waits bounded 45 seconds for the CLI to bind, then (a) issues two concurrent POST /cell/<id>/increment requests against a fetch route in src/index.mjs that calls createDoFacade({env,
|
|
14
|
+
"description": "The wrangler-seam probe, when the fixture has been prepared with `pnpm install --ignore-workspace` so the wrangler devDependency is on the tree, spawns `wrangler dev --local --port 0` from the cf-platform fixture, waits bounded 45 seconds for the CLI to bind, then (a) issues two concurrent POST /cell/<id>/increment requests against a fetch route in src/index.mjs that calls createDoFacade({env, sink}).cellFetch(<id>, request), asserting the two responses observe per-instance serialisation (sorted counters == [1, 2], sorted witnesses == [0, 1], each request read the other's write) and (b) opens one WebSocket upgrade against /hub/<id>/connect via createDoFacade({env, sink}).hubFetch(<id>, request), asserting one broadcast frame arrives on connect with payload 'hello-from-hub'. The probe kills wrangler cleanly on exit. Warn semantics per section 3.1 pass-with-skip: if wrangler is not installed or fails to bind within the cap, the probe returns aggregateVerdict warn (never fail); a handler thrown at the workerd boundary is a genuine fail. The additional result on the same probe run covers AC-33108-1 by grepping the fixture wrangler.toml for the two [[durable_objects.bindings]] pairs and the [[migrations]] tag/new_sqlite_classes pair; the grep result is deterministic and does not require wrangler.",
|
|
15
15
|
"given": "the cf-platform fixture with the wrangler devDependency installed and the shipped DO classes exported from src/index.mjs",
|
|
16
16
|
"when": "the wrangler-seam probe runs",
|
|
17
|
-
"then": "wrangler dev binds; two concurrent increments through env.CELL observe per-instance serialisation; one WebSocket upgrade through env.HUB receives a broadcast frame; the wrangler.toml grep confirms both binding pairs and the migrations tag/
|
|
17
|
+
"then": "wrangler dev binds; two concurrent increments through env.CELL observe per-instance serialisation; one WebSocket upgrade through env.HUB receives a broadcast frame; the wrangler.toml grep confirms both binding pairs and the migrations tag/new_sqlite_classes; wrangler exits cleanly",
|
|
18
18
|
"testable": true,
|
|
19
|
-
"scope": "runtime"
|
|
19
|
+
"scope": "runtime",
|
|
20
|
+
"ownerRef": {
|
|
21
|
+
"tacId": "TAC-3401-platform-cloudflare-durable-objects-namespace-facade",
|
|
22
|
+
"field": "interfaces.createDoFacade"
|
|
23
|
+
},
|
|
24
|
+
"disposition": "fixed"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"id": "AC-33113-2",
|
|
28
|
+
"description": "Wrangler-not-installed warn: if pnpm install --ignore-workspace has not been run under the cf-platform fixture and the wrangler bin is not on the fixture's node_modules/.bin, the wrangler-seam probe returns aggregateVerdict:\"warn\" naming DO_WRANGLER_NOT_INSTALLED with the expected bin path. This is a genuine \"cannot verify\" state, not a runtime defect (warn semantics per section 3.1 pass-with-skip).",
|
|
29
|
+
"given": "a cf-platform fixture whose node_modules does not contain wrangler",
|
|
30
|
+
"when": "the wrangler-seam probe runs",
|
|
31
|
+
"then": "aggregateVerdict is \"warn\" with reason DO_WRANGLER_NOT_INSTALLED",
|
|
32
|
+
"testable": true,
|
|
33
|
+
"scope": "runtime",
|
|
34
|
+
"disposition": "fixed",
|
|
35
|
+
"ownerRef": {
|
|
36
|
+
"tacId": "TAC-3401-platform-cloudflare-durable-objects-namespace-facade",
|
|
37
|
+
"field": "interfaces.createDoFacade"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"id": "AC-33113-3",
|
|
42
|
+
"description": "Bind-timeout warn: if wrangler dev --local --port 0 does not bind within the 45-second cap, the probe returns aggregateVerdict:\"warn\" naming DO_WRANGLER_BIND_TIMEOUT with the observed stderr quoted. The probe kills the wrangler child on the timeout.",
|
|
43
|
+
"given": "a probe run where wrangler cannot bind within 45 seconds (simulated by an environment that blocks its listen)",
|
|
44
|
+
"when": "the probe caps the wait at 45 seconds",
|
|
45
|
+
"then": "aggregateVerdict is \"warn\" naming DO_WRANGLER_BIND_TIMEOUT with the observed stderr",
|
|
46
|
+
"testable": true,
|
|
47
|
+
"scope": "runtime",
|
|
48
|
+
"disposition": "fixed",
|
|
49
|
+
"ownerRef": {
|
|
50
|
+
"tacId": "TAC-3401-platform-cloudflare-durable-objects-namespace-facade",
|
|
51
|
+
"field": "interfaces.createDoFacade"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"id": "AC-33113-4",
|
|
56
|
+
"description": "Workerd handler thrown = fail (not warn): if wrangler binds but a request through env.CELL or env.HUB throws inside the workerd runtime (e.g. the DO handler rejects with an uncaught error), the probe returns aggregateVerdict:\"fail\" naming DO_WORKERD_HANDLER_THREW with the observed response body. A handler thrown is a genuine runtime defect, distinct from the warn cases above.",
|
|
57
|
+
"given": "a probe run where a POST /cell/<id>/increment triggers a handler that throws inside workerd",
|
|
58
|
+
"when": "the probe issues the concurrent requests",
|
|
59
|
+
"then": "aggregateVerdict is \"fail\" naming DO_WORKERD_HANDLER_THREW",
|
|
60
|
+
"testable": true,
|
|
61
|
+
"scope": "runtime",
|
|
62
|
+
"disposition": "fixed",
|
|
63
|
+
"ownerRef": {
|
|
64
|
+
"tacId": "TAC-3401-platform-cloudflare-durable-objects-namespace-facade",
|
|
65
|
+
"field": "interfaces.createDoFacade"
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"id": "AC-33113-5",
|
|
70
|
+
"description": "Probe teardown: the wrangler child is killed on probe exit (normal or exceptional) via SIGTERM followed by SIGKILL after a 5-second grace period. An interrupted probe still tears down within 6 seconds; no orphan wrangler process remains.",
|
|
71
|
+
"given": "a probe run interrupted by an assertion rejection after the CLI binds",
|
|
72
|
+
"when": "the probe teardown runs",
|
|
73
|
+
"then": "the wrangler child is terminated within 6 seconds; no orphan process remains",
|
|
74
|
+
"testable": true,
|
|
75
|
+
"scope": "runtime",
|
|
76
|
+
"disposition": "fixed",
|
|
77
|
+
"ownerRef": {
|
|
78
|
+
"tacId": "TAC-3401-platform-cloudflare-durable-objects-namespace-facade",
|
|
79
|
+
"field": "interfaces.createDoFacade"
|
|
80
|
+
}
|
|
20
81
|
}
|
|
21
82
|
],
|
|
22
|
-
"tacIds": [
|
|
83
|
+
"tacIds": [
|
|
84
|
+
"TAC-3401-platform-cloudflare-durable-objects-namespace-facade"
|
|
85
|
+
],
|
|
23
86
|
"createdAt": "2026-09-07T14:00:00.000Z",
|
|
24
|
-
"updatedAt": "2026-09-
|
|
87
|
+
"updatedAt": "2026-09-09T22:00:00.000Z"
|
|
25
88
|
}
|
|
@@ -47,7 +47,7 @@ This table is maintained shelf-wide across every blueprint's `docs/topics.md`. R
|
|
|
47
47
|
| application-account-settings | 25101-25899 | 26xx | shipped v1.0.0 | none |
|
|
48
48
|
| application-onboarding-tour | 26101-26899 | 27xx | shipped v1.0.0 | none |
|
|
49
49
|
| persistence-data-postgres | 27101-27899 | 28xx | shipped v1.0.0 | `persistenceStore`, `migrationDiscipline` |
|
|
50
|
-
| object-storage-s3 | 28101-28899 | 29xx | shipped v1.
|
|
50
|
+
| object-storage-s3 | 28101-28899 | 29xx | shipped v1.1.0 | `objectStorageContract` |
|
|
51
51
|
| messaging-queue-cloudflare | 29101-29899 | 30xx | shipped v1.0.0 | `deliverySemantics` |
|
|
52
52
|
| jobs-background | 30101-30899 | 31xx | shipped v1.0.0 | `backgroundJobModel` |
|
|
53
53
|
| platform-cloudflare-kv | 31101-31899 | 32xx | shipped v1.0.0 | `keyValueStoreContract` |
|
|
@@ -69,7 +69,7 @@ ADR/TAC suffixes for this blueprint use the 3401-3499 block, continuing the shel
|
|
|
69
69
|
- Reuse `strongConsistencyCellContract` exactly as spelled here when your blueprint holds an opinion on the strong-consistency cell contract; contribute your own scope:global ADR on that string and let composition surface the pairing.
|
|
70
70
|
- Reuse `websocketHubContract` exactly as spelled here when your blueprint holds an opinion on the websocket-hub contract; the same pattern applies.
|
|
71
71
|
- A future non-Cloudflare adapter on either contract mints on demand; each claims the same topic string and conflicts by design.
|
|
72
|
-
- Consumer blueprints reading the `strongConsistencyCell` or `hibernatableWebSocket` capability declared on `blueprint.json` per section 6a of `blueprint-authoring.md` obtain the DO facade wiring at apply time via the
|
|
72
|
+
- Consumer blueprints reading the `strongConsistencyCell` or `hibernatableWebSocket` capability declared on `blueprint.json` per section 6a of `blueprint-authoring.md` obtain the DO facade wiring at apply time via the visual-round capability-declaration mechanism.
|
|
73
73
|
|
|
74
74
|
## Deliberate-conflict statement
|
|
75
75
|
|
package/blueprints/platform-cloudflare-durable-objects/guide/platform-cloudflare-durable-objects.md
CHANGED
|
@@ -5,21 +5,21 @@
|
|
|
5
5
|
You reach for `platform-cloudflare-durable-objects` when your
|
|
6
6
|
Worker needs strongly consistent authoritative state, coordinated
|
|
7
7
|
multiplayer websocket connections, or both on the same DO namespace
|
|
8
|
-
mechanic. Two shapes ship in one blueprint: the
|
|
8
|
+
mechanic. Two shapes ship in one blueprint: the single-cell shape
|
|
9
9
|
(counter, session store, lock, coordinator) and the WEBSOCKET-HUB
|
|
10
10
|
shape (rooms, presence, live cursors).
|
|
11
11
|
|
|
12
12
|
If you need eventually-consistent low-latency reads on a read-hot
|
|
13
13
|
path (feature flags, session cache, config cache), reach for
|
|
14
|
-
`platform-cloudflare-kv`
|
|
14
|
+
`platform-cloudflare-kv` instead. If you need
|
|
15
15
|
durable multi-step workflows with retries and state across steps,
|
|
16
16
|
reach for the follow-up Workflows adapter on `jobs-background`
|
|
17
|
-
v1.1.0
|
|
17
|
+
v1.1.0.
|
|
18
18
|
|
|
19
19
|
## Decision tree
|
|
20
20
|
|
|
21
21
|
- Strongly consistent authoritative cell (counter, session store,
|
|
22
|
-
lock, coordinator) ->
|
|
22
|
+
lock, coordinator) -> single-cell shape (this blueprint,
|
|
23
23
|
`platform-cloudflare-durable-objects` v1.0.0).
|
|
24
24
|
- Coordinated multiplayer websocket connections in one authoritative
|
|
25
25
|
hub (rooms, live cursors, presence) -> WEBSOCKET-HUB shape (this
|
|
@@ -107,7 +107,7 @@ looser window trades latency for fan-out cost on a busy hub.
|
|
|
107
107
|
|
|
108
108
|
The DO class names are stable strings committed to `wrangler.toml`.
|
|
109
109
|
Both binding blocks name the class explicitly; the `[[migrations]]`
|
|
110
|
-
block records the mint under `tag = "v1"` with `
|
|
110
|
+
block records the mint under `tag = "v1"` with `new_sqlite_classes` naming
|
|
111
111
|
both classes. A copy-paste block for a fresh Worker project:
|
|
112
112
|
|
|
113
113
|
```
|
|
@@ -121,7 +121,7 @@ class_name = "HubObject"
|
|
|
121
121
|
|
|
122
122
|
[[migrations]]
|
|
123
123
|
tag = "v1"
|
|
124
|
-
|
|
124
|
+
new_sqlite_classes = ["SingleCellObject", "HubObject"]
|
|
125
125
|
```
|
|
126
126
|
|
|
127
127
|
A rename in a later release ships as a NEW `[[migrations]]` tag on
|
|
@@ -161,11 +161,11 @@ returns fail on the AC-33106-1 result.
|
|
|
161
161
|
|
|
162
162
|
## Composition
|
|
163
163
|
|
|
164
|
-
- Consumes `deploy-cloudflare-workers` v1.2.0
|
|
164
|
+
- Consumes `deploy-cloudflare-workers` v1.2.0. The DO bindings
|
|
165
165
|
and migrations tag land in the same `wrangler.toml`.
|
|
166
166
|
- Companions `logging` and `errorHandling` supply the sink factory
|
|
167
167
|
and the internal-error record factory.
|
|
168
|
-
- Complements `platform-cloudflare-kv
|
|
168
|
+
- Complements `platform-cloudflare-kv`: DO owns the
|
|
169
169
|
strong-consistency slot; KV owns the cache-shaped eventually-
|
|
170
170
|
consistent slot. Both compose on the same Worker.
|
|
171
171
|
- A future non-Cloudflare adapter on `strongConsistencyCellContract`
|
|
@@ -203,7 +203,7 @@ workerd runtime:
|
|
|
203
203
|
- An additional `AC-33108-1` result on the same run greps the
|
|
204
204
|
fixture `wrangler.toml` for both `[[durable_objects.bindings]]`
|
|
205
205
|
binding pairs and the `[[migrations]]` `tag = "v1"` with
|
|
206
|
-
`
|
|
206
|
+
`new_sqlite_classes`; the grep is deterministic and does not require
|
|
207
207
|
wrangler.
|
|
208
208
|
|
|
209
209
|
Warn semantics per section 3.1 pass-with-skip: if the wrangler
|
|
@@ -2,6 +2,87 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to `platform-cloudflare-kv` are recorded here. The shape follows Keep a Changelog and Semantic Versioning per the blueprint authoring standard.
|
|
4
4
|
|
|
5
|
+
## 1.1.3 - 2026-09-10
|
|
6
|
+
|
|
7
|
+
Positive-evidence rule alignment on the probe pack skip path (authoring standard section 7d), plus a register and citation patch.
|
|
8
|
+
|
|
9
|
+
- Probes: the account-bound skip return on `contributions/probes/real-account-eventual-consistency-smoke.mjs` now carries a `reason` field naming the exact env var that was unset (`CI_HAS_CLOUDFLARE_ACCOUNT` on the standard skip path). Skip-path probe report regenerated so the shipped shape carries the new field.
|
|
10
|
+
- AC-31103-1 gains a `vendorCitation` for the Workers KV read/write API page (F-2).
|
|
11
|
+
- Neutral register in AC-31109-2 (F-3), ADR-3201 context and consequences (F-4), README (F-5) and guide prose (F-6).
|
|
12
|
+
|
|
13
|
+
## 1.1.2 - 2026-09-10
|
|
14
|
+
|
|
15
|
+
Owner reference for the KV event-record whitelist.
|
|
16
|
+
|
|
17
|
+
- Rewrote REQ-004 description to reference the owning TAC field (`TAC-3203-platform-cloudflare-kv-event-sink.purpose`) for the KV event-record whitelist, rather than restating the shape verbatim.
|
|
18
|
+
|
|
19
|
+
## 1.1.1 (register-sweep patch, 2026-09-10)
|
|
20
|
+
|
|
21
|
+
- Register: neutral wording in shipped prose (no capability change).
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
## 1.1.0 (2026-09-09)
|
|
25
|
+
|
|
26
|
+
### Added
|
|
27
|
+
|
|
28
|
+
- `platform-cloudflare-kv-REQ-006` (`must`): the elicited `kv-key-naming-convention` answer (`prefixed` or `flat`) flows through every facade verb; `prefixed` applies the elicited `keyPrefix` transparently, `flat` passes keys through untouched. Closes criterion a on the previously unbacked elicit (F-1).
|
|
29
|
+
- `platform-cloudflare-kv-REQ-007` (`must`): pre-ready operations queue behind `facadeReady`; sink events emit in causal per-operation order. Closes the previously unbacked `TAC-3201` pre-ready responsibility and `TAC-3203` ordering responsibility (F-4).
|
|
30
|
+
- `platform-cloudflare-kv-US-31109` (traces REQ-005 after prior gap F-2), `US-31110` (traces REQ-006), `US-31111` (traces REQ-007). Every AC carries `disposition` and `ownerRef`; the vendor-fact ACs carry `vendorCitation`.
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- `platform-cloudflare-kv-REQ-005` reworded to separate the applied cache-aside TTL (LOCAL expiry) from the KV eventual-consistency propagation window (vendor-owned, up to 60 seconds or more per the Cloudflare KV documentation). The v1.0.x wording that called the elicited TTL a "global staleness ceiling" is retired; the guide surfaces the two clocks separately and cross-references `platform-cloudflare-durable-objects` as the strong-consistency answer (F-3).
|
|
35
|
+
- Every existing REQ carries a `deliveredBy` link into a TAC or ADR (five links). Every existing AC carries `disposition`. `rcf define blueprint lint-consistency` reports zero pass-1 and pass-2 findings.
|
|
36
|
+
|
|
37
|
+
### Added (criterion b completion, second pass 2026-09-09)
|
|
38
|
+
|
|
39
|
+
- Every story on this blueprint now reaches the section 7a AC-set-sufficiency floor. 36 new hand-authored ACs cover the documented failure paths named in the guide and TAC records, per-story range 4-6 (from the 1-3 shipped in the first 1.1.0 pass): US-31101 gains four failure-path ACs (binding-unbound closing F-7 write, invalid sink, repeat-boot idempotency, ready-check rejects with KV_FACADE_NOT_READY); US-31102 gains three ACs (non-facade leak, comment-only mention, nested-directory recursion); US-31103 gains four ACs (getWithMetadata closing F-5, per-call TTL propagation closing F-5, write-failed with KV_WRITE_FAILED closing F-7, read-failed with KV_READ_FAILED closing F-7); US-31104 gains four ACs (cursor pagination closing F-5, empty prefix, no-match, list_complete indicator); US-31105 gains four ACs (TTL floor clamping closing F-6, origin-throws, concurrent-miss single-flight, source classification); US-31106 gains three ACs (per-call TTL override closing F-6, per-call TTL below floor clamps, TTL boundary strict less-than); US-31107 gains three ACs (additional-field mutation, causal ordering, closed vocabulary); US-31108 gains three ACs (metadata-blob never a body, substring scan across all kinds, layer separation); US-31109 gains three ACs (vendor propagation window in guide, DO as strong-consistency alternative in guide, no cross-region claim on any AC); US-31110 gains three ACs (unknown mode refuses, empty prefix behaves as flat, nested prefix); US-31111 gains two ACs (strict FIFO drain of 10 pre-ready calls, post-ready no-queue path). Every new AC carries `disposition`, most carry `ownerRef` into the owning TAC, and vendor-fact ACs carry `vendorCitation` (KV overview, KV API, KV how-KV-works, KV limits) with today's verifiedOn date.
|
|
40
|
+
- `rcf define blueprint lint-consistency` still reports zero pass-1 and pass-2 findings. Blueprint stays at v1.1.0 on the same unreleased minor.
|
|
41
|
+
|
|
42
|
+
### Fixed (review fix pass, 2026-09-09)
|
|
43
|
+
|
|
44
|
+
- `AC-31109-1` disposition flipped from `fixed` to `template`: the applying project sets the cache-aside TTL, so an AC that binds the local-expiry window to `elicitedTtlMs` is an elicit-branch AC per section 7b (review F-4).
|
|
45
|
+
- Register sweep: README, ADR and probe comments have internal operator names, host names, work-item ids, internal train labels and "operator ruling" references neutralised to concept ("throwaway prefix", "probe-integrity pass", "operator ruling"); code literals bound to real Cloudflare API state ("h2-cf-probe-integrity-scratch-kv-" and similar) are unchanged. CHANGELOG entries keep internal provenance (review F-3).
|
|
46
|
+
|
|
47
|
+
## 1.0.2 (2026-09-08)
|
|
48
|
+
|
|
49
|
+
follow-up (addendum item 6 fixture defect): the real-account KV probe now self-provisions its own throwaway namespace, closing the second-tier undeclared-env skip real-account hit at the real-account gate on 2026-09-08 (`REAL RUN: PARTIAL`, `MERGE DECISION: HOLD`). No shipped-code capability change.
|
|
50
|
+
|
|
51
|
+
### Changed
|
|
52
|
+
|
|
53
|
+
- `real-account-eventual-consistency-smoke.mjs` rewritten against a new self-provisioning fixture shim at `packages/rcf-lite/test/fixtures/cf-platform/h2-cf-kv-real-account-shim.mjs`. The shim mints a scratch KV namespace under the frozen throwaway prefix `h2-cf-probe-integrity-scratch-kv-`, writes a fixture key under `h2-storage-smoke-`, polls up to 60 seconds bounded for same-region visibility, deletes the key, and destroys the namespace on exit. Positive evidence captured on every real-account run: namespace id, exact scratch title, key, PUT / GET / DELETE status codes, elapsed ms.
|
|
54
|
+
- Removed the second-tier `CF_KV_NAMESPACE_ID` gate that produced the undeclared skip at the real-account gate. The declared env for a real-account run is now `CI_HAS_CLOUDFLARE_ACCOUNT` + `CF_ACCOUNT_ID` + `CF_API_TOKEN` (optional test override `CF_API_BASE_URL`), enumerated in the probe's `report.extra.envDeclared` and mirrored in the shim's `DECLARED_ENV` export.
|
|
55
|
+
- Teardown is fail-safe and idempotent: a mid-run crash surfaces the minted id through the shim's persisted scratch record; the shim's separate `sweepOrphans` entry point lists over the account and filters on the throwaway prefix. Sweep is structurally unable to select a non-prefixed name (three independent guards: prefix assert on mint, prefix assert on destroy against the record, prefix assert on the live-listing observation; sweep-only prefix filter mirrors the destroy assertions). A dedicated sweep-safety test at `packages/rcf-lite/test/fixtures/cf-platform/test/h2-cf-kv-real-account-shim.test.mjs` seeds the mock account with the ten live production script names on the operator account plus a sneaky mid-string-prefix name and asserts sweep selects zero of them.
|
|
56
|
+
|
|
57
|
+
### Added
|
|
58
|
+
|
|
59
|
+
- Self-contained mock CF REST API at `packages/rcf-lite/test/fixtures/cf-platform/test/mock-cf-api-server.mjs` (Node `node:http` only, zero-dep) implementing the KV namespaces + values + keys endpoints the shim hits, with page + per_page pagination on the namespaces list. Test at `test/h2-cf-kv-probe-e2e.test.mjs` boots the mock in-process, points the shim at it via `CF_API_BASE_URL`, and drives the probe end-to-end to prove the mint / evidence-capture / teardown / zero-orphans loop before the real-account run ever executes.
|
|
60
|
+
- `kvListNamespaces` in the shared CF REST client (`h2-cf-account-api.mjs`) paginates to completion via the documented `per_page` + `page` loop (operator ruling 4e9ff62d item 5) so `sweepOrphans` is not silently truncated to page one on a busy account. `kvDeleteNamespace` is idempotent on 404 (operator ruling 4e9ff62d items 3+4).
|
|
61
|
+
|
|
62
|
+
### Local-proof scope note
|
|
63
|
+
|
|
64
|
+
The local proof harness under `packages/rcf-lite/test/fixtures/cf-platform/test/` is a mock of Cloudflare's REST contract, not the wire. **The local run exercises OUR lifecycle logic against a mock of Cloudflare's contract; the real-account gate is the only surface that proves the wire format.** This probe is never described as "locally verified" - the local runs are our own lifecycle-logic proof; wire correctness is proven at the real-account gate.
|
|
65
|
+
|
|
66
|
+
## 1.0.1 (2026-09-08)
|
|
67
|
+
|
|
68
|
+
hardening pass (`h2-cf-platform-probe-integrity`): probe-integrity patch across the four Cloudflare-platform blueprints. No capability change.
|
|
69
|
+
|
|
70
|
+
### Changed
|
|
71
|
+
|
|
72
|
+
- Re-anchored all five KV probes and the README from the defunct `AC-5xxx` id space to the shipped `AC-31xxx` band (nine shipped ACs: `AC-31101-1`, `AC-31102-1`, `AC-31103-1`, `AC-31103-2`, `AC-31104-1`, `AC-31105-1`, `AC-31106-1`, `AC-31107-1`, `AC-31108-1`). Every one of the nine now has a runtime observable through a re-anchored probe. Anatomy-test assertions in `packages/rcf-lite/test/blueprint/platform-cloudflare-kv-anatomy.test.js` moved with the re-anchor. Dispatch addendum ruling 1.
|
|
73
|
+
- Moved the `SIMULATE_CACHE_MISS` mutation switch out of `cache-aside-hit-then-miss.mjs` into fixture shim `packages/rcf-lite/test/fixtures/cf-platform/h2-cf-kv-cache-aside-shim.mjs`; the probe body holds zero `SIMULATE_` token references (`AC-15401-1` mutation-purity rule).
|
|
74
|
+
- Moved the `SIMULATE_PII_LEAK` mutation switch out of `event-secrecy.mjs` into fixture shim `packages/rcf-lite/test/fixtures/cf-platform/h2-cf-kv-event-secrecy-shim.mjs`; the probe body holds zero `SIMULATE_` token references.
|
|
75
|
+
- Reworded the "fake clock" comment on `cache-aside-hit-then-miss.mjs` header to name the local test double honestly ("elicited deterministic clock the fixture advances").
|
|
76
|
+
- Reworded the `Known limitations` (CHANGELOG) and `Known mechanism-reach gaps` (README) entries on the loader `elicits[]` `when` block predicate to name the loader-capability uplift as a loader-capability follow-up (0.26.x capability change, out of the hardening pass's 0.25.x patch scope per operator ruling 1). The entry describes the current shipped shape and points forward to the follow-up.
|
|
77
|
+
|
|
78
|
+
### Fixed
|
|
79
|
+
|
|
80
|
+
- Removed the committed fail envelope at `.rcf/reports/blueprints/platform-cloudflare-kv/event-secrecy.json`; committed a shipped-code pass envelope in its place. Regenerated the other KV envelopes so committed envelopes reflect the re-anchored shipped-code runs.
|
|
81
|
+
|
|
82
|
+
### Chain slice
|
|
83
|
+
|
|
84
|
+
- Train chain slice minted inside the reserved chain block: `REQ-150..154`, `US-15001..15401`, twelve `AC-15xxx` ACs, `TS-180..184` with eleven TCs, `FBS-170..174`, `CN-520..529` (seven used, three reserved). Full mint transcript in the hardening-pass PR provenance.
|
|
85
|
+
|
|
5
86
|
## 1.0.0 (2026-09-07)
|
|
6
87
|
|
|
7
88
|
### Added
|
|
@@ -12,10 +93,10 @@ All notable changes to `platform-cloudflare-kv` are recorded here. The shape fol
|
|
|
12
93
|
- Elicited parameters on `blueprint.json`: `kv-binding-name` (default `CACHE`), `kv-default-cache-ttl-seconds` (default `60`, floor `1`), `kv-metadata-field-pattern` (default `{v:1}`), `kv-key-naming-convention` (default `prefixed`).
|
|
13
94
|
- `suggestedCompanions`: `logging` (for the event-sink boundary) and `errorHandling` (for the error record shape).
|
|
14
95
|
- Extends the shared `cf-platform` sample-app fixture with the `[[kv_namespaces]]` binding block (name `CACHE`), the sole-reader KV facade module (`src/kv-facade.mjs`), the cache-aside helper (`src/cache-aside.mjs`), and the in-memory KV driver (`src/kv-driver.mjs`) that realises the Workers KV binding shape so the local probes drive without a live-KV dependency.
|
|
15
|
-
- Anatomy test at `packages/rcf-lite/test/blueprint/platform-cloudflare-kv-anatomy.test.js` covers `TS-080..087` on the
|
|
96
|
+
- Anatomy test at `packages/rcf-lite/test/blueprint/platform-cloudflare-kv-anatomy.test.js` covers `TS-080..087` on the chain slice (blueprint shape, contributions cross-check, probe module contracts, fixture files, ADR bodies and clauses, guide sections and URLs, three-state probed verdicts).
|
|
16
97
|
|
|
17
98
|
### Known limitations
|
|
18
99
|
|
|
19
100
|
- The `real-account-eventual-consistency-smoke` probe records `accountBoundSkipped: true` and aggregates to `pass` when `CI_HAS_CLOUDFLARE_ACCOUNT` is unset (spec section 3.5 pass-with-skip). Full mechanism reach requires a CI environment with the paired `CF_ACCOUNT_ID`, `CF_KV_NAMESPACE_ID` and `CF_API_TOKEN` env vars.
|
|
20
101
|
- The four local probes drive an in-memory KV driver whose shape matches the Workers KV binding at the facade boundary. Vendor surface changes beyond that boundary (a new list cursor format, a header-only limit) are not caught by the local probes; the real-account smoke is the mechanism-reach closure for that gap.
|
|
21
|
-
- The loader's supported `when` block on `elicits[]`
|
|
102
|
+
- The loader's supported `when` block on `elicits[]` currently accepts only `requiresCapability` arrays, so the elicited `kv-metadata-field-pattern` fires unconditionally rather than gating on an `elicitedNonEmpty` predicate for `kv-binding-name`. The elicit fires unconditionally today and the guide teaches the pattern; a loader-capability uplift extending `validateElicits` to accept an `elicitedNonEmpty` predicate is captured as follow-up work item a loader-capability follow-up (0.26.x capability change, out of the hardening pass's 0.25.x patch scope per operator ruling 1).
|
|
@@ -23,7 +23,7 @@ can render without ever writing a body byte.
|
|
|
23
23
|
timestamp}` and nothing else. Two-layer secrecy assertion in the
|
|
24
24
|
event-secrecy probe.
|
|
25
25
|
- A decision-tree cross-reference in the guide to
|
|
26
|
-
|
|
26
|
+
`platform-cloudflare-durable-objects` for cases that
|
|
27
27
|
need strong-consistency semantics.
|
|
28
28
|
|
|
29
29
|
## The five REQs
|
|
@@ -80,7 +80,7 @@ under the fixture root.
|
|
|
80
80
|
| `cache-aside-hit-then-miss.mjs` | `AC-31105-1` | no | Wraps a spy origin function with the cache-aside helper, drives one call within TTL (hit, no origin call), advances the fake clock past TTL, drives another call (miss, second origin call). |
|
|
81
81
|
| `event-secrecy.mjs` | `AC-31108-1` | no | Two-layer assertion: whitelist check on every event record and PII-substring scan on the JSON serialisation. A mutation-run under `SIMULATE_PII_LEAK` flips the probe to fail. |
|
|
82
82
|
| `list-with-prefix.mjs` | `AC-31104-1` | no | Puts 10 keys under `flags/` plus one decoy outside the prefix, calls `list({prefix: flags/})`, asserts all 10 return with correct metadata shape and the decoy is absent. |
|
|
83
|
-
| `real-account-eventual-consistency-smoke.mjs` | `AC-31108-1` | yes |
|
|
83
|
+
| `real-account-eventual-consistency-smoke.mjs` | `AC-31108-1` | yes | Self-provisioning: the fixture shim (`packages/rcf-lite/test/fixtures/cf-platform/h2-cf-kv-real-account-shim.mjs`) mints a scratch KV namespace under the throwaway prefix `h2-cf-probe-integrity-scratch-kv-`, writes a fixture key under the `h2-storage-smoke-` prefix, polls up to 60 seconds bounded for same-region visibility, deletes the key, and destroys the namespace on exit. Positive evidence captured: namespace id, exact scratch title, key, PUT / GET / DELETE status codes, elapsed ms. Idempotent prefix-sweep entry point (`sweepOrphans`) filters over the account by the frozen throwaway prefix and deletes each match by exact id and exact name; the sweep is structurally unable to select a non-prefixed name, paginates KV namespaces to completion, and is exercised by the fixture's sweep-safety test against the ten live production script names on the operator account plus a 250-per-type multi-page cover. Without `CI_HAS_CLOUDFLARE_ACCOUNT` records `accountBoundSkipped: true` and aggregates `pass` per spec section 3.5. **The local proof exercises OUR lifecycle logic against a mock of Cloudflare's contract; the real-account gate is the only surface that proves the wire format.** |
|
|
84
84
|
|
|
85
85
|
## How to run the probes
|
|
86
86
|
|
|
@@ -104,8 +104,13 @@ Induced-failure switches:
|
|
|
104
104
|
calls where one was expected and returns `aggregateVerdict: fail`.
|
|
105
105
|
|
|
106
106
|
The real-account smoke needs `CI_HAS_CLOUDFLARE_ACCOUNT=true` plus
|
|
107
|
-
the paired `CF_ACCOUNT_ID
|
|
108
|
-
|
|
107
|
+
the paired `CF_ACCOUNT_ID` and `CF_API_TOKEN` env vars. The fixture
|
|
108
|
+
mints its own throwaway KV namespace under the throwaway prefix; no
|
|
109
|
+
pre-provisioned namespace is required (the earlier `CF_KV_NAMESPACE_ID`
|
|
110
|
+
gate is removed as of v1.1.0). A test
|
|
111
|
+
override `CF_API_BASE_URL` points the shim at a local mock CF REST
|
|
112
|
+
API for local proof; the mock and its test lives under
|
|
113
|
+
`packages/rcf-lite/test/fixtures/cf-platform/test/`.
|
|
109
114
|
|
|
110
115
|
## Known mechanism-reach gaps
|
|
111
116
|
|
|
@@ -118,11 +123,14 @@ env vars.
|
|
|
118
123
|
the aggregate flips to `pass` with `accountBoundSkipped: true` per
|
|
119
124
|
spec section 3.5. Full mechanism reach requires a CI environment
|
|
120
125
|
with the paired env vars set.
|
|
121
|
-
- The elicited `kv-metadata-field-pattern`
|
|
122
|
-
`elicitedNonEmpty` predicate for
|
|
123
|
-
`
|
|
124
|
-
|
|
125
|
-
pattern
|
|
126
|
+
- The elicited `kv-metadata-field-pattern` fires unconditionally
|
|
127
|
+
rather than gating on an `elicitedNonEmpty` predicate for
|
|
128
|
+
`kv-binding-name`; the loader's `validateElicits` accepts only
|
|
129
|
+
`requiresCapability` on the `when` block today. The guide teaches
|
|
130
|
+
the pattern; a loader-capability uplift extending
|
|
131
|
+
`validateElicits` to accept an `elicitedNonEmpty` predicate is
|
|
132
|
+
captured as follow-up work item
|
|
133
|
+
a follow-up capability change (0.26.x) is out of scope for this 0.25.x patch.
|
|
126
134
|
|
|
127
135
|
## Companion suggestions
|
|
128
136
|
|
|
@@ -152,8 +160,26 @@ env vars.
|
|
|
152
160
|
|
|
153
161
|
The anatomy test at
|
|
154
162
|
`packages/rcf-lite/test/blueprint/platform-cloudflare-kv-anatomy.test.js`
|
|
155
|
-
binds every AC on `US-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
163
|
+
binds every AC on the shipped kv user stories `US-31101..US-31108`
|
|
164
|
+
(`AC-31101-1`, `AC-31102-1`, `AC-31103-1`, `AC-31103-2`,
|
|
165
|
+
`AC-31104-1`, `AC-31105-1`, `AC-31106-1`, `AC-31107-1`,
|
|
166
|
+
`AC-31108-1`) to a test case in that file with a resolvable
|
|
167
|
+
`testPointer`, and to the union of the five contributed probe
|
|
168
|
+
result records. The five probes carry the following anchors: the
|
|
169
|
+
facade-round-trip probe holds `AC-31103-1` as primary and adds
|
|
170
|
+
`AC-31101-1` (facadeReady), `AC-31103-2` (delete then kvMiss),
|
|
171
|
+
`AC-31104-1` (list-with-prefix compact case) and `AC-31102-1`
|
|
172
|
+
(sole-reader env.CACHE grep) as additional results; the
|
|
173
|
+
list-with-prefix probe holds `AC-31104-1`; the
|
|
174
|
+
cache-aside-hit-then-miss probe holds `AC-31105-1` and
|
|
175
|
+
`AC-31106-1`; the event-secrecy probe holds `AC-31108-1` and
|
|
176
|
+
`AC-31107-1` (whitelist scan); the real-account-eventual-
|
|
177
|
+
consistency smoke re-covers `AC-31103-1` on a real Cloudflare KV
|
|
178
|
+
namespace. The blueprint contribution IDs are namespaced
|
|
179
|
+
`platform-cloudflare-kv-REQ-001..005` and
|
|
180
|
+
`platform-cloudflare-kv-US-31101..31108` per the shelf-wide
|
|
181
|
+
id-band registry. The prior chain-slice pointer
|
|
182
|
+
paragraph cited a defunct earlier id band that never became chain
|
|
183
|
+
rows on this repo; that citation was removed in the probe-integrity pass
|
|
184
|
+
(2026-09-08 relay 582c2bca): the earlier band was not resurrected
|
|
185
|
+
and every kv probe result now cites the shipped `AC-31xxx` band.
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"slug": "platform-cloudflare-kv",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.3",
|
|
4
4
|
"category": "platform",
|
|
5
|
-
"capabilities": [
|
|
5
|
+
"capabilities": [
|
|
6
|
+
"keyValueStore"
|
|
7
|
+
],
|
|
6
8
|
"suggestedCompanions": [
|
|
7
9
|
{
|
|
8
10
|
"role": "logging",
|
|
@@ -36,27 +38,119 @@
|
|
|
36
38
|
"id": "kv-key-naming-convention",
|
|
37
39
|
"prompt": "Key naming convention: prefixed (domain prefix like users/, flags/) or flat (per ADR-3203; recommended default prefixed)",
|
|
38
40
|
"kind": "enum",
|
|
39
|
-
"options": [
|
|
41
|
+
"options": [
|
|
42
|
+
"prefixed",
|
|
43
|
+
"flat"
|
|
44
|
+
],
|
|
40
45
|
"default": "prefixed"
|
|
41
46
|
}
|
|
42
47
|
],
|
|
43
48
|
"contributions": [
|
|
44
|
-
{
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
{
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
{
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
{
|
|
49
|
+
{
|
|
50
|
+
"id": "platform-cloudflare-kv-REQ-001",
|
|
51
|
+
"kind": "req",
|
|
52
|
+
"path": "requirements/platform-cloudflare-kv-req-001.json"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"id": "platform-cloudflare-kv-REQ-002",
|
|
56
|
+
"kind": "req",
|
|
57
|
+
"path": "requirements/platform-cloudflare-kv-req-002.json"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"id": "platform-cloudflare-kv-REQ-003",
|
|
61
|
+
"kind": "req",
|
|
62
|
+
"path": "requirements/platform-cloudflare-kv-req-003.json"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"id": "platform-cloudflare-kv-REQ-004",
|
|
66
|
+
"kind": "req",
|
|
67
|
+
"path": "requirements/platform-cloudflare-kv-req-004.json"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"id": "platform-cloudflare-kv-REQ-005",
|
|
71
|
+
"kind": "req",
|
|
72
|
+
"path": "requirements/platform-cloudflare-kv-req-005.json"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"id": "platform-cloudflare-kv-REQ-006",
|
|
76
|
+
"kind": "req",
|
|
77
|
+
"path": "requirements/platform-cloudflare-kv-req-006.json"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"id": "platform-cloudflare-kv-REQ-007",
|
|
81
|
+
"kind": "req",
|
|
82
|
+
"path": "requirements/platform-cloudflare-kv-req-007.json"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"id": "platform-cloudflare-kv-US-31101",
|
|
86
|
+
"kind": "us",
|
|
87
|
+
"path": "user-stories/platform-cloudflare-kv-us-31101.json"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"id": "platform-cloudflare-kv-US-31102",
|
|
91
|
+
"kind": "us",
|
|
92
|
+
"path": "user-stories/platform-cloudflare-kv-us-31102.json"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"id": "platform-cloudflare-kv-US-31103",
|
|
96
|
+
"kind": "us",
|
|
97
|
+
"path": "user-stories/platform-cloudflare-kv-us-31103.json"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"id": "platform-cloudflare-kv-US-31104",
|
|
101
|
+
"kind": "us",
|
|
102
|
+
"path": "user-stories/platform-cloudflare-kv-us-31104.json"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"id": "platform-cloudflare-kv-US-31105",
|
|
106
|
+
"kind": "us",
|
|
107
|
+
"path": "user-stories/platform-cloudflare-kv-us-31105.json"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"id": "platform-cloudflare-kv-US-31106",
|
|
111
|
+
"kind": "us",
|
|
112
|
+
"path": "user-stories/platform-cloudflare-kv-us-31106.json"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"id": "platform-cloudflare-kv-US-31107",
|
|
116
|
+
"kind": "us",
|
|
117
|
+
"path": "user-stories/platform-cloudflare-kv-us-31107.json"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"id": "platform-cloudflare-kv-US-31108",
|
|
121
|
+
"kind": "us",
|
|
122
|
+
"path": "user-stories/platform-cloudflare-kv-us-31108.json"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"id": "platform-cloudflare-kv-US-31109",
|
|
126
|
+
"kind": "us",
|
|
127
|
+
"path": "user-stories/platform-cloudflare-kv-us-31109.json"
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"id": "platform-cloudflare-kv-US-31110",
|
|
131
|
+
"kind": "us",
|
|
132
|
+
"path": "user-stories/platform-cloudflare-kv-us-31110.json"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"id": "platform-cloudflare-kv-US-31111",
|
|
136
|
+
"kind": "us",
|
|
137
|
+
"path": "user-stories/platform-cloudflare-kv-us-31111.json"
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"id": "TAC-3201-platform-cloudflare-kv-facade",
|
|
141
|
+
"kind": "tac",
|
|
142
|
+
"path": "tacs/tac-3201-platform-cloudflare-kv-facade.json"
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"id": "TAC-3202-platform-cloudflare-kv-cache-aside",
|
|
146
|
+
"kind": "tac",
|
|
147
|
+
"path": "tacs/tac-3202-platform-cloudflare-kv-cache-aside.json"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"id": "TAC-3203-platform-cloudflare-kv-event-sink",
|
|
151
|
+
"kind": "tac",
|
|
152
|
+
"path": "tacs/tac-3203-platform-cloudflare-kv-event-sink.json"
|
|
153
|
+
},
|
|
60
154
|
{
|
|
61
155
|
"id": "ADR-3201-platform-cloudflare-kv-key-value-store-contract",
|
|
62
156
|
"kind": "adr",
|
|
@@ -83,5 +177,6 @@
|
|
|
83
177
|
"elicited": true,
|
|
84
178
|
"standardsTraceClause": "generic enterprise practice"
|
|
85
179
|
}
|
|
86
|
-
]
|
|
180
|
+
],
|
|
181
|
+
"updatedAt": "2026-09-10T00:00:00.000Z"
|
|
87
182
|
}
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
"version": "1.0.0",
|
|
6
6
|
"status": "accepted",
|
|
7
7
|
"title": "Key-value store contract: Cloudflare Workers KV as the shipped shape (scope global, new topic keyValueStoreContract)",
|
|
8
|
-
"context": "An applying Workers project has one native key-value store answer today: Cloudflare Workers KV. The binding is declared through wrangler configuration ([[kv_namespaces]] with binding, id and preview_id) and the shipped runtime binds env.<binding> to an object with get, getWithMetadata, put, delete and list per https://developers.cloudflare.com/kv/api/. KV is eventually consistent: a write may not appear on a global read within the same request, and changes may take up to 60 seconds or more to be visible in other network locations as their cached versions time out (https://developers.cloudflare.com/kv/concepts/how-kv-works/). The v1.0.0 facade must hold the adapter reference opaque at the facade boundary so a future non-Cloudflare adapter or an in-memory adapter for tests slots in without a facade re-shape, and so the
|
|
8
|
+
"context": "An applying Workers project has one native key-value store answer today: Cloudflare Workers KV. The binding is declared through wrangler configuration ([[kv_namespaces]] with binding, id and preview_id) and the shipped runtime binds env.<binding> to an object with get, getWithMetadata, put, delete and list per https://developers.cloudflare.com/kv/api/. KV is eventually consistent: a write may not appear on a global read within the same request, and changes may take up to 60 seconds or more to be visible in other network locations as their cached versions time out (https://developers.cloudflare.com/kv/concepts/how-kv-works/). The v1.0.0 facade must hold the adapter reference opaque at the facade boundary so a future non-Cloudflare adapter or an in-memory adapter for tests slots in without a facade re-shape, and so the Durable Objects sibling is the shipped answer for strong-consistency needs.",
|
|
9
9
|
"decision": "The shipped v1.0.0 default is Cloudflare Workers KV, wired through wrangler config ([[kv_namespaces]] with binding, id and preview_id) per https://developers.cloudflare.com/kv/. The facade module (TAC-3201) is the sole holder of the KV binding reference per REQ-001. The keyValueStoreContract topic scope is global on this blueprint; the topic string is keyValueStoreContract (lower camelCase, one concept per topic, no version suffix, per the round-2 rules-for-new-topics clause on the shelf registry). A future non-KV adapter (a Redis-shape store, a strong-consistency DO cell for a single-owner use case) would contribute the same topic string with a different answer, forcing a DELIBERATE conflict the operator resolves with a project-level ADR per the round-2 conflict pattern.",
|
|
10
|
-
"consequences": "The applying project inherits Workers KV wire-format, the platform-assigned per-namespace limits (https://developers.cloudflare.com/kv/platform/limits/) and the documented eventual-consistency semantics. Standards trace clause: Cloudflare Workers KV documented consistency model (per https://developers.cloudflare.com/kv/concepts/how-kv-works/). Consumer code needing strong-consistency semantics reaches for the
|
|
10
|
+
"consequences": "The applying project inherits Workers KV wire-format, the platform-assigned per-namespace limits (https://developers.cloudflare.com/kv/platform/limits/) and the documented eventual-consistency semantics. Standards trace clause: Cloudflare Workers KV documented consistency model (per https://developers.cloudflare.com/kv/concepts/how-kv-works/). Consumer code needing strong-consistency semantics reaches for the platform-cloudflare-durable-objects sibling instead; the guide carries the decision-tree cross-reference.",
|
|
11
11
|
"alternativesConsidered": [],
|
|
12
12
|
"createdAt": "2026-09-07T10:28:32.000Z",
|
|
13
|
-
"updatedAt": "2026-09-
|
|
13
|
+
"updatedAt": "2026-09-10T00:00:00.000Z"
|
|
14
14
|
}
|