@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,198 @@
1
+ ---
2
+ id: N-para-701-per-project-rosters
3
+ title: 'Lesson 5: Per-Project Rosters'
4
+ type: note
5
+ author: paradigm
6
+ created: '2026-04-22'
7
+ updated: '2026-04-22'
8
+ tags:
9
+ - course
10
+ - para-701
11
+ - rosteryaml-at-paradigmrosteryaml
12
+ - no-rosteryaml-
13
+ - project-type-detection
14
+ symbols: []
15
+ difficulty: beginner
16
+ estimatedMinutes: 6
17
+ prerequisites: []
18
+ category: paradigm-core
19
+ origin: imported
20
+ source: courses/para-701.json
21
+ ---
22
+
23
+ ## The Problem: 54 Agents Everywhere
24
+
25
+ Without project-level rosters, all 54 global agents are available to every project. This creates three problems:
26
+
27
+ 1. **Noise** — The orchestrator considers 54 agents when planning, even though a backend API project does not need a designer, copywriter, or SEO agent. More candidates means more evaluation time and potentially irrelevant agents being included in plans.
28
+
29
+ 2. **Irrelevance** — Agents that have no domain expertise for the project (gamedev on a SaaS app, legal on an open-source tool) waste attention by scoring events and producing nominations that will never be acted on.
30
+
31
+ 3. **Global benching is broken** — Before rosters, benching an agent (setting `benched: true` on the `.agent` file) was a global operation. Benching the gamedev agent for your SaaS project also benched it for your game project. There was no per-project control.
32
+
33
+ ## The Solution: roster.yaml
34
+
35
+ The `roster.yaml` file at `.paradigm/roster.yaml` lists exactly which agents are active on this project:
36
+
37
+ ```yaml
38
+ # .paradigm/roster.yaml
39
+ version: "1.0"
40
+ project: dealoracle
41
+ type: saas-web-app
42
+
43
+ active:
44
+ - architect
45
+ - builder
46
+ - reviewer
47
+ - tester
48
+ - security
49
+ - documentor
50
+ - designer # Mika
51
+ - copywriter # Wren
52
+ - performance # Bolt
53
+ - devops # Atlas
54
+ - dba # Vault
55
+ - e2e # Ghost
56
+ - dx # Helix
57
+ - seo # Beacon
58
+ - pm # Yuki
59
+ - product # North
60
+ - advocate # Jinx
61
+ - debugger # Trace
62
+ - release # Ship
63
+ ```
64
+
65
+ Agents not listed are not active on this project. They still exist globally at `~/.paradigm/agents/` but the orchestrator will not consider them when planning work for this project.
66
+
67
+ ## Backward Compatibility
68
+
69
+ The key design decision: **no roster.yaml = all agents available**. Existing projects that never created a roster continue working exactly as before. The `isAgentActive()` function implements this:
70
+
71
+ ```typescript
72
+ function isAgentActive(agentId: string, rootDir: string): boolean {
73
+ const roster = loadProjectRoster(rootDir);
74
+ if (!roster) return true; // No roster = all active
75
+ return roster.includes(agentId);
76
+ }
77
+ ```
78
+
79
+ This ensures zero breaking changes. You opt into roster filtering by creating the file. Until then, the system behaves as it always has.
80
+
81
+ ## Project Type Detection
82
+
83
+ When running `paradigm shift` (the project initialization command), the system auto-detects the project type from filesystem signals:
84
+
85
+ ```typescript
86
+ function detectProjectType(cwd: string): ProjectType {
87
+ const signals = {
88
+ hasPackageJson: exists('package.json'),
89
+ hasSupabase: exists('supabase/'),
90
+ hasNextConfig: exists('next.config.*'),
91
+ hasSwiftPackage: exists('Package.swift'),
92
+ hasGodotProject: exists('project.godot'),
93
+ hasCargoToml: exists('Cargo.toml'),
94
+ hasPubspecYaml: exists('pubspec.yaml'),
95
+ hasPrisma: exists('prisma/'),
96
+ hasDockerfile: exists('Dockerfile'),
97
+ };
98
+
99
+ if (signals.hasGodotProject) return 'game';
100
+ if (signals.hasSwiftPackage) return 'ios-app';
101
+ if (signals.hasPubspecYaml) return 'flutter-app';
102
+ if (signals.hasSupabase && signals.hasNextConfig) return 'saas-web-app';
103
+ if (signals.hasNextConfig) return 'web-app';
104
+ if (signals.hasCargoToml) return 'rust-project';
105
+ if (signals.hasPrisma || signals.hasDockerfile) return 'backend-api';
106
+ return 'generic';
107
+ }
108
+ ```
109
+
110
+ Detected types include `saas-web-app`, `web-app`, `backend-api`, `ios-app`, `flutter-app`, `game`, `rust-project`, and `generic`. Each type maps to a suggested roster.
111
+
112
+ ## Suggested Rosters by Type
113
+
114
+ Each project type has a pre-defined suggested roster. These are starting points, not mandatory configurations:
115
+
116
+ | Project Type | Typical Size | Notable Inclusions | Notable Exclusions |
117
+ |---|---|---|---|
118
+ | saas-web-app | ~24 agents | Full stack: designer, dba, seo, sales, legal | gamedev, 3d, audio, streaming |
119
+ | web-app | ~15 agents | Frontend-focused: designer, seo, a11y | dba, sales, legal |
120
+ | backend-api | ~13 agents | Backend-focused: dba, dx, performance | designer, copywriter, seo |
121
+ | ios-app | ~12 agents | Mobile: mobile (Swift), a11y, performance | dba, seo, devops |
122
+ | game | ~11 agents | Game-specific: gamedev, 3d, audio | seo, legal, sales, dba |
123
+ | flutter-app | ~11 agents | Cross-platform: mobile, a11y | dba, seo, devops |
124
+ | generic | ~8 agents | Core only: architect through documentor + debugger + qa | All specialists |
125
+
126
+ The `generic` roster is intentionally minimal: architect, builder, reviewer, tester, security, documentor, debugger, and qa. These 8 agents provide the baseline quality coverage (design, build, review, test, secure, document, debug, validate) that every project needs.
127
+
128
+ ## CLI Commands for Roster Management
129
+
130
+ Roster management is done through the CLI:
131
+
132
+ ```bash
133
+ # Interactive roster setup (suggests based on project type)
134
+ paradigm agents roster
135
+
136
+ # Activate specific agents
137
+ paradigm agents activate designer copywriter security devops dba
138
+
139
+ # Deactivate agents
140
+ paradigm agents deactivate gamedev 3d audio streaming
141
+
142
+ # List active agents for this project
143
+ paradigm agents list # Shows only active roster
144
+ paradigm agents list --all # Shows all global + active status
145
+
146
+ # Activate a pod (all agents in the pod)
147
+ paradigm agents activate --pod ship-pod
148
+ ```
149
+
150
+ Activate and deactivate modify the `roster.yaml` file — they never modify global `.agent` files. This is the key architectural decision: the roster is a project-level filter over global agents. Agents are not "installed" or "removed" per project; they are "active" or "inactive" based on whether they appear in the roster.
151
+
152
+ ## Orchestrator Integration
153
+
154
+ The orchestrator's planning phase reads the roster before selecting agents:
155
+
156
+ ```typescript
157
+ function getActiveAgents(rootDir: string): string[] {
158
+ const rosterPath = path.join(rootDir, '.paradigm', 'roster.yaml');
159
+ if (fs.existsSync(rosterPath)) {
160
+ const roster = yaml.load(fs.readFileSync(rosterPath, 'utf8'));
161
+ return roster.active || [];
162
+ }
163
+ // Fallback: all global agents (backward compat)
164
+ return getAllGlobalAgents().map(a => a.id);
165
+ }
166
+ ```
167
+
168
+ The returned list gates which agents are considered during orchestration planning. If the security agent is not in the roster, it will not be included in orchestration plans, will not receive event notifications, and will not self-nominate contributions. It is effectively invisible on this project.
169
+
170
+ ## paradigm shift Integration
171
+
172
+ During `paradigm shift` (first-time project setup), the roster step runs after team initialization:
173
+
174
+ ```
175
+ Step 2b/6: Agent roster setup...
176
+
177
+ Detected project type: SaaS web app (React + Supabase + Vercel)
178
+
179
+ Suggested roster (20 agents):
180
+ Core: architect, builder, reviewer, tester, security, documentor
181
+ Design: designer (Mika), copywriter (Wren), a11y (Aria)
182
+ Data: dba (Vault), performance (Bolt), analyst (Sage)
183
+ Infra: devops (Atlas), seo (Beacon), release (Ship)
184
+ Product: pm (Yuki), product (North)
185
+ Quality: e2e (Ghost), qa (Shield), advocate (Jinx)
186
+
187
+ Accept suggested roster? [Y/n]
188
+
189
+ Roster saved to .paradigm/roster.yaml (20 agents active)
190
+ ```
191
+
192
+ The human can accept the suggestion, modify it, or skip (which creates no roster file, keeping all agents active). On existing projects, running `paradigm shift` again offers to create a roster based on the detected type.
193
+
194
+ ## Why Rosters Are Not Agent Behavior
195
+
196
+ Rosters are a filtering mechanism, not a behavior modifier. An agent's `.agent` file defines who it is (personality, expertise, behaviors, attention). The roster defines whether it is active on this project. If the designer is not in the roster, it does not mean the designer "knows" it is inactive — it simply is not invoked.
197
+
198
+ This separation is important: when you activate the designer on a project, it arrives with its full personality, expertise, notebooks, and transferable patterns intact. Nothing about the agent changed. The roster just opened the door.
@@ -0,0 +1,142 @@
1
+ ---
2
+ id: N-para-701-symphony-visibility
3
+ title: 'Lesson 8: Live Visibility via Symphony'
4
+ type: note
5
+ author: paradigm
6
+ created: '2026-04-22'
7
+ updated: '2026-04-22'
8
+ tags:
9
+ - course
10
+ - para-701
11
+ - orchestrator-auto-emits-thr-orch-id
12
+ - noterelay-polls-paradigmscorethreads
13
+ - symphonythreadwatcher-filters-orchestration
14
+ symbols: []
15
+ difficulty: beginner
16
+ estimatedMinutes: 6
17
+ prerequisites: []
18
+ category: paradigm-core
19
+ origin: imported
20
+ source: courses/para-701.json
21
+ ---
22
+
23
+ ## The Visibility Gap
24
+
25
+ Orchestration runs inside an MCP tool call. The human sees: "Calling paradigm_orchestrate_inline..." followed by a wall of text when it completes. There is no live visibility into what is happening during orchestration — which agents are active, what they are producing, whether they agree or disagree, how far along the plan is.
26
+
27
+ Symphony closes this gap by providing a real-time communication channel between the orchestrator, agents, and the Conductor UI. The orchestrator emits progress into Symphony threads. The Conductor watches these threads and renders live updates.
28
+
29
+ ## How Orchestration Emits to Symphony
30
+
31
+ When `paradigm_orchestrate_inline` runs in execute mode, it auto-emits a Symphony thread with a `thr-orch-` prefix:
32
+
33
+ ```typescript
34
+ const orchestrationThread = `thr-orch-${orchestrationId}`;
35
+ ```
36
+
37
+ The orchestrator creates this thread via the Symphony loader and posts an initial note from the "maestro" identity:
38
+
39
+ ```typescript
40
+ const maestroId = `${projectName}/maestro`;
41
+ symphony.createNote(orchestrationThread, {
42
+ from: maestroId,
43
+ content: `Orchestration started: ${taskDescription}`,
44
+ type: 'agent',
45
+ project: projectName,
46
+ role: 'orchestrator',
47
+ });
48
+ ```
49
+
50
+ As each agent completes its work, the orchestrator posts their contributions to the thread. If security finds a gate coverage issue, that appears as a note from the security agent. If the builder completes implementation, that appears as a note from the builder. The thread becomes a chronological record of the orchestration.
51
+
52
+ The `thr-orch-` prefix is critical — it is the identifier that allows the Conductor to distinguish orchestration threads from regular Symphony threads (like team chat or general discussion).
53
+
54
+ ## NoteRelay: The Polling Bridge
55
+
56
+ Symphony threads are stored as JSON files in `~/.paradigm/score/threads/`. The Conductor is a native macOS application that cannot directly watch the filesystem for MCP-created files (different process, different sandbox). NoteRelay bridges this gap.
57
+
58
+ NoteRelay is a Conductor service that polls the Symphony thread directory on a 5-second interval:
59
+
60
+ ```
61
+ ~/.paradigm/score/threads/*.json → NoteRelay (5s poll) → Conductor state
62
+ ```
63
+
64
+ Every 5 seconds, NoteRelay scans for new or modified thread files. When it finds changes, it parses the JSON, extracts the notes, and updates the Conductor's in-memory state. This creates a near-real-time bridge between the MCP server (which writes threads) and the Conductor UI (which displays them).
65
+
66
+ The 5-second poll interval is a deliberate balance. A 1-second poll would provide faster updates but consume more CPU on the macOS overlay app. A 30-second poll would be too slow for live orchestration visibility. Five seconds means the Conductor is at most 5 seconds behind the actual orchestration state.
67
+
68
+ ## SymphonyThreadWatcher: Filtering Orchestration Threads
69
+
70
+ NoteRelay delivers all Symphony threads to the Conductor. But the Team view in Conductor only wants orchestration threads — not general discussion or personal notes. SymphonyThreadWatcher handles this filtering.
71
+
72
+ SymphonyThreadWatcher polls at a 3-second interval (faster than NoteRelay's 5-second scan) and filters threads by the `thr-orch-` prefix:
73
+
74
+ ```
75
+ All Symphony threads → SymphonyThreadWatcher (3s poll) →
76
+ Filter: thr-orch-* → TeamThreadView
77
+ ```
78
+
79
+ The watcher also tracks thread state: is the orchestration in progress, completed, or failed? It determines this by checking the latest note in the thread — a "completed" or "failed" status note indicates the orchestration has finished.
80
+
81
+ ## TeamThreadView: Rendering in Conductor
82
+
83
+ TeamThreadView is the SwiftUI view that renders orchestration threads in the Conductor overlay. Each note in the thread is displayed with:
84
+
85
+ 1. **Colored role badge** — Each agent role has a distinct color. The architect gets one color, the security agent another, the builder another. This makes it immediately visible who said what without reading names.
86
+
87
+ 2. **Intent indicator** — The orchestration plan specifies an intent for each agent (e.g., "review gate coverage", "implement webhook handler"). The intent appears next to the agent's badge, providing context for why the agent was included.
88
+
89
+ 3. **Agent nickname** — If the agent has a nickname (Mika, Atlas, Jinx), it is displayed alongside the role. This makes attributed responses feel like team communication rather than tool output.
90
+
91
+ 4. **Note content** — The actual contribution from the agent. This could be a review finding, a code suggestion, a security flag, or a completion confirmation.
92
+
93
+ The visual layout mimics a team chat interface: chronological notes from identified agents, each with their role badge and intent. The human can watch the orchestration unfold in real time rather than waiting for a monolithic output.
94
+
95
+ ## Agent-Side Emission
96
+
97
+ Agents are instructed (via their orchestration prompts) to emit progress and completion notes to Symphony during execution. The orchestrator includes this instruction:
98
+
99
+ ```markdown
100
+ ## Symphony Communication
101
+ During your work, emit progress notes to the active Symphony thread.
102
+ Use these note types:
103
+ - progress: "Reviewing file X of Y..."
104
+ - finding: "Found gate coverage gap on POST /api/payments"
105
+ - completion: "Review complete. 2 findings, 0 blockers."
106
+ ```
107
+
108
+ Not all agents emit notes equally. The architect tends to emit planning updates. The security agent emits findings. The builder emits completion summaries. The documentor emits what it updated. This diversity creates a natural team-communication feel in the thread.
109
+
110
+ ## The Full Pipeline
111
+
112
+ Putting it all together, the live visibility pipeline is:
113
+
114
+ ```
115
+ pardigm_orchestrate_inline execute
116
+
117
+ Orchestrator creates thr-orch-{id} thread
118
+
119
+ Each agent contributes → notes posted to thread
120
+
121
+ Thread file written to ~/.paradigm/score/threads/
122
+
123
+ NoteRelay polls (5s) → detects new/changed thread
124
+
125
+ SymphonyThreadWatcher filters (3s) → thr-orch-* threads
126
+
127
+ TeamThreadView renders with colored badges and intents
128
+
129
+ Human sees live orchestration progress in Conductor overlay
130
+ ```
131
+
132
+ The latency from agent contribution to visual display is at most ~8 seconds (5s NoteRelay + 3s ThreadWatcher in the worst case). In practice, it is usually 3-5 seconds because the polls are offset.
133
+
134
+ ## Why This Architecture
135
+
136
+ The polling-based architecture was chosen over alternatives for pragmatic reasons:
137
+
138
+ - **Filesystem watching** (FSEvents on macOS) is brittle across sandboxed processes and does not work reliably when the MCP server writes files from a different process tree.
139
+ - **WebSocket/TCP connection** between MCP server and Conductor would require connection management, reconnection logic, and port conflicts. Polling a directory is simpler.
140
+ - **Shared memory** would require both processes to link against the same framework, creating tight coupling.
141
+
142
+ Polling JSON files from a well-known directory is the simplest architecture that provides near-real-time visibility without process-coupling complexity. The tradeoff is a 3-8 second display latency, which is acceptable for human observation of orchestration progress.
@@ -0,0 +1,29 @@
1
+ id: LP-para-001
2
+ title: 'PARA 001: Quick Start'
3
+ description: Get productive with Paradigm in 15 minutes. Initialize a project, meet your agent team, and build your first feature with orchestration. Hands-on from the first minute — theory comes later.
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-001
10
+ ordered: true
11
+ category: paradigm-core
12
+ origin: imported
13
+ source: courses/para-001.json
14
+ steps:
15
+ - content: N-para-001-shift-setup
16
+ required: true
17
+ - content: Q-para-001-shift-setup
18
+ required: true
19
+ passRequired: true
20
+ - content: N-para-001-meet-the-team
21
+ required: true
22
+ - content: Q-para-001-meet-the-team
23
+ required: true
24
+ passRequired: true
25
+ - content: N-para-001-build-something
26
+ required: true
27
+ - content: Q-para-001-build-something
28
+ required: true
29
+ passRequired: true
@@ -0,0 +1,59 @@
1
+ id: LP-para-101
2
+ title: 'PARA 101: Foundations'
3
+ description: Master the fundamentals of Paradigm — the meta-framework that gives AI agents structured context to navigate and understand your codebase. Learn the five symbols, purpose files, tags, logging, project structure, and gates.
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-101
10
+ ordered: true
11
+ category: paradigm-core
12
+ origin: imported
13
+ source: courses/para-101.json
14
+ steps:
15
+ - content: N-para-101-welcome
16
+ required: true
17
+ - content: Q-para-101-welcome
18
+ required: true
19
+ passRequired: true
20
+ - content: N-para-101-first-steps
21
+ required: true
22
+ - content: Q-para-101-first-steps
23
+ required: true
24
+ passRequired: true
25
+ - content: N-para-101-five-symbols
26
+ required: true
27
+ - content: Q-para-101-five-symbols
28
+ required: true
29
+ passRequired: true
30
+ - content: N-para-101-purpose-files
31
+ required: true
32
+ - content: Q-para-101-purpose-files
33
+ required: true
34
+ passRequired: true
35
+ - content: N-para-101-tags-and-classification
36
+ required: true
37
+ - content: Q-para-101-tags-and-classification
38
+ required: true
39
+ passRequired: true
40
+ - content: N-para-101-paradigm-logger
41
+ required: true
42
+ - content: Q-para-101-paradigm-logger
43
+ required: true
44
+ passRequired: true
45
+ - content: N-para-101-project-structure
46
+ required: true
47
+ - content: Q-para-101-project-structure
48
+ required: true
49
+ passRequired: true
50
+ - content: N-para-101-portal-yaml
51
+ required: true
52
+ - content: Q-para-101-portal-yaml
53
+ required: true
54
+ passRequired: true
55
+ - content: N-para-101-component-types
56
+ required: true
57
+ - content: Q-para-101-component-types
58
+ required: true
59
+ passRequired: true
@@ -0,0 +1,69 @@
1
+ id: LP-para-201
2
+ title: 'PARA 201: Architecture'
3
+ description: Deepen your Paradigm expertise with advanced patterns for flows, gates, aspects, disciplines, naming conventions, and architectural design. Learn to build complete features end-to-end using the full symbol system.
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-201
10
+ ordered: true
11
+ category: paradigm-core
12
+ origin: imported
13
+ source: courses/para-201.json
14
+ steps:
15
+ - content: N-para-201-flows-deep-dive
16
+ required: true
17
+ - content: Q-para-201-flows-deep-dive
18
+ required: true
19
+ passRequired: true
20
+ - content: N-para-201-gates-deep-dive
21
+ required: true
22
+ - content: Q-para-201-gates-deep-dive
23
+ required: true
24
+ passRequired: true
25
+ - content: N-para-201-aspects-and-anchors
26
+ required: true
27
+ - content: Q-para-201-aspects-and-anchors
28
+ required: true
29
+ passRequired: true
30
+ - content: N-para-201-aspect-graph
31
+ required: true
32
+ - content: Q-para-201-aspect-graph
33
+ required: true
34
+ passRequired: true
35
+ - content: N-para-201-portal-protocol
36
+ required: true
37
+ - content: Q-para-201-portal-protocol
38
+ required: true
39
+ passRequired: true
40
+ - content: N-para-201-disciplines
41
+ required: true
42
+ - content: Q-para-201-disciplines
43
+ required: true
44
+ passRequired: true
45
+ - content: N-para-201-symbol-naming
46
+ required: true
47
+ - content: Q-para-201-symbol-naming
48
+ required: true
49
+ passRequired: true
50
+ - content: N-para-201-component-patterns
51
+ required: true
52
+ - content: Q-para-201-component-patterns
53
+ required: true
54
+ passRequired: true
55
+ - content: N-para-201-signal-patterns
56
+ required: true
57
+ - content: Q-para-201-signal-patterns
58
+ required: true
59
+ passRequired: true
60
+ - content: N-para-201-cross-cutting-concerns
61
+ required: true
62
+ - content: Q-para-201-cross-cutting-concerns
63
+ required: true
64
+ passRequired: true
65
+ - content: N-para-201-architecture-review
66
+ required: true
67
+ - content: Q-para-201-architecture-review
68
+ required: true
69
+ passRequired: true
@@ -0,0 +1,84 @@
1
+ id: LP-para-301
2
+ title: 'PARA 301: Operations'
3
+ description: Master the operational tools and workflows that keep a Paradigm project healthy. From history tracking and fragility analysis to sentinel observability and context management, this course covers the day-to-day operations that separate well-maintained projects from chaotic ones.
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-301
10
+ ordered: true
11
+ category: paradigm-core
12
+ origin: imported
13
+ source: courses/para-301.json
14
+ steps:
15
+ - content: N-para-301-history-system
16
+ required: true
17
+ - content: Q-para-301-history-system
18
+ required: true
19
+ passRequired: true
20
+ - content: N-para-301-fragility-tracking
21
+ required: true
22
+ - content: Q-para-301-fragility-tracking
23
+ required: true
24
+ passRequired: true
25
+ - content: N-para-301-wisdom-system
26
+ required: true
27
+ - content: Q-para-301-wisdom-system
28
+ required: true
29
+ passRequired: true
30
+ - content: N-para-301-decisions
31
+ required: true
32
+ - content: Q-para-301-decisions
33
+ required: true
34
+ passRequired: true
35
+ - content: N-para-301-ripple-analysis
36
+ required: true
37
+ - content: Q-para-301-ripple-analysis
38
+ required: true
39
+ passRequired: true
40
+ - content: N-para-301-doctor-and-validation
41
+ required: true
42
+ - content: Q-para-301-doctor-and-validation
43
+ required: true
44
+ passRequired: true
45
+ - content: N-para-301-enforcement-levels
46
+ required: true
47
+ - content: Q-para-301-enforcement-levels
48
+ required: true
49
+ passRequired: true
50
+ - content: N-para-301-paradigm-shift
51
+ required: true
52
+ - content: Q-para-301-paradigm-shift
53
+ required: true
54
+ passRequired: true
55
+ - content: N-para-301-navigation-system
56
+ required: true
57
+ - content: Q-para-301-navigation-system
58
+ required: true
59
+ passRequired: true
60
+ - content: N-para-301-sentinel-observability
61
+ required: true
62
+ - content: Q-para-301-sentinel-observability
63
+ required: true
64
+ passRequired: true
65
+ - content: N-para-301-sync-and-maintenance
66
+ required: true
67
+ - content: Q-para-301-sync-and-maintenance
68
+ required: true
69
+ passRequired: true
70
+ - content: N-para-301-context-management
71
+ required: true
72
+ - content: Q-para-301-context-management
73
+ required: true
74
+ passRequired: true
75
+ - content: N-para-301-protocols
76
+ required: true
77
+ - content: Q-para-301-protocols
78
+ required: true
79
+ passRequired: true
80
+ - content: N-para-301-operations-review
81
+ required: true
82
+ - content: Q-para-301-operations-review
83
+ required: true
84
+ passRequired: true
@@ -0,0 +1,74 @@
1
+ id: LP-para-401
2
+ title: 'PARA 401: Orchestration'
3
+ description: Advanced course on multi-agent orchestration, MCP tool mastery, and framework-level coordination. Learn to decompose complex tasks across specialized agents, configure provider cascades, enforce governance with the PM layer, and achieve full Paradigm framework mastery.
4
+ author: paradigm
5
+ created: '2026-04-22'
6
+ updated: '2026-04-22'
7
+ tags:
8
+ - course
9
+ - para-401
10
+ ordered: true
11
+ category: paradigm-core
12
+ origin: imported
13
+ source: courses/para-401.json
14
+ steps:
15
+ - content: N-para-401-mcp-tools-overview
16
+ required: true
17
+ - content: Q-para-401-mcp-tools-overview
18
+ required: true
19
+ passRequired: true
20
+ - content: N-para-401-multi-agent-coordination
21
+ required: true
22
+ - content: Q-para-401-multi-agent-coordination
23
+ required: true
24
+ passRequired: true
25
+ - content: N-para-401-agent-roles
26
+ required: true
27
+ - content: Q-para-401-agent-roles
28
+ required: true
29
+ passRequired: true
30
+ - content: N-para-401-provider-cascade
31
+ required: true
32
+ - content: Q-para-401-provider-cascade
33
+ required: true
34
+ passRequired: true
35
+ - content: N-para-401-orchestration-workflow
36
+ required: true
37
+ - content: Q-para-401-orchestration-workflow
38
+ required: true
39
+ passRequired: true
40
+ - content: N-para-401-quick-check
41
+ required: true
42
+ - content: Q-para-401-quick-check
43
+ required: true
44
+ passRequired: true
45
+ - content: N-para-401-pm-governance
46
+ required: true
47
+ - content: Q-para-401-pm-governance
48
+ required: true
49
+ passRequired: true
50
+ - content: N-para-401-commit-conventions
51
+ required: true
52
+ - content: Q-para-401-commit-conventions
53
+ required: true
54
+ passRequired: true
55
+ - content: N-para-401-mastery-review
56
+ required: true
57
+ - content: Q-para-401-mastery-review
58
+ required: true
59
+ passRequired: true
60
+ - content: N-para-401-agent-interop
61
+ required: true
62
+ - content: Q-para-401-agent-interop
63
+ required: true
64
+ passRequired: true
65
+ - content: N-para-401-agent-identity
66
+ required: true
67
+ - content: Q-para-401-agent-identity
68
+ required: true
69
+ passRequired: true
70
+ - content: N-para-401-notebooks-permissions
71
+ required: true
72
+ - content: Q-para-401-notebooks-permissions
73
+ required: true
74
+ passRequired: true