@thebackstoryis/engineering-with-ai 0.2.9

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 (334) hide show
  1. package/Docs/README.md +50 -0
  2. package/Docs/adoption/consultancy-and-multi-project-rollout.md +135 -0
  3. package/Docs/adoption/non-technical-team-guide.md +126 -0
  4. package/Docs/archaeology-technology-and-hosting-discovery.md +212 -0
  5. package/Docs/blast-radius-and-impact-routing-guide.md +325 -0
  6. package/Docs/blueprints/internal-blueprint-catalogue.md +146 -0
  7. package/Docs/blueprints/maintaining-organisation-blueprints.md +154 -0
  8. package/Docs/blueprints/validation-and-troubleshooting.md +168 -0
  9. package/Docs/cli-reference.md +113 -0
  10. package/Docs/completed-phase-evidence-amendments.md +74 -0
  11. package/Docs/consultancy-network-rollout-control-plane-guide.md +202 -0
  12. package/Docs/context-aware-delivery-companion-guide.md +198 -0
  13. package/Docs/context-aware-delivery-companion-user-guide.md +184 -0
  14. package/Docs/context-management-and-token-efficiency.md +113 -0
  15. package/Docs/design-systems/design-system-implementation-guide.md +85 -0
  16. package/Docs/design-systems/design-system-pack-authoring-guide.md +95 -0
  17. package/Docs/design-systems/design-system-review-guide.md +51 -0
  18. package/Docs/design-systems/design-system-user-guide.md +96 -0
  19. package/Docs/design-systems/product-owner-guide.md +49 -0
  20. package/Docs/designing-organisation-blueprint-packs.md +384 -0
  21. package/Docs/developer-delivery-guide.md +224 -0
  22. package/Docs/error-reporting-guide.md +110 -0
  23. package/Docs/error-reporting-provider-guide.md +49 -0
  24. package/Docs/examples/error-report-adapter.md +70 -0
  25. package/Docs/examples/meeting-review.md +76 -0
  26. package/Docs/examples/minimal-design-system.md +67 -0
  27. package/Docs/examples/prototype-review-inputs.md +175 -0
  28. package/Docs/examples/reproducible-archaeology-depth-example.md +144 -0
  29. package/Docs/examples/test-scenario-input.md +68 -0
  30. package/Docs/examples/worked-examples.md +147 -0
  31. package/Docs/existing-project-onboarding-guide.md +214 -0
  32. package/Docs/explanation/core-concepts.md +26 -0
  33. package/Docs/explanation/delivery-workflow.md +48 -0
  34. package/Docs/governance/governance-team-guide.md +139 -0
  35. package/Docs/governed-starter-project-materialisation-guide.md +284 -0
  36. package/Docs/guide-catalogue.md +117 -0
  37. package/Docs/guided-discovery-facilitator-guide.md +172 -0
  38. package/Docs/guided-intent-workspace-guide.md +109 -0
  39. package/Docs/guided-phase-evidence-drafting-guide.md +119 -0
  40. package/Docs/human-approval-and-assurance-guide.md +146 -0
  41. package/Docs/knowledge-proposals-implementer-guide.md +106 -0
  42. package/Docs/knowledge-proposals-user-guide.md +247 -0
  43. package/Docs/maintainers/context-benchmarks.md +29 -0
  44. package/Docs/maintainers/contributing.md +58 -0
  45. package/Docs/maintainers/evidence-depth-acceptance.md +72 -0
  46. package/Docs/maintainers/verification-walkthroughs.md +104 -0
  47. package/Docs/meeting-evidence-implementer-guide.md +132 -0
  48. package/Docs/meeting-evidence-user-guide.md +200 -0
  49. package/Docs/operations/dashboard-and-delivery-state.md +153 -0
  50. package/Docs/operations/dashboard-configuration.md +87 -0
  51. package/Docs/operations/installation-updating-and-entitlements.md +135 -0
  52. package/Docs/operations/premium-personas-setup.md +76 -0
  53. package/Docs/operations/troubleshooting-and-recovery.md +205 -0
  54. package/Docs/organisation-rollout-guide.md +142 -0
  55. package/Docs/persona-entitlement-provider-guide.md +199 -0
  56. package/Docs/persona-guided-prototype-iteration.md +129 -0
  57. package/Docs/personas/organisation-specific-personas.md +103 -0
  58. package/Docs/personas/persona-authoring-cookbook.md +176 -0
  59. package/Docs/personas/persona-engagement-ui.md +133 -0
  60. package/Docs/personas/persona-governance.md +118 -0
  61. package/Docs/platform-export-analysis-guide.md +336 -0
  62. package/Docs/policies/governance-owner-guide.md +36 -0
  63. package/Docs/policies/implementation-guide.md +42 -0
  64. package/Docs/policies/organisation-policy-design-gates.md +58 -0
  65. package/Docs/policies/policy-pack-authoring-guide.md +108 -0
  66. package/Docs/policies/product-owner-guide.md +43 -0
  67. package/Docs/policies/technical-owner-guide.md +37 -0
  68. package/Docs/product-owner-guide.md +327 -0
  69. package/Docs/project-portfolio-orchestration-guide.md +199 -0
  70. package/Docs/quality/manual-qa-and-acceptance.md +162 -0
  71. package/Docs/quality/persona-driven-test-scenarios.md +172 -0
  72. package/Docs/quality/reproducible-archaeology-depth-review-checklist.md +89 -0
  73. package/Docs/reference/capabilities-and-project-layout.md +678 -0
  74. package/Docs/reference/cli-and-configuration.md +398 -0
  75. package/Docs/reference/contributions-api.md +23 -0
  76. package/Docs/reference/security-adapter-authoring.md +81 -0
  77. package/Docs/reference/starter-adapter-authoring.md +74 -0
  78. package/Docs/repository-source-map-guide.md +381 -0
  79. package/Docs/reproducible-archaeology-and-discovery-depth.md +292 -0
  80. package/Docs/screen-prototype-creation-guide.md +324 -0
  81. package/Docs/security-validation-guide.md +353 -0
  82. package/Docs/solution-readiness-review-guide.md +123 -0
  83. package/Docs/standards/project-standards-authoring.md +157 -0
  84. package/Docs/team-hub-guide.md +162 -0
  85. package/Docs/team-hub-resource-registry-guide.md +167 -0
  86. package/Docs/tutorials/first-delivery.md +83 -0
  87. package/Docs/tutorials/first-session.md +62 -0
  88. package/Docs/using-lifecycle-hooks.md +381 -0
  89. package/Docs/working-with-personas.md +274 -0
  90. package/LICENSE +165 -0
  91. package/README.md +96 -0
  92. package/agents-src/claude/ewai-security-reviewer.md +15 -0
  93. package/bin/ewai +5 -0
  94. package/config/archaeology-record-families.yaml +59 -0
  95. package/config/delivery-artifacts.yaml +121 -0
  96. package/config/delivery-stages.yaml +77 -0
  97. package/config/design-system.schema.json +46 -0
  98. package/config/error-reporting.schema.json +79 -0
  99. package/config/evidence-depth.schema.json +53 -0
  100. package/config/intent.schema.json +90 -0
  101. package/config/knowledge-proposals-proposal.schema.json +34 -0
  102. package/config/lifecycle-event.schema.json +68 -0
  103. package/config/lifecycle-handler.schema.json +45 -0
  104. package/config/lifecycle-hook-ack.schema.json +19 -0
  105. package/config/meeting-evidence-candidate.schema.json +102 -0
  106. package/config/organisation-policy.schema.json +137 -0
  107. package/config/pack.schema.json +250 -0
  108. package/config/persona-pack.schema.json +21 -0
  109. package/config/persona.schema.json +17 -0
  110. package/config/policy-evaluation.schema.json +77 -0
  111. package/config/policy-facts.schema.json +140 -0
  112. package/config/portfolio.schema.json +68 -0
  113. package/config/project.schema.json +313 -0
  114. package/config/prototype-iteration.schema.json +128 -0
  115. package/config/rollout.schema.json +87 -0
  116. package/config/security-adapter.schema.json +31 -0
  117. package/config/security-scan-request.schema.json +64 -0
  118. package/config/security-scan-response.schema.json +52 -0
  119. package/config/security-validation-policy.schema.json +74 -0
  120. package/config/starter-source-acknowledgement.schema.json +13 -0
  121. package/config/starter-source-adapter.schema.json +38 -0
  122. package/config/starter-source-request.schema.json +61 -0
  123. package/package.json +77 -0
  124. package/packs/core/pack.yaml +7 -0
  125. package/packs/design-systems/default/experience-promise.md +9 -0
  126. package/packs/design-systems/default/intentional-review.md +10 -0
  127. package/packs/design-systems/default/interaction-and-entry.md +9 -0
  128. package/packs/design-systems/default/meaningful-content-and-states.md +9 -0
  129. package/packs/design-systems/default/pack.yaml +44 -0
  130. package/packs/design-systems/default/principles.md +10 -0
  131. package/packs/personas/core/pack.yaml +7 -0
  132. package/packs/personas/core/personas/archaeologist.md +37 -0
  133. package/packs/personas/core/personas/end-user.md +17 -0
  134. package/packs/personas/core/personas/maintainer.md +17 -0
  135. package/packs/personas/core/personas/operator.md +17 -0
  136. package/packs/personas/core/personas/specs-knowledge-curator.md +35 -0
  137. package/packs/technologies/laravel/pack.yaml +30 -0
  138. package/packs/technologies/laravel-nuxt/pack.yaml +30 -0
  139. package/packs/technologies/nuxt/pack.yaml +30 -0
  140. package/packs/technologies/power-platform/pack.yaml +31 -0
  141. package/packs/technologies/salesforce/pack.yaml +25 -0
  142. package/public/app.js +4896 -0
  143. package/public/apple-touch-icon.png +0 -0
  144. package/public/assets/backstory-icon.png +0 -0
  145. package/public/dashboard-navigation.js +98 -0
  146. package/public/favicon-16.png +0 -0
  147. package/public/favicon-32.png +0 -0
  148. package/public/favicon.ico +0 -0
  149. package/public/index.html +789 -0
  150. package/public/styles.css +2693 -0
  151. package/public/team-hub/app.js +202 -0
  152. package/public/team-hub/index.html +79 -0
  153. package/public/team-hub/styles.css +90 -0
  154. package/scripts/publication-check.mjs +140 -0
  155. package/scripts/setup.mjs +21 -0
  156. package/skills-src/ewai-archaeology/SKILL.md +334 -0
  157. package/skills-src/ewai-archaeology/agents/openai.yaml +4 -0
  158. package/skills-src/ewai-archaeology/references/archaeology-contract.md +201 -0
  159. package/skills-src/ewai-archaeology/references/lifecycle-reconstruction.md +177 -0
  160. package/skills-src/ewai-archaeology/references/maximum-detail-reconstruction.md +97 -0
  161. package/skills-src/ewai-archaeology/references/model-routing.md +26 -0
  162. package/skills-src/ewai-architecture/SKILL.md +108 -0
  163. package/skills-src/ewai-architecture/agents/openai.yaml +4 -0
  164. package/skills-src/ewai-architecture/references/architecture-contract.md +176 -0
  165. package/skills-src/ewai-context/SKILL.md +68 -0
  166. package/skills-src/ewai-context/agents/openai.yaml +4 -0
  167. package/skills-src/ewai-context-import/SKILL.md +118 -0
  168. package/skills-src/ewai-context-import/agents/openai.yaml +4 -0
  169. package/skills-src/ewai-context-import/references/context-import-contract.md +106 -0
  170. package/skills-src/ewai-dashboard-configuration/SKILL.md +20 -0
  171. package/skills-src/ewai-deliver/SKILL.md +122 -0
  172. package/skills-src/ewai-deliver/references/delivery-evidence.md +92 -0
  173. package/skills-src/ewai-deliver/references/phase-routing.md +31 -0
  174. package/skills-src/ewai-design-system-apply/SKILL.md +27 -0
  175. package/skills-src/ewai-design-system-apply/agents/openai.yaml +4 -0
  176. package/skills-src/ewai-design-system-apply/references/application-contract.md +36 -0
  177. package/skills-src/ewai-design-system-author/SKILL.md +28 -0
  178. package/skills-src/ewai-design-system-author/agents/openai.yaml +4 -0
  179. package/skills-src/ewai-design-system-author/references/authoring-contract.md +38 -0
  180. package/skills-src/ewai-design-system-review/SKILL.md +26 -0
  181. package/skills-src/ewai-design-system-review/agents/openai.yaml +4 -0
  182. package/skills-src/ewai-design-system-review/references/review-contract.md +40 -0
  183. package/skills-src/ewai-error-reporting/SKILL.md +46 -0
  184. package/skills-src/ewai-error-reporting/agents/openai.yaml +4 -0
  185. package/skills-src/ewai-error-reporting/references/provider-contract.md +74 -0
  186. package/skills-src/ewai-evidence-depth/SKILL.md +72 -0
  187. package/skills-src/ewai-evidence-depth/agents/openai.yaml +4 -0
  188. package/skills-src/ewai-evidence-depth/references/evidence-depth-contract.md +127 -0
  189. package/skills-src/ewai-intent/SKILL.md +68 -0
  190. package/skills-src/ewai-intent/agents/openai.yaml +4 -0
  191. package/skills-src/ewai-intent/references/intent-contract.md +42 -0
  192. package/skills-src/ewai-knowledge-proposals/SKILL.md +105 -0
  193. package/skills-src/ewai-knowledge-proposals/agents/openai.yaml +4 -0
  194. package/skills-src/ewai-knowledge-proposals/references/proposal-contract.md +59 -0
  195. package/skills-src/ewai-meeting-evidence/SKILL.md +106 -0
  196. package/skills-src/ewai-meeting-evidence/agents/openai.yaml +4 -0
  197. package/skills-src/ewai-meeting-evidence/references/candidate-contract.md +64 -0
  198. package/skills-src/ewai-organisation-policy/SKILL.md +62 -0
  199. package/skills-src/ewai-organisation-policy/agents/openai.yaml +4 -0
  200. package/skills-src/ewai-organisation-policy/references/policy-contract.md +94 -0
  201. package/skills-src/ewai-palace-housekeeping/SKILL.md +55 -0
  202. package/skills-src/ewai-palace-housekeeping/agents/openai.yaml +4 -0
  203. package/skills-src/ewai-persona-entitlement/SKILL.md +60 -0
  204. package/skills-src/ewai-persona-entitlement/agents/openai.yaml +4 -0
  205. package/skills-src/ewai-phase-evidence/SKILL.md +79 -0
  206. package/skills-src/ewai-phase-evidence/agents/openai.yaml +4 -0
  207. package/skills-src/ewai-pipeline/SKILL.md +130 -0
  208. package/skills-src/ewai-pipeline/agents/openai.yaml +4 -0
  209. package/skills-src/ewai-pipeline/references/cli.md +86 -0
  210. package/skills-src/ewai-pipeline/references/specs-contract.md +16 -0
  211. package/skills-src/ewai-portfolio/SKILL.md +70 -0
  212. package/skills-src/ewai-portfolio/agents/openai.yaml +4 -0
  213. package/skills-src/ewai-portfolio/references/portfolio-contract.md +67 -0
  214. package/skills-src/ewai-project-discovery/SKILL.md +95 -0
  215. package/skills-src/ewai-project-discovery/agents/openai.yaml +4 -0
  216. package/skills-src/ewai-project-discovery/references/discovery-contract.md +34 -0
  217. package/skills-src/ewai-prototype-iteration/SKILL.md +30 -0
  218. package/skills-src/ewai-prototype-iteration/agents/openai.yaml +4 -0
  219. package/skills-src/ewai-prototype-iteration/references/review-contract.md +49 -0
  220. package/skills-src/ewai-retro/SKILL.md +48 -0
  221. package/skills-src/ewai-retro/agents/openai.yaml +4 -0
  222. package/skills-src/ewai-retro/references/asset-routing.md +14 -0
  223. package/skills-src/ewai-rollout/SKILL.md +74 -0
  224. package/skills-src/ewai-rollout/agents/openai.yaml +4 -0
  225. package/skills-src/ewai-rollout/references/rollout-contract.md +74 -0
  226. package/skills-src/ewai-shape-intents/SKILL.md +84 -0
  227. package/skills-src/ewai-shape-intents/agents/openai.yaml +4 -0
  228. package/skills-src/ewai-shape-intents/references/intent-mapping-contract.md +109 -0
  229. package/skills-src/ewai-solution-readiness/SKILL.md +55 -0
  230. package/skills-src/ewai-solution-readiness/agents/openai.yaml +4 -0
  231. package/skills-src/ewai-standards-check/SKILL.md +93 -0
  232. package/skills-src/ewai-standards-check/agents/openai.yaml +4 -0
  233. package/skills-src/ewai-standards-check/references/report-contract.md +116 -0
  234. package/skills-src/ewai-test-scenarios/SKILL.md +94 -0
  235. package/skills-src/ewai-test-scenarios/agents/openai.yaml +4 -0
  236. package/skills-src/ewai-test-scenarios/references/scenario-contract.md +88 -0
  237. package/src/afk-worker.mjs +16 -0
  238. package/src/archaeology.mjs +1333 -0
  239. package/src/checkin.mjs +261 -0
  240. package/src/cli.mjs +2427 -0
  241. package/src/companion-guidance.mjs +257 -0
  242. package/src/companion-opening.mjs +62 -0
  243. package/src/companion.mjs +256 -0
  244. package/src/context.mjs +210 -0
  245. package/src/dashboard-preferences.mjs +80 -0
  246. package/src/delivery-artifacts.mjs +204 -0
  247. package/src/delivery-documents.mjs +248 -0
  248. package/src/delivery-gates.mjs +317 -0
  249. package/src/delivery.mjs +1433 -0
  250. package/src/design-system-application.mjs +291 -0
  251. package/src/design-system-authoring.mjs +101 -0
  252. package/src/design-systems.mjs +466 -0
  253. package/src/discovery.mjs +1314 -0
  254. package/src/error-reporting.mjs +323 -0
  255. package/src/evidence-depth.mjs +543 -0
  256. package/src/execution-state.mjs +243 -0
  257. package/src/install.mjs +166 -0
  258. package/src/intent-dependencies.mjs +117 -0
  259. package/src/intent-maps.mjs +402 -0
  260. package/src/intents.mjs +747 -0
  261. package/src/knowledge-proposals.mjs +717 -0
  262. package/src/launcher.mjs +51 -0
  263. package/src/meeting-evidence.mjs +703 -0
  264. package/src/network-rollout.mjs +386 -0
  265. package/src/organisation-blueprints.mjs +438 -0
  266. package/src/organisation-policies.mjs +448 -0
  267. package/src/packs.mjs +44 -0
  268. package/src/paths.mjs +62 -0
  269. package/src/persona-entitlements.mjs +438 -0
  270. package/src/persona-licence-config.mjs +98 -0
  271. package/src/persona-website-provider.mjs +134 -0
  272. package/src/persona-zip.mjs +87 -0
  273. package/src/personas.mjs +159 -0
  274. package/src/platform-metadata-analysis.mjs +314 -0
  275. package/src/policy-design-gates.mjs +623 -0
  276. package/src/policy-gate-integration.mjs +318 -0
  277. package/src/portfolio.mjs +509 -0
  278. package/src/power-platform-source-map.mjs +190 -0
  279. package/src/project.mjs +449 -0
  280. package/src/prototype-iterations.mjs +730 -0
  281. package/src/repository-source-map.mjs +603 -0
  282. package/src/runtime/afk-conductor.mjs +973 -0
  283. package/src/runtime/context-assembly.mjs +457 -0
  284. package/src/runtime/context-benchmarks.mjs +115 -0
  285. package/src/runtime/dashboard-actions.mjs +109 -0
  286. package/src/runtime/dashboard-handoffs.mjs +149 -0
  287. package/src/runtime/dashboard-server.mjs +1272 -0
  288. package/src/runtime/dashboard.mjs +197 -0
  289. package/src/runtime/database.mjs +789 -0
  290. package/src/runtime/error-reporting.mjs +581 -0
  291. package/src/runtime/evidence-depth-workspace.mjs +412 -0
  292. package/src/runtime/execution-leases.mjs +299 -0
  293. package/src/runtime/guided-discovery.mjs +350 -0
  294. package/src/runtime/guided-intents.mjs +517 -0
  295. package/src/runtime/impact-analysis.mjs +535 -0
  296. package/src/runtime/intents.mjs +222 -0
  297. package/src/runtime/knowledge.mjs +86 -0
  298. package/src/runtime/lifecycle-hooks.mjs +1239 -0
  299. package/src/runtime/mcp-config.mjs +110 -0
  300. package/src/runtime/mcp-server.mjs +1885 -0
  301. package/src/runtime/palace.mjs +362 -0
  302. package/src/runtime/paths.mjs +58 -0
  303. package/src/runtime/persona-engagement.mjs +255 -0
  304. package/src/runtime/phase-contributions.mjs +594 -0
  305. package/src/runtime/policy-workspace.mjs +170 -0
  306. package/src/runtime/prototype-iterations.mjs +235 -0
  307. package/src/runtime/provider-adapters.mjs +163 -0
  308. package/src/runtime/repository-index.mjs +838 -0
  309. package/src/runtime/runs.mjs +185 -0
  310. package/src/runtime/security-validation.mjs +1230 -0
  311. package/src/runtime/starter-materialisation.mjs +1155 -0
  312. package/src/runtime/team-hub-client.mjs +479 -0
  313. package/src/runtime/team-hub-database.mjs +288 -0
  314. package/src/runtime/team-hub-server.mjs +191 -0
  315. package/src/runtime/team-hub.mjs +110 -0
  316. package/src/runtime/tree-sitter-index.mjs +390 -0
  317. package/src/runtime/version.mjs +1 -0
  318. package/src/runtime/work.mjs +633 -0
  319. package/src/salesforce-source-map.mjs +212 -0
  320. package/src/security-validation-config.mjs +224 -0
  321. package/src/solution-readiness.mjs +620 -0
  322. package/src/starter-materialisation-contract.mjs +407 -0
  323. package/src/task-graph.mjs +544 -0
  324. package/src/team-hub-resources.mjs +239 -0
  325. package/src/team-hub.mjs +242 -0
  326. package/src/test-scenarios.mjs +622 -0
  327. package/src/validation-config.mjs +289 -0
  328. package/templates/SPECS/1.Scope/personas/registry.yaml +12 -0
  329. package/templates/SPECS/5.Strategy/patterns/context-packet.md +119 -0
  330. package/templates/SPECS/6.Build/_tracker-template.md +16 -0
  331. package/templates/SPECS/pipeline.yaml +62 -0
  332. package/templates/discovery-answers.yaml +86 -0
  333. package/templates/intent-body.md +21 -0
  334. package/tests/fixtures/context-benchmarks.json +9 -0
@@ -0,0 +1,129 @@
1
+ # Persona-guided prototype iteration
2
+
3
+ EWAI reviews both the proposed prototype plan and the design that is actually produced. At each stage it identifies the most relevant available personas, shows why they are active, records their findings separately, and requires every finding to be assessed before the review can close.
4
+
5
+ This is design evidence, not an autonomous approval system. Personas advise. A named person selects the prototype, Manual QA remains a human gate, and deployment and release remain separate decisions.
6
+
7
+ Ask EWAI: “Review this prototype plan, then help me improve the rendered design using the relevant personas.” EWAI prepares the review inputs, shows the active perspectives and records their findings. You review the proposed responses, decide material trade-offs and select a design when it's ready. The optional CLI workflow below is for inspecting and recording the same evidence directly.
8
+
9
+ For the complete path from intent and design-system application through screen planning, runnable HTML creation, browser evidence and production handoff, see the [screen prototype creation guide](screen-prototype-creation-guide.md).
10
+
11
+ ## The lifecycle
12
+
13
+ 1. EWAI applies the selected design system—or the clearly labelled bundled fallback—to the UI delivery.
14
+ 2. EWAI prepares a review of the prototype plan with relevant installed personas.
15
+ 3. You inspect their findings and the proposed responses; material deferrals and escalations need your decision.
16
+ 4. The host or designer revises the plan and creates the runnable prototype, with source and rendered evidence.
17
+ 5. EWAI selects relevant personas afresh for the actual rendered design and prepares the design review.
18
+ 6. You review the findings and responses. Accepted changes can lead to another recorded cycle within the configured limit.
19
+ 7. When concerns are resolved—or a trade-off needs your decision—you choose whether to select the prototype, request changes or pause.
20
+ 8. EWAI records the reviewed plan and final cycle links in `ewai.prototype-manifest/v3`. That evidence doesn't approve production Build or final Manual QA.
21
+
22
+ Plan and design selection are separate on purpose. A Product Owner may be highly relevant to a journey plan, while an accessibility specialist or visual designer may become more relevant once responsive rendered evidence exists.
23
+
24
+ ## Actively engaged personas
25
+
26
+ EWAI searches the available catalogue across:
27
+
28
+ - core personas shipped with EWAI;
29
+ - project personas under the configured `SPECS/1.Scope/personas/project` location;
30
+ - personal personas installed for the current user;
31
+ - premium personas already installed through the configured entitlement provider.
32
+
33
+ The interface shows each active persona's safe ID, name, tier, category, matched signals and engagement reason. It also shows availability counts for every tier. Premium and personal personas add optional depth; the standard model with core and project personas remains a complete path. Prototype review never downloads or synchronises premium content.
34
+
35
+ ## CLI workflow
36
+
37
+ The [complete plan and cycle inputs](examples/prototype-review-inputs.md) show all four files, the returned values to carry forward and the evidence required before design review. The host normally prepares these through `ewai-prototype-iteration`; review its findings and assessments rather than inventing hashes or persona IDs.
38
+
39
+ Prepare a plan input JSON containing the intent digest, effective design-system digest, screens, journeys and selection signals, then run:
40
+
41
+ ```bash
42
+ ewai prototype-review plan-prepare customer-portal \
43
+ --input plan-prepare.json \
44
+ --project . \
45
+ --json
46
+ ```
47
+
48
+ Use the returned active ensemble to create evidence-cited findings. Keep each finding separate from its assessment, then record the complete result:
49
+
50
+ ```bash
51
+ ewai prototype-review plan-record customer-portal \
52
+ --input plan-review.json \
53
+ --project . \
54
+ --json
55
+ ```
56
+
57
+ After producing the runnable prototype, provide all seven evidence-channel states and prepare design review:
58
+
59
+ ```bash
60
+ ewai prototype-review cycle-prepare customer-portal \
61
+ --input cycle-prepare.json \
62
+ --project . \
63
+ --json
64
+
65
+ ewai prototype-review cycle-record customer-portal \
66
+ --input cycle-review.json \
67
+ --project . \
68
+ --json
69
+ ```
70
+
71
+ Inspect or compare recorded evidence:
72
+
73
+ ```bash
74
+ ewai prototype-review status customer-portal --project . --json
75
+ ewai prototype-review compare customer-portal sha256:<earlier> sha256:<later> --project . --json
76
+ ```
77
+
78
+ Comparison explains variance in causal order: inputs, personas, findings, assessments and output.
79
+
80
+ ## MCP and dashboard
81
+
82
+ Agent hosts can use:
83
+
84
+ - `ewai_prototype_review_status`;
85
+ - `ewai_prototype_plan_prepare` and `ewai_prototype_plan_record`;
86
+ - `ewai_prototype_cycle_prepare` and `ewai_prototype_cycle_record`;
87
+ - `ewai_prototype_review_compare`.
88
+
89
+ Enable **Contributions** in **Configuration** first; see [dashboard configuration](operations/dashboard-configuration.md). When the selected delivery is in UI Design, its contextual prototype review panel shows persona availability, Actively engaged personas, matched signals, engagement reasons, findings, dispositions and the derived next action. The panel accepts the same bounded JSON contracts and does not expose persona bodies or accept a project-root override.
90
+
91
+ ## Findings and dispositions
92
+
93
+ Each persona finding has a stable identity based on persona, concern code and evidence references. Changing explanatory wording does not silently turn the same concern into a new issue.
94
+
95
+ Every finding receives exactly one disposition:
96
+
97
+ - `incorporate`;
98
+ - `incorporate-with-modification`;
99
+ - `defer`;
100
+ - `reject`;
101
+ - `escalate`.
102
+
103
+ Each disposition requires rationale. Modified incorporation also records the modification. Material deferral and escalation require a human decision.
104
+
105
+ ## Evidence channels
106
+
107
+ Design cycles report `source`, `rendered-viewport`, `interaction`, `assistive-technology`, `user-research`, `manual-qa`, and `release` separately. Source and rendered-viewport evidence are required before persona design review. Missing channels remain explicitly missing. Persona feedback is never presented as user research, Manual QA, accessibility certification or release evidence.
108
+
109
+ ## Iteration bounds and next action
110
+
111
+ The default design limit is two cycles and the supported range is one to three. EWAI derives one of:
112
+
113
+ - `iterate` when assessed feedback should be incorporated and capacity remains;
114
+ - `ready-for-human-selection` when no assessed concern requires another cycle;
115
+ - `human-decision-required` when material uncertainty is escalated, deferred, or remains at the cycle limit.
116
+
117
+ The limit prevents an unbounded model-to-model design loop. It never converts unresolved feedback into acceptance.
118
+
119
+ ## Prototype manifest v3
120
+
121
+ New UI deliveries use `ewai.prototype-manifest/v3`. It retains selected-prototype and design-system receipt fields from v2 and adds digest-checked links to the immutable reviewed plan and final design cycle under:
122
+
123
+ ```text
124
+ SPECS/6.Build/<delivery>/ui-design-assets/prototype-iterations/
125
+ ├── plans/
126
+ └── cycles/
127
+ ```
128
+
129
+ Historical v1 and v2 manifests remain readable. A v3 delivery must link review evidence that belongs to the same delivery, matches the recorded digest, ties the final cycle to the reviewed plan, and references the selected HTML entry point.
@@ -0,0 +1,103 @@
1
+ # Creating organisation-specific personas
2
+
3
+ Use this guide to encode a reusable organisational perspective without turning a persona into an unreviewed policy engine.
4
+
5
+ ## Decide whether this should be a persona
6
+
7
+ Use a persona for context-sensitive judgement, questions, and trade-offs. Use a standard for a mandatory obligation.
8
+
9
+ | Need | Best home |
10
+ | --- | --- |
11
+ | “All public APIs must use the approved authentication pattern.” | Organisation or project standard |
12
+ | “Ask how this design uses our authentication, versioning, and error conventions.” | Organisation API persona |
13
+ | “This project uses a temporary exception until migration completes.” | Project constraint or decision |
14
+ | “Challenge whether the exception creates consumer or operational risk.” | Project persona |
15
+
16
+ Often the best design is a standard plus a persona that tests how the standard applies in context.
17
+
18
+ ## Choose the distribution scope
19
+
20
+ - **Project persona:** use when knowledge is specific to one product, client, team, or evidence set.
21
+ - **Blueprint persona template:** use when a reviewed perspective should be proposed consistently to several projects and become project-owned after approval.
22
+ - **Personal persona:** use for an individual's reusable working lens, not organisational authority.
23
+ - **Premium persona:** use the managed entitled library; do not copy it into an organisation pack.
24
+
25
+ ## Gather source material
26
+
27
+ Work with the accountable organisational experts and collect:
28
+
29
+ - approved standards and decision records;
30
+ - recurring design and review questions;
31
+ - examples of accepted and rejected approaches;
32
+ - operating constraints and failure experience;
33
+ - escalation and exception routes;
34
+ - vocabulary used across teams;
35
+ - known boundaries where another specialist must decide.
36
+
37
+ Do not encode one person's informal preference as organisation policy.
38
+
39
+ ## Model the perspective
40
+
41
+ An organisation API designer, for example, might:
42
+
43
+ - protect consumer compatibility and predictable change;
44
+ - ask how authentication, error envelopes, pagination, and idempotency follow organisation standards;
45
+ - request evidence from contract tests and consumer journeys;
46
+ - identify where a deliberate exception needs governance review;
47
+ - avoid selecting technologies outside the approved decision process;
48
+ - remain advisory.
49
+
50
+ Use the [persona authoring cookbook](persona-authoring-cookbook.md) for metadata and body structure.
51
+
52
+ ## Package through a Blueprint
53
+
54
+ A Blueprint persona template should use the complete project-persona Markdown shape. The Blueprint manifest references it through a bounded relative path. During Guided Setup:
55
+
56
+ 1. the template is previewed with its source pack and module;
57
+ 2. the Product Owner reviews its consequences;
58
+ 3. named approval materialises it under the configured project-persona directory;
59
+ 4. provenance records pack ID, version, digest, approver, and time;
60
+ 5. the materialised persona participates with `tier: project`.
61
+
62
+ The organisation supplies a reviewed starting point. The approving project owns the resulting persona.
63
+
64
+ ## Design for contextual engagement
65
+
66
+ Choose metadata that matches the decisions where the lens is useful:
67
+
68
+ - architecture personas should use architecture, integration, API, data, resilience, or security signals as appropriate;
69
+ - operational personas should use deployment, observability, incidents, support, recovery, or continuity;
70
+ - governance personas should use controls, audit, risk, compliance, privacy, or assurance;
71
+ - product personas should use outcomes, journeys, accessibility, adoption, research, or value.
72
+
73
+ Do not add all organisation vocabulary to every persona. The resolver should be able to swap specialists in and out as the subject changes.
74
+
75
+ ## Review and pilot
76
+
77
+ Before publishing:
78
+
79
+ 1. validate the persona Markdown and Blueprint manifest;
80
+ 2. run relevant and irrelevant Discovery sections;
81
+ 3. inspect name, tier, matched concerns, and engagement reason;
82
+ 4. compare questions with real subject-matter experts;
83
+ 5. confirm mandatory rules remain in standards;
84
+ 6. pilot with more than one project;
85
+ 7. remove confidential examples and project-specific facts;
86
+ 8. assign maintenance and deprecation ownership.
87
+
88
+ ## Example review questions
89
+
90
+ - Does this persona express one coherent organisational perspective?
91
+ - Which approved sources support it?
92
+ - Would a project know when its advice is optional or mandatory?
93
+ - Are exceptions routed to a named human process?
94
+ - Does it duplicate a core or premium persona without adding local value?
95
+ - Does it match only relevant Discovery contexts?
96
+ - Can the project safely own and improve the materialised version?
97
+
98
+ ## Related guides
99
+
100
+ - [Designing Organisation Blueprint Packs](../designing-organisation-blueprint-packs.md)
101
+ - [Persona governance](persona-governance.md)
102
+ - [Internal Blueprint catalogue](../blueprints/internal-blueprint-catalogue.md)
103
+ - [Project standards authoring](../standards/project-standards-authoring.md)
@@ -0,0 +1,176 @@
1
+ # Persona authoring cookbook
2
+
3
+ Use this guide to write a persona that improves questions and decisions without impersonating a stakeholder or becoming hidden policy.
4
+
5
+ Read [Working with personas](../working-with-personas.md) first for source tiers, paths, commands, premium sync, and contextual selection.
6
+
7
+ ## Start with one distinct job
8
+
9
+ A useful persona examines a distinct set of problems and explains their consequences for a recognisable role or outcome.
10
+
11
+ Good missions:
12
+
13
+ - help a service operator assess observability and safe recovery;
14
+ - test a finance workflow for reconciliation and audit evidence;
15
+ - challenge an API design against the organisation's authentication and compatibility approach;
16
+ - examine a journey from an assistive-technology user's perspective, grounded in real research.
17
+
18
+ Weak missions:
19
+
20
+ - “make everything better”;
21
+ - “be an expert in all fields”;
22
+ - “approve secure code”;
23
+ - “represent all users”.
24
+
25
+ If two perspectives have different evidence, concerns, or authority boundaries, create two focused personas.
26
+
27
+ ## Choose the correct scope
28
+
29
+ ```bash
30
+ # Reusable lens owned by one practitioner
31
+ ewai persona create service-designer \
32
+ --name "Service Designer" \
33
+ --category product
34
+
35
+ # Perspective owned and versioned by one project
36
+ ewai persona create payments-operator \
37
+ --scope project \
38
+ --project . \
39
+ --name "Payments Operator" \
40
+ --category operations
41
+ ```
42
+
43
+ Do not recreate managed premium content. Add a project persona only when the project has a genuine local perspective or evidence-backed refinement.
44
+
45
+ The create command produces a Markdown starting file, not a finished expert. Open the returned path and write the mission, decision methods, questions and boundaries using the structure below. Keep existing frameworks, decision trees and attribution when refining an established persona.
46
+
47
+ Then follow [Test the persona](#test-the-persona): check it appears, use it against a real but safe decision, and review whether its advice is specific and useful. Listing successfully proves discoverability, not the quality of its judgement.
48
+
49
+ ## Make the persona easy to find
50
+
51
+ ```markdown
52
+ ---
53
+ schema: ewai.persona/v1
54
+ id: project.payments-operator
55
+ name: Payments Operator
56
+ version: 0.1.0
57
+ description: Examines payment changes for reconciliation, exception handling, observability, and recoverable operations.
58
+ category: operations
59
+ pack: ewai.personas.project
60
+ tier: project
61
+ tags:
62
+ - payments
63
+ - reconciliation
64
+ - incidents
65
+ capabilities:
66
+ - operational-readiness
67
+ - exception-design
68
+ - recovery-review
69
+ ---
70
+ ```
71
+
72
+ Metadata drives discovery and selection:
73
+
74
+ - **ID:** stable machine identity; do not encode a person's name.
75
+ - **Name:** short human label shown in the interface.
76
+ - **Version:** change deliberately when the perspective changes.
77
+ - **Description:** the decisions, outcomes, and risks this persona examines.
78
+ - **Category:** one useful domain grouping.
79
+ - **Tags:** plain-language concepts likely to match Discovery sections or answers.
80
+ - **Capabilities:** concrete review or reasoning activities.
81
+
82
+ Avoid keyword stuffing. Relevance comes before tier, and a persona that matches everything makes the ensemble less meaningful.
83
+
84
+ ## Use a dependable body structure
85
+
86
+ The sections below are a starting point, not a limit. Keep any useful decision trees, named methods, worked examples, checks and response templates the role needs. Match the depth and response format to the request; don't force a full report when a short answer is enough.
87
+
88
+ ### Mission
89
+
90
+ State the outcome the perspective is trying to protect. Keep it to one or two paragraphs.
91
+
92
+ ### Operating stance
93
+
94
+ Explain how the persona reasons and what evidence it prefers. For example:
95
+
96
+ - trace payment totals to an accountable ledger;
97
+ - distinguish transient processing from durable settlement;
98
+ - prefer observable, repeatable recovery over manual heroics.
99
+
100
+ ### Questions to keep asking
101
+
102
+ Write questions that change the quality of the work:
103
+
104
+ - How will an operator detect a partial failure?
105
+ - Can reconciliation distinguish duplicate, delayed, and missing events?
106
+ - Who may retry this action, and is it idempotent?
107
+ - What evidence proves recovery completed safely?
108
+
109
+ Avoid generic questions such as “Is this good?” or instructions to always choose one technology.
110
+
111
+ ### Boundaries
112
+
113
+ Every persona should say:
114
+
115
+ - it advises rather than approves;
116
+ - real stakeholder evidence takes priority;
117
+ - assumptions and missing evidence must be explicit;
118
+ - mandatory policy remains in project standards, not persona opinion.
119
+
120
+ Add any domain-specific boundary, such as requiring a real privacy or legal reviewer for regulated interpretation.
121
+
122
+ ## Ground project personas in evidence
123
+
124
+ When a project persona represents users or organisational roles, link its development to interviews, observation, approved process documentation, or accountable subject-matter review. Do not embed confidential transcripts in the persona.
125
+
126
+ Separate:
127
+
128
+ - **observed needs and constraints** supported by evidence;
129
+ - **working hypotheses** awaiting validation;
130
+ - **design prompts** used to challenge the team;
131
+ - **authority** retained by real people.
132
+
133
+ ## Test the persona
134
+
135
+ 1. Confirm it parses and appears:
136
+
137
+ ```bash
138
+ ewai persona list --project . --query payments
139
+ ```
140
+
141
+ 2. Run representative Discovery sections.
142
+ 3. Confirm its name, tier, matched concerns, and engagement reason make sense.
143
+ 4. Check that it is absent from unrelated sections.
144
+ 5. Compare its questions with the real stakeholder's view.
145
+ 6. Narrow metadata or split the persona if it dominates too many contexts.
146
+
147
+ Guided Discovery selects up to four relevant personas and deliberately tries to include a matching project and premium lens. Test the ensemble, not only the persona in isolation.
148
+
149
+ ## Common authoring mistakes
150
+
151
+ | Mistake | Better approach |
152
+ | --- | --- |
153
+ | Persona contains mandatory rules | Put enforceable obligations in project standards; let the persona ask how they apply. |
154
+ | Persona pretends to be a named colleague | Describe a role or evidence-backed user group without imitating an individual. |
155
+ | Every tag is included | Use a small discriminating vocabulary. |
156
+ | Technology choice is hard-coded without context | State the organisation's decision criteria and link to the governing standard. |
157
+ | Persona gives approval | Preserve named human approval outside the persona. |
158
+ | Premium persona is copied and edited | Create a separately owned project persona and explain the local difference. |
159
+ | Persona never retires | Give it an owner, review trigger, and version history. |
160
+
161
+ ## Author checklist
162
+
163
+ - [ ] One distinct outcome and perspective.
164
+ - [ ] Correct personal or project ownership.
165
+ - [ ] Stable valid metadata.
166
+ - [ ] Specific, restrained tags and capabilities.
167
+ - [ ] Evidence expectations and useful questions.
168
+ - [ ] Clear advisory and stakeholder boundaries.
169
+ - [ ] Tested in relevant and irrelevant Discovery contexts.
170
+ - [ ] Reviewed by the real role or subject-matter owner where possible.
171
+
172
+ ## Related guides
173
+
174
+ - [Persona governance](persona-governance.md)
175
+ - [Organisation-specific personas](organisation-specific-personas.md)
176
+ - [Persona engagement UI](persona-engagement-ui.md)
@@ -0,0 +1,133 @@
1
+ # Persona engagement UI guide
2
+
3
+ This is an implementation and design guide for teams presenting EWAI's active personas in Guided Discovery, Blast Radius or another conversational surface. The response fields below describe the current contract. The later presentation and interaction sections are design recommendations, not a claim that every EWAI screen already provides those controls. For everyday use, see [Working with personas](../working-with-personas.md).
4
+
5
+ ## The user question the UI must answer
6
+
7
+ At any moment, a participant should be able to answer:
8
+
9
+ > Which perspectives are influencing this conversation, where did they come from, and why are they relevant now?
10
+
11
+ Visibility is not decoration. It helps participants challenge missing, irrelevant, or overrepresented perspectives.
12
+
13
+ ## Current response contract
14
+
15
+ Guided Discovery returns active personas with:
16
+
17
+ - `id`;
18
+ - `name`;
19
+ - `tier`;
20
+ - `category`;
21
+ - a bounded description;
22
+ - `matchedSignals`;
23
+ - `engagementReason`.
24
+
25
+ The response also states that guidance is advisory and human evidence takes priority. The ensemble can change by section, answer context, or proposed-change evidence, with up to four relevant personas selected.
26
+
27
+ Persona-driven test preparation uses the same safe ensemble contract. Its dashboard [coverage loom](../quality/persona-driven-test-scenarios.md) keeps source, persona concern, and proof route visibly separate.
28
+
29
+ ## Minimum visible treatment
30
+
31
+ For each active persona, display:
32
+
33
+ 1. **Name** as the primary label.
34
+ 2. **Tier/source** as provenance, not status or authority.
35
+ 3. **Engagement reason** in plain language.
36
+ 4. **Matched concerns** when the user wants more detail.
37
+
38
+ Also provide an explicit empty state when no persona matches. Do not silently fall back to implying that an unnamed generic expert is active.
39
+
40
+ ## Show change over time
41
+
42
+ When the section or evidence changes:
43
+
44
+ - identify personas that joined;
45
+ - identify personas that left;
46
+ - explain the new concern that caused the change;
47
+ - retain access to the current ensemble without interrupting the main task.
48
+
49
+ Recommended practice is a compact persistent summary with an expandable detail panel. Avoid a constantly animating “agent conversation” that distracts from the human discussion.
50
+
51
+ ## Language to use
52
+
53
+ Prefer:
54
+
55
+ - “Active perspectives”;
56
+ - “Engaged because…”;
57
+ - “Matched concerns”;
58
+ - “Advisory”;
59
+ - “Project”, “premium”, “personal”, or “core” source.
60
+
61
+ Avoid:
62
+
63
+ - “Decision-makers”;
64
+ - “Approvers”;
65
+ - “The user says…” when no real user spoke;
66
+ - “Verified expert” unless a separate assurance process defines that claim;
67
+ - authority implied by a paid or higher-precedence tier.
68
+
69
+ ## Interaction states
70
+
71
+ | State | UI response |
72
+ | --- | --- |
73
+ | Loading | Preserve the prior confirmed ensemble and say a new selection is being evaluated. |
74
+ | Active | Show name, tier, reason, and optional matched concerns. |
75
+ | No match | Explain that no installed persona matched; invite review of missing perspectives. |
76
+ | Parse problem | Exclude the unsafe definition and link to persona troubleshooting. |
77
+ | Premium unavailable | State that the managed library is not installed or accessible; do not prompt an automatic download. |
78
+ | Changed draft revision | Preserve entered work and ask the user to reconcile the newer revision. |
79
+
80
+ ## Allow challenge without pretending to configure authority
81
+
82
+ Useful actions include:
83
+
84
+ - “Why is this persona active?”
85
+ - “What evidence is this question based on?”
86
+ - “This perspective is not relevant.”
87
+ - “A stakeholder perspective is missing.”
88
+ - “Open persona details.”
89
+
90
+ If the current product does not support manual pinning or exclusion, present these as feedback or follow-up actions rather than controls that appear to have changed the resolver.
91
+
92
+ ## Accessibility
93
+
94
+ - Do not encode tiers or active/inactive state by colour alone.
95
+ - Make change announcements available to assistive technology without repeatedly stealing focus.
96
+ - Keep reasons concise and expandable.
97
+ - Support keyboard inspection of every persona.
98
+ - Use readable source labels rather than unexplained icons.
99
+ - Preserve the active ensemble when zoomed or reflowed.
100
+
101
+ ## Privacy and content boundaries
102
+
103
+ Do not expose proprietary persona bodies merely to explain selection. Public metadata, matched concerns, and the generated reason are sufficient for the active summary.
104
+
105
+ Do not display filesystem paths to ordinary participants. Maintainer diagnostics may expose a local path in a separate technical view with appropriate access.
106
+
107
+ ## Acceptance checklist
108
+
109
+ - [ ] Active personas remain visible throughout each section.
110
+ - [ ] Name, tier, reason, and matched concerns are available.
111
+ - [ ] Tier is presented as provenance, not authority.
112
+ - [ ] Join/leave changes are understandable.
113
+ - [ ] No-match and unavailable-premium states are honest.
114
+ - [ ] Advisory and human-evidence boundaries are visible.
115
+ - [ ] The UI does not expose managed persona content.
116
+ - [ ] Keyboard, screen-reader, zoom, and colour-independent use were checked.
117
+
118
+ ## Related guides
119
+
120
+ - [Working with personas](../working-with-personas.md)
121
+ - [Guided Discovery facilitator guide](../guided-discovery-facilitator-guide.md)
122
+ - [Blast Radius and Impact Routing](../blast-radius-and-impact-routing-guide.md)
123
+ - [Persona-driven test scenarios](../quality/persona-driven-test-scenarios.md)
124
+ - [Persona authoring cookbook](persona-authoring-cookbook.md)
125
+
126
+ ## Current contract sources
127
+
128
+ - `src/runtime/guided-discovery.mjs`
129
+ - `src/runtime/impact-analysis.mjs`
130
+ - `src/runtime/persona-engagement.mjs`
131
+ - `src/runtime/dashboard-server.mjs`
132
+ - `tests/guided-discovery.test.mjs`
133
+ - `tests/impact-analysis.test.mjs`
@@ -0,0 +1,118 @@
1
+ # Persona governance guide
2
+
3
+ Use this guide to keep persona libraries useful, attributable, current, and appropriately bounded over time.
4
+
5
+ ## Govern source and authority separately
6
+
7
+ | Persona source | Content owner | Change route | Decision authority |
8
+ | --- | --- | --- | --- |
9
+ | Core | EWAI maintainers | Framework release | None; advisory only |
10
+ | Premium | Managed pack publisher | Explicit entitled sync | None; advisory only |
11
+ | Personal | Individual practitioner | Personal library change | None; advisory only |
12
+ | Project | Project team | Reviewed project SPECS change | None; advisory only |
13
+ | Blueprint-derived project | Project after approval | Project change process | None; advisory only |
14
+
15
+ Higher selection precedence does not grant greater authority. In Guided Discovery, relevance is scored first; project, premium, personal, and core form the tier tie-break order.
16
+
17
+ ## Assign an owner and review trigger
18
+
19
+ Every project or organisation persona should have:
20
+
21
+ - a content owner;
22
+ - the real roles or evidence it is grounded in;
23
+ - a current version;
24
+ - a last-reviewed date in adjacent project governance records;
25
+ - events that trigger review;
26
+ - a retirement or replacement route.
27
+
28
+ The current persona schema does not define all governance metadata. Keep additional review records in project SPECS or the organisation catalogue rather than adding unsupported frontmatter.
29
+
30
+ ## Review when context changes
31
+
32
+ Review a persona when:
33
+
34
+ - user research contradicts or deepens its assumptions;
35
+ - the represented role's responsibilities change;
36
+ - regulation, policy, or operating practice changes;
37
+ - its questions repeatedly produce low-value or duplicated advice;
38
+ - it appears in irrelevant Discovery sections;
39
+ - it fails to appear when its perspective is needed;
40
+ - a Blueprint or premium release changes adjacent perspectives;
41
+ - the named owner leaves or changes role.
42
+
43
+ ## Make changes traceable
44
+
45
+ For a material change:
46
+
47
+ 1. explain the evidence or decision that prompted it;
48
+ 2. update mission, stance, questions, metadata, and boundaries coherently;
49
+ 3. increase the persona version;
50
+ 4. inspect catalogue discovery with `ewai persona list`;
51
+ 5. test relevant ensemble selection and UI reasons;
52
+ 6. have the project or subject-matter owner review it;
53
+ 7. record replacement or migration effects.
54
+
55
+ Do not change only the description to force a ranking result while leaving the underlying perspective inconsistent.
56
+
57
+ ## Resolve duplicate and conflicting personas
58
+
59
+ Two personas may legitimately disagree. First determine whether they represent:
60
+
61
+ - different stakeholder outcomes;
62
+ - different organisational policies;
63
+ - the same role at different scopes;
64
+ - an obsolete and a current version;
65
+ - accidental duplication.
66
+
67
+ Keep distinct perspectives when the tension is useful and name the decision owner. Merge only when ownership and evidence are truly the same. Retire obsolete duplicates rather than relying on tier ordering to hide them.
68
+
69
+ ## Manage premium updates
70
+
71
+ Premium personas are an explicitly synced managed library. Check-in reports entitlement, installation, and update status without downloading content.
72
+
73
+ When an update is offered:
74
+
75
+ 1. confirm the environment is entitled and permitted to receive it;
76
+ 2. preserve any project decision that depends on the current perspective;
77
+ 3. run the explicit sync only with consent;
78
+ 4. inspect changed catalogue metadata and relevant ensemble behaviour;
79
+ 5. do not modify or publish the managed cache;
80
+ 6. create a project persona if a durable local perspective is needed.
81
+
82
+ ```bash
83
+ ewai persona premium sync --project . --yes
84
+ ```
85
+
86
+ An update checks licence access and downloads a verified release ZIP from the website. It doesn't pull a Git branch. If the managed files were edited, belong to another seat or fail validation, stop and inspect the error; don't force replacement. See [setup and recovery](../operations/premium-personas-setup.md).
87
+
88
+ Status checks can enforce a confirmed expiry of the matching team licence. They preserve personal and project personas; individual subscriptions retain the installed pack after expiry but no longer receive updates.
89
+
90
+ ## Retire a persona safely
91
+
92
+ The public CLI does not provide a persona-retire command. Retirement is therefore a reviewed ownership action:
93
+
94
+ - identify replacement or explain why the lens is no longer needed;
95
+ - check intents, Blueprints, or guides that refer to the persona ID;
96
+ - retain history needed to interpret past decisions;
97
+ - remove or archive the source through normal version control;
98
+ - refresh the catalogue and confirm it is no longer selected;
99
+ - communicate the change to affected teams.
100
+
101
+ Never delete a managed premium persona independently of its managed library.
102
+
103
+ ## Audit questions
104
+
105
+ - Can we identify the owner and evidence behind each project persona?
106
+ - Are personas written as perspectives rather than hidden policies?
107
+ - Do active-persona reasons remain understandable?
108
+ - Are stale keywords causing irrelevant selection?
109
+ - Are critical real stakeholder perspectives missing?
110
+ - Have managed personas been copied into public or project history?
111
+ - Can past project decisions still be interpreted after a persona changes?
112
+
113
+ ## Related guides
114
+
115
+ - [Working with personas](../working-with-personas.md)
116
+ - [Persona authoring cookbook](persona-authoring-cookbook.md)
117
+ - [Organisation rollout](../organisation-rollout-guide.md)
118
+ - [Governance team guide](../governance/governance-team-guide.md)