@almadar/std 15.15.0 → 15.15.1

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 (273) hide show
  1. package/behaviors/registry/app/atoms/std-ap-bill.orb +423 -171
  2. package/behaviors/registry/app/atoms/std-applicant.orb +207 -165
  3. package/behaviors/registry/app/atoms/std-application.orb +300 -188
  4. package/behaviors/registry/app/atoms/std-approval-request.orb +370 -215
  5. package/behaviors/registry/app/atoms/std-campaign-goal.orb +382 -167
  6. package/behaviors/registry/app/atoms/std-change-order.orb +458 -194
  7. package/behaviors/registry/app/atoms/std-chart-of-accounts.orb +201 -130
  8. package/behaviors/registry/app/atoms/std-checkin.orb +215 -151
  9. package/behaviors/registry/app/atoms/std-checkout-terminal.orb +322 -133
  10. package/behaviors/registry/app/atoms/std-class-roster.orb +343 -170
  11. package/behaviors/registry/app/atoms/std-class-session.orb +321 -190
  12. package/behaviors/registry/app/atoms/std-court-deadline.orb +353 -182
  13. package/behaviors/registry/app/atoms/std-customer-account.orb +376 -157
  14. package/behaviors/registry/app/atoms/std-donation-receipt.orb +214 -143
  15. package/behaviors/registry/app/atoms/std-donor.orb +191 -156
  16. package/behaviors/registry/app/atoms/std-drip-sequence.orb +409 -170
  17. package/behaviors/registry/app/atoms/std-driver.orb +440 -202
  18. package/behaviors/registry/app/atoms/std-dunning.orb +431 -167
  19. package/behaviors/registry/app/atoms/std-email-broadcast.orb +386 -143
  20. package/behaviors/registry/app/atoms/std-event.orb +309 -178
  21. package/behaviors/registry/app/atoms/std-form-builder.orb +353 -220
  22. package/behaviors/registry/app/atoms/std-health-score.orb +218 -183
  23. package/behaviors/registry/app/atoms/std-help-article.orb +425 -162
  24. package/behaviors/registry/app/atoms/std-help-category.orb +409 -166
  25. package/behaviors/registry/app/atoms/std-interview-slot.orb +311 -138
  26. package/behaviors/registry/app/atoms/std-invoice.orb +349 -211
  27. package/behaviors/registry/app/atoms/std-kitchen-display.orb +308 -184
  28. package/behaviors/registry/app/atoms/std-lease.orb +411 -178
  29. package/behaviors/registry/app/atoms/std-ledger-entry.orb +266 -195
  30. package/behaviors/registry/app/atoms/std-maintenance-request.orb +396 -177
  31. package/behaviors/registry/app/atoms/std-matter.orb +415 -189
  32. package/behaviors/registry/app/atoms/std-membership.orb +387 -167
  33. package/behaviors/registry/app/atoms/std-menu.orb +232 -175
  34. package/behaviors/registry/app/atoms/std-modifier-group.orb +224 -167
  35. package/behaviors/registry/app/atoms/std-nps-survey.orb +390 -138
  36. package/behaviors/registry/app/atoms/std-offer-letter.orb +242 -133
  37. package/behaviors/registry/app/atoms/std-payout-ledger.orb +428 -176
  38. package/behaviors/registry/app/atoms/std-question-bank.orb +211 -145
  39. package/behaviors/registry/app/atoms/std-receipt.orb +248 -177
  40. package/behaviors/registry/app/atoms/std-recurring-charge.orb +421 -149
  41. package/behaviors/registry/app/atoms/std-renewal-risk.orb +382 -153
  42. package/behaviors/registry/app/atoms/std-rent-charge.orb +476 -176
  43. package/behaviors/registry/app/atoms/std-reorder-rule.orb +246 -176
  44. package/behaviors/registry/app/atoms/std-response-collector.orb +213 -150
  45. package/behaviors/registry/app/atoms/std-rfi.orb +365 -210
  46. package/behaviors/registry/app/atoms/std-route-optimize.orb +195 -146
  47. package/behaviors/registry/app/atoms/std-segment.orb +173 -139
  48. package/behaviors/registry/app/atoms/std-stock-level.orb +205 -135
  49. package/behaviors/registry/app/atoms/std-submittal.orb +323 -166
  50. package/behaviors/registry/app/atoms/std-table-map.orb +187 -63
  51. package/behaviors/registry/app/atoms/std-technician-dispatch.orb +290 -202
  52. package/behaviors/registry/app/atoms/std-telematics-event.orb +156 -128
  53. package/behaviors/registry/app/atoms/std-template-editor.orb +255 -189
  54. package/behaviors/registry/app/atoms/std-tenant.orb +375 -147
  55. package/behaviors/registry/app/atoms/std-ticket-tier.orb +463 -150
  56. package/behaviors/registry/app/atoms/std-time-entry.orb +259 -150
  57. package/behaviors/registry/app/atoms/std-timesheet.orb +292 -183
  58. package/behaviors/registry/app/atoms/std-trial.orb +401 -183
  59. package/behaviors/registry/app/atoms/std-vehicle.orb +447 -205
  60. package/behaviors/registry/app/atoms/std-vendor-onboarding.orb +289 -245
  61. package/behaviors/registry/app/atoms/std-waitlist.orb +308 -177
  62. package/behaviors/registry/app/atoms/std-warehouse.orb +211 -141
  63. package/behaviors/registry/app/atoms/std-work-order.orb +374 -219
  64. package/behaviors/registry/app/organisms/std-subscription-billing.orb +282 -195
  65. package/behaviors/registry/core/atoms/std-approval-gate.orb +703 -0
  66. package/behaviors/registry/core/atoms/std-audit-capture.orb +150 -64
  67. package/behaviors/registry/core/atoms/std-data-erasure.orb +546 -0
  68. package/behaviors/registry/core/atoms/std-lifecycle.orb +343 -0
  69. package/behaviors/registry/core/atoms/std-notify-on-event.orb +132 -46
  70. package/behaviors/registry/core/atoms/std-reminder-scheduler.orb +330 -0
  71. package/behaviors/registry/marketing/atoms/std-marketing-article.orb +96 -0
  72. package/behaviors/registry/marketing/atoms/std-marketing-case-studies.orb +243 -0
  73. package/behaviors/registry/marketing/atoms/std-marketing-community.orb +134 -0
  74. package/behaviors/registry/marketing/atoms/std-marketing-cta.orb +206 -0
  75. package/behaviors/registry/marketing/atoms/std-marketing-features.orb +193 -0
  76. package/behaviors/registry/marketing/atoms/std-marketing-footer.orb +192 -0
  77. package/behaviors/registry/marketing/atoms/std-marketing-hero.orb +262 -0
  78. package/behaviors/registry/marketing/atoms/std-marketing-nav.orb +190 -0
  79. package/behaviors/registry/marketing/atoms/std-marketing-pricing.orb +232 -0
  80. package/behaviors/registry/marketing/atoms/std-marketing-showcase.orb +276 -0
  81. package/behaviors/registry/marketing/atoms/std-marketing-split.orb +135 -0
  82. package/behaviors/registry/marketing/atoms/std-marketing-stats.orb +120 -0
  83. package/behaviors/registry/marketing/atoms/std-marketing-steps.orb +179 -0
  84. package/behaviors/registry/marketing/atoms/std-marketing-team.orb +192 -0
  85. package/behaviors/registry/marketing/atoms/std-marketing-testimonials.orb +124 -0
  86. package/behaviors/registry/marketing/molecules/std-about-page.orb +440 -0
  87. package/behaviors/registry/marketing/molecules/std-feature-detail-page.orb +371 -0
  88. package/behaviors/registry/marketing/molecules/std-landing-page.orb +521 -0
  89. package/behaviors/registry/marketing/molecules/std-pricing-page.orb +406 -0
  90. package/behaviors/registry/marketing/organisms/std-marketing-site.orb +1654 -0
  91. package/dist/behaviors/behaviors-registry.json +2913 -156
  92. package/dist/behaviors/registry/app/atoms/std-ap-bill.orb +423 -171
  93. package/dist/behaviors/registry/app/atoms/std-applicant.orb +207 -165
  94. package/dist/behaviors/registry/app/atoms/std-application.orb +300 -188
  95. package/dist/behaviors/registry/app/atoms/std-approval-request.orb +370 -215
  96. package/dist/behaviors/registry/app/atoms/std-campaign-goal.orb +382 -167
  97. package/dist/behaviors/registry/app/atoms/std-change-order.orb +458 -194
  98. package/dist/behaviors/registry/app/atoms/std-chart-of-accounts.orb +201 -130
  99. package/dist/behaviors/registry/app/atoms/std-checkin.orb +215 -151
  100. package/dist/behaviors/registry/app/atoms/std-checkout-terminal.orb +322 -133
  101. package/dist/behaviors/registry/app/atoms/std-class-roster.orb +343 -170
  102. package/dist/behaviors/registry/app/atoms/std-class-session.orb +321 -190
  103. package/dist/behaviors/registry/app/atoms/std-court-deadline.orb +353 -182
  104. package/dist/behaviors/registry/app/atoms/std-customer-account.orb +376 -157
  105. package/dist/behaviors/registry/app/atoms/std-donation-receipt.orb +214 -143
  106. package/dist/behaviors/registry/app/atoms/std-donor.orb +191 -156
  107. package/dist/behaviors/registry/app/atoms/std-drip-sequence.orb +409 -170
  108. package/dist/behaviors/registry/app/atoms/std-driver.orb +440 -202
  109. package/dist/behaviors/registry/app/atoms/std-dunning.orb +431 -167
  110. package/dist/behaviors/registry/app/atoms/std-email-broadcast.orb +386 -143
  111. package/dist/behaviors/registry/app/atoms/std-event.orb +309 -178
  112. package/dist/behaviors/registry/app/atoms/std-form-builder.orb +353 -220
  113. package/dist/behaviors/registry/app/atoms/std-health-score.orb +218 -183
  114. package/dist/behaviors/registry/app/atoms/std-help-article.orb +425 -162
  115. package/dist/behaviors/registry/app/atoms/std-help-category.orb +409 -166
  116. package/dist/behaviors/registry/app/atoms/std-interview-slot.orb +311 -138
  117. package/dist/behaviors/registry/app/atoms/std-invoice.orb +349 -211
  118. package/dist/behaviors/registry/app/atoms/std-kitchen-display.orb +308 -184
  119. package/dist/behaviors/registry/app/atoms/std-lease.orb +411 -178
  120. package/dist/behaviors/registry/app/atoms/std-ledger-entry.orb +266 -195
  121. package/dist/behaviors/registry/app/atoms/std-maintenance-request.orb +396 -177
  122. package/dist/behaviors/registry/app/atoms/std-matter.orb +415 -189
  123. package/dist/behaviors/registry/app/atoms/std-membership.orb +387 -167
  124. package/dist/behaviors/registry/app/atoms/std-menu.orb +232 -175
  125. package/dist/behaviors/registry/app/atoms/std-modifier-group.orb +224 -167
  126. package/dist/behaviors/registry/app/atoms/std-nps-survey.orb +390 -138
  127. package/dist/behaviors/registry/app/atoms/std-offer-letter.orb +242 -133
  128. package/dist/behaviors/registry/app/atoms/std-payout-ledger.orb +428 -176
  129. package/dist/behaviors/registry/app/atoms/std-question-bank.orb +211 -145
  130. package/dist/behaviors/registry/app/atoms/std-receipt.orb +248 -177
  131. package/dist/behaviors/registry/app/atoms/std-recurring-charge.orb +421 -149
  132. package/dist/behaviors/registry/app/atoms/std-renewal-risk.orb +382 -153
  133. package/dist/behaviors/registry/app/atoms/std-rent-charge.orb +476 -176
  134. package/dist/behaviors/registry/app/atoms/std-reorder-rule.orb +246 -176
  135. package/dist/behaviors/registry/app/atoms/std-response-collector.orb +213 -150
  136. package/dist/behaviors/registry/app/atoms/std-rfi.orb +365 -210
  137. package/dist/behaviors/registry/app/atoms/std-route-optimize.orb +195 -146
  138. package/dist/behaviors/registry/app/atoms/std-segment.orb +173 -139
  139. package/dist/behaviors/registry/app/atoms/std-stock-level.orb +205 -135
  140. package/dist/behaviors/registry/app/atoms/std-submittal.orb +323 -166
  141. package/dist/behaviors/registry/app/atoms/std-table-map.orb +187 -63
  142. package/dist/behaviors/registry/app/atoms/std-technician-dispatch.orb +290 -202
  143. package/dist/behaviors/registry/app/atoms/std-telematics-event.orb +156 -128
  144. package/dist/behaviors/registry/app/atoms/std-template-editor.orb +255 -189
  145. package/dist/behaviors/registry/app/atoms/std-tenant.orb +375 -147
  146. package/dist/behaviors/registry/app/atoms/std-ticket-tier.orb +463 -150
  147. package/dist/behaviors/registry/app/atoms/std-time-entry.orb +259 -150
  148. package/dist/behaviors/registry/app/atoms/std-timesheet.orb +292 -183
  149. package/dist/behaviors/registry/app/atoms/std-trial.orb +401 -183
  150. package/dist/behaviors/registry/app/atoms/std-vehicle.orb +447 -205
  151. package/dist/behaviors/registry/app/atoms/std-vendor-onboarding.orb +289 -245
  152. package/dist/behaviors/registry/app/atoms/std-waitlist.orb +308 -177
  153. package/dist/behaviors/registry/app/atoms/std-warehouse.orb +211 -141
  154. package/dist/behaviors/registry/app/atoms/std-work-order.orb +374 -219
  155. package/dist/behaviors/registry/app/organisms/std-subscription-billing.orb +282 -195
  156. package/dist/behaviors/registry/core/atoms/std-approval-gate.orb +703 -0
  157. package/dist/behaviors/registry/core/atoms/std-audit-capture.orb +150 -64
  158. package/dist/behaviors/registry/core/atoms/std-data-erasure.orb +546 -0
  159. package/dist/behaviors/registry/core/atoms/std-lifecycle.orb +343 -0
  160. package/dist/behaviors/registry/core/atoms/std-notify-on-event.orb +132 -46
  161. package/dist/behaviors/registry/core/atoms/std-reminder-scheduler.orb +330 -0
  162. package/dist/behaviors/registry/marketing/atoms/std-marketing-article.orb +96 -0
  163. package/dist/behaviors/registry/marketing/atoms/std-marketing-case-studies.orb +243 -0
  164. package/dist/behaviors/registry/marketing/atoms/std-marketing-community.orb +134 -0
  165. package/dist/behaviors/registry/marketing/atoms/std-marketing-cta.orb +206 -0
  166. package/dist/behaviors/registry/marketing/atoms/std-marketing-features.orb +193 -0
  167. package/dist/behaviors/registry/marketing/atoms/std-marketing-footer.orb +192 -0
  168. package/dist/behaviors/registry/marketing/atoms/std-marketing-hero.orb +262 -0
  169. package/dist/behaviors/registry/marketing/atoms/std-marketing-nav.orb +190 -0
  170. package/dist/behaviors/registry/marketing/atoms/std-marketing-pricing.orb +232 -0
  171. package/dist/behaviors/registry/marketing/atoms/std-marketing-showcase.orb +276 -0
  172. package/dist/behaviors/registry/marketing/atoms/std-marketing-split.orb +135 -0
  173. package/dist/behaviors/registry/marketing/atoms/std-marketing-stats.orb +120 -0
  174. package/dist/behaviors/registry/marketing/atoms/std-marketing-steps.orb +179 -0
  175. package/dist/behaviors/registry/marketing/atoms/std-marketing-team.orb +192 -0
  176. package/dist/behaviors/registry/marketing/atoms/std-marketing-testimonials.orb +124 -0
  177. package/dist/behaviors/registry/marketing/molecules/std-about-page.orb +440 -0
  178. package/dist/behaviors/registry/marketing/molecules/std-feature-detail-page.orb +371 -0
  179. package/dist/behaviors/registry/marketing/molecules/std-landing-page.orb +521 -0
  180. package/dist/behaviors/registry/marketing/molecules/std-pricing-page.orb +406 -0
  181. package/dist/behaviors/registry/marketing/organisms/std-marketing-site.orb +1654 -0
  182. package/dist/behaviors-registry.json +2913 -156
  183. package/dist/registry/app/atoms/std-ap-bill.orb +423 -171
  184. package/dist/registry/app/atoms/std-applicant.orb +207 -165
  185. package/dist/registry/app/atoms/std-application.orb +300 -188
  186. package/dist/registry/app/atoms/std-approval-request.orb +370 -215
  187. package/dist/registry/app/atoms/std-campaign-goal.orb +382 -167
  188. package/dist/registry/app/atoms/std-change-order.orb +458 -194
  189. package/dist/registry/app/atoms/std-chart-of-accounts.orb +201 -130
  190. package/dist/registry/app/atoms/std-checkin.orb +215 -151
  191. package/dist/registry/app/atoms/std-checkout-terminal.orb +322 -133
  192. package/dist/registry/app/atoms/std-class-roster.orb +343 -170
  193. package/dist/registry/app/atoms/std-class-session.orb +321 -190
  194. package/dist/registry/app/atoms/std-court-deadline.orb +353 -182
  195. package/dist/registry/app/atoms/std-customer-account.orb +376 -157
  196. package/dist/registry/app/atoms/std-donation-receipt.orb +214 -143
  197. package/dist/registry/app/atoms/std-donor.orb +191 -156
  198. package/dist/registry/app/atoms/std-drip-sequence.orb +409 -170
  199. package/dist/registry/app/atoms/std-driver.orb +440 -202
  200. package/dist/registry/app/atoms/std-dunning.orb +431 -167
  201. package/dist/registry/app/atoms/std-email-broadcast.orb +386 -143
  202. package/dist/registry/app/atoms/std-event.orb +309 -178
  203. package/dist/registry/app/atoms/std-form-builder.orb +353 -220
  204. package/dist/registry/app/atoms/std-health-score.orb +218 -183
  205. package/dist/registry/app/atoms/std-help-article.orb +425 -162
  206. package/dist/registry/app/atoms/std-help-category.orb +409 -166
  207. package/dist/registry/app/atoms/std-interview-slot.orb +311 -138
  208. package/dist/registry/app/atoms/std-invoice.orb +349 -211
  209. package/dist/registry/app/atoms/std-kitchen-display.orb +308 -184
  210. package/dist/registry/app/atoms/std-lease.orb +411 -178
  211. package/dist/registry/app/atoms/std-ledger-entry.orb +266 -195
  212. package/dist/registry/app/atoms/std-maintenance-request.orb +396 -177
  213. package/dist/registry/app/atoms/std-matter.orb +415 -189
  214. package/dist/registry/app/atoms/std-membership.orb +387 -167
  215. package/dist/registry/app/atoms/std-menu.orb +232 -175
  216. package/dist/registry/app/atoms/std-modifier-group.orb +224 -167
  217. package/dist/registry/app/atoms/std-nps-survey.orb +390 -138
  218. package/dist/registry/app/atoms/std-offer-letter.orb +242 -133
  219. package/dist/registry/app/atoms/std-payout-ledger.orb +428 -176
  220. package/dist/registry/app/atoms/std-question-bank.orb +211 -145
  221. package/dist/registry/app/atoms/std-receipt.orb +248 -177
  222. package/dist/registry/app/atoms/std-recurring-charge.orb +421 -149
  223. package/dist/registry/app/atoms/std-renewal-risk.orb +382 -153
  224. package/dist/registry/app/atoms/std-rent-charge.orb +476 -176
  225. package/dist/registry/app/atoms/std-reorder-rule.orb +246 -176
  226. package/dist/registry/app/atoms/std-response-collector.orb +213 -150
  227. package/dist/registry/app/atoms/std-rfi.orb +365 -210
  228. package/dist/registry/app/atoms/std-route-optimize.orb +195 -146
  229. package/dist/registry/app/atoms/std-segment.orb +173 -139
  230. package/dist/registry/app/atoms/std-stock-level.orb +205 -135
  231. package/dist/registry/app/atoms/std-submittal.orb +323 -166
  232. package/dist/registry/app/atoms/std-table-map.orb +187 -63
  233. package/dist/registry/app/atoms/std-technician-dispatch.orb +290 -202
  234. package/dist/registry/app/atoms/std-telematics-event.orb +156 -128
  235. package/dist/registry/app/atoms/std-template-editor.orb +255 -189
  236. package/dist/registry/app/atoms/std-tenant.orb +375 -147
  237. package/dist/registry/app/atoms/std-ticket-tier.orb +463 -150
  238. package/dist/registry/app/atoms/std-time-entry.orb +259 -150
  239. package/dist/registry/app/atoms/std-timesheet.orb +292 -183
  240. package/dist/registry/app/atoms/std-trial.orb +401 -183
  241. package/dist/registry/app/atoms/std-vehicle.orb +447 -205
  242. package/dist/registry/app/atoms/std-vendor-onboarding.orb +289 -245
  243. package/dist/registry/app/atoms/std-waitlist.orb +308 -177
  244. package/dist/registry/app/atoms/std-warehouse.orb +211 -141
  245. package/dist/registry/app/atoms/std-work-order.orb +374 -219
  246. package/dist/registry/app/organisms/std-subscription-billing.orb +282 -195
  247. package/dist/registry/core/atoms/std-approval-gate.orb +703 -0
  248. package/dist/registry/core/atoms/std-audit-capture.orb +150 -64
  249. package/dist/registry/core/atoms/std-data-erasure.orb +546 -0
  250. package/dist/registry/core/atoms/std-lifecycle.orb +343 -0
  251. package/dist/registry/core/atoms/std-notify-on-event.orb +132 -46
  252. package/dist/registry/core/atoms/std-reminder-scheduler.orb +330 -0
  253. package/dist/registry/marketing/atoms/std-marketing-article.orb +96 -0
  254. package/dist/registry/marketing/atoms/std-marketing-case-studies.orb +243 -0
  255. package/dist/registry/marketing/atoms/std-marketing-community.orb +134 -0
  256. package/dist/registry/marketing/atoms/std-marketing-cta.orb +206 -0
  257. package/dist/registry/marketing/atoms/std-marketing-features.orb +193 -0
  258. package/dist/registry/marketing/atoms/std-marketing-footer.orb +192 -0
  259. package/dist/registry/marketing/atoms/std-marketing-hero.orb +262 -0
  260. package/dist/registry/marketing/atoms/std-marketing-nav.orb +190 -0
  261. package/dist/registry/marketing/atoms/std-marketing-pricing.orb +232 -0
  262. package/dist/registry/marketing/atoms/std-marketing-showcase.orb +276 -0
  263. package/dist/registry/marketing/atoms/std-marketing-split.orb +135 -0
  264. package/dist/registry/marketing/atoms/std-marketing-stats.orb +120 -0
  265. package/dist/registry/marketing/atoms/std-marketing-steps.orb +179 -0
  266. package/dist/registry/marketing/atoms/std-marketing-team.orb +192 -0
  267. package/dist/registry/marketing/atoms/std-marketing-testimonials.orb +124 -0
  268. package/dist/registry/marketing/molecules/std-about-page.orb +440 -0
  269. package/dist/registry/marketing/molecules/std-feature-detail-page.orb +371 -0
  270. package/dist/registry/marketing/molecules/std-landing-page.orb +521 -0
  271. package/dist/registry/marketing/molecules/std-pricing-page.orb +406 -0
  272. package/dist/registry/marketing/organisms/std-marketing-site.orb +1654 -0
  273. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "std-application",
3
- "version": "1.1.0",
4
- "description": "std-application — job-style application bundle: form + attachments + status flow (draft/submitted/under-review/accepted/rejected). Agents tune the list shape via `config.fields` + `config.itemActions`.",
3
+ "version": "1.2.0",
4
+ "description": "std-application — job-style application bundle: form + attachments + status flow (draft/submitted/under-review/accepted/rejected). Listens for SET_STATUS so sibling std-lifecycle can drive automated transitions. Exposes HR-pattern knobs (backgroundCheckRequired, eVerifyRequired, anonymizeOnRejection, …) for the questionnaire.",
5
5
  "orbitals": [
6
6
  {
7
7
  "name": "ApplicationOrbital",
@@ -646,6 +646,22 @@
646
646
  }
647
647
  ]
648
648
  },
649
+ {
650
+ "key": "SET_STATUS",
651
+ "name": "Set Status",
652
+ "payloadSchema": [
653
+ {
654
+ "name": "entityId",
655
+ "type": "string",
656
+ "required": true
657
+ },
658
+ {
659
+ "name": "newStatus",
660
+ "type": "string",
661
+ "required": true
662
+ }
663
+ ]
664
+ },
649
665
  {
650
666
  "key": "CREATE_SUBMIT",
651
667
  "name": "Create Submit",
@@ -744,20 +760,20 @@
744
760
  "main",
745
761
  {
746
762
  "className": "py-12",
747
- "gap": "md",
748
- "type": "stack",
749
763
  "children": [
750
764
  {
751
765
  "type": "spinner"
752
766
  },
753
767
  {
754
- "variant": "caption",
755
- "type": "typography",
756
768
  "content": "Loading applications…",
757
- "color": "muted"
769
+ "type": "typography",
770
+ "color": "muted",
771
+ "variant": "caption"
758
772
  }
759
773
  ],
760
774
  "direction": "vertical",
775
+ "gap": "md",
776
+ "type": "stack",
761
777
  "align": "center"
762
778
  }
763
779
  ]
@@ -772,84 +788,84 @@
772
788
  "render-ui",
773
789
  "main",
774
790
  {
791
+ "direction": "vertical",
792
+ "type": "stack",
775
793
  "children": [
776
794
  {
795
+ "justify": "between",
796
+ "type": "stack",
797
+ "direction": "horizontal",
777
798
  "gap": "md",
778
799
  "children": [
779
800
  {
801
+ "type": "stack",
802
+ "align": "center",
780
803
  "children": [
781
804
  {
782
805
  "name": "file-text",
783
806
  "type": "icon"
784
807
  },
785
808
  {
786
- "type": "typography",
809
+ "content": "Applications",
787
810
  "variant": "h3",
788
- "content": "Applications"
811
+ "type": "typography"
789
812
  }
790
813
  ],
791
814
  "gap": "sm",
792
- "align": "center",
793
- "direction": "horizontal",
794
- "type": "stack"
815
+ "direction": "horizontal"
795
816
  },
796
817
  {
797
818
  "label": "New Application",
819
+ "icon": "plus",
798
820
  "type": "button",
799
- "action": "CREATE",
800
821
  "variant": "primary",
801
- "icon": "plus"
822
+ "action": "CREATE"
802
823
  }
803
- ],
804
- "justify": "between",
805
- "type": "stack",
806
- "direction": "horizontal"
824
+ ]
807
825
  },
808
826
  {
809
- "cols": 4.0,
810
- "type": "simple-grid",
811
827
  "children": [
812
828
  {
813
829
  "label": "Total applications",
830
+ "type": "stat-display",
814
831
  "icon": "file-text",
815
- "value": "@payload.data.length",
816
- "type": "stat-display"
832
+ "value": "@payload.data.length"
817
833
  },
818
834
  {
819
- "icon": "send",
820
- "label": "Submitted",
821
835
  "value": "21",
822
- "type": "stat-display"
836
+ "label": "Submitted",
837
+ "type": "stat-display",
838
+ "icon": "send"
823
839
  },
824
840
  {
825
841
  "icon": "search",
826
842
  "value": "8",
827
- "label": "Under review",
828
- "type": "stat-display"
843
+ "type": "stat-display",
844
+ "label": "Under review"
829
845
  },
830
846
  {
831
- "icon": "check-circle",
832
847
  "label": "Accepted",
833
848
  "type": "stat-display",
834
- "value": "12"
849
+ "value": "12",
850
+ "icon": "check-circle"
835
851
  }
836
- ]
852
+ ],
853
+ "type": "simple-grid",
854
+ "cols": 4.0
837
855
  },
838
856
  {
839
857
  "type": "divider"
840
858
  },
841
859
  {
842
- "type": "data-grid",
843
- "entity": "@payload.data",
844
- "fields": "@config.fields",
845
- "gap": "sm",
860
+ "cols": 1.0,
846
861
  "itemActions": "@config.itemActions",
847
- "cols": 1.0
862
+ "gap": "sm",
863
+ "entity": "@payload.data",
864
+ "type": "data-grid",
865
+ "fields": "@config.fields"
848
866
  }
849
867
  ],
850
- "type": "stack",
851
- "gap": "md",
852
- "direction": "vertical"
868
+ "gap": "md"
853
869
  }
854
870
  ]
855
871
  ]
@@ -863,9 +879,9 @@
863
879
  "render-ui",
864
880
  "main",
865
881
  {
866
- "type": "alert",
882
+ "message": "@payload.error",
867
883
  "variant": "error",
868
- "message": "@payload.error"
884
+ "type": "alert"
869
885
  }
870
886
  ]
871
887
  ]
@@ -919,31 +935,34 @@
919
935
  "render-ui",
920
936
  "main",
921
937
  {
938
+ "direction": "vertical",
939
+ "gap": "md",
922
940
  "children": [
923
941
  {
942
+ "gap": "sm",
943
+ "align": "center",
924
944
  "type": "stack",
925
945
  "children": [
926
946
  {
927
- "type": "icon",
928
- "name": "file-text"
947
+ "name": "file-text",
948
+ "type": "icon"
929
949
  },
930
950
  {
931
- "content": "New Application",
951
+ "type": "typography",
932
952
  "variant": "h3",
933
- "type": "typography"
953
+ "content": "New Application"
934
954
  }
935
955
  ],
936
- "gap": "sm",
937
- "direction": "horizontal",
938
- "align": "center"
956
+ "direction": "horizontal"
939
957
  },
940
958
  {
941
959
  "type": "divider"
942
960
  },
943
961
  {
944
- "cancelEvent": "CANCEL_EDIT",
945
962
  "type": "form-section",
963
+ "entity": "@entity",
946
964
  "mode": "create",
965
+ "cancelEvent": "CANCEL_EDIT",
947
966
  "submitEvent": "CREATE_SUBMIT",
948
967
  "fields": [
949
968
  "applicantName",
@@ -951,12 +970,9 @@
951
970
  "targetId",
952
971
  "targetType",
953
972
  "coverLetter"
954
- ],
955
- "entity": "@entity"
973
+ ]
956
974
  }
957
975
  ],
958
- "gap": "md",
959
- "direction": "vertical",
960
976
  "type": "stack"
961
977
  }
962
978
  ]
@@ -1011,24 +1027,21 @@
1011
1027
  "render-ui",
1012
1028
  "main",
1013
1029
  {
1014
- "direction": "vertical",
1015
- "type": "stack",
1016
- "gap": "md",
1017
1030
  "children": [
1018
1031
  {
1032
+ "direction": "horizontal",
1019
1033
  "gap": "sm",
1020
1034
  "children": [
1021
1035
  {
1022
- "name": "pencil",
1023
- "type": "icon"
1036
+ "type": "icon",
1037
+ "name": "pencil"
1024
1038
  },
1025
1039
  {
1026
- "content": "Edit Application",
1027
1040
  "type": "typography",
1028
- "variant": "h3"
1041
+ "variant": "h3",
1042
+ "content": "Edit Application"
1029
1043
  }
1030
1044
  ],
1031
- "direction": "horizontal",
1032
1045
  "type": "stack",
1033
1046
  "align": "center"
1034
1047
  },
@@ -1036,9 +1049,8 @@
1036
1049
  "type": "divider"
1037
1050
  },
1038
1051
  {
1039
- "mode": "edit",
1040
- "type": "form-section",
1041
1052
  "cancelEvent": "CANCEL_EDIT",
1053
+ "submitEvent": "UPDATE_SUBMIT",
1042
1054
  "fields": [
1043
1055
  "applicantName",
1044
1056
  "applicantEmail",
@@ -1046,10 +1058,14 @@
1046
1058
  "targetType",
1047
1059
  "coverLetter"
1048
1060
  ],
1049
- "entity": "@entity",
1050
- "submitEvent": "UPDATE_SUBMIT"
1061
+ "mode": "edit",
1062
+ "type": "form-section",
1063
+ "entity": "@entity"
1051
1064
  }
1052
- ]
1065
+ ],
1066
+ "direction": "vertical",
1067
+ "type": "stack",
1068
+ "gap": "md"
1053
1069
  }
1054
1070
  ]
1055
1071
  ]
@@ -1085,8 +1101,8 @@
1085
1101
  },
1086
1102
  {
1087
1103
  "emit": {
1088
- "success": "ApplicationSubmitted",
1089
- "failure": "ApplicationLoadFailed"
1104
+ "failure": "ApplicationLoadFailed",
1105
+ "success": "ApplicationSubmitted"
1090
1106
  }
1091
1107
  }
1092
1108
  ],
@@ -1094,22 +1110,22 @@
1094
1110
  "render-ui",
1095
1111
  "main",
1096
1112
  {
1113
+ "type": "stack",
1097
1114
  "className": "py-12",
1115
+ "gap": "md",
1116
+ "direction": "vertical",
1098
1117
  "children": [
1099
1118
  {
1100
1119
  "type": "spinner"
1101
1120
  },
1102
1121
  {
1103
- "content": "Submitting…",
1104
- "variant": "caption",
1105
1122
  "type": "typography",
1106
- "color": "muted"
1123
+ "color": "muted",
1124
+ "variant": "caption",
1125
+ "content": "Submitting…"
1107
1126
  }
1108
1127
  ],
1109
- "align": "center",
1110
- "type": "stack",
1111
- "direction": "vertical",
1112
- "gap": "md"
1128
+ "align": "center"
1113
1129
  }
1114
1130
  ]
1115
1131
  ]
@@ -1139,9 +1155,9 @@
1139
1155
  "update",
1140
1156
  "Application",
1141
1157
  {
1142
- "id": "@entity.id",
1143
1158
  "status": "accepted",
1144
- "reviewedAt": "@entity.reviewedAt"
1159
+ "reviewedAt": "@entity.reviewedAt",
1160
+ "id": "@entity.id"
1145
1161
  },
1146
1162
  {
1147
1163
  "emit": {
@@ -1154,21 +1170,21 @@
1154
1170
  "render-ui",
1155
1171
  "main",
1156
1172
  {
1157
- "className": "py-12",
1158
- "gap": "md",
1159
1173
  "type": "stack",
1160
- "direction": "vertical",
1161
1174
  "children": [
1162
1175
  {
1163
1176
  "type": "spinner"
1164
1177
  },
1165
1178
  {
1166
- "color": "muted",
1167
1179
  "variant": "caption",
1168
1180
  "type": "typography",
1181
+ "color": "muted",
1169
1182
  "content": "Accepting…"
1170
1183
  }
1171
1184
  ],
1185
+ "direction": "vertical",
1186
+ "className": "py-12",
1187
+ "gap": "md",
1172
1188
  "align": "center"
1173
1189
  }
1174
1190
  ]
@@ -1204,15 +1220,15 @@
1204
1220
  "update",
1205
1221
  "Application",
1206
1222
  {
1207
- "notes": "@entity.notes",
1208
- "status": "rejected",
1223
+ "id": "@entity.id",
1209
1224
  "reviewedAt": "@entity.reviewedAt",
1210
- "id": "@entity.id"
1225
+ "notes": "@entity.notes",
1226
+ "status": "rejected"
1211
1227
  },
1212
1228
  {
1213
1229
  "emit": {
1214
- "success": "ApplicationRejected",
1215
- "failure": "ApplicationLoadFailed"
1230
+ "failure": "ApplicationLoadFailed",
1231
+ "success": "ApplicationRejected"
1216
1232
  }
1217
1233
  }
1218
1234
  ],
@@ -1220,22 +1236,22 @@
1220
1236
  "render-ui",
1221
1237
  "main",
1222
1238
  {
1223
- "gap": "md",
1239
+ "type": "stack",
1240
+ "align": "center",
1224
1241
  "children": [
1225
1242
  {
1226
1243
  "type": "spinner"
1227
1244
  },
1228
1245
  {
1246
+ "variant": "caption",
1229
1247
  "content": "Rejecting…",
1230
- "color": "muted",
1231
1248
  "type": "typography",
1232
- "variant": "caption"
1249
+ "color": "muted"
1233
1250
  }
1234
1251
  ],
1235
- "className": "py-12",
1236
- "type": "stack",
1237
1252
  "direction": "vertical",
1238
- "align": "center"
1253
+ "gap": "md",
1254
+ "className": "py-12"
1239
1255
  }
1240
1256
  ]
1241
1257
  ]
@@ -1250,8 +1266,8 @@
1250
1266
  "Application",
1251
1267
  {
1252
1268
  "emit": {
1253
- "failure": "ApplicationLoadFailed",
1254
- "success": "ApplicationLoaded"
1269
+ "success": "ApplicationLoaded",
1270
+ "failure": "ApplicationLoadFailed"
1255
1271
  }
1256
1272
  }
1257
1273
  ],
@@ -1264,6 +1280,60 @@
1264
1280
  ]
1265
1281
  ]
1266
1282
  },
1283
+ {
1284
+ "from": "browsing",
1285
+ "to": "loading",
1286
+ "event": "SET_STATUS",
1287
+ "effects": [
1288
+ [
1289
+ "set",
1290
+ "@entity.id",
1291
+ "@payload.entityId"
1292
+ ],
1293
+ [
1294
+ "set",
1295
+ "@entity.status",
1296
+ "@payload.newStatus"
1297
+ ],
1298
+ [
1299
+ "persist",
1300
+ "update",
1301
+ "Application",
1302
+ {
1303
+ "id": "@entity.id",
1304
+ "status": "@entity.status"
1305
+ },
1306
+ {
1307
+ "emit": {
1308
+ "success": "ApplicationUpdated",
1309
+ "failure": "ApplicationLoadFailed"
1310
+ }
1311
+ }
1312
+ ],
1313
+ [
1314
+ "render-ui",
1315
+ "main",
1316
+ {
1317
+ "children": [
1318
+ {
1319
+ "type": "spinner"
1320
+ },
1321
+ {
1322
+ "type": "typography",
1323
+ "variant": "caption",
1324
+ "content": "Updating application status…",
1325
+ "color": "muted"
1326
+ }
1327
+ ],
1328
+ "type": "stack",
1329
+ "align": "center",
1330
+ "className": "py-12",
1331
+ "gap": "md",
1332
+ "direction": "vertical"
1333
+ }
1334
+ ]
1335
+ ]
1336
+ },
1267
1337
  {
1268
1338
  "from": "editing",
1269
1339
  "to": "submitting",
@@ -1276,8 +1346,8 @@
1276
1346
  "@payload.data",
1277
1347
  {
1278
1348
  "emit": {
1279
- "failure": "ApplicationLoadFailed",
1280
- "success": "ApplicationCreated"
1349
+ "success": "ApplicationCreated",
1350
+ "failure": "ApplicationLoadFailed"
1281
1351
  }
1282
1352
  }
1283
1353
  ],
@@ -1285,22 +1355,22 @@
1285
1355
  "render-ui",
1286
1356
  "main",
1287
1357
  {
1358
+ "className": "py-12",
1359
+ "type": "stack",
1288
1360
  "direction": "vertical",
1289
1361
  "gap": "md",
1290
- "type": "stack",
1291
1362
  "children": [
1292
1363
  {
1293
1364
  "type": "spinner"
1294
1365
  },
1295
1366
  {
1296
- "variant": "caption",
1297
- "type": "typography",
1298
1367
  "color": "muted",
1299
- "content": "Saving…"
1368
+ "variant": "caption",
1369
+ "content": "Saving…",
1370
+ "type": "typography"
1300
1371
  }
1301
1372
  ],
1302
- "align": "center",
1303
- "className": "py-12"
1373
+ "align": "center"
1304
1374
  }
1305
1375
  ]
1306
1376
  ]
@@ -1326,22 +1396,22 @@
1326
1396
  "render-ui",
1327
1397
  "main",
1328
1398
  {
1329
- "className": "py-12",
1399
+ "direction": "vertical",
1400
+ "type": "stack",
1401
+ "gap": "md",
1330
1402
  "children": [
1331
1403
  {
1332
1404
  "type": "spinner"
1333
1405
  },
1334
1406
  {
1335
1407
  "color": "muted",
1408
+ "variant": "caption",
1336
1409
  "type": "typography",
1337
- "content": "Updating…",
1338
- "variant": "caption"
1410
+ "content": "Updating…"
1339
1411
  }
1340
1412
  ],
1341
- "gap": "md",
1342
- "type": "stack",
1343
1413
  "align": "center",
1344
- "direction": "vertical"
1414
+ "className": "py-12"
1345
1415
  }
1346
1416
  ]
1347
1417
  ]
@@ -1380,8 +1450,8 @@
1380
1450
  "Application",
1381
1451
  {
1382
1452
  "emit": {
1383
- "failure": "ApplicationLoadFailed",
1384
- "success": "ApplicationLoaded"
1453
+ "success": "ApplicationLoaded",
1454
+ "failure": "ApplicationLoadFailed"
1385
1455
  }
1386
1456
  }
1387
1457
  ],
@@ -1428,8 +1498,8 @@
1428
1498
  "Application",
1429
1499
  {
1430
1500
  "emit": {
1431
- "failure": "ApplicationLoadFailed",
1432
- "success": "ApplicationLoaded"
1501
+ "success": "ApplicationLoaded",
1502
+ "failure": "ApplicationLoadFailed"
1433
1503
  }
1434
1504
  }
1435
1505
  ],
@@ -1452,8 +1522,8 @@
1452
1522
  "Application",
1453
1523
  {
1454
1524
  "emit": {
1455
- "failure": "ApplicationLoadFailed",
1456
- "success": "ApplicationLoaded"
1525
+ "success": "ApplicationLoaded",
1526
+ "failure": "ApplicationLoadFailed"
1457
1527
  }
1458
1528
  }
1459
1529
  ],
@@ -1476,8 +1546,8 @@
1476
1546
  "Application",
1477
1547
  {
1478
1548
  "emit": {
1479
- "failure": "ApplicationLoadFailed",
1480
- "success": "ApplicationLoaded"
1549
+ "success": "ApplicationLoaded",
1550
+ "failure": "ApplicationLoadFailed"
1481
1551
  }
1482
1552
  }
1483
1553
  ],
@@ -1499,9 +1569,9 @@
1499
1569
  "render-ui",
1500
1570
  "main",
1501
1571
  {
1502
- "message": "@payload.error",
1572
+ "variant": "error",
1503
1573
  "type": "alert",
1504
- "variant": "error"
1574
+ "message": "@payload.error"
1505
1575
  }
1506
1576
  ]
1507
1577
  ]
@@ -1533,139 +1603,181 @@
1533
1603
  ]
1534
1604
  },
1535
1605
  "config": {
1536
- "itemActions": {
1537
- "type": "[ItemAction]",
1606
+ "fields": {
1607
+ "type": "[FieldSpec]",
1538
1608
  "default": [
1539
1609
  {
1540
- "label": "Edit",
1541
- "event": "EDIT",
1542
- "variant": "ghost"
1610
+ "label": "Applicant",
1611
+ "name": "applicantName",
1612
+ "icon": "user",
1613
+ "variant": "caption"
1543
1614
  },
1544
1615
  {
1545
- "label": "Submit",
1546
- "event": "SUBMIT",
1547
- "variant": "primary"
1616
+ "variant": "caption",
1617
+ "name": "applicantEmail",
1618
+ "label": "Email"
1548
1619
  },
1549
1620
  {
1550
- "event": "ACCEPT",
1551
- "variant": "primary",
1552
- "label": "Accept"
1621
+ "label": "Target",
1622
+ "name": "targetType",
1623
+ "variant": "caption"
1553
1624
  },
1554
1625
  {
1555
- "event": "REJECT",
1556
- "variant": "danger",
1557
- "label": "Reject"
1626
+ "label": "Status",
1627
+ "name": "status",
1628
+ "variant": "badge"
1629
+ },
1630
+ {
1631
+ "name": "submittedAt",
1632
+ "label": "Submitted",
1633
+ "variant": "caption"
1558
1634
  }
1559
1635
  ],
1560
- "label": "Row actions",
1561
- "description": "Buttons users can click on each application row",
1636
+ "label": "Columns to show",
1637
+ "description": "Each column maps to one field on the Application entity",
1562
1638
  "tier": "customization",
1563
1639
  "items": {
1564
1640
  "type": "object",
1565
1641
  "properties": {
1566
- "icon": {
1567
- "name": "icon",
1642
+ "header": {
1643
+ "name": "header",
1568
1644
  "type": "string",
1569
1645
  "required": false
1570
1646
  },
1571
- "event": {
1572
- "name": "event",
1647
+ "format": {
1648
+ "name": "format",
1573
1649
  "type": "string",
1574
- "required": true
1650
+ "required": false
1575
1651
  },
1576
- "variant": {
1577
- "name": "variant",
1652
+ "icon": {
1653
+ "name": "icon",
1654
+ "type": "string",
1655
+ "required": false
1656
+ },
1657
+ "key": {
1658
+ "name": "key",
1578
1659
  "type": "string",
1579
1660
  "required": false
1580
1661
  },
1581
1662
  "label": {
1582
1663
  "name": "label",
1583
1664
  "type": "string",
1665
+ "required": false
1666
+ },
1667
+ "name": {
1668
+ "name": "name",
1669
+ "type": "string",
1584
1670
  "required": true
1671
+ },
1672
+ "variant": {
1673
+ "name": "variant",
1674
+ "type": "string",
1675
+ "required": false
1585
1676
  }
1586
1677
  }
1587
1678
  }
1588
1679
  },
1589
- "title": {
1590
- "type": "string",
1591
- "default": "Applications",
1592
- "label": "Section title",
1593
- "description": "Heading shown above the application list",
1680
+ "anonymizeOnRejection": {
1681
+ "type": "boolean",
1682
+ "default": false,
1683
+ "label": "Anonymize on rejection",
1684
+ "description": "When true, scrub PII (applicantName, applicantEmail, coverLetter) on REJECT to retain only the audit row. Pair with sibling std-data-erasure for full Art. 17 compliance.",
1594
1685
  "tier": "customization"
1595
1686
  },
1596
- "fields": {
1597
- "type": "[FieldSpec]",
1687
+ "itemActions": {
1688
+ "type": "[ItemAction]",
1598
1689
  "default": [
1599
1690
  {
1600
- "name": "applicantName",
1601
- "icon": "user",
1602
- "variant": "caption",
1603
- "label": "Applicant"
1604
- },
1605
- {
1606
- "label": "Email",
1607
- "variant": "caption",
1608
- "name": "applicantEmail"
1691
+ "event": "EDIT",
1692
+ "variant": "ghost",
1693
+ "label": "Edit"
1609
1694
  },
1610
1695
  {
1611
- "name": "targetType",
1612
- "variant": "caption",
1613
- "label": "Target"
1696
+ "label": "Submit",
1697
+ "variant": "primary",
1698
+ "event": "SUBMIT"
1614
1699
  },
1615
1700
  {
1616
- "name": "status",
1617
- "label": "Status",
1618
- "variant": "badge"
1701
+ "label": "Accept",
1702
+ "event": "ACCEPT",
1703
+ "variant": "primary"
1619
1704
  },
1620
1705
  {
1621
- "variant": "caption",
1622
- "label": "Submitted",
1623
- "name": "submittedAt"
1706
+ "event": "REJECT",
1707
+ "variant": "danger",
1708
+ "label": "Reject"
1624
1709
  }
1625
1710
  ],
1626
- "label": "Columns to show",
1627
- "description": "Each column maps to one field on the Application entity",
1711
+ "label": "Row actions",
1712
+ "description": "Buttons users can click on each application row",
1628
1713
  "tier": "customization",
1629
1714
  "items": {
1630
1715
  "type": "object",
1631
1716
  "properties": {
1632
- "label": {
1633
- "name": "label",
1717
+ "event": {
1718
+ "name": "event",
1634
1719
  "type": "string",
1635
- "required": false
1720
+ "required": true
1636
1721
  },
1637
1722
  "icon": {
1638
1723
  "name": "icon",
1639
1724
  "type": "string",
1640
1725
  "required": false
1641
1726
  },
1642
- "header": {
1643
- "name": "header",
1644
- "type": "string",
1645
- "required": false
1646
- },
1647
1727
  "variant": {
1648
1728
  "name": "variant",
1649
1729
  "type": "string",
1650
1730
  "required": false
1651
1731
  },
1652
- "name": {
1653
- "name": "name",
1732
+ "label": {
1733
+ "name": "label",
1654
1734
  "type": "string",
1655
1735
  "required": true
1656
- },
1657
- "format": {
1658
- "name": "format",
1659
- "type": "string",
1660
- "required": false
1661
- },
1662
- "key": {
1663
- "name": "key",
1664
- "type": "string",
1665
- "required": false
1666
1736
  }
1667
1737
  }
1668
1738
  }
1739
+ },
1740
+ "retentionAfterRejectionDays": {
1741
+ "type": "number",
1742
+ "default": 730.0,
1743
+ "label": "Retention after rejection (days)",
1744
+ "description": "Days to keep rejected applications. Default 730 (2 years) is typical EEOC retention. Wire via sibling std-lifecycle delete rule.",
1745
+ "tier": "advanced"
1746
+ },
1747
+ "title": {
1748
+ "type": "string",
1749
+ "default": "Applications",
1750
+ "label": "Section title",
1751
+ "description": "Heading shown above the application list",
1752
+ "tier": "customization"
1753
+ },
1754
+ "equalOpportunityTrackingEnabled": {
1755
+ "type": "boolean",
1756
+ "default": false,
1757
+ "label": "Equal opportunity tracking",
1758
+ "description": "Capture demographic data separately for EEO reporting (stored in a sibling collection, not on the Application entity).",
1759
+ "tier": "advanced"
1760
+ },
1761
+ "eVerifyRequired": {
1762
+ "type": "boolean",
1763
+ "default": false,
1764
+ "label": "E-Verify required",
1765
+ "description": "US I-9 / E-Verify gate. Block ACCEPT until verification passes.",
1766
+ "tier": "customization"
1767
+ },
1768
+ "backgroundCheckRequired": {
1769
+ "type": "boolean",
1770
+ "default": false,
1771
+ "label": "Background check required",
1772
+ "description": "Block ACCEPT transition until a background check is complete.",
1773
+ "tier": "customization"
1774
+ },
1775
+ "i9DocumentsRequired": {
1776
+ "type": "boolean",
1777
+ "default": false,
1778
+ "label": "I-9 documents required",
1779
+ "description": "Require I-9 supporting documents at the accepted transition.",
1780
+ "tier": "customization"
1669
1781
  }
1670
1782
  },
1671
1783
  "scope": "collection"
@@ -1822,4 +1934,4 @@
1822
1934
  ]
1823
1935
  }
1824
1936
  ]
1825
- }
1937
+ }