@a-company/paradigm 5.37.11 → 6.0.2

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 (362) hide show
  1. package/dist/{accept-orchestration-SBZVK3H4.js → accept-orchestration-QQISPINV.js} +1 -1
  2. package/dist/add-UOR4INIV.js +8 -0
  3. package/dist/{agent-loader-RIVI6QPP.js → agent-loader-2WJHD46U.js} +1 -1
  4. package/dist/{agent-loader-RJRVO5GQ.js → agent-loader-YKS2PQWO.js} +1 -1
  5. package/dist/{aggregate-W66DM3GA.js → aggregate-A5S5MTCC.js} +1 -1
  6. package/dist/{ambient-76YMUA5Q.js → ambient-BE3SQXNN.js} +1 -1
  7. package/dist/{ambient-WTLYUAQM.js → ambient-NVKQCW2A.js} +12 -12
  8. package/dist/{assess-UFPYEJKP.js → assess-63WXHWJV.js} +1 -1
  9. package/dist/{beacon-5QVYV5DF.js → beacon-QVUD3MGP.js} +1 -1
  10. package/dist/{calibration-OLJYB5HN.js → calibration-BDHGYJOK.js} +1 -1
  11. package/dist/{chunk-SI6SV76D.js → chunk-3DZK54RU.js} +72 -19
  12. package/dist/{chunk-CHVQNRRT.js → chunk-4PSD5R7N.js} +2 -2
  13. package/dist/chunk-6SKSV5B2.js +24 -0
  14. package/dist/{chunk-KFNHCQ4R.js → chunk-FEYOQMZ5.js} +1 -1
  15. package/dist/{chunk-NEJ4ZLCY.js → chunk-GAFKOFAV.js} +1 -1
  16. package/dist/chunk-GRZQIKST.js +2 -0
  17. package/dist/{chunk-RLCH7DXQ.js → chunk-K7X3Z3GL.js} +1 -1
  18. package/dist/chunk-LPBCQM5Y.js +6 -0
  19. package/dist/{chunk-T6IDXUUA.js → chunk-LWAIVOSF.js} +1 -1
  20. package/dist/{chunk-74SGKSRQ.js → chunk-M2HKWR25.js} +1 -1
  21. package/dist/{chunk-BOYQAMGC.js → chunk-M3PPXJU4.js} +1 -1
  22. package/dist/chunk-PHEX6LU4.js +111 -0
  23. package/dist/chunk-Q527BPUF.js +2 -0
  24. package/dist/chunk-R5ECMBIV.js +11 -0
  25. package/dist/{chunk-X3U3IGYT.js → chunk-TBWWFRL5.js} +1 -1
  26. package/dist/{chunk-MQIG6SMF.js → chunk-TNVWGPCE.js} +1 -1
  27. package/dist/{chunk-SUU6M4JH.js → chunk-TOYQ2QCB.js} +1 -1
  28. package/dist/chunk-TZDYIPVU.js +521 -0
  29. package/dist/{chunk-3XGNXXCT.js → chunk-UZ5H7K6Q.js} +1 -1
  30. package/dist/chunk-VIG5LSGZ.js +2 -0
  31. package/dist/chunk-VNIX5KBT.js +3 -0
  32. package/dist/{chunk-AGFPVSX5.js → chunk-VXIIVMTM.js} +1 -1
  33. package/dist/{chunk-ORDKEGII.js → chunk-WESTEMIM.js} +1 -1
  34. package/dist/{chunk-LBQBWIEX.js → chunk-Y4P4SGZV.js} +1 -1
  35. package/dist/{chunk-DOCDDDTD.js → chunk-YNDPSWOE.js} +5 -5
  36. package/dist/chunk-Z5QW6USC.js +2 -0
  37. package/dist/chunk-ZJQY5PPP.js +7 -0
  38. package/dist/{commands-LMUD5L6R.js → commands-ANRJNG2W.js} +1 -1
  39. package/dist/compliance-BNFWQPKM.js +6 -0
  40. package/dist/config-schema-FLHRVZMI.js +2 -0
  41. package/dist/{constellation-CG7C4WFE.js → constellation-NWLXYATA.js} +1 -1
  42. package/dist/{context-audit-XRPT3OU2.js → context-audit-JVCA6GSV.js} +1 -1
  43. package/dist/{cost-IDNVMAEV.js → cost-24UZSS2P.js} +1 -1
  44. package/dist/{cursorrules-U5O4G5T4.js → cursorrules-ZXPXPZ3P.js} +1 -1
  45. package/dist/decision-loader-HELL2AMX.js +2 -0
  46. package/dist/{delete-P5VULXR4.js → delete-2C6ALLYY.js} +1 -1
  47. package/dist/{diff-JVEYCXUC.js → diff-MF55KQZH.js} +1 -1
  48. package/dist/{dist-KGRCLBJP-2QAPFYNF.js → dist-GQ42YS5N-4HIJZVBB.js} +10 -10
  49. package/dist/dist-JZZJLVMR.js +2 -0
  50. package/dist/{dist-3ZCH25SG.js → dist-OG6MM4VY.js} +1 -1
  51. package/dist/dist-SE67SOXB.js +2 -0
  52. package/dist/{docs-USDAF26F.js → docs-O37YLLRN.js} +1 -1
  53. package/dist/doctor-IG5XM4C4.js +2 -0
  54. package/dist/{edit-GUU3HBVW.js → edit-P3MDAZLU.js} +1 -1
  55. package/dist/{flow-POQP27WA.js → flow-BGXOVE2V.js} +1 -1
  56. package/dist/{hooks-IG2GOAHP.js → hooks-TFMMMB2H.js} +1 -1
  57. package/dist/index.js +6 -6
  58. package/dist/init-M44SO65G.js +2 -0
  59. package/dist/init-V4KSEKPK.js +2 -0
  60. package/dist/{integrity-UYDOOJDP.js → integrity-ROO3G43N.js} +1 -1
  61. package/dist/{list-YKIQNKGB.js → list-2XIWUEMA.js} +1 -1
  62. package/dist/list-CFHINXIS.js +12 -0
  63. package/dist/lore-loader-D2ISOASW.js +2 -0
  64. package/dist/lore-loader-PXFKMKAN.js +2 -0
  65. package/dist/mcp.js +19 -11
  66. package/dist/metrics-UESGUHTA.js +2 -0
  67. package/dist/{migrate-IBDE7VK4.js → migrate-Z5UQN57G.js} +1 -1
  68. package/dist/migrate-assessments-YSITX7KM.js +4 -0
  69. package/dist/migrate-decisions-NPLQOEEH.js +6 -0
  70. package/dist/migrate-plsat-EM2ACIQ3.js +6 -0
  71. package/dist/{nomination-engine-EALA5MGI.js → nomination-engine-QPZJH6XO.js} +1 -1
  72. package/dist/{notebook-loader-PXNRBBXD.js → notebook-loader-3J2OFMS3.js} +1 -1
  73. package/dist/{orchestrate-RCAMBOIB.js → orchestrate-RID7HHHH.js} +1 -1
  74. package/dist/{platform-server-DNAMH4YI.js → platform-server-UD45NTGV.js} +1 -1
  75. package/dist/portal-check-DV2VSJ5E.js +8 -0
  76. package/dist/{portal-compliance-4MG5F2GI.js → portal-compliance-JONQ4SOP.js} +1 -1
  77. package/dist/{probe-B22G2JKF.js → probe-5HAXULAD.js} +1 -1
  78. package/dist/{providers-AWA7WLLM.js → providers-4PXMWA7V.js} +1 -1
  79. package/dist/quiz-WYIZJG5K.js +10 -0
  80. package/dist/{record-YXPB34MY.js → record-N3VNYYKJ.js} +1 -1
  81. package/dist/reindex-FWPD2VGM.js +2 -0
  82. package/dist/{retag-N5XF3KXP.js → retag-72R2OSZV.js} +1 -1
  83. package/dist/{review-77QI6VOC.js → review-2INNWLTW.js} +1 -1
  84. package/dist/{review-6UAH6V3R.js → review-VMSX2PKI.js} +1 -1
  85. package/dist/{ripple-ZGDITCGB.js → ripple-FNZI47SH.js} +1 -1
  86. package/dist/{sentinel-HYAZ3CO5.js → sentinel-EFPEX246.js} +1 -1
  87. package/dist/{sentinel-bridge-VR357PKL.js → sentinel-bridge-UR2MKARY.js} +1 -1
  88. package/dist/sentinel.js +1 -1
  89. package/dist/{serve-U47GULB6.js → serve-MO35XIZE.js} +1 -1
  90. package/dist/serve-OQYUO7CR.js +12 -0
  91. package/dist/{server-4YNUIK4W.js → server-4D77LCST.js} +1 -1
  92. package/dist/server-FGUL2FWQ.js +7 -0
  93. package/dist/session-tracker-KGORN6B5.js +2 -0
  94. package/dist/{session-work-log-PAKXOFGL.js → session-work-log-4IEVE4KK.js} +1 -1
  95. package/dist/{session-work-log-ZP45TREI.js → session-work-log-EE4UIZ33.js} +1 -1
  96. package/dist/{setup-3F5IK7MO.js → setup-ZSEC72BS.js} +2 -2
  97. package/dist/{shift-FDADESC4.js → shift-TVNY2CQF.js} +6 -6
  98. package/dist/{show-PJ5LFLIL.js → show-JH7LJ5MT.js} +1 -1
  99. package/dist/show-WVHAL4VU.js +7 -0
  100. package/dist/{snapshot-L2G56RPL.js → snapshot-3IYB67D4.js} +1 -1
  101. package/dist/{spawn-M5BAV252.js → spawn-UH5RENSE.js} +1 -1
  102. package/dist/{status-77M3SDIF.js → status-DB3KNLW3.js} +1 -1
  103. package/dist/status-S7Z5FVIE.js +6 -0
  104. package/dist/{summary-LXLHFRN7.js → summary-WLI3NF4G.js} +2 -2
  105. package/dist/{sweep-HU74OPVW.js → sweep-7TZFN5NS.js} +1 -1
  106. package/dist/sync-55U6QPIA.js +2 -0
  107. package/dist/{sync-llms-7CAI74QL.js → sync-llms-GF7DDQDI.js} +1 -1
  108. package/dist/team-MGT66HZQ.js +2 -0
  109. package/dist/{test-BQJMS4Y2.js → test-WLEPZQFC.js} +1 -1
  110. package/dist/{timeline-K3ZFKJ3R.js → timeline-RK7O2SCM.js} +1 -1
  111. package/dist/tools-QJHAVYI6.js +2 -0
  112. package/dist/university-content/notes/N-para-001-build-something.md +126 -0
  113. package/dist/university-content/notes/N-para-001-meet-the-team.md +85 -0
  114. package/dist/university-content/notes/N-para-001-shift-setup.md +74 -0
  115. package/dist/university-content/notes/N-para-101-component-types.md +99 -0
  116. package/dist/university-content/notes/N-para-101-first-steps.md +134 -0
  117. package/dist/university-content/notes/N-para-101-five-symbols.md +128 -0
  118. package/dist/university-content/notes/N-para-101-paradigm-logger.md +89 -0
  119. package/dist/university-content/notes/N-para-101-portal-yaml.md +112 -0
  120. package/dist/university-content/notes/N-para-101-project-structure.md +143 -0
  121. package/dist/university-content/notes/N-para-101-purpose-files.md +121 -0
  122. package/dist/university-content/notes/N-para-101-tags-and-classification.md +93 -0
  123. package/dist/university-content/notes/N-para-101-welcome.md +51 -0
  124. package/dist/university-content/notes/N-para-201-architecture-review.md +175 -0
  125. package/dist/university-content/notes/N-para-201-aspect-graph.md +79 -0
  126. package/dist/university-content/notes/N-para-201-aspects-and-anchors.md +112 -0
  127. package/dist/university-content/notes/N-para-201-component-patterns.md +138 -0
  128. package/dist/university-content/notes/N-para-201-cross-cutting-concerns.md +145 -0
  129. package/dist/university-content/notes/N-para-201-disciplines.md +187 -0
  130. package/dist/university-content/notes/N-para-201-flows-deep-dive.md +119 -0
  131. package/dist/university-content/notes/N-para-201-gates-deep-dive.md +165 -0
  132. package/dist/university-content/notes/N-para-201-portal-protocol.md +133 -0
  133. package/dist/university-content/notes/N-para-201-signal-patterns.md +159 -0
  134. package/dist/university-content/notes/N-para-201-symbol-naming.md +149 -0
  135. package/dist/university-content/notes/N-para-301-context-management.md +53 -0
  136. package/dist/university-content/notes/N-para-301-decisions.md +99 -0
  137. package/dist/university-content/notes/N-para-301-doctor-and-validation.md +70 -0
  138. package/dist/university-content/notes/N-para-301-enforcement-levels.md +102 -0
  139. package/dist/university-content/notes/N-para-301-fragility-tracking.md +50 -0
  140. package/dist/university-content/notes/N-para-301-history-system.md +42 -0
  141. package/dist/university-content/notes/N-para-301-navigation-system.md +55 -0
  142. package/dist/university-content/notes/N-para-301-operations-review.md +55 -0
  143. package/dist/university-content/notes/N-para-301-paradigm-shift.md +93 -0
  144. package/dist/university-content/notes/N-para-301-protocols.md +113 -0
  145. package/dist/university-content/notes/N-para-301-ripple-analysis.md +53 -0
  146. package/dist/university-content/notes/N-para-301-sentinel-observability.md +87 -0
  147. package/dist/university-content/notes/N-para-301-sync-and-maintenance.md +57 -0
  148. package/dist/university-content/notes/N-para-301-wisdom-system.md +89 -0
  149. package/dist/university-content/notes/N-para-401-agent-identity.md +99 -0
  150. package/dist/university-content/notes/N-para-401-agent-interop.md +87 -0
  151. package/dist/university-content/notes/N-para-401-agent-roles.md +107 -0
  152. package/dist/university-content/notes/N-para-401-commit-conventions.md +82 -0
  153. package/dist/university-content/notes/N-para-401-mastery-review.md +71 -0
  154. package/dist/university-content/notes/N-para-401-mcp-tools-overview.md +102 -0
  155. package/dist/university-content/notes/N-para-401-multi-agent-coordination.md +80 -0
  156. package/dist/university-content/notes/N-para-401-notebooks-permissions.md +66 -0
  157. package/dist/university-content/notes/N-para-401-orchestration-workflow.md +101 -0
  158. package/dist/university-content/notes/N-para-401-pm-governance.md +71 -0
  159. package/dist/university-content/notes/N-para-401-provider-cascade.md +75 -0
  160. package/dist/university-content/notes/N-para-401-quick-check.md +95 -0
  161. package/dist/university-content/notes/N-para-501-advanced-workflows.md +122 -0
  162. package/dist/university-content/notes/N-para-501-aspect-graph-advanced.md +195 -0
  163. package/dist/university-content/notes/N-para-501-aspect-graph-internals.md +97 -0
  164. package/dist/university-content/notes/N-para-501-assessment-loops.md +116 -0
  165. package/dist/university-content/notes/N-para-501-conductor-workspace.md +77 -0
  166. package/dist/university-content/notes/N-para-501-habits-practice.md +164 -0
  167. package/dist/university-content/notes/N-para-501-hook-enforcement.md +100 -0
  168. package/dist/university-content/notes/N-para-501-lore-system.md +155 -0
  169. package/dist/university-content/notes/N-para-501-platform-agent-ui.md +108 -0
  170. package/dist/university-content/notes/N-para-501-review-compliance.md +72 -0
  171. package/dist/university-content/notes/N-para-501-sentinel-deep-dive.md +173 -0
  172. package/dist/university-content/notes/N-para-501-session-intelligence.md +104 -0
  173. package/dist/university-content/notes/N-para-501-symphony-a-mail.md +120 -0
  174. package/dist/university-content/notes/N-para-501-symphony-networking.md +119 -0
  175. package/dist/university-content/notes/N-para-501-task-management.md +100 -0
  176. package/dist/university-content/notes/N-para-601-agent-renaissance.md +121 -0
  177. package/dist/university-content/notes/N-para-601-attention-scoring.md +129 -0
  178. package/dist/university-content/notes/N-para-601-context-composition.md +146 -0
  179. package/dist/university-content/notes/N-para-601-data-sovereignty.md +140 -0
  180. package/dist/university-content/notes/N-para-601-event-stream.md +126 -0
  181. package/dist/university-content/notes/N-para-601-knowledge-streams.md +144 -0
  182. package/dist/university-content/notes/N-para-601-learning-loop.md +68 -0
  183. package/dist/university-content/notes/N-para-601-maestro-team-collab.md +136 -0
  184. package/dist/university-content/notes/N-para-601-nominations-debates.md +115 -0
  185. package/dist/university-content/notes/N-para-701-agent-notebooks.md +131 -0
  186. package/dist/university-content/notes/N-para-701-agent-pods-nevrland.md +182 -0
  187. package/dist/university-content/notes/N-para-701-agent-profiles.md +197 -0
  188. package/dist/university-content/notes/N-para-701-agent-roster.md +82 -0
  189. package/dist/university-content/notes/N-para-701-agent-state.md +180 -0
  190. package/dist/university-content/notes/N-para-701-learning-feedback-loop.md +188 -0
  191. package/dist/university-content/notes/N-para-701-model-tier-resolution.md +204 -0
  192. package/dist/university-content/notes/N-para-701-orchestration-enforcement.md +169 -0
  193. package/dist/university-content/notes/N-para-701-per-project-rosters.md +198 -0
  194. package/dist/university-content/notes/N-para-701-symphony-visibility.md +142 -0
  195. package/dist/university-content/paths/LP-para-001.yaml +29 -0
  196. package/dist/university-content/paths/LP-para-101.yaml +59 -0
  197. package/dist/university-content/paths/LP-para-201.yaml +69 -0
  198. package/dist/university-content/paths/LP-para-301.yaml +84 -0
  199. package/dist/university-content/paths/LP-para-401.yaml +74 -0
  200. package/dist/university-content/paths/LP-para-501.yaml +89 -0
  201. package/dist/university-content/paths/LP-para-601.yaml +59 -0
  202. package/dist/university-content/paths/LP-para-701.yaml +64 -0
  203. package/dist/university-content/quizzes/Q-para-001-build-something.yaml +46 -0
  204. package/dist/university-content/quizzes/Q-para-001-meet-the-team.yaml +46 -0
  205. package/dist/university-content/quizzes/Q-para-001-shift-setup.yaml +46 -0
  206. package/dist/university-content/quizzes/Q-para-101-component-types.yaml +46 -0
  207. package/dist/university-content/quizzes/Q-para-101-first-steps.yaml +56 -0
  208. package/dist/university-content/quizzes/Q-para-101-five-symbols.yaml +66 -0
  209. package/dist/university-content/quizzes/Q-para-101-paradigm-logger.yaml +56 -0
  210. package/dist/university-content/quizzes/Q-para-101-portal-yaml.yaml +56 -0
  211. package/dist/university-content/quizzes/Q-para-101-project-structure.yaml +66 -0
  212. package/dist/university-content/quizzes/Q-para-101-purpose-files.yaml +56 -0
  213. package/dist/university-content/quizzes/Q-para-101-tags-and-classification.yaml +56 -0
  214. package/dist/university-content/quizzes/Q-para-101-welcome.yaml +56 -0
  215. package/dist/university-content/quizzes/Q-para-201-architecture-review.yaml +66 -0
  216. package/dist/university-content/quizzes/Q-para-201-aspect-graph.yaml +46 -0
  217. package/dist/university-content/quizzes/Q-para-201-aspects-and-anchors.yaml +56 -0
  218. package/dist/university-content/quizzes/Q-para-201-component-patterns.yaml +56 -0
  219. package/dist/university-content/quizzes/Q-para-201-cross-cutting-concerns.yaml +56 -0
  220. package/dist/university-content/quizzes/Q-para-201-disciplines.yaml +66 -0
  221. package/dist/university-content/quizzes/Q-para-201-flows-deep-dive.yaml +66 -0
  222. package/dist/university-content/quizzes/Q-para-201-gates-deep-dive.yaml +66 -0
  223. package/dist/university-content/quizzes/Q-para-201-portal-protocol.yaml +56 -0
  224. package/dist/university-content/quizzes/Q-para-201-signal-patterns.yaml +56 -0
  225. package/dist/university-content/quizzes/Q-para-201-symbol-naming.yaml +66 -0
  226. package/dist/university-content/quizzes/Q-para-301-context-management.yaml +56 -0
  227. package/dist/university-content/quizzes/Q-para-301-decisions.yaml +76 -0
  228. package/dist/university-content/quizzes/Q-para-301-doctor-and-validation.yaml +66 -0
  229. package/dist/university-content/quizzes/Q-para-301-enforcement-levels.yaml +46 -0
  230. package/dist/university-content/quizzes/Q-para-301-fragility-tracking.yaml +46 -0
  231. package/dist/university-content/quizzes/Q-para-301-history-system.yaml +56 -0
  232. package/dist/university-content/quizzes/Q-para-301-navigation-system.yaml +56 -0
  233. package/dist/university-content/quizzes/Q-para-301-operations-review.yaml +66 -0
  234. package/dist/university-content/quizzes/Q-para-301-paradigm-shift.yaml +46 -0
  235. package/dist/university-content/quizzes/Q-para-301-protocols.yaml +56 -0
  236. package/dist/university-content/quizzes/Q-para-301-ripple-analysis.yaml +56 -0
  237. package/dist/university-content/quizzes/Q-para-301-sentinel-observability.yaml +46 -0
  238. package/dist/university-content/quizzes/Q-para-301-sync-and-maintenance.yaml +46 -0
  239. package/dist/university-content/quizzes/Q-para-301-wisdom-system.yaml +56 -0
  240. package/dist/university-content/quizzes/Q-para-401-agent-identity.yaml +66 -0
  241. package/dist/university-content/quizzes/Q-para-401-agent-interop.yaml +46 -0
  242. package/dist/university-content/quizzes/Q-para-401-agent-roles.yaml +56 -0
  243. package/dist/university-content/quizzes/Q-para-401-commit-conventions.yaml +56 -0
  244. package/dist/university-content/quizzes/Q-para-401-mastery-review.yaml +66 -0
  245. package/dist/university-content/quizzes/Q-para-401-mcp-tools-overview.yaml +66 -0
  246. package/dist/university-content/quizzes/Q-para-401-multi-agent-coordination.yaml +76 -0
  247. package/dist/university-content/quizzes/Q-para-401-notebooks-permissions.yaml +61 -0
  248. package/dist/university-content/quizzes/Q-para-401-orchestration-workflow.yaml +66 -0
  249. package/dist/university-content/quizzes/Q-para-401-pm-governance.yaml +66 -0
  250. package/dist/university-content/quizzes/Q-para-401-provider-cascade.yaml +56 -0
  251. package/dist/university-content/quizzes/Q-para-401-quick-check.yaml +46 -0
  252. package/dist/university-content/quizzes/Q-para-501-advanced-workflows.yaml +66 -0
  253. package/dist/university-content/quizzes/Q-para-501-aspect-graph-advanced.yaml +66 -0
  254. package/dist/university-content/quizzes/Q-para-501-aspect-graph-internals.yaml +66 -0
  255. package/dist/university-content/quizzes/Q-para-501-assessment-loops.yaml +46 -0
  256. package/dist/university-content/quizzes/Q-para-501-conductor-workspace.yaml +46 -0
  257. package/dist/university-content/quizzes/Q-para-501-habits-practice.yaml +56 -0
  258. package/dist/university-content/quizzes/Q-para-501-hook-enforcement.yaml +66 -0
  259. package/dist/university-content/quizzes/Q-para-501-lore-system.yaml +66 -0
  260. package/dist/university-content/quizzes/Q-para-501-platform-agent-ui.yaml +66 -0
  261. package/dist/university-content/quizzes/Q-para-501-review-compliance.yaml +61 -0
  262. package/dist/university-content/quizzes/Q-para-501-sentinel-deep-dive.yaml +86 -0
  263. package/dist/university-content/quizzes/Q-para-501-session-intelligence.yaml +66 -0
  264. package/dist/university-content/quizzes/Q-para-501-symphony-a-mail.yaml +66 -0
  265. package/dist/university-content/quizzes/Q-para-501-symphony-networking.yaml +66 -0
  266. package/dist/university-content/quizzes/Q-para-501-task-management.yaml +46 -0
  267. package/dist/university-content/quizzes/Q-para-601-agent-renaissance.yaml +66 -0
  268. package/dist/university-content/quizzes/Q-para-601-attention-scoring.yaml +56 -0
  269. package/dist/university-content/quizzes/Q-para-601-context-composition.yaml +66 -0
  270. package/dist/university-content/quizzes/Q-para-601-data-sovereignty.yaml +56 -0
  271. package/dist/university-content/quizzes/Q-para-601-event-stream.yaml +66 -0
  272. package/dist/university-content/quizzes/Q-para-601-knowledge-streams.yaml +66 -0
  273. package/dist/university-content/quizzes/Q-para-601-learning-loop.yaml +56 -0
  274. package/dist/university-content/quizzes/Q-para-601-maestro-team-collab.yaml +86 -0
  275. package/dist/university-content/quizzes/Q-para-601-nominations-debates.yaml +66 -0
  276. package/dist/university-content/quizzes/Q-para-701-agent-notebooks.yaml +66 -0
  277. package/dist/university-content/quizzes/Q-para-701-agent-pods-nevrland.yaml +66 -0
  278. package/dist/university-content/quizzes/Q-para-701-agent-profiles.yaml +66 -0
  279. package/dist/university-content/quizzes/Q-para-701-agent-roster.yaml +66 -0
  280. package/dist/university-content/quizzes/Q-para-701-agent-state.yaml +66 -0
  281. package/dist/university-content/quizzes/Q-para-701-learning-feedback-loop.yaml +66 -0
  282. package/dist/university-content/quizzes/Q-para-701-model-tier-resolution.yaml +66 -0
  283. package/dist/university-content/quizzes/Q-para-701-orchestration-enforcement.yaml +66 -0
  284. package/dist/university-content/quizzes/Q-para-701-per-project-rosters.yaml +66 -0
  285. package/dist/university-content/quizzes/Q-para-701-symphony-visibility.yaml +66 -0
  286. package/dist/university-content/quizzes/Q-plsat-v2.yaml +904 -0
  287. package/dist/university-content/quizzes/Q-plsat-v3.yaml +2909 -0
  288. package/dist/university-content/reference.json +2 -2
  289. package/dist/university-ui/assets/{index-CecQrfSn.js → index-nNgzO1il.js} +2 -2
  290. package/dist/university-ui/assets/{index-CecQrfSn.js.map → index-nNgzO1il.js.map} +1 -1
  291. package/dist/university-ui/index.html +1 -1
  292. package/dist/{upgrade-GX56QE3C.js → upgrade-NKN63VTY.js} +2 -2
  293. package/dist/{validate-VZXTJHGO.js → validate-BB6LRWIY.js} +1 -1
  294. package/dist/validate-XUQZTF3H.js +9 -0
  295. package/dist/{watch-YCODNIET.js → watch-25GJHQYT.js} +1 -1
  296. package/dist/workspace-VMSPYIBV.js +2 -0
  297. package/lore-ui/dist/assets/{index-Bk-K0qgN.js → index-DKhNxgtW.js} +10 -10
  298. package/lore-ui/dist/index.html +1 -1
  299. package/package.json +3 -2
  300. package/platform-ui/dist/assets/{AmbientSection-BYjt75R1.js → AmbientSection-CwatqcBD.js} +1 -1
  301. package/platform-ui/dist/assets/{CanvasSection-rKvA_vZj.js → CanvasSection-dFAthehN.js} +1 -1
  302. package/platform-ui/dist/assets/{DocsSection-CI9K73M-.js → DocsSection-BZ2SFJBZ.js} +1 -1
  303. package/platform-ui/dist/assets/{GitSection-DSGj_c6S.js → GitSection-MNNYU1tO.js} +1 -1
  304. package/platform-ui/dist/assets/{GraphSection-CawN7pC5.js → GraphSection-COYjb4Pt.js} +1 -1
  305. package/platform-ui/dist/assets/LoreSection-B0hUbfsJ.js +1 -0
  306. package/platform-ui/dist/assets/{SentinelSection-DNgoYMH0.js → SentinelSection-BCxW1DCp.js} +1 -1
  307. package/platform-ui/dist/assets/{SymphonySection-C0zfcqv3.js → SymphonySection-BsucZRqy.js} +1 -1
  308. package/platform-ui/dist/assets/{TeamSection-Bzd3Dt9Q.js → TeamSection-C0QNTudW.js} +1 -1
  309. package/platform-ui/dist/assets/{UniversitySection-tBr62R0S.js → UniversitySection-DN1-g9pw.js} +1 -1
  310. package/platform-ui/dist/assets/{index-BaOmyn11.js → index-DwUT8pju.js} +2 -2
  311. package/platform-ui/dist/index.html +1 -1
  312. package/templates/paradigm/specs/symbols.md +4 -2
  313. package/dist/add-P76GEMGF.js +0 -8
  314. package/dist/chunk-3TR6LLXP.js +0 -111
  315. package/dist/chunk-G7XFK2GI.js +0 -11
  316. package/dist/chunk-J6KWGCHN.js +0 -24
  317. package/dist/chunk-JQKKVAAN.js +0 -2
  318. package/dist/chunk-ODVKPZZ4.js +0 -2
  319. package/dist/chunk-Q2J542ST.js +0 -2
  320. package/dist/chunk-QT2LKB3P.js +0 -7
  321. package/dist/chunk-SHD27BQX.js +0 -6
  322. package/dist/chunk-WS2N27RX.js +0 -3
  323. package/dist/chunk-YT52WLBF.js +0 -521
  324. package/dist/compliance-WJINB5DM.js +0 -6
  325. package/dist/config-schema-GUQY2QN7.js +0 -2
  326. package/dist/decision-loader-2XPZE4EZ.js +0 -2
  327. package/dist/dist-R3RWD35F.js +0 -2
  328. package/dist/dist-VXCZWVVJ.js +0 -2
  329. package/dist/doctor-QJ47XAUP.js +0 -2
  330. package/dist/init-HIBRSVUB.js +0 -2
  331. package/dist/list-5IUGP3ZB.js +0 -7
  332. package/dist/lore-loader-RVQI5GXL.js +0 -2
  333. package/dist/lore-loader-XY5MZRR2.js +0 -2
  334. package/dist/migrate-assessments-GEI5WMI2.js +0 -4
  335. package/dist/portal-check-Z3OCQEQR.js +0 -8
  336. package/dist/quiz-FE5UGAY2.js +0 -10
  337. package/dist/reindex-FO5VMZVQ.js +0 -2
  338. package/dist/serve-OY6XYL7F.js +0 -12
  339. package/dist/server-2MNROHF6.js +0 -7
  340. package/dist/session-tracker-MWJAJA6Z.js +0 -2
  341. package/dist/show-BOAVWZPZ.js +0 -7
  342. package/dist/status-A37ECYNJ.js +0 -6
  343. package/dist/sync-DLUBV5HQ.js +0 -2
  344. package/dist/team-NSP6PMPS.js +0 -2
  345. package/dist/tools-CERDNVCG.js +0 -2
  346. package/dist/university-content/courses/.purpose +0 -492
  347. package/dist/university-content/courses/para-001.json +0 -166
  348. package/dist/university-content/courses/para-101.json +0 -615
  349. package/dist/university-content/courses/para-201.json +0 -794
  350. package/dist/university-content/courses/para-301.json +0 -830
  351. package/dist/university-content/courses/para-401.json +0 -868
  352. package/dist/university-content/courses/para-501.json +0 -1166
  353. package/dist/university-content/courses/para-601.json +0 -719
  354. package/dist/university-content/courses/para-701.json +0 -807
  355. package/dist/university-content/plsat/.purpose +0 -162
  356. package/dist/university-content/plsat/v2.0.json +0 -760
  357. package/dist/university-content/plsat/v3.0.json +0 -3453
  358. package/dist/validate-C6SMKGYD.js +0 -9
  359. package/dist/workspace-MKSQN7B2.js +0 -2
  360. package/platform-ui/dist/assets/LoreSection-oO5dCe6O.js +0 -1
  361. /package/dist/{chunk-BV5PRPLB.js → chunk-IZSBGW6E.js} +0 -0
  362. /package/templates/paradigm/specs/{scan.md → probe.md} +0 -0
@@ -0,0 +1,89 @@
1
+ id: LP-para-501
2
+ title: 'PARA 501: Advanced Systems'
3
+ description: Master Paradigm's advanced operational systems — Lore for project memory, Sentinel for incident intelligence, Habits for behavioral discipline, Session Intelligence for crash recovery, and Hook Enforcement for automated compliance. Ties everything together into the complete Paradigm workflow.
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-501
10
+ ordered: true
11
+ category: paradigm-core
12
+ origin: imported
13
+ source: courses/para-501.json
14
+ steps:
15
+ - content: N-para-501-lore-system
16
+ required: true
17
+ - content: Q-para-501-lore-system
18
+ required: true
19
+ passRequired: true
20
+ - content: N-para-501-sentinel-deep-dive
21
+ required: true
22
+ - content: Q-para-501-sentinel-deep-dive
23
+ required: true
24
+ passRequired: true
25
+ - content: N-para-501-aspect-graph-internals
26
+ required: true
27
+ - content: Q-para-501-aspect-graph-internals
28
+ required: true
29
+ passRequired: true
30
+ - content: N-para-501-habits-practice
31
+ required: true
32
+ - content: Q-para-501-habits-practice
33
+ required: true
34
+ passRequired: true
35
+ - content: N-para-501-session-intelligence
36
+ required: true
37
+ - content: Q-para-501-session-intelligence
38
+ required: true
39
+ passRequired: true
40
+ - content: N-para-501-hook-enforcement
41
+ required: true
42
+ - content: Q-para-501-hook-enforcement
43
+ required: true
44
+ passRequired: true
45
+ - content: N-para-501-advanced-workflows
46
+ required: true
47
+ - content: Q-para-501-advanced-workflows
48
+ required: true
49
+ passRequired: true
50
+ - content: N-para-501-aspect-graph-advanced
51
+ required: true
52
+ - content: Q-para-501-aspect-graph-advanced
53
+ required: true
54
+ passRequired: true
55
+ - content: N-para-501-task-management
56
+ required: true
57
+ - content: Q-para-501-task-management
58
+ required: true
59
+ passRequired: true
60
+ - content: N-para-501-assessment-loops
61
+ required: true
62
+ - content: Q-para-501-assessment-loops
63
+ required: true
64
+ passRequired: true
65
+ - content: N-para-501-symphony-a-mail
66
+ required: true
67
+ - content: Q-para-501-symphony-a-mail
68
+ required: true
69
+ passRequired: true
70
+ - content: N-para-501-platform-agent-ui
71
+ required: true
72
+ - content: Q-para-501-platform-agent-ui
73
+ required: true
74
+ passRequired: true
75
+ - content: N-para-501-conductor-workspace
76
+ required: true
77
+ - content: Q-para-501-conductor-workspace
78
+ required: true
79
+ passRequired: true
80
+ - content: N-para-501-symphony-networking
81
+ required: true
82
+ - content: Q-para-501-symphony-networking
83
+ required: true
84
+ passRequired: true
85
+ - content: N-para-501-review-compliance
86
+ required: true
87
+ - content: Q-para-501-review-compliance
88
+ required: true
89
+ passRequired: true
@@ -0,0 +1,59 @@
1
+ id: LP-para-601
2
+ title: 'PARA 601: Paradigm Ambient'
3
+ description: Master Paradigm's ambient coordination system — knowledge streams, event stream, attention scoring, nominations, data sovereignty, agent manifest renaissance, and context composition. The full loop from observation to adaptation.
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-601
10
+ ordered: true
11
+ category: paradigm-core
12
+ origin: imported
13
+ source: courses/para-601.json
14
+ steps:
15
+ - content: N-para-601-learning-loop
16
+ required: true
17
+ - content: Q-para-601-learning-loop
18
+ required: true
19
+ passRequired: true
20
+ - content: N-para-601-knowledge-streams
21
+ required: true
22
+ - content: Q-para-601-knowledge-streams
23
+ required: true
24
+ passRequired: true
25
+ - content: N-para-601-event-stream
26
+ required: true
27
+ - content: Q-para-601-event-stream
28
+ required: true
29
+ passRequired: true
30
+ - content: N-para-601-attention-scoring
31
+ required: true
32
+ - content: Q-para-601-attention-scoring
33
+ required: true
34
+ passRequired: true
35
+ - content: N-para-601-nominations-debates
36
+ required: true
37
+ - content: Q-para-601-nominations-debates
38
+ required: true
39
+ passRequired: true
40
+ - content: N-para-601-data-sovereignty
41
+ required: true
42
+ - content: Q-para-601-data-sovereignty
43
+ required: true
44
+ passRequired: true
45
+ - content: N-para-601-agent-renaissance
46
+ required: true
47
+ - content: Q-para-601-agent-renaissance
48
+ required: true
49
+ passRequired: true
50
+ - content: N-para-601-context-composition
51
+ required: true
52
+ - content: Q-para-601-context-composition
53
+ required: true
54
+ passRequired: true
55
+ - content: N-para-601-maestro-team-collab
56
+ required: true
57
+ - content: Q-para-601-maestro-team-collab
58
+ required: true
59
+ passRequired: true
@@ -0,0 +1,64 @@
1
+ id: LP-para-701
2
+ title: 'PARA 701: Agent Mastery'
3
+ description: Master the Paradigm agent system — from the 54-agent roster to orchestration enforcement, learning loops, and the nevr.land marketplace.
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-701
10
+ ordered: true
11
+ category: paradigm-core
12
+ origin: imported
13
+ source: courses/para-701.json
14
+ steps:
15
+ - content: N-para-701-agent-roster
16
+ required: true
17
+ - content: Q-para-701-agent-roster
18
+ required: true
19
+ passRequired: true
20
+ - content: N-para-701-agent-profiles
21
+ required: true
22
+ - content: Q-para-701-agent-profiles
23
+ required: true
24
+ passRequired: true
25
+ - content: N-para-701-agent-notebooks
26
+ required: true
27
+ - content: Q-para-701-agent-notebooks
28
+ required: true
29
+ passRequired: true
30
+ - content: N-para-701-agent-state
31
+ required: true
32
+ - content: Q-para-701-agent-state
33
+ required: true
34
+ passRequired: true
35
+ - content: N-para-701-per-project-rosters
36
+ required: true
37
+ - content: Q-para-701-per-project-rosters
38
+ required: true
39
+ passRequired: true
40
+ - content: N-para-701-model-tier-resolution
41
+ required: true
42
+ - content: Q-para-701-model-tier-resolution
43
+ required: true
44
+ passRequired: true
45
+ - content: N-para-701-orchestration-enforcement
46
+ required: true
47
+ - content: Q-para-701-orchestration-enforcement
48
+ required: true
49
+ passRequired: true
50
+ - content: N-para-701-symphony-visibility
51
+ required: true
52
+ - content: Q-para-701-symphony-visibility
53
+ required: true
54
+ passRequired: true
55
+ - content: N-para-701-learning-feedback-loop
56
+ required: true
57
+ - content: Q-para-701-learning-feedback-loop
58
+ required: true
59
+ passRequired: true
60
+ - content: N-para-701-agent-pods-nevrland
61
+ required: true
62
+ - content: Q-para-701-agent-pods-nevrland
63
+ required: true
64
+ passRequired: true
@@ -0,0 +1,46 @@
1
+ id: Q-para-001-build-something
2
+ title: 'PARA 001: Quick Start — Build With the Team'
3
+ description: 'Quiz for lesson: Build With the Team'
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-001
10
+ symbols: []
11
+ difficulty: beginner
12
+ passThreshold: 0.7
13
+ category: paradigm-core
14
+ origin: imported
15
+ source: courses/para-001.json
16
+ questions:
17
+ - id: q1
18
+ question: You built a new API endpoint without running quick-check or orchestration. The code works fine. On minimal enforcement, what happens when you commit?
19
+ choices:
20
+ A: The commit is blocked — orchestration is always required
21
+ B: The commit succeeds but the stop hook warns that no orchestration record exists for the changed files
22
+ C: Nothing — minimal enforcement has no checks
23
+ D: The commit is reverted automatically
24
+ E: Git rejects the commit because the pre-commit hook fails
25
+ correct: B
26
+ explanation: On minimal enforcement, orchestration-required is set to off, so the stop hook does not block. However, the purpose-coverage check (which is set to warn on minimal) may warn if you did not create a .purpose file for the new endpoint. The commit succeeds either way — minimal enforcement never blocks. But you have no orchestration record, no Rune compliance report, and no structured review.
27
+ - id: q2
28
+ question: 'During the build step, Rune creates a symbol plan with #health-check as a component. After the builder writes the code, Rune''s compliance report says "1 component, 0 aspects — blocking." Why is this a problem?'
29
+ choices:
30
+ A: Aspects are required for documentation completeness but have no real purpose
31
+ B: Every component needs at least one aspect (rule, constraint, or configuration) — the 1:1 ratio means you must define what rules govern the health endpoint
32
+ C: Rune made an error — health endpoints do not need aspects
33
+ D: The builder should have created the aspect automatically
34
+ E: This only matters on strict enforcement
35
+ correct: B
36
+ explanation: 'Rune enforces a 1:1 component-to-aspect ratio. Even a health endpoint has rules: response format, which checks it runs, timeout behavior, whether it includes dependency status. Defining an aspect like ~health-check-format forces you to document what the endpoint actually guarantees. This is not busywork — it is how Paradigm ensures every component has a documented contract.'
37
+ - id: q3
38
+ question: 'The commit message for your feature reads: feat(#health-check): add GET /health endpoint. The Symbols: trailer says Symbols: #health-check. What does the post-commit hook do with this information?'
39
+ choices:
40
+ A: Nothing — the Symbols trailer is just for human readability
41
+ B: 'It parses the Symbols trailer and records the commit in Paradigm''s history system, linking the change to #health-check for traceability'
42
+ C: 'It validates that #health-check exists in a .purpose file'
43
+ D: It sends a notification to the agent team
44
+ E: It automatically creates a changelog entry
45
+ correct: B
46
+ explanation: 'The post-commit hook parses the Symbols: trailer and records the commit in Paradigm''s history system. This creates a traceable link: commit → symbols affected. Later, when someone asks "what changed about #health-check?" or runs paradigm_history_context, the answer includes this commit. The pre-commit hook handles index rebuilding; the post-commit hook handles history capture.'
@@ -0,0 +1,46 @@
1
+ id: Q-para-001-meet-the-team
2
+ title: 'PARA 001: Quick Start — Meet Your Agent Team'
3
+ description: 'Quiz for lesson: Meet Your Agent Team'
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-001
10
+ symbols: []
11
+ difficulty: beginner
12
+ passThreshold: 0.7
13
+ category: paradigm-core
14
+ origin: imported
15
+ source: courses/para-001.json
16
+ questions:
17
+ - id: q1
18
+ question: Your project is a React frontend with no backend. Which of these agents would paradigm shift likely NOT include in your roster?
19
+ choices:
20
+ A: Builder — every project needs code implementation
21
+ B: A database specialist — there is no database in a frontend-only project
22
+ C: Reviewer — code review is universal
23
+ D: compliance — symbol coverage applies to all projects
24
+ E: security — even frontend apps have security concerns (XSS, CSRF)
25
+ correct: B
26
+ explanation: Specialized agents like a database specialist are only rostered when the project type matches. A React frontend with no backend has no database layer, so database agents would not be selected. The core team (including the security role — frontend security matters too) appears in every roster. Specialized and ecosystem agents are added based on detection.
27
+ - id: q2
28
+ question: 'The Architect uses opus (tier-1) while the Builder uses haiku (tier-3). A junior developer asks: "Does that mean the builder writes worse code?" How do you explain?'
29
+ choices:
30
+ A: Yes — tier-3 is lower quality, but it is faster and cheaper
31
+ B: No — tiers match complexity, not quality. Architecture requires open-ended reasoning (opus). Building is well-defined implementation work where speed matters more (haiku).
32
+ C: The tiers are just labels with no real difference
33
+ D: The builder should be upgraded to opus for important features
34
+ E: All agents should use the same model for consistency
35
+ correct: B
36
+ explanation: Model tier assignment is about matching the nature of the work, not ranking quality. Architectural design is open-ended — "how should we structure this?" benefits from deeper reasoning. Implementation is well-defined — "write this function that does X" benefits from speed. A fast model writing clearly specified code often produces better results than an overthinking model.
37
+ - id: q3
38
+ question: You want to add a DevOps specialist agent to your web project's roster. What command would you use?
39
+ choices:
40
+ A: Edit roster.yaml by hand and add the agent definition
41
+ B: paradigm agent activate devops — it adds the agent to your project roster
42
+ C: paradigm shift --add-agent devops
43
+ D: Re-run paradigm shift and hope it detects the need
44
+ E: DevOps agents cannot be added to web projects
45
+ correct: B
46
+ explanation: paradigm agent activate <id> adds an agent to your project roster. This is the proper way to customize your team — the CLI updates roster.yaml, agents.yaml, and any related configuration atomically. While you could edit roster.yaml by hand, using the CLI ensures all related files stay in sync.
@@ -0,0 +1,46 @@
1
+ id: Q-para-001-shift-setup
2
+ title: 'PARA 001: Quick Start — Your First paradigm shift'
3
+ description: 'Quiz for lesson: Your First paradigm shift'
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-001
10
+ symbols: []
11
+ difficulty: beginner
12
+ passThreshold: 0.7
13
+ category: paradigm-core
14
+ origin: imported
15
+ source: courses/para-001.json
16
+ questions:
17
+ - id: q1
18
+ question: You just ran paradigm shift in a Node.js project. Which of the following was NOT created or configured automatically?
19
+ choices:
20
+ A: .paradigm/config.yaml with discipline auto-detected from package.json
21
+ B: CLAUDE.md with AI instructions derived from your configuration
22
+ C: A comprehensive test suite for your existing code
23
+ D: Git hooks for automated compliance checking
24
+ E: .paradigm/roster.yaml with agents suited for a Node.js project
25
+ correct: C
26
+ explanation: paradigm shift sets up Paradigm metadata and tooling — it does not generate tests, modify your source code, or create application logic. It creates configuration, instruction files, hooks, and an agent roster. Testing is handled by the tester agent during orchestration, not during initialization.
27
+ - id: q2
28
+ question: After running paradigm shift, you edit .paradigm/config.yaml to change your enforcement level. Now CLAUDE.md is out of date. How do you update it?
29
+ choices:
30
+ A: Edit CLAUDE.md manually to match your changes
31
+ B: Run paradigm shift again — it regenerates CLAUDE.md from your updated config
32
+ C: Delete CLAUDE.md and it will regenerate on the next commit
33
+ D: Run paradigm sync to rebuild only the instruction files
34
+ E: Both B and D would work — shift re-runs all steps including sync, while sync targets just the instruction files
35
+ correct: E
36
+ explanation: CLAUDE.md is a derived file — always generated from config, never hand-edited. Both paradigm shift (full re-run) and paradigm sync (targeted) will regenerate it. Use sync when you only changed config; use shift when you want the full pipeline (migrate, scan, hooks, etc.).
37
+ - id: q3
38
+ question: A teammate says "I ran paradigm shift but it broke my project — hooks are blocking my commits." This should not happen with default settings. What likely went wrong?
39
+ choices:
40
+ A: paradigm shift always uses strict enforcement
41
+ B: The project already had a config.yaml with enforcement level set to strict or balanced from a previous setup
42
+ C: Hooks always block on the first run to teach discipline
43
+ D: The teammate's Git version is incompatible with Paradigm hooks
44
+ E: paradigm shift requires admin privileges to install hooks
45
+ correct: B
46
+ explanation: New projects default to minimal enforcement, which warns but never blocks. But paradigm shift is idempotent — if the project already had a .paradigm/config.yaml with a higher enforcement level, shift preserves that setting. The teammate's project was likely previously configured with balanced or strict enforcement. Check config.yaml and adjust enforcement.level if needed.
@@ -0,0 +1,46 @@
1
+ id: Q-para-101-component-types
2
+ title: 'PARA 101: Foundations — Component Types & Hierarchy'
3
+ description: 'Quiz for lesson: Component Types & Hierarchy'
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-101
10
+ symbols: []
11
+ difficulty: beginner
12
+ passThreshold: 0.7
13
+ category: paradigm-core
14
+ origin: imported
15
+ source: courses/para-101.json
16
+ questions:
17
+ - id: q1
18
+ question: What does the `type` field on a component describe?
19
+ choices:
20
+ A: The programming language the component is written in
21
+ B: The structural role of the component (e.g., service, view, router)
22
+ C: The business domain the component belongs to
23
+ D: The test coverage level of the component
24
+ E: The deployment environment for the component
25
+ correct: B
26
+ explanation: The `type` field describes a component's structural role — what the code IS architecturally (service, view, router, filter, etc.). Business domain classification uses tags instead.
27
+ - id: q2
28
+ question: Where should the `parent` relationship be declared?
29
+ choices:
30
+ A: On the parent component, listing all children
31
+ B: In a separate relationships.yaml file
32
+ C: 'On the child component, referencing the parent with a # symbol'
33
+ D: In portal.yaml alongside gate definitions
34
+ E: In the config.yaml component_types glossary
35
+ correct: C
36
+ explanation: 'Parent is declared on the child component using a `parent: "#parent-name"` field. This keeps .purpose files decentralized — you don''t need to maintain rosters on parent components.'
37
+ - id: q3
38
+ question: A `PaymentService` handles payment processing and integrates with Stripe. How should it be documented?
39
+ choices:
40
+ A: '`type: integration` with no tags'
41
+ B: '`type: service` with `tags: [integration, feature]`'
42
+ C: '`tags: [service, integration]` with no type'
43
+ D: '`type: feature` with `tags: [service]`'
44
+ E: '`type: service-integration` combining both concepts'
45
+ correct: B
46
+ explanation: 'Type describes what the code IS (a service), while tags describe behavior and domain (it''s an integration and a feature). The correct approach is `type: service` with `tags: [integration, feature]`.'
@@ -0,0 +1,56 @@
1
+ id: Q-para-101-first-steps
2
+ title: 'PARA 101: Foundations — Your First Steps'
3
+ description: 'Quiz for lesson: Your First Steps'
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-101
10
+ symbols: []
11
+ difficulty: beginner
12
+ passThreshold: 0.7
13
+ category: paradigm-core
14
+ origin: imported
15
+ source: courses/para-101.json
16
+ questions:
17
+ - id: q1
18
+ question: What is the correct order for the AI agent orientation protocol?
19
+ choices:
20
+ A: Read source code, write tests, check coverage, deploy
21
+ B: Call paradigm_status, read config.yaml, check portal.yaml, use paradigm_navigate
22
+ C: Run paradigm scan, edit navigator.yaml, read .purpose files, commit changes
23
+ D: Read package.json, install dependencies, run build, check logs
24
+ E: Create .purpose files, define gates, emit signals, validate flows
25
+ correct: B
26
+ explanation: 'The orientation protocol is: (1) paradigm_status for project overview, (2) read config.yaml for conventions, (3) check portal.yaml for security gates, (4) paradigm_navigate to find the relevant code area. This takes ~500 tokens and gives the agent full context.'
27
+ - id: q2
28
+ question: After creating new .purpose files, what command should you run?
29
+ choices:
30
+ A: paradigm shift
31
+ B: paradigm validate
32
+ C: paradigm scan
33
+ D: paradigm deploy
34
+ E: paradigm build
35
+ correct: C
36
+ explanation: paradigm scan reads all .purpose files and portal.yaml, builds the symbol index, and regenerates navigator.yaml. Without rescanning, AI agents will not find the newly defined symbols through navigation tools.
37
+ - id: q3
38
+ question: In portal.yaml, what does an empty gate array on a route mean?
39
+ choices:
40
+ A: The route is disabled and will return 404
41
+ B: The route requires all gates to pass
42
+ C: The route is intentionally unprotected — documented as public
43
+ D: The route has not been configured yet and will return 500
44
+ E: The route inherits gates from its parent path
45
+ correct: C
46
+ explanation: An empty gate array [] means the route is intentionally public. Listing it in portal.yaml with no gates documents the decision that this route should be accessible without authentication — it is not an oversight.
47
+ - id: q4
48
+ question: Which of these is a common pitfall when starting with Paradigm?
49
+ choices:
50
+ A: Creating too many .purpose files on day one instead of starting small
51
+ B: Using the Paradigm logger instead of console.log
52
+ C: Running paradigm scan after adding new purpose files
53
+ D: Putting portal.yaml at the project root
54
+ E: Using tags to classify components
55
+ correct: A
56
+ explanation: A common pitfall is trying to document everything on day one. The recommended approach is to start with the most critical module, create one .purpose file, and expand incrementally as the project grows.
@@ -0,0 +1,66 @@
1
+ id: Q-para-101-five-symbols
2
+ title: 'PARA 101: Foundations — The Five Symbols'
3
+ description: 'Quiz for lesson: The Five Symbols'
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-101
10
+ symbols: []
11
+ difficulty: beginner
12
+ passThreshold: 0.7
13
+ category: paradigm-core
14
+ origin: imported
15
+ source: courses/para-101.json
16
+ questions:
17
+ - id: q1
18
+ question: A middleware function that checks whether the current user has admin privileges should be classified as which symbol?
19
+ choices:
20
+ A: '# Component'
21
+ B: $ Flow
22
+ C: ^ Gate
23
+ D: '! Signal'
24
+ E: ~ Aspect
25
+ correct: C
26
+ explanation: A middleware function that checks a condition and either allows or blocks access is a gate (^). Gates verify that a required condition is met before proceeding — in this case, admin privileges.
27
+ - id: q2
28
+ question: After a refactor, you run paradigm doctor and it reports "3 broken anchors detected." Which symbol type was affected?
29
+ choices:
30
+ A: '# Component — components have code anchors that broke during refactoring'
31
+ B: $ Flow — flow steps reference line numbers that shifted
32
+ C: ^ Gate — gate definitions include file paths that changed
33
+ D: '! Signal — signal emitters moved to different files'
34
+ E: ~ Aspect — aspects are the only symbol with code anchors, and the refactor moved the anchored lines
35
+ correct: E
36
+ explanation: Aspects (~) are the only symbol type that requires code anchors — specific file:line references pointing to where the rule is enforced. When code is refactored and lines move, those anchors break. paradigm doctor detects this via SHA-256 hash comparison, and paradigm_aspect_drift can show exactly which anchors drifted.
37
+ - id: q3
38
+ question: A payment processing module contains a Stripe API wrapper, a billing calculator, and an in-memory cart. How should these be classified?
39
+ choices:
40
+ A: 'Each gets a different symbol type: $ for Stripe, # for calculator, ! for cart'
41
+ B: 'They are all # components, differentiated by tags like [integration, stripe], [feature], and [state]'
42
+ C: 'They should all be a single # component since they are in the same module'
43
+ D: The Stripe wrapper is a ~ aspect since it is a cross-cutting concern
44
+ E: They should be modeled as steps in a $ flow
45
+ correct: B
46
+ explanation: 'All three are documented code units, so they are all # components. The differences are captured by tags: #stripe-service with tags: [integration, stripe], #billing-calculator with tags: [feature], #cart-store with tags: [state]. Tags add nuance without requiring different symbol types.'
47
+ - id: q4
48
+ question: When should you create a $flow?
49
+ choices:
50
+ A: For every function that takes more than 10 lines of code
51
+ B: Only for authentication sequences
52
+ C: When logic spans three or more components in a specific order
53
+ D: Whenever you emit a signal
54
+ E: For all API endpoints regardless of complexity
55
+ correct: C
56
+ explanation: Flows document multi-step processes that involve three or more components in a defined sequence. A single-component operation or a two-component call does not warrant a flow — it adds documentation overhead without providing navigational value.
57
+ - id: q5
58
+ question: Your payment module emits !payment-completed after charging a card. Later, the marketing team adds a "send receipt email" listener, and the analytics team adds a "record conversion" listener. Neither team modified the payment module. How is this possible?
59
+ choices:
60
+ A: The payment module was refactored to call both services directly
61
+ B: Signals promote loose coupling — the emitter fires the event without knowing who listens, so new listeners can be added independently
62
+ C: The listeners were added to the payment module's .purpose file
63
+ D: Both teams used the same $flow as the payment module
64
+ E: The ^payment gate routes events to registered handlers
65
+ correct: B
66
+ explanation: 'This is the core value of signals: loose coupling. The payment module emits !payment-completed and has zero knowledge of who listens. The marketing team and analytics team independently subscribe to the signal. No code in the payment module was modified. This is why Paradigm separates signals (!) from flows ($) — flows define explicit steps, while signals enable independent, decoupled reactions.'
@@ -0,0 +1,56 @@
1
+ id: Q-para-101-paradigm-logger
2
+ title: 'PARA 101: Foundations — The Paradigm Logger'
3
+ description: 'Quiz for lesson: The Paradigm Logger'
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-101
10
+ symbols: []
11
+ difficulty: beginner
12
+ passThreshold: 0.7
13
+ category: paradigm-core
14
+ origin: imported
15
+ source: courses/para-101.json
16
+ questions:
17
+ - id: q1
18
+ question: What is the correct way to log a successful payment in `#payment-service`?
19
+ choices:
20
+ A: 'console.log(''Payment processed'', { amount: 4999 })'
21
+ B: log.info('#payment-service', 'Payment processed')
22
+ C: 'log.component(''#payment-service'').info(''Payment processed'', { amount: 4999 })'
23
+ D: log.signal('!payment-completed').info('Payment processed')
24
+ E: log.gate('#payment-service').info('Payment processed')
25
+ correct: C
26
+ explanation: 'Paradigm''s logging philosophy is that every log entry should be tagged with the symbol it relates to. For a component like #payment-service, the log should identify it as a component-level entry at the info level.'
27
+ - id: q2
28
+ question: Code in the `middleware/` directory should typically use which logger method?
29
+ choices:
30
+ A: log.component()
31
+ B: log.flow()
32
+ C: log.signal()
33
+ D: log.gate()
34
+ E: log.aspect()
35
+ correct: D
36
+ explanation: By Paradigm's directory-to-symbol convention, middleware/ maps to gates (^). Code in middleware directories typically performs condition checks, which are gate operations — so logs from these files should be tagged as gate-related.
37
+ - id: q3
38
+ question: An authentication gate denies access to an unauthenticated user. What log level should be used?
39
+ choices:
40
+ A: debug — it is a routine check
41
+ B: info — the gate worked correctly
42
+ C: warn — access was denied, which is unexpected but not a failure
43
+ D: error — someone tried to access a protected resource
44
+ E: No logging — gate denials should be silent
45
+ correct: C
46
+ explanation: A gate denial is unexpected from the user's perspective (they tried to access something they should not) but it is recoverable and the system handled it correctly. This makes it a warn — not an error (the system did not fail) and not info (something unusual happened).
47
+ - id: q4
48
+ question: Which of these is a valid reason to use the Paradigm logger instead of console.log?
49
+ choices:
50
+ A: console.log is slower in production environments
51
+ B: The Paradigm logger automatically fixes bugs in the logged code
52
+ C: Structured symbol-tagged logs enable filtering, tracing, and incident correlation
53
+ D: console.log does not work in TypeScript projects
54
+ E: The Paradigm logger compresses log output to save disk space
55
+ correct: C
56
+ explanation: The primary advantage of the Paradigm logger is structure. Every log line is tagged with a symbol type and name, enabling you to filter by component, trace entries back to .purpose definitions, and correlate incidents with specific symbols.
@@ -0,0 +1,56 @@
1
+ id: Q-para-101-portal-yaml
2
+ title: 'PARA 101: Foundations — Portal.yaml'
3
+ description: 'Quiz for lesson: Portal.yaml'
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-101
10
+ symbols: []
11
+ difficulty: beginner
12
+ passThreshold: 0.7
13
+ category: paradigm-core
14
+ origin: imported
15
+ source: courses/para-101.json
16
+ questions:
17
+ - id: q1
18
+ question: You are adding a new action that requires preconditions — only authenticated team admins should be able to invite users. What is the correct gate workflow?
19
+ choices:
20
+ A: Write the handler code first, then add authorization if there is time
21
+ B: Identify the required gates, add them to portal.yaml, implement the checks, test that failing a gate blocks the action
22
+ C: Add a console.log that prints the user's role for manual verification
23
+ D: Create a new .purpose file with a ^gate definition — portal.yaml is optional
24
+ E: Add the route to navigator.yaml so AI agents know about it
25
+ correct: B
26
+ explanation: 'The Paradigm gate-first workflow is: (1) identify the required gates (paradigm_gates_for_route can suggest them for web routes), (2) define the gates in portal.yaml, (3) implement the gate checks in code, (4) test that failing a gate blocks the action. Conditions are defined before implementation.'
27
+ - id: q2
28
+ question: What does the `requires` field on a gate definition do?
29
+ choices:
30
+ A: Lists npm packages the gate depends on
31
+ B: Specifies other gates that must pass before this gate is checked
32
+ C: Defines the HTTP status code returned on failure
33
+ D: Lists the source files that implement the gate
34
+ E: Specifies environment variables needed for the check
35
+ correct: B
36
+ explanation: The requires field creates a gate chain. For example, ^project-admin requires [^authenticated] — the authentication check must pass before the admin role check is evaluated.
37
+ - id: q3
38
+ question: When is portal.yaml NOT needed?
39
+ choices:
40
+ A: When the project has condition checks that must pass before actions proceed
41
+ B: When the project has role-based access control
42
+ C: When the application has no gates — no conditions need to be checked before any action
43
+ D: When the project only has GET endpoints
44
+ E: When the project uses a third-party auth service
45
+ correct: C
46
+ explanation: portal.yaml is needed whenever your application has gates — conditions that must be checked before actions proceed. If no action in the system requires a precondition check (authentication, feature flags, data readiness, etc.), then portal.yaml is not needed.
47
+ - id: q4
48
+ question: What is the `effects` field on a gate definition?
49
+ choices:
50
+ A: The HTTP response body returned when the gate passes
51
+ B: Side effects triggered when the gate is successfully passed
52
+ C: The list of routes protected by this gate
53
+ D: The reward given to the developer who implemented the gate
54
+ E: A list of test cases for the gate
55
+ correct: B
56
+ explanation: 'Effects are side effects that trigger when a gate passes. For example, passing ^first-login might award an onboarding badge. If there are no side effects, use an empty array: effects: [].'