rcf-lite 0.21.0 → 0.23.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.
Files changed (458) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/bin/rcf.js +13 -2
  3. package/blueprints/application-account-settings/CHANGELOG.md +12 -0
  4. package/blueprints/application-account-settings/README.md +114 -0
  5. package/blueprints/application-account-settings/blueprint.json +234 -0
  6. package/blueprints/application-account-settings/contributions/adrs/adr-2601-application-account-settings-capability-vocabulary.json +20 -0
  7. package/blueprints/application-account-settings/contributions/adrs/adr-2602-application-account-settings-security-surface-shape.json +20 -0
  8. package/blueprints/application-account-settings/contributions/adrs/adr-2603-application-account-settings-theme-persistence.json +20 -0
  9. package/blueprints/application-account-settings/contributions/adrs/adr-2604-application-account-settings-reauth-window.json +20 -0
  10. package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-001.json +18 -0
  11. package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-002.json +18 -0
  12. package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-003.json +18 -0
  13. package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-004.json +18 -0
  14. package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-005.json +18 -0
  15. package/blueprints/application-account-settings/contributions/requirements/application-account-settings-req-006.json +18 -0
  16. package/blueprints/application-account-settings/contributions/tacs/tac-2601-application-account-settings-shell.json +41 -0
  17. package/blueprints/application-account-settings/contributions/tacs/tac-2602-application-account-settings-capability-discovery.json +28 -0
  18. package/blueprints/application-account-settings/contributions/tacs/tac-2603-application-account-settings-hosted-ui-bridge.json +35 -0
  19. package/blueprints/application-account-settings/contributions/tacs/tac-2604-application-account-settings-session-store.json +40 -0
  20. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25101.json +34 -0
  21. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25102.json +27 -0
  22. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25103.json +27 -0
  23. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25104.json +27 -0
  24. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25105.json +33 -0
  25. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25106.json +27 -0
  26. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25107.json +27 -0
  27. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25108.json +27 -0
  28. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25109.json +33 -0
  29. package/blueprints/application-account-settings/contributions/user-stories/application-account-settings-us-25110.json +27 -0
  30. package/blueprints/application-account-settings/docs/topics.md +50 -0
  31. package/blueprints/application-account-settings/guide/application-account-settings.md +30 -0
  32. package/blueprints/application-account-settings/probe-packs/application-account-settings.pack.mjs +246 -0
  33. package/blueprints/application-admin-console/docs/topics.md +9 -0
  34. package/blueprints/application-api-rest/docs/topics.md +10 -1
  35. package/blueprints/application-charts/docs/topics.md +9 -0
  36. package/blueprints/application-dashboard/docs/topics.md +9 -0
  37. package/blueprints/application-datatable/docs/topics.md +9 -0
  38. package/blueprints/application-empty-error-states/CHANGELOG.md +9 -0
  39. package/blueprints/application-empty-error-states/README.md +88 -0
  40. package/blueprints/application-empty-error-states/blueprint.json +119 -0
  41. package/blueprints/application-empty-error-states/contributions/adrs/adr-2301-application-empty-error-states-status-contract.json +25 -0
  42. package/blueprints/application-empty-error-states/contributions/adrs/adr-2302-application-empty-error-states-stack-trace-visibility.json +25 -0
  43. package/blueprints/application-empty-error-states/contributions/adrs/adr-2303-application-empty-error-states-offline-strategy.json +25 -0
  44. package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-001.json +18 -0
  45. package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-002.json +18 -0
  46. package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-003.json +18 -0
  47. package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-004.json +18 -0
  48. package/blueprints/application-empty-error-states/contributions/requirements/application-empty-error-states-req-005.json +18 -0
  49. package/blueprints/application-empty-error-states/contributions/tacs/tac-2301-application-empty-error-states-state-machine.json +46 -0
  50. package/blueprints/application-empty-error-states/contributions/tacs/tac-2302-application-empty-error-states-recovery-router.json +36 -0
  51. package/blueprints/application-empty-error-states/contributions/tacs/tac-2303-application-empty-error-states-offline-buffer.json +40 -0
  52. package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22101.json +29 -0
  53. package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22102.json +29 -0
  54. package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22103.json +29 -0
  55. package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22104.json +29 -0
  56. package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22105.json +29 -0
  57. package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22106.json +29 -0
  58. package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22107.json +29 -0
  59. package/blueprints/application-empty-error-states/contributions/user-stories/application-empty-error-states-us-22108.json +29 -0
  60. package/blueprints/application-empty-error-states/docs/topics.md +55 -0
  61. package/blueprints/application-empty-error-states/guide/application-empty-error-states.md +50 -0
  62. package/blueprints/application-empty-error-states/probe-packs/application-empty-error-states.pack.mjs +284 -0
  63. package/blueprints/application-error-handling/docs/topics.md +9 -0
  64. package/blueprints/application-file-upload/CHANGELOG.md +9 -0
  65. package/blueprints/application-file-upload/README.md +85 -0
  66. package/blueprints/application-file-upload/blueprint.json +114 -0
  67. package/blueprints/application-file-upload/contributions/adrs/adr-2401-application-file-upload-transport.json +25 -0
  68. package/blueprints/application-file-upload/contributions/adrs/adr-2402-application-file-upload-accepted-set.json +25 -0
  69. package/blueprints/application-file-upload/contributions/adrs/adr-2403-application-file-upload-virus-scan.json +25 -0
  70. package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-001.json +18 -0
  71. package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-002.json +18 -0
  72. package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-003.json +18 -0
  73. package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-004.json +18 -0
  74. package/blueprints/application-file-upload/contributions/requirements/application-file-upload-req-005.json +18 -0
  75. package/blueprints/application-file-upload/contributions/tacs/tac-2401-application-file-upload-input.json +46 -0
  76. package/blueprints/application-file-upload/contributions/tacs/tac-2402-application-file-upload-transport.json +47 -0
  77. package/blueprints/application-file-upload/contributions/tacs/tac-2403-application-file-upload-progress-announcer.json +46 -0
  78. package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23101.json +28 -0
  79. package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23102.json +28 -0
  80. package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23103.json +29 -0
  81. package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23104.json +28 -0
  82. package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23105.json +29 -0
  83. package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23106.json +28 -0
  84. package/blueprints/application-file-upload/contributions/user-stories/application-file-upload-us-23107.json +28 -0
  85. package/blueprints/application-file-upload/docs/topics.md +60 -0
  86. package/blueprints/application-file-upload/guide/application-file-upload.md +48 -0
  87. package/blueprints/application-file-upload/probe-packs/application-file-upload.pack.mjs +238 -0
  88. package/blueprints/application-forms-wizard/CHANGELOG.md +9 -0
  89. package/blueprints/application-forms-wizard/README.md +102 -0
  90. package/blueprints/application-forms-wizard/blueprint.json +120 -0
  91. package/blueprints/application-forms-wizard/contributions/adrs/adr-2501-application-forms-wizard-navigation.json +25 -0
  92. package/blueprints/application-forms-wizard/contributions/adrs/adr-2502-application-forms-wizard-save-and-return.json +25 -0
  93. package/blueprints/application-forms-wizard/contributions/adrs/adr-2503-application-forms-wizard-step-indicator.json +25 -0
  94. package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-001.json +18 -0
  95. package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-002.json +18 -0
  96. package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-003.json +18 -0
  97. package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-004.json +18 -0
  98. package/blueprints/application-forms-wizard/contributions/requirements/application-forms-wizard-req-005.json +18 -0
  99. package/blueprints/application-forms-wizard/contributions/tacs/tac-2501-application-forms-wizard-task-list.json +46 -0
  100. package/blueprints/application-forms-wizard/contributions/tacs/tac-2502-application-forms-wizard-error-summary.json +40 -0
  101. package/blueprints/application-forms-wizard/contributions/tacs/tac-2503-application-forms-wizard-draft-store.json +40 -0
  102. package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24101.json +28 -0
  103. package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24102.json +29 -0
  104. package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24103.json +28 -0
  105. package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24104.json +29 -0
  106. package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24105.json +28 -0
  107. package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24106.json +28 -0
  108. package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24107.json +28 -0
  109. package/blueprints/application-forms-wizard/contributions/user-stories/application-forms-wizard-us-24108.json +29 -0
  110. package/blueprints/application-forms-wizard/docs/topics.md +51 -0
  111. package/blueprints/application-forms-wizard/guide/application-forms-wizard.md +48 -0
  112. package/blueprints/application-forms-wizard/probe-packs/application-forms-wizard.pack.mjs +233 -0
  113. package/blueprints/application-notifications-in-app/docs/topics.md +9 -0
  114. package/blueprints/application-onboarding-tour/CHANGELOG.md +12 -0
  115. package/blueprints/application-onboarding-tour/README.md +77 -0
  116. package/blueprints/application-onboarding-tour/blueprint.json +164 -0
  117. package/blueprints/application-onboarding-tour/contributions/adrs/adr-2701-application-onboarding-tour-dismissal-policy.json +20 -0
  118. package/blueprints/application-onboarding-tour/contributions/adrs/adr-2702-application-onboarding-tour-completion-store-shape.json +20 -0
  119. package/blueprints/application-onboarding-tour/contributions/adrs/adr-2703-application-onboarding-tour-checklist-anchor.json +20 -0
  120. package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-001.json +18 -0
  121. package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-002.json +18 -0
  122. package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-003.json +18 -0
  123. package/blueprints/application-onboarding-tour/contributions/requirements/application-onboarding-tour-req-004.json +18 -0
  124. package/blueprints/application-onboarding-tour/contributions/tacs/tac-2701-application-onboarding-tour-step-runner.json +41 -0
  125. package/blueprints/application-onboarding-tour/contributions/tacs/tac-2702-application-onboarding-tour-checklist-slot.json +35 -0
  126. package/blueprints/application-onboarding-tour/contributions/tacs/tac-2703-application-onboarding-tour-completion-store.json +34 -0
  127. package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26101.json +27 -0
  128. package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26102.json +27 -0
  129. package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26103.json +27 -0
  130. package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26104.json +27 -0
  131. package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26105.json +27 -0
  132. package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26106.json +27 -0
  133. package/blueprints/application-onboarding-tour/contributions/user-stories/application-onboarding-tour-us-26107.json +27 -0
  134. package/blueprints/application-onboarding-tour/docs/topics.md +50 -0
  135. package/blueprints/application-onboarding-tour/guide/application-onboarding-tour.md +59 -0
  136. package/blueprints/application-onboarding-tour/probe-packs/application-onboarding-tour.pack.mjs +231 -0
  137. package/blueprints/application-spa/docs/topics.md +11 -2
  138. package/blueprints/delivery-ci-workflows/docs/topics.md +10 -1
  139. package/blueprints/deploy-cloudflare-workers/CHANGELOG.md +69 -0
  140. package/blueprints/deploy-cloudflare-workers/README.md +12 -0
  141. package/blueprints/deploy-cloudflare-workers/blueprint.json +234 -36
  142. package/blueprints/deploy-cloudflare-workers/contributions/adrs/adr-1306-deploy-cloudflare-workers-spa-shape.json +30 -0
  143. package/blueprints/deploy-cloudflare-workers/contributions/probes/assets-manifest-scan.mjs +207 -0
  144. package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-013.json +18 -0
  145. package/blueprints/deploy-cloudflare-workers/contributions/requirements/deploy-cloudflare-workers-req-014.json +18 -0
  146. package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12113.json +36 -0
  147. package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12114.json +27 -0
  148. package/blueprints/deploy-cloudflare-workers/contributions/user-stories/deploy-cloudflare-workers-us-12115.json +27 -0
  149. package/blueprints/deploy-cloudflare-workers/docs/topics.md +11 -2
  150. package/blueprints/deploy-cloudflare-workers/guide/deploy-cloudflare-workers.md +25 -0
  151. package/blueprints/email-smtp-resend/docs/topics.md +10 -1
  152. package/blueprints/jobs-background/CHANGELOG.md +16 -0
  153. package/blueprints/jobs-background/README.md +105 -0
  154. package/blueprints/jobs-background/blueprint.json +149 -0
  155. package/blueprints/jobs-background/contributions/adrs/adr-3101-jobs-background-model.json +27 -0
  156. package/blueprints/jobs-background/contributions/adrs/adr-3102-jobs-background-scheduler-mode.json +25 -0
  157. package/blueprints/jobs-background/contributions/adrs/adr-3103-jobs-background-requires-applied-capabilities.json +25 -0
  158. package/blueprints/jobs-background/contributions/adrs/adr-3104-jobs-background-timeout-floor.json +25 -0
  159. package/blueprints/jobs-background/contributions/probes/apply-time-override.mjs +95 -0
  160. package/blueprints/jobs-background/contributions/probes/apply-time-refusal.mjs +82 -0
  161. package/blueprints/jobs-background/contributions/probes/event-secrecy.mjs +69 -0
  162. package/blueprints/jobs-background/contributions/probes/fake-clock-cron.mjs +65 -0
  163. package/blueprints/jobs-background/contributions/probes/probe-utils.mjs +91 -0
  164. package/blueprints/jobs-background/contributions/probes/retry-and-fail.mjs +65 -0
  165. package/blueprints/jobs-background/contributions/probes/run-apply-time-override.mjs +10 -0
  166. package/blueprints/jobs-background/contributions/probes/run-apply-time-refusal.mjs +11 -0
  167. package/blueprints/jobs-background/contributions/probes/run-event-secrecy.mjs +11 -0
  168. package/blueprints/jobs-background/contributions/probes/run-fake-clock-cron.mjs +11 -0
  169. package/blueprints/jobs-background/contributions/probes/run-retry-and-fail.mjs +11 -0
  170. package/blueprints/jobs-background/contributions/requirements/jobs-background-req-001.json +18 -0
  171. package/blueprints/jobs-background/contributions/requirements/jobs-background-req-002.json +18 -0
  172. package/blueprints/jobs-background/contributions/requirements/jobs-background-req-003.json +18 -0
  173. package/blueprints/jobs-background/contributions/requirements/jobs-background-req-004.json +18 -0
  174. package/blueprints/jobs-background/contributions/requirements/jobs-background-req-005.json +18 -0
  175. package/blueprints/jobs-background/contributions/requirements/jobs-background-req-006.json +18 -0
  176. package/blueprints/jobs-background/contributions/tacs/tac-3101-jobs-background-job-definition.json +50 -0
  177. package/blueprints/jobs-background/contributions/tacs/tac-3102-jobs-background-scheduler.json +50 -0
  178. package/blueprints/jobs-background/contributions/tacs/tac-3103-jobs-background-run-log.json +49 -0
  179. package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30101.json +25 -0
  180. package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30102.json +25 -0
  181. package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30103.json +25 -0
  182. package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30104.json +25 -0
  183. package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30105.json +25 -0
  184. package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30106.json +25 -0
  185. package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30107.json +25 -0
  186. package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30108.json +25 -0
  187. package/blueprints/jobs-background/contributions/user-stories/jobs-background-us-30109.json +25 -0
  188. package/blueprints/jobs-background/docs/topics.md +62 -0
  189. package/blueprints/jobs-background/guide/jobs-background.md +147 -0
  190. package/blueprints/messaging-queue-cloudflare/CHANGELOG.md +15 -0
  191. package/blueprints/messaging-queue-cloudflare/README.md +125 -0
  192. package/blueprints/messaging-queue-cloudflare/blueprint.json +67 -0
  193. package/blueprints/messaging-queue-cloudflare/contributions/adrs/adr-3001-messaging-queue-cloudflare-adapter.json +30 -0
  194. package/blueprints/messaging-queue-cloudflare/contributions/adrs/adr-3002-messaging-queue-cloudflare-delivery-semantics.json +25 -0
  195. package/blueprints/messaging-queue-cloudflare/contributions/adrs/adr-3003-messaging-queue-cloudflare-max-attempts-floor.json +25 -0
  196. package/blueprints/messaging-queue-cloudflare/contributions/adrs/adr-3004-messaging-queue-cloudflare-batch-defaults.json +25 -0
  197. package/blueprints/messaging-queue-cloudflare/contributions/probes/event-secrecy.mjs +137 -0
  198. package/blueprints/messaging-queue-cloudflare/contributions/probes/probe-utils.mjs +82 -0
  199. package/blueprints/messaging-queue-cloudflare/contributions/probes/producer-facade-ready.mjs +35 -0
  200. package/blueprints/messaging-queue-cloudflare/contributions/probes/publish-to-delivery.mjs +94 -0
  201. package/blueprints/messaging-queue-cloudflare/contributions/probes/real-account-concurrency-smoke.mjs +54 -0
  202. package/blueprints/messaging-queue-cloudflare/contributions/probes/retry-and-dlq.mjs +87 -0
  203. package/blueprints/messaging-queue-cloudflare/contributions/probes/run-event-secrecy.mjs +5 -0
  204. package/blueprints/messaging-queue-cloudflare/contributions/probes/run-producer-facade-ready.mjs +11 -0
  205. package/blueprints/messaging-queue-cloudflare/contributions/probes/run-publish-to-delivery.mjs +5 -0
  206. package/blueprints/messaging-queue-cloudflare/contributions/probes/run-real-account-concurrency-smoke.mjs +5 -0
  207. package/blueprints/messaging-queue-cloudflare/contributions/probes/run-retry-and-dlq.mjs +5 -0
  208. package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-001.json +18 -0
  209. package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-002.json +18 -0
  210. package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-003.json +18 -0
  211. package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-004.json +18 -0
  212. package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-005.json +18 -0
  213. package/blueprints/messaging-queue-cloudflare/contributions/requirements/messaging-queue-cloudflare-req-006.json +18 -0
  214. package/blueprints/messaging-queue-cloudflare/contributions/tacs/tac-3001-messaging-queue-cloudflare-producer-facade.json +56 -0
  215. package/blueprints/messaging-queue-cloudflare/contributions/tacs/tac-3002-messaging-queue-cloudflare-consumer-registration.json +40 -0
  216. package/blueprints/messaging-queue-cloudflare/contributions/tacs/tac-3003-messaging-queue-cloudflare-event-sink.json +39 -0
  217. package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29101.json +34 -0
  218. package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29102.json +34 -0
  219. package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29103.json +25 -0
  220. package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29104.json +25 -0
  221. package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29105.json +25 -0
  222. package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29106.json +25 -0
  223. package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29107.json +25 -0
  224. package/blueprints/messaging-queue-cloudflare/contributions/user-stories/messaging-queue-cloudflare-us-29108.json +25 -0
  225. package/blueprints/messaging-queue-cloudflare/docs/topics.md +62 -0
  226. package/blueprints/messaging-queue-cloudflare/guide/messaging-queue-cloudflare.md +110 -0
  227. package/blueprints/object-storage-s3/CHANGELOG.md +13 -0
  228. package/blueprints/object-storage-s3/README.md +108 -0
  229. package/blueprints/object-storage-s3/blueprint.json +72 -0
  230. package/blueprints/object-storage-s3/contributions/adrs/adr-2901-object-storage-s3-adapter.json +30 -0
  231. package/blueprints/object-storage-s3/contributions/adrs/adr-2902-object-storage-s3-presigned-ttl-floor.json +25 -0
  232. package/blueprints/object-storage-s3/contributions/adrs/adr-2903-object-storage-s3-multipart-threshold.json +25 -0
  233. package/blueprints/object-storage-s3/contributions/adrs/adr-2904-object-storage-s3-contract.json +25 -0
  234. package/blueprints/object-storage-s3/contributions/probes/event-secrecy.mjs +103 -0
  235. package/blueprints/object-storage-s3/contributions/probes/facade-round-trip.mjs +43 -0
  236. package/blueprints/object-storage-s3/contributions/probes/multipart-upload.mjs +84 -0
  237. package/blueprints/object-storage-s3/contributions/probes/presigned-url.mjs +101 -0
  238. package/blueprints/object-storage-s3/contributions/probes/probe-utils.mjs +85 -0
  239. package/blueprints/object-storage-s3/contributions/probes/put-get-round-trip.mjs +84 -0
  240. package/blueprints/object-storage-s3/contributions/probes/r2-real-account-smoke.mjs +64 -0
  241. package/blueprints/object-storage-s3/contributions/probes/run-event-secrecy.mjs +4 -0
  242. package/blueprints/object-storage-s3/contributions/probes/run-facade-round-trip.mjs +10 -0
  243. package/blueprints/object-storage-s3/contributions/probes/run-multipart-upload.mjs +4 -0
  244. package/blueprints/object-storage-s3/contributions/probes/run-presigned-url.mjs +4 -0
  245. package/blueprints/object-storage-s3/contributions/probes/run-put-get-round-trip.mjs +7 -0
  246. package/blueprints/object-storage-s3/contributions/probes/run-r2-real-account-smoke.mjs +4 -0
  247. package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-001.json +18 -0
  248. package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-002.json +18 -0
  249. package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-003.json +18 -0
  250. package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-004.json +18 -0
  251. package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-005.json +18 -0
  252. package/blueprints/object-storage-s3/contributions/requirements/object-storage-s3-req-006.json +18 -0
  253. package/blueprints/object-storage-s3/contributions/tacs/tac-2901-object-storage-s3-facade.json +57 -0
  254. package/blueprints/object-storage-s3/contributions/tacs/tac-2902-object-storage-s3-multipart-uploader.json +36 -0
  255. package/blueprints/object-storage-s3/contributions/tacs/tac-2903-object-storage-s3-event-sink.json +36 -0
  256. package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28101.json +34 -0
  257. package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28102.json +43 -0
  258. package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28103.json +25 -0
  259. package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28104.json +34 -0
  260. package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28105.json +25 -0
  261. package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28106.json +34 -0
  262. package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28107.json +34 -0
  263. package/blueprints/object-storage-s3/contributions/user-stories/object-storage-s3-us-28108.json +34 -0
  264. package/blueprints/object-storage-s3/docs/topics.md +64 -0
  265. package/blueprints/object-storage-s3/guide/object-storage-s3.md +207 -0
  266. package/blueprints/observability-essentials/docs/topics.md +10 -1
  267. package/blueprints/observability-logging/CHANGELOG.md +4 -0
  268. package/blueprints/observability-logging/README.md +3 -0
  269. package/blueprints/observability-logging/blueprint.json +3 -2
  270. package/blueprints/observability-logging/docs/topics.md +9 -0
  271. package/blueprints/observability-probe-endpoints/docs/topics.md +10 -1
  272. package/blueprints/persistence-data-d1/docs/topics.md +10 -1
  273. package/blueprints/persistence-data-postgres/CHANGELOG.md +12 -0
  274. package/blueprints/persistence-data-postgres/README.md +101 -0
  275. package/blueprints/persistence-data-postgres/blueprint.json +80 -0
  276. package/blueprints/persistence-data-postgres/contributions/adrs/adr-2801-persistence-data-postgres-driver.json +30 -0
  277. package/blueprints/persistence-data-postgres/contributions/adrs/adr-2802-persistence-data-postgres-migration-shape.json +25 -0
  278. package/blueprints/persistence-data-postgres/contributions/adrs/adr-2803-persistence-data-postgres-runner-mode.json +25 -0
  279. package/blueprints/persistence-data-postgres/contributions/adrs/adr-2804-persistence-data-postgres-recovery.json +25 -0
  280. package/blueprints/persistence-data-postgres/contributions/adrs/adr-2805-persistence-data-postgres-connection-pool-posture.json +25 -0
  281. package/blueprints/persistence-data-postgres/contributions/probes/facade-round-trip.mjs +56 -0
  282. package/blueprints/persistence-data-postgres/contributions/probes/migration-apply.mjs +75 -0
  283. package/blueprints/persistence-data-postgres/contributions/probes/pool-posture-smoke.mjs +56 -0
  284. package/blueprints/persistence-data-postgres/contributions/probes/prepared-statement-scan.mjs +186 -0
  285. package/blueprints/persistence-data-postgres/contributions/probes/probe-utils.mjs +76 -0
  286. package/blueprints/persistence-data-postgres/contributions/probes/recovery-restore-round-trip.mjs +173 -0
  287. package/blueprints/persistence-data-postgres/contributions/probes/run-facade-round-trip.mjs +10 -0
  288. package/blueprints/persistence-data-postgres/contributions/probes/run-migration-apply.mjs +10 -0
  289. package/blueprints/persistence-data-postgres/contributions/probes/run-pool-posture-smoke.mjs +9 -0
  290. package/blueprints/persistence-data-postgres/contributions/probes/run-prepared-statement-scan.mjs +10 -0
  291. package/blueprints/persistence-data-postgres/contributions/probes/run-recovery-restore-round-trip.mjs +9 -0
  292. package/blueprints/persistence-data-postgres/contributions/probes/run-transaction-atomicity.mjs +10 -0
  293. package/blueprints/persistence-data-postgres/contributions/probes/transaction-atomicity.mjs +79 -0
  294. package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-001.json +18 -0
  295. package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-002.json +18 -0
  296. package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-003.json +18 -0
  297. package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-004.json +18 -0
  298. package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-005.json +18 -0
  299. package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-006.json +18 -0
  300. package/blueprints/persistence-data-postgres/contributions/requirements/persistence-data-postgres-req-007.json +18 -0
  301. package/blueprints/persistence-data-postgres/contributions/tacs/tac-2801-persistence-data-postgres-facade.json +58 -0
  302. package/blueprints/persistence-data-postgres/contributions/tacs/tac-2802-persistence-data-postgres-migration-runner.json +40 -0
  303. package/blueprints/persistence-data-postgres/contributions/tacs/tac-2803-persistence-data-postgres-transaction-helper.json +35 -0
  304. package/blueprints/persistence-data-postgres/contributions/tacs/tac-2804-persistence-data-postgres-recovery-runner.json +40 -0
  305. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27101.json +34 -0
  306. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27102.json +25 -0
  307. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27103.json +25 -0
  308. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27104.json +25 -0
  309. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27105.json +25 -0
  310. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27106.json +25 -0
  311. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27107.json +25 -0
  312. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27108.json +25 -0
  313. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27109.json +25 -0
  314. package/blueprints/persistence-data-postgres/contributions/user-stories/persistence-data-postgres-us-27110.json +25 -0
  315. package/blueprints/persistence-data-postgres/docs/topics.md +66 -0
  316. package/blueprints/persistence-data-postgres/guide/persistence-data-postgres.md +172 -0
  317. package/blueprints/persistence-data-sqlite/docs/topics.md +10 -1
  318. package/blueprints/security-auth-clerk/CHANGELOG.md +4 -0
  319. package/blueprints/security-auth-clerk/README.md +3 -0
  320. package/blueprints/security-auth-clerk/blueprint.json +147 -30
  321. package/blueprints/security-auth-clerk/docs/topics.md +10 -1
  322. package/blueprints/security-auth-keycloak/CHANGELOG.md +4 -0
  323. package/blueprints/security-auth-keycloak/README.md +3 -0
  324. package/blueprints/security-auth-keycloak/blueprint.json +182 -37
  325. package/blueprints/security-auth-keycloak/docs/topics.md +10 -1
  326. package/blueprints/security-auth-magic-link/CHANGELOG.md +4 -0
  327. package/blueprints/security-auth-magic-link/README.md +3 -0
  328. package/blueprints/security-auth-magic-link/blueprint.json +159 -33
  329. package/blueprints/security-auth-magic-link/docs/topics.md +10 -1
  330. package/blueprints/security-auth-oauth2/CHANGELOG.md +4 -0
  331. package/blueprints/security-auth-oauth2/README.md +3 -0
  332. package/blueprints/security-auth-oauth2/blueprint.json +158 -32
  333. package/blueprints/security-auth-oauth2/docs/topics.md +10 -1
  334. package/blueprints/security-secrets-management/CHANGELOG.md +11 -0
  335. package/blueprints/security-secrets-management/blueprint.json +2 -1
  336. package/blueprints/security-secrets-management/docs/topics.md +10 -1
  337. package/fixtures/canary-manifest.json +9 -9
  338. package/package.json +1 -1
  339. package/rcf/code-nodes/cn-134.json +13 -0
  340. package/rcf/code-nodes/cn-135.json +12 -0
  341. package/rcf/code-nodes/cn-136.json +13 -0
  342. package/rcf/code-nodes/cn-137.json +13 -0
  343. package/rcf/code-nodes/cn-138.json +12 -0
  344. package/rcf/code-nodes/cn-139.json +12 -0
  345. package/rcf/code-nodes/cn-140.json +13 -0
  346. package/rcf/code-nodes/cn-141.json +13 -0
  347. package/rcf/code-nodes/cn-142.json +12 -0
  348. package/rcf/code-nodes/cn-143.json +13 -0
  349. package/rcf/code-nodes/cn-144.json +13 -0
  350. package/rcf/code-nodes/cn-145.json +12 -0
  351. package/rcf/code-nodes/cn-146.json +12 -0
  352. package/rcf/code-nodes/cn-147.json +13 -0
  353. package/rcf/code-nodes/cn-148.json +13 -0
  354. package/rcf/code-nodes/cn-149.json +12 -0
  355. package/rcf/code-nodes/cn-150.json +13 -0
  356. package/rcf/code-nodes/cn-151.json +13 -0
  357. package/rcf/code-nodes/cn-152.json +12 -0
  358. package/rcf/code-nodes/cn-153.json +12 -0
  359. package/rcf/code-nodes/cn-154.json +13 -0
  360. package/rcf/code-nodes/cn-155.json +14 -0
  361. package/rcf/code-nodes/cn-156.json +13 -0
  362. package/rcf/code-nodes/cn-157.json +13 -0
  363. package/rcf/code-nodes/cn-158.json +12 -0
  364. package/rcf/code-nodes/cn-159.json +13 -0
  365. package/rcf/code-nodes/cn-160.json +12 -0
  366. package/rcf/code-nodes/cn-161.json +12 -0
  367. package/rcf/code-nodes/cn-162.json +13 -0
  368. package/rcf/code-nodes/cn-163.json +12 -0
  369. package/rcf/code-nodes/cn-164.json +13 -0
  370. package/rcf/code-nodes/cn-165.json +12 -0
  371. package/rcf/code-nodes/cn-166.json +12 -0
  372. package/rcf/code-nodes/cn-167.json +12 -0
  373. package/rcf/code-nodes/cn-168.json +12 -0
  374. package/rcf/code-nodes/cn-169.json +12 -0
  375. package/rcf/code-nodes/cn-170.json +12 -0
  376. package/rcf/code-nodes/cn-171.json +12 -0
  377. package/rcf/code-nodes/cn-172.json +12 -0
  378. package/rcf/code-nodes/cn-173.json +12 -0
  379. package/rcf/code-nodes/cn-174.json +12 -0
  380. package/rcf/code-nodes/cn-175.json +13 -0
  381. package/rcf/code-nodes/cn-176.json +12 -0
  382. package/rcf/code-nodes/cn-177.json +12 -0
  383. package/rcf/code-nodes/cn-178.json +12 -0
  384. package/rcf/code-nodes/cn-179.json +12 -0
  385. package/rcf/code-nodes/cn-180.json +13 -0
  386. package/rcf/code-nodes/cn-181.json +12 -0
  387. package/rcf/code-nodes/cn-182.json +13 -0
  388. package/rcf/code-nodes/cn-183.json +12 -0
  389. package/rcf/code-nodes/cn-184.json +13 -0
  390. package/rcf/code-nodes/cn-185.json +12 -0
  391. package/rcf/code-nodes/cn-186.json +12 -0
  392. package/rcf/code-nodes/cn-200.json +14 -0
  393. package/rcf/code-nodes/cn-201.json +13 -0
  394. package/rcf/code-nodes/cn-202.json +14 -0
  395. package/rcf/code-nodes/cn-203.json +14 -0
  396. package/rcf/code-nodes/cn-204.json +13 -0
  397. package/rcf/code-nodes/cn-205.json +14 -0
  398. package/rcf/code-nodes/cn-206.json +14 -0
  399. package/rcf/code-nodes/cn-207.json +13 -0
  400. package/rcf/code-nodes/cn-208.json +14 -0
  401. package/rcf/code-nodes/cn-209.json +14 -0
  402. package/rcf/code-nodes/cn-210.json +13 -0
  403. package/rcf/code-nodes/cn-211.json +12 -0
  404. package/rcf/code-nodes/cn-212.json +12 -0
  405. package/rcf/code-nodes/cn-213.json +12 -0
  406. package/rcf/code-nodes/cn-214.json +15 -0
  407. package/rcf/code-nodes/cn-215.json +13 -0
  408. package/rcf/code-nodes/cn-216.json +14 -0
  409. package/rcf/code-nodes/cn-217.json +13 -0
  410. package/rcf/fbs/fbs-043.json +23 -0
  411. package/rcf/fbs/fbs-044.json +23 -0
  412. package/rcf/fbs/fbs-045.json +23 -0
  413. package/rcf/fbs/fbs-046.json +24 -0
  414. package/rcf/fbs/fbs-047.json +24 -0
  415. package/rcf/fbs/fbs-060.json +22 -0
  416. package/rcf/fbs/fbs-061.json +20 -0
  417. package/rcf/fbs/fbs-062.json +20 -0
  418. package/rcf/fbs/fbs-063.json +22 -0
  419. package/rcf/fbs/fbs-064.json +23 -0
  420. package/rcf/requirements/req-024.json +69 -0
  421. package/rcf/requirements/req-025.json +59 -0
  422. package/rcf/requirements/req-026.json +154 -0
  423. package/rcf/requirements/req-027.json +33 -0
  424. package/rcf/requirements/req-028.json +13 -0
  425. package/rcf/requirements/req-029.json +57 -0
  426. package/rcf/requirements/req-030.json +67 -0
  427. package/rcf/requirements/req-040.json +13 -0
  428. package/rcf/requirements/req-041.json +125 -0
  429. package/rcf/requirements/req-042.json +59 -0
  430. package/rcf/requirements/req-043.json +39 -0
  431. package/rcf/test-suites/ts-053.json +70 -0
  432. package/rcf/test-suites/ts-054.json +70 -0
  433. package/rcf/test-suites/ts-055.json +77 -0
  434. package/rcf/test-suites/ts-056.json +78 -0
  435. package/rcf/test-suites/ts-057.json +78 -0
  436. package/rcf/test-suites/ts-070.json +62 -0
  437. package/rcf/test-suites/ts-071.json +62 -0
  438. package/rcf/test-suites/ts-072.json +62 -0
  439. package/rcf/test-suites/ts-073.json +38 -0
  440. package/rcf/test-suites/ts-074.json +30 -0
  441. package/rcf/test-suites/ts-075.json +38 -0
  442. package/rcf/test-suites/ts-076.json +70 -0
  443. package/rcf/user-stories/us-2401.json +62 -0
  444. package/rcf/user-stories/us-2501.json +58 -0
  445. package/rcf/user-stories/us-2601.json +51 -0
  446. package/rcf/user-stories/us-2701.json +55 -0
  447. package/rcf/user-stories/us-2801.json +55 -0
  448. package/rcf/user-stories/us-2901.json +45 -0
  449. package/rcf/user-stories/us-2902.json +36 -0
  450. package/rcf/user-stories/us-3001.json +45 -0
  451. package/rcf/user-stories/us-4001.json +69 -0
  452. package/rcf/user-stories/us-4101.json +69 -0
  453. package/rcf/user-stories/us-4201.json +69 -0
  454. package/rcf/user-stories/us-4301.json +78 -0
  455. package/releases/releases.yaml +21 -1
  456. package/src/blueprint/apply.js +13 -1
  457. package/src/blueprint/capabilities.js +66 -2
  458. package/src/cli/blueprint.js +15 -1
@@ -1,33 +1,134 @@
1
1
  {
2
2
  "slug": "security-auth-clerk",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "category": "security",
5
- "capabilities": ["principalDirectory", "roleModel"],
5
+ "capabilities": [
6
+ "principalDirectory",
7
+ "roleModel",
8
+ "sessionInventory",
9
+ "hostedIdentityUi"
10
+ ],
6
11
  "contributions": [
7
- { "id": "security-auth-clerk-REQ-001", "kind": "req", "path": "requirements/security-auth-clerk-req-001.json" },
8
- { "id": "security-auth-clerk-REQ-002", "kind": "req", "path": "requirements/security-auth-clerk-req-002.json" },
9
- { "id": "security-auth-clerk-REQ-003", "kind": "req", "path": "requirements/security-auth-clerk-req-003.json" },
10
- { "id": "security-auth-clerk-REQ-004", "kind": "req", "path": "requirements/security-auth-clerk-req-004.json" },
11
- { "id": "security-auth-clerk-REQ-005", "kind": "req", "path": "requirements/security-auth-clerk-req-005.json" },
12
- { "id": "security-auth-clerk-REQ-006", "kind": "req", "path": "requirements/security-auth-clerk-req-006.json" },
13
- { "id": "security-auth-clerk-REQ-007", "kind": "req", "path": "requirements/security-auth-clerk-req-007.json" },
14
- { "id": "security-auth-clerk-REQ-008", "kind": "req", "path": "requirements/security-auth-clerk-req-008.json" },
15
- { "id": "security-auth-clerk-REQ-009", "kind": "req", "path": "requirements/security-auth-clerk-req-009.json" },
16
- { "id": "security-auth-clerk-US-9101", "kind": "us", "path": "user-stories/security-auth-clerk-us-9101.json" },
17
- { "id": "security-auth-clerk-US-9102", "kind": "us", "path": "user-stories/security-auth-clerk-us-9102.json" },
18
- { "id": "security-auth-clerk-US-9103", "kind": "us", "path": "user-stories/security-auth-clerk-us-9103.json" },
19
- { "id": "security-auth-clerk-US-9104", "kind": "us", "path": "user-stories/security-auth-clerk-us-9104.json" },
20
- { "id": "security-auth-clerk-US-9105", "kind": "us", "path": "user-stories/security-auth-clerk-us-9105.json" },
21
- { "id": "security-auth-clerk-US-9106", "kind": "us", "path": "user-stories/security-auth-clerk-us-9106.json" },
22
- { "id": "security-auth-clerk-US-9107", "kind": "us", "path": "user-stories/security-auth-clerk-us-9107.json" },
23
- { "id": "security-auth-clerk-US-9108", "kind": "us", "path": "user-stories/security-auth-clerk-us-9108.json" },
24
- { "id": "security-auth-clerk-US-9109", "kind": "us", "path": "user-stories/security-auth-clerk-us-9109.json" },
25
- { "id": "security-auth-clerk-US-9110", "kind": "us", "path": "user-stories/security-auth-clerk-us-9110.json" },
26
- { "id": "security-auth-clerk-US-9111", "kind": "us", "path": "user-stories/security-auth-clerk-us-9111.json" },
27
- { "id": "TAC-1001-security-auth-clerk-middleware", "kind": "tac", "path": "tacs/tac-1001-security-auth-clerk-middleware.json" },
28
- { "id": "TAC-1002-security-auth-clerk-authorisation-adapter", "kind": "tac", "path": "tacs/tac-1002-security-auth-clerk-authorisation-adapter.json" },
29
- { "id": "TAC-1003-security-auth-clerk-session-verifier", "kind": "tac", "path": "tacs/tac-1003-security-auth-clerk-session-verifier.json" },
30
- { "id": "TAC-1004-security-auth-clerk-claims-mapper", "kind": "tac", "path": "tacs/tac-1004-security-auth-clerk-claims-mapper.json" },
12
+ {
13
+ "id": "security-auth-clerk-REQ-001",
14
+ "kind": "req",
15
+ "path": "requirements/security-auth-clerk-req-001.json"
16
+ },
17
+ {
18
+ "id": "security-auth-clerk-REQ-002",
19
+ "kind": "req",
20
+ "path": "requirements/security-auth-clerk-req-002.json"
21
+ },
22
+ {
23
+ "id": "security-auth-clerk-REQ-003",
24
+ "kind": "req",
25
+ "path": "requirements/security-auth-clerk-req-003.json"
26
+ },
27
+ {
28
+ "id": "security-auth-clerk-REQ-004",
29
+ "kind": "req",
30
+ "path": "requirements/security-auth-clerk-req-004.json"
31
+ },
32
+ {
33
+ "id": "security-auth-clerk-REQ-005",
34
+ "kind": "req",
35
+ "path": "requirements/security-auth-clerk-req-005.json"
36
+ },
37
+ {
38
+ "id": "security-auth-clerk-REQ-006",
39
+ "kind": "req",
40
+ "path": "requirements/security-auth-clerk-req-006.json"
41
+ },
42
+ {
43
+ "id": "security-auth-clerk-REQ-007",
44
+ "kind": "req",
45
+ "path": "requirements/security-auth-clerk-req-007.json"
46
+ },
47
+ {
48
+ "id": "security-auth-clerk-REQ-008",
49
+ "kind": "req",
50
+ "path": "requirements/security-auth-clerk-req-008.json"
51
+ },
52
+ {
53
+ "id": "security-auth-clerk-REQ-009",
54
+ "kind": "req",
55
+ "path": "requirements/security-auth-clerk-req-009.json"
56
+ },
57
+ {
58
+ "id": "security-auth-clerk-US-9101",
59
+ "kind": "us",
60
+ "path": "user-stories/security-auth-clerk-us-9101.json"
61
+ },
62
+ {
63
+ "id": "security-auth-clerk-US-9102",
64
+ "kind": "us",
65
+ "path": "user-stories/security-auth-clerk-us-9102.json"
66
+ },
67
+ {
68
+ "id": "security-auth-clerk-US-9103",
69
+ "kind": "us",
70
+ "path": "user-stories/security-auth-clerk-us-9103.json"
71
+ },
72
+ {
73
+ "id": "security-auth-clerk-US-9104",
74
+ "kind": "us",
75
+ "path": "user-stories/security-auth-clerk-us-9104.json"
76
+ },
77
+ {
78
+ "id": "security-auth-clerk-US-9105",
79
+ "kind": "us",
80
+ "path": "user-stories/security-auth-clerk-us-9105.json"
81
+ },
82
+ {
83
+ "id": "security-auth-clerk-US-9106",
84
+ "kind": "us",
85
+ "path": "user-stories/security-auth-clerk-us-9106.json"
86
+ },
87
+ {
88
+ "id": "security-auth-clerk-US-9107",
89
+ "kind": "us",
90
+ "path": "user-stories/security-auth-clerk-us-9107.json"
91
+ },
92
+ {
93
+ "id": "security-auth-clerk-US-9108",
94
+ "kind": "us",
95
+ "path": "user-stories/security-auth-clerk-us-9108.json"
96
+ },
97
+ {
98
+ "id": "security-auth-clerk-US-9109",
99
+ "kind": "us",
100
+ "path": "user-stories/security-auth-clerk-us-9109.json"
101
+ },
102
+ {
103
+ "id": "security-auth-clerk-US-9110",
104
+ "kind": "us",
105
+ "path": "user-stories/security-auth-clerk-us-9110.json"
106
+ },
107
+ {
108
+ "id": "security-auth-clerk-US-9111",
109
+ "kind": "us",
110
+ "path": "user-stories/security-auth-clerk-us-9111.json"
111
+ },
112
+ {
113
+ "id": "TAC-1001-security-auth-clerk-middleware",
114
+ "kind": "tac",
115
+ "path": "tacs/tac-1001-security-auth-clerk-middleware.json"
116
+ },
117
+ {
118
+ "id": "TAC-1002-security-auth-clerk-authorisation-adapter",
119
+ "kind": "tac",
120
+ "path": "tacs/tac-1002-security-auth-clerk-authorisation-adapter.json"
121
+ },
122
+ {
123
+ "id": "TAC-1003-security-auth-clerk-session-verifier",
124
+ "kind": "tac",
125
+ "path": "tacs/tac-1003-security-auth-clerk-session-verifier.json"
126
+ },
127
+ {
128
+ "id": "TAC-1004-security-auth-clerk-claims-mapper",
129
+ "kind": "tac",
130
+ "path": "tacs/tac-1004-security-auth-clerk-claims-mapper.json"
131
+ },
31
132
  {
32
133
  "id": "ADR-1001-security-auth-clerk-auth-model",
33
134
  "kind": "adr",
@@ -35,9 +136,25 @@
35
136
  "scope": "global",
36
137
  "topic": "authModel"
37
138
  },
38
- { "id": "ADR-1002-security-auth-clerk-middleware-boundary", "kind": "adr", "path": "adrs/adr-1002-security-auth-clerk-middleware-boundary.json" },
39
- { "id": "ADR-1003-security-auth-clerk-authorisation-adapter-contract", "kind": "adr", "path": "adrs/adr-1003-security-auth-clerk-authorisation-adapter-contract.json" },
40
- { "id": "ADR-1004-security-auth-clerk-claims-mapping-discipline", "kind": "adr", "path": "adrs/adr-1004-security-auth-clerk-claims-mapping-discipline.json" },
41
- { "id": "ADR-1005-security-auth-clerk-session-lifecycle", "kind": "adr", "path": "adrs/adr-1005-security-auth-clerk-session-lifecycle.json" }
139
+ {
140
+ "id": "ADR-1002-security-auth-clerk-middleware-boundary",
141
+ "kind": "adr",
142
+ "path": "adrs/adr-1002-security-auth-clerk-middleware-boundary.json"
143
+ },
144
+ {
145
+ "id": "ADR-1003-security-auth-clerk-authorisation-adapter-contract",
146
+ "kind": "adr",
147
+ "path": "adrs/adr-1003-security-auth-clerk-authorisation-adapter-contract.json"
148
+ },
149
+ {
150
+ "id": "ADR-1004-security-auth-clerk-claims-mapping-discipline",
151
+ "kind": "adr",
152
+ "path": "adrs/adr-1004-security-auth-clerk-claims-mapping-discipline.json"
153
+ },
154
+ {
155
+ "id": "ADR-1005-security-auth-clerk-session-lifecycle",
156
+ "kind": "adr",
157
+ "path": "adrs/adr-1005-security-auth-clerk-session-lifecycle.json"
158
+ }
42
159
  ]
43
160
  }
@@ -28,7 +28,7 @@ This table is maintained shelf-wide across every blueprint's `docs/topics.md`. R
28
28
  | persistence-data-sqlite | 5101-5899 | 6xx | shipped v1.0.0 | `persistenceStore`, `migrationDiscipline` |
29
29
  | delivery-ci-workflows | 6101-6899 | 7xx | shipped v2.0.0 (renamed from ci-pipeline) | `ciGates`, `strictCoverageGate`, `releaseArtefacts` |
30
30
  | observability-essentials | 7101-7899 | 8xx | shipped v2.0.0 | `statusPageContract` |
31
- | security-secrets-management | 8101-8899 | 9xx | shipped v1.0.0 | `secretsSource` |
31
+ | security-secrets-management | 8101-8899 | 9xx | shipped v1.0.1 | `secretsSource` |
32
32
  | security-auth-clerk | 9101-9899 | 10xx | shipped v1.0.0 | `authModel` |
33
33
  | security-auth-oauth2 | 10101-10899 | 11xx | shipped v1.0.0 | `authModel` |
34
34
  | security-auth-keycloak | 11101-11899 | 12xx | shipped v1.0.0 | `authModel` |
@@ -40,6 +40,15 @@ This table is maintained shelf-wide across every blueprint's `docs/topics.md`. R
40
40
  | application-dashboard | 19101-19899 | 20xx | shipped v1.0.0 | none |
41
41
  | application-notifications-in-app | 20101-20899 | 21xx | shipped v1.0.0 | none |
42
42
  | application-admin-console | 21101-21899 | 22xx | shipped v1.0.0 | none |
43
+ | application-empty-error-states | 22101-22899 | 23xx | shipped v1.0.0 | none |
44
+ | application-file-upload | 23101-23899 | 24xx | shipped v1.0.0 | none |
45
+ | application-forms-wizard | 24101-24899 | 25xx | shipped v1.0.0 | none |
46
+ | application-account-settings | 25101-25899 | 26xx | shipped v1.0.0 | none |
47
+ | application-onboarding-tour | 26101-26899 | 27xx | shipped v1.0.0 | none |
48
+ | persistence-data-postgres | 27101-27899 | 28xx | shipped v1.0.0 | `persistenceStore`, `migrationDiscipline` |
49
+ | object-storage-s3 | 28101-28899 | 29xx | shipped v1.0.0 | `objectStorageContract` |
50
+ | messaging-queue-cloudflare | 29101-29899 | 30xx | shipped v1.0.0 | `deliverySemantics` |
51
+ | jobs-background | 30101-30899 | 31xx | shipped v1.0.0 | `backgroundJobModel` |
43
52
 
44
53
  US 9101-9110 sit at the LOW end of the 9101-9899 band on purpose. A project-side story that mechanically derives from a security-auth-clerk REQ id into the number `9110` would collide against security-auth-clerk-US-9110 in this package; the band leaves headroom at the HIGH end (US 9181-9899) so a project's own stories anchored to security-auth-clerk REQs can allocate without conflict. The watchpost run4 lesson applies here too.
45
54
 
@@ -1,5 +1,9 @@
1
1
  # security-auth-keycloak CHANGELOG
2
2
 
3
+ ## 1.2.0 (visual round T-4, spec 2026-09-06 section 5.4.2, Baz Q2 default)
4
+
5
+ - Declares `capabilities: [principalDirectory, roleModel, credentialSelfService, sessionInventory]` on `blueprint.json`. Additive per section 6 of `blueprint-authoring.md`. Consumed at apply time by the visual round T-4 `application-account-settings` blueprint to gate the security surface self-service branch (probe pack check `AC-25105-1`) and the sessions surface (`AC-25106-1`). Keycloak ships a credential self-service surface (password change, MFA management, email change) that a project can bring in-place and it exposes an active-session inventory a terminate action can act on. Keycloak does NOT declare `hostedIdentityUi` because its hosted-UI is realm-scoped and Keycloak deployments typically brand it in place, so the account-settings blueprint does not treat Keycloak as a hosted-UI provider.
6
+
3
7
  ## 1.1.0 (visual round T-5, spec 2026-09-04 section 5.5.2, Baz Q2 default)
4
8
 
5
9
  - Declares `capabilities: [principalDirectory, roleModel]` on `blueprint.json`. No other change. The new field is additive per section 6 of `blueprint-authoring.md` (an additive optional field with no global-topic change is a minor bump), and it is consumed by the visual round T-5 `application-admin-console` blueprint at apply time to gate surfaces on what the applied identity blueprint actually provides.
@@ -2,6 +2,9 @@
2
2
 
3
3
  The twelfth content blueprint on the rcf-build-lite blueprint mechanism, category `security`. A Keycloak-committed sibling to `security-auth-magic-link`, `security-auth-clerk`, and `security-auth-oauth2` on the `authModel` global topic. Identity is delegated to a Keycloak realm the operator runs; the project owns the discovery client, the token verifier (JWKS or introspection per realm), the role adapter, the provider-routing seam, and the optional application session on top. Targeted at rcf-lite projects that have committed to a self-hosted Keycloak realm (or are running one already) and want the Keycloak-shaped decisions the vendor-neutral `security-auth-oauth2` sibling deliberately does not fix.
4
4
 
5
+
6
+ > Latest: **v1.2.0** (visual round T-4, 2026-09-06). `capabilities: [principalDirectory, roleModel, credentialSelfService, sessionInventory]`. See [CHANGELOG.md](CHANGELOG.md).
7
+
5
8
  ## Apply
6
9
 
7
10
  ```
@@ -1,39 +1,164 @@
1
1
  {
2
2
  "slug": "security-auth-keycloak",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "category": "security",
5
- "capabilities": ["principalDirectory", "roleModel"],
5
+ "capabilities": [
6
+ "principalDirectory",
7
+ "roleModel",
8
+ "credentialSelfService",
9
+ "sessionInventory"
10
+ ],
6
11
  "contributions": [
7
- { "id": "security-auth-keycloak-REQ-001", "kind": "req", "path": "requirements/security-auth-keycloak-req-001.json" },
8
- { "id": "security-auth-keycloak-REQ-002", "kind": "req", "path": "requirements/security-auth-keycloak-req-002.json" },
9
- { "id": "security-auth-keycloak-REQ-003", "kind": "req", "path": "requirements/security-auth-keycloak-req-003.json" },
10
- { "id": "security-auth-keycloak-REQ-004", "kind": "req", "path": "requirements/security-auth-keycloak-req-004.json" },
11
- { "id": "security-auth-keycloak-REQ-005", "kind": "req", "path": "requirements/security-auth-keycloak-req-005.json" },
12
- { "id": "security-auth-keycloak-REQ-006", "kind": "req", "path": "requirements/security-auth-keycloak-req-006.json" },
13
- { "id": "security-auth-keycloak-REQ-007", "kind": "req", "path": "requirements/security-auth-keycloak-req-007.json" },
14
- { "id": "security-auth-keycloak-REQ-008", "kind": "req", "path": "requirements/security-auth-keycloak-req-008.json" },
15
- { "id": "security-auth-keycloak-REQ-009", "kind": "req", "path": "requirements/security-auth-keycloak-req-009.json" },
16
- { "id": "security-auth-keycloak-REQ-010", "kind": "req", "path": "requirements/security-auth-keycloak-req-010.json" },
17
- { "id": "security-auth-keycloak-REQ-011", "kind": "req", "path": "requirements/security-auth-keycloak-req-011.json" },
18
- { "id": "security-auth-keycloak-REQ-012", "kind": "req", "path": "requirements/security-auth-keycloak-req-012.json" },
19
- { "id": "security-auth-keycloak-US-11101", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11101.json" },
20
- { "id": "security-auth-keycloak-US-11102", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11102.json" },
21
- { "id": "security-auth-keycloak-US-11103", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11103.json" },
22
- { "id": "security-auth-keycloak-US-11104", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11104.json" },
23
- { "id": "security-auth-keycloak-US-11105", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11105.json" },
24
- { "id": "security-auth-keycloak-US-11106", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11106.json" },
25
- { "id": "security-auth-keycloak-US-11107", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11107.json" },
26
- { "id": "security-auth-keycloak-US-11108", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11108.json" },
27
- { "id": "security-auth-keycloak-US-11109", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11109.json" },
28
- { "id": "security-auth-keycloak-US-11110", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11110.json" },
29
- { "id": "security-auth-keycloak-US-11111", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11111.json" },
30
- { "id": "security-auth-keycloak-US-11112", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11112.json" },
31
- { "id": "security-auth-keycloak-US-11113", "kind": "us", "path": "user-stories/security-auth-keycloak-us-11113.json" },
32
- { "id": "TAC-1201-security-auth-keycloak-discovery-client", "kind": "tac", "path": "tacs/tac-1201-security-auth-keycloak-discovery-client.json" },
33
- { "id": "TAC-1202-security-auth-keycloak-jwt-verifier", "kind": "tac", "path": "tacs/tac-1202-security-auth-keycloak-jwt-verifier.json" },
34
- { "id": "TAC-1203-security-auth-keycloak-introspection-client", "kind": "tac", "path": "tacs/tac-1203-security-auth-keycloak-introspection-client.json" },
35
- { "id": "TAC-1204-security-auth-keycloak-provider-router", "kind": "tac", "path": "tacs/tac-1204-security-auth-keycloak-provider-router.json" },
36
- { "id": "TAC-1205-security-auth-keycloak-role-adapter", "kind": "tac", "path": "tacs/tac-1205-security-auth-keycloak-role-adapter.json" },
12
+ {
13
+ "id": "security-auth-keycloak-REQ-001",
14
+ "kind": "req",
15
+ "path": "requirements/security-auth-keycloak-req-001.json"
16
+ },
17
+ {
18
+ "id": "security-auth-keycloak-REQ-002",
19
+ "kind": "req",
20
+ "path": "requirements/security-auth-keycloak-req-002.json"
21
+ },
22
+ {
23
+ "id": "security-auth-keycloak-REQ-003",
24
+ "kind": "req",
25
+ "path": "requirements/security-auth-keycloak-req-003.json"
26
+ },
27
+ {
28
+ "id": "security-auth-keycloak-REQ-004",
29
+ "kind": "req",
30
+ "path": "requirements/security-auth-keycloak-req-004.json"
31
+ },
32
+ {
33
+ "id": "security-auth-keycloak-REQ-005",
34
+ "kind": "req",
35
+ "path": "requirements/security-auth-keycloak-req-005.json"
36
+ },
37
+ {
38
+ "id": "security-auth-keycloak-REQ-006",
39
+ "kind": "req",
40
+ "path": "requirements/security-auth-keycloak-req-006.json"
41
+ },
42
+ {
43
+ "id": "security-auth-keycloak-REQ-007",
44
+ "kind": "req",
45
+ "path": "requirements/security-auth-keycloak-req-007.json"
46
+ },
47
+ {
48
+ "id": "security-auth-keycloak-REQ-008",
49
+ "kind": "req",
50
+ "path": "requirements/security-auth-keycloak-req-008.json"
51
+ },
52
+ {
53
+ "id": "security-auth-keycloak-REQ-009",
54
+ "kind": "req",
55
+ "path": "requirements/security-auth-keycloak-req-009.json"
56
+ },
57
+ {
58
+ "id": "security-auth-keycloak-REQ-010",
59
+ "kind": "req",
60
+ "path": "requirements/security-auth-keycloak-req-010.json"
61
+ },
62
+ {
63
+ "id": "security-auth-keycloak-REQ-011",
64
+ "kind": "req",
65
+ "path": "requirements/security-auth-keycloak-req-011.json"
66
+ },
67
+ {
68
+ "id": "security-auth-keycloak-REQ-012",
69
+ "kind": "req",
70
+ "path": "requirements/security-auth-keycloak-req-012.json"
71
+ },
72
+ {
73
+ "id": "security-auth-keycloak-US-11101",
74
+ "kind": "us",
75
+ "path": "user-stories/security-auth-keycloak-us-11101.json"
76
+ },
77
+ {
78
+ "id": "security-auth-keycloak-US-11102",
79
+ "kind": "us",
80
+ "path": "user-stories/security-auth-keycloak-us-11102.json"
81
+ },
82
+ {
83
+ "id": "security-auth-keycloak-US-11103",
84
+ "kind": "us",
85
+ "path": "user-stories/security-auth-keycloak-us-11103.json"
86
+ },
87
+ {
88
+ "id": "security-auth-keycloak-US-11104",
89
+ "kind": "us",
90
+ "path": "user-stories/security-auth-keycloak-us-11104.json"
91
+ },
92
+ {
93
+ "id": "security-auth-keycloak-US-11105",
94
+ "kind": "us",
95
+ "path": "user-stories/security-auth-keycloak-us-11105.json"
96
+ },
97
+ {
98
+ "id": "security-auth-keycloak-US-11106",
99
+ "kind": "us",
100
+ "path": "user-stories/security-auth-keycloak-us-11106.json"
101
+ },
102
+ {
103
+ "id": "security-auth-keycloak-US-11107",
104
+ "kind": "us",
105
+ "path": "user-stories/security-auth-keycloak-us-11107.json"
106
+ },
107
+ {
108
+ "id": "security-auth-keycloak-US-11108",
109
+ "kind": "us",
110
+ "path": "user-stories/security-auth-keycloak-us-11108.json"
111
+ },
112
+ {
113
+ "id": "security-auth-keycloak-US-11109",
114
+ "kind": "us",
115
+ "path": "user-stories/security-auth-keycloak-us-11109.json"
116
+ },
117
+ {
118
+ "id": "security-auth-keycloak-US-11110",
119
+ "kind": "us",
120
+ "path": "user-stories/security-auth-keycloak-us-11110.json"
121
+ },
122
+ {
123
+ "id": "security-auth-keycloak-US-11111",
124
+ "kind": "us",
125
+ "path": "user-stories/security-auth-keycloak-us-11111.json"
126
+ },
127
+ {
128
+ "id": "security-auth-keycloak-US-11112",
129
+ "kind": "us",
130
+ "path": "user-stories/security-auth-keycloak-us-11112.json"
131
+ },
132
+ {
133
+ "id": "security-auth-keycloak-US-11113",
134
+ "kind": "us",
135
+ "path": "user-stories/security-auth-keycloak-us-11113.json"
136
+ },
137
+ {
138
+ "id": "TAC-1201-security-auth-keycloak-discovery-client",
139
+ "kind": "tac",
140
+ "path": "tacs/tac-1201-security-auth-keycloak-discovery-client.json"
141
+ },
142
+ {
143
+ "id": "TAC-1202-security-auth-keycloak-jwt-verifier",
144
+ "kind": "tac",
145
+ "path": "tacs/tac-1202-security-auth-keycloak-jwt-verifier.json"
146
+ },
147
+ {
148
+ "id": "TAC-1203-security-auth-keycloak-introspection-client",
149
+ "kind": "tac",
150
+ "path": "tacs/tac-1203-security-auth-keycloak-introspection-client.json"
151
+ },
152
+ {
153
+ "id": "TAC-1204-security-auth-keycloak-provider-router",
154
+ "kind": "tac",
155
+ "path": "tacs/tac-1204-security-auth-keycloak-provider-router.json"
156
+ },
157
+ {
158
+ "id": "TAC-1205-security-auth-keycloak-role-adapter",
159
+ "kind": "tac",
160
+ "path": "tacs/tac-1205-security-auth-keycloak-role-adapter.json"
161
+ },
37
162
  {
38
163
  "id": "ADR-1201-security-auth-keycloak-auth-model",
39
164
  "kind": "adr",
@@ -41,10 +166,30 @@
41
166
  "scope": "global",
42
167
  "topic": "authModel"
43
168
  },
44
- { "id": "ADR-1202-security-auth-keycloak-verification-mode-choice", "kind": "adr", "path": "adrs/adr-1202-security-auth-keycloak-verification-mode-choice.json" },
45
- { "id": "ADR-1203-security-auth-keycloak-provider-routing-seam", "kind": "adr", "path": "adrs/adr-1203-security-auth-keycloak-provider-routing-seam.json" },
46
- { "id": "ADR-1204-security-auth-keycloak-session-vs-token-contract", "kind": "adr", "path": "adrs/adr-1204-security-auth-keycloak-session-vs-token-contract.json" },
47
- { "id": "ADR-1205-security-auth-keycloak-jwks-rotation-cache-lifetime", "kind": "adr", "path": "adrs/adr-1205-security-auth-keycloak-jwks-rotation-cache-lifetime.json" },
48
- { "id": "ADR-1206-security-auth-keycloak-refresh-and-sign-out-posture", "kind": "adr", "path": "adrs/adr-1206-security-auth-keycloak-refresh-and-sign-out-posture.json" }
169
+ {
170
+ "id": "ADR-1202-security-auth-keycloak-verification-mode-choice",
171
+ "kind": "adr",
172
+ "path": "adrs/adr-1202-security-auth-keycloak-verification-mode-choice.json"
173
+ },
174
+ {
175
+ "id": "ADR-1203-security-auth-keycloak-provider-routing-seam",
176
+ "kind": "adr",
177
+ "path": "adrs/adr-1203-security-auth-keycloak-provider-routing-seam.json"
178
+ },
179
+ {
180
+ "id": "ADR-1204-security-auth-keycloak-session-vs-token-contract",
181
+ "kind": "adr",
182
+ "path": "adrs/adr-1204-security-auth-keycloak-session-vs-token-contract.json"
183
+ },
184
+ {
185
+ "id": "ADR-1205-security-auth-keycloak-jwks-rotation-cache-lifetime",
186
+ "kind": "adr",
187
+ "path": "adrs/adr-1205-security-auth-keycloak-jwks-rotation-cache-lifetime.json"
188
+ },
189
+ {
190
+ "id": "ADR-1206-security-auth-keycloak-refresh-and-sign-out-posture",
191
+ "kind": "adr",
192
+ "path": "adrs/adr-1206-security-auth-keycloak-refresh-and-sign-out-posture.json"
193
+ }
49
194
  ]
50
195
  }
@@ -39,7 +39,7 @@ This table is maintained shelf-wide across every blueprint's `docs/topics.md`. R
39
39
  | persistence-data-sqlite | 5101-5899 | 6xx | shipped v1.0.0 | `persistenceStore`, `migrationDiscipline` |
40
40
  | delivery-ci-workflows | 6101-6899 | 7xx | shipped v2.0.0 (renamed from ci-pipeline) | `ciGates`, `strictCoverageGate`, `releaseArtefacts` |
41
41
  | observability-essentials | 7101-7899 | 8xx | shipped v2.0.0 | `statusPageContract` |
42
- | security-secrets-management | 8101-8899 | 9xx | shipped v1.0.0 | `secretsSource` |
42
+ | security-secrets-management | 8101-8899 | 9xx | shipped v1.0.1 | `secretsSource` |
43
43
  | security-auth-clerk | 9101-9899 | 10xx | shipped v1.0.0 | `authModel` |
44
44
  | security-auth-oauth2 | 10101-10899 | 11xx | shipped v1.0.0 | `authModel` |
45
45
  | security-auth-keycloak | 11101-11899 | 12xx | shipped v1.0.0 | `authModel` |
@@ -51,6 +51,15 @@ This table is maintained shelf-wide across every blueprint's `docs/topics.md`. R
51
51
  | application-dashboard | 19101-19899 | 20xx | shipped v1.0.0 | none |
52
52
  | application-notifications-in-app | 20101-20899 | 21xx | shipped v1.0.0 | none |
53
53
  | application-admin-console | 21101-21899 | 22xx | shipped v1.0.0 | none |
54
+ | application-empty-error-states | 22101-22899 | 23xx | shipped v1.0.0 | none |
55
+ | application-file-upload | 23101-23899 | 24xx | shipped v1.0.0 | none |
56
+ | application-forms-wizard | 24101-24899 | 25xx | shipped v1.0.0 | none |
57
+ | application-account-settings | 25101-25899 | 26xx | shipped v1.0.0 | none |
58
+ | application-onboarding-tour | 26101-26899 | 27xx | shipped v1.0.0 | none |
59
+ | persistence-data-postgres | 27101-27899 | 28xx | shipped v1.0.0 | `persistenceStore`, `migrationDiscipline` |
60
+ | object-storage-s3 | 28101-28899 | 29xx | shipped v1.0.0 | `objectStorageContract` |
61
+ | messaging-queue-cloudflare | 29101-29899 | 30xx | shipped v1.0.0 | `deliverySemantics` |
62
+ | jobs-background | 30101-30899 | 31xx | shipped v1.0.0 | `backgroundJobModel` |
54
63
 
55
64
  US 11101-11113 sit at the LOW end of the 11101-11899 band on purpose. A project-side story that mechanically derives from a security-auth-keycloak REQ id into the number `11113` would collide against security-auth-keycloak-US-11113 in this package; the band leaves headroom at the HIGH end (US 11181-11899) so a project's own stories anchored to security-auth-keycloak REQs can allocate without conflict. The watchpost run4 lesson applies here too.
56
65
 
@@ -1,5 +1,9 @@
1
1
  # security-auth-magic-link CHANGELOG
2
2
 
3
+ ## 1.2.0 (visual round T-4, spec 2026-09-06 section 5.4.2, doc-only)
4
+
5
+ - No change to `capabilities[]`; the declaration remains `[principalDirectory]`. The bump records the account-settings suppression behaviour: on a bare-magic-link project the security tab, the sessions tab, the notification-preferences tab (unless `application-notifications-in-app` is applied) and the theme tab (unless `application-spa` is applied) are all suppressed by the account-settings blueprint capability discovery, and only the profile surface renders. This is not a regression; magic-link intentionally does NOT self-declare a credential-self-service surface, a session inventory, or a hosted identity UI (the click-a-link flow is the whole surface). Consumers pair magic-link with a session store (or a logging companion) if they want a sessions surface.
6
+
3
7
  ## 1.1.0 (visual round T-5, spec 2026-09-04 section 5.5.2, Baz Q2 default)
4
8
 
5
9
  - Declares `capabilities: [principalDirectory]` on `blueprint.json`. No other change. The new field is additive per section 6 of `blueprint-authoring.md` (an additive optional field with no global-topic change is a minor bump), and it is consumed by the visual round T-5 `application-admin-console` blueprint at apply time to gate surfaces on what the applied identity blueprint actually provides.
@@ -2,6 +2,9 @@
2
2
 
3
3
  The third content blueprint on the rcf-build-lite blueprint mechanism (design brief v2, ratified; Phase 4 of the blueprint programme). Scope: passwordless magic-link sign-in with server-issued opaque cookie sessions, single deployable, pluggable email delivery and pluggable principal registry, targeted at small greenfield rcf-lite projects. Composes with the application-spa blueprint (client half) and the application-api-rest blueprint (server half) by design, contributing one deliberate scope:global conflict on `authModel`.
4
4
 
5
+
6
+ > Latest: **v1.2.0 (doc-only)** (visual round T-4, 2026-09-06). `capabilities: [principalDirectory]`. See [CHANGELOG.md](CHANGELOG.md).
7
+
5
8
  ## Apply
6
9
 
7
10
  ```