@a-company/paradigm 5.38.0 → 6.0.4
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.
- package/dist/{accept-orchestration-OATWIRHP.js → accept-orchestration-TIXUQQGR.js} +1 -1
- package/dist/add-UOR4INIV.js +8 -0
- package/dist/agent-MB3H5EZA.js +33 -0
- package/dist/{agent-loader-RIVI6QPP.js → agent-loader-VGBPL3TH.js} +1 -1
- package/dist/{agent-loader-RJRVO5GQ.js → agent-loader-W3RQJVW7.js} +1 -1
- package/dist/{agents-suggest-HYTFMQD3.js → agents-suggest-IKY6VD2R.js} +1 -1
- package/dist/{ambient-WTLYUAQM.js → ambient-AI42BOM5.js} +12 -12
- package/dist/{ambient-76YMUA5Q.js → ambient-FNNFB4AP.js} +1 -1
- package/dist/{assess-UFPYEJKP.js → assess-63WXHWJV.js} +1 -1
- package/dist/authority-FA3HLEOA.js +2 -0
- package/dist/{calibration-OLJYB5HN.js → calibration-BDHGYJOK.js} +1 -1
- package/dist/chunk-23T6UG73.js +605 -0
- package/dist/{chunk-4L7665QV.js → chunk-2AU5L333.js} +1 -1
- package/dist/{chunk-BOYQAMGC.js → chunk-4N56FRNE.js} +1 -1
- package/dist/{chunk-5QOCKWK5.js → chunk-4PSD5R7N.js} +2 -2
- package/dist/{chunk-MQIG6SMF.js → chunk-6QXBXZF6.js} +1 -1
- package/dist/{chunk-ORDKEGII.js → chunk-AMLD7IYC.js} +1 -1
- package/dist/{chunk-3DZK54RU.js → chunk-DBEWOKD6.js} +32 -7
- package/dist/{chunk-AGFPVSX5.js → chunk-F6E3HW45.js} +1 -1
- package/dist/{chunk-X3U3IGYT.js → chunk-GD4F2HC6.js} +2 -2
- package/dist/chunk-GRZQIKST.js +2 -0
- package/dist/{chunk-HOBHJPTL.js → chunk-IOVHF4SR.js} +1 -1
- package/dist/{chunk-RLCH7DXQ.js → chunk-K7X3Z3GL.js} +1 -1
- package/dist/{chunk-74SGKSRQ.js → chunk-KAFQA7HV.js} +2 -2
- package/dist/{chunk-NEJ4ZLCY.js → chunk-LAYBUKMB.js} +1 -1
- package/dist/{chunk-4VKSEOXZ.js → chunk-LPBCQM5Y.js} +3 -3
- package/dist/chunk-Q527BPUF.js +2 -0
- package/dist/{chunk-AO7ZSRME.js → chunk-TQOT2LBO.js} +2 -2
- package/dist/{chunk-3XGNXXCT.js → chunk-UZ5H7K6Q.js} +1 -1
- package/dist/chunk-VIG5LSGZ.js +2 -0
- package/dist/chunk-VNIX5KBT.js +3 -0
- package/dist/chunk-WXF5VFB4.js +111 -0
- package/dist/chunk-XQLO5URP.js +11 -0
- package/dist/{chunk-DOCDDDTD.js → chunk-YNDPSWOE.js} +5 -5
- package/dist/chunk-Z5QW6USC.js +2 -0
- package/dist/{compliance-D7GD6ZYC.js → compliance-J3VOV445.js} +1 -1
- package/dist/config-schema-FLHRVZMI.js +2 -0
- package/dist/{context-audit-XRPT3OU2.js → context-audit-JVCA6GSV.js} +1 -1
- package/dist/{cursorrules-U5O4G5T4.js → cursorrules-ZXPXPZ3P.js} +1 -1
- package/dist/decision-loader-HELL2AMX.js +2 -0
- package/dist/{delete-P5VULXR4.js → delete-2C6ALLYY.js} +1 -1
- package/dist/{diff-YGHBIJY5.js → diff-75MABOSL.js} +1 -1
- package/dist/{dist-KGRCLBJP-2QAPFYNF.js → dist-GQ42YS5N-4HIJZVBB.js} +10 -10
- package/dist/{docs-USDAF26F.js → docs-TSAAS4W3.js} +1 -1
- package/dist/doctor-L5XZENCF.js +2 -0
- package/dist/{edit-GUU3HBVW.js → edit-P3MDAZLU.js} +1 -1
- package/dist/{flow-FVZR3YJ4.js → flow-BGXOVE2V.js} +1 -1
- package/dist/{hooks-TFMMMB2H.js → hooks-KUEE5KMM.js} +1 -1
- package/dist/index.js +6 -6
- package/dist/init-M44SO65G.js +2 -0
- package/dist/{init-XYB62Q3X.js → init-V4KSEKPK.js} +1 -1
- package/dist/{list-YKIQNKGB.js → list-2XIWUEMA.js} +1 -1
- package/dist/list-CFHINXIS.js +12 -0
- package/dist/lore-loader-D2ISOASW.js +2 -0
- package/dist/lore-loader-PXFKMKAN.js +2 -0
- package/dist/mcp.js +4 -4
- package/dist/metrics-UESGUHTA.js +2 -0
- package/dist/{migrate-Z5UQN57G.js → migrate-ZPNYDNM4.js} +1 -1
- package/dist/migrate-assessments-YSITX7KM.js +4 -0
- package/dist/migrate-decisions-NPLQOEEH.js +6 -0
- package/dist/migrate-plsat-EM2ACIQ3.js +6 -0
- package/dist/migration-notices-BHLEYC4T.js +4 -0
- package/dist/{nomination-engine-EALA5MGI.js → nomination-engine-NCLTGMAK.js} +1 -1
- package/dist/{notebook-loader-PXNRBBXD.js → notebook-loader-3J2OFMS3.js} +1 -1
- package/dist/{orchestrate-M5PBZBJQ.js → orchestrate-K4KBTBYK.js} +1 -1
- package/dist/{platform-server-DNAMH4YI.js → platform-server-ANOALDPL.js} +1 -1
- package/dist/{portal-check-ZMLVBIGW.js → portal-check-DV2VSJ5E.js} +1 -1
- package/dist/portal-compliance-JONQ4SOP.js +2 -0
- package/dist/{probe-3FTG6LYO.js → probe-5HAXULAD.js} +1 -1
- package/dist/{providers-AWA7WLLM.js → providers-TBPOE4DI.js} +1 -1
- package/dist/quiz-WYIZJG5K.js +10 -0
- package/dist/{record-YXPB34MY.js → record-N3VNYYKJ.js} +1 -1
- package/dist/registry-OUTA3DXW.js +20 -0
- package/dist/reindex-IZCD2JGD.js +2 -0
- package/dist/{retag-N5XF3KXP.js → retag-72R2OSZV.js} +1 -1
- package/dist/{review-77QI6VOC.js → review-2INNWLTW.js} +1 -1
- package/dist/{sentinel-HYAZ3CO5.js → sentinel-EFPEX246.js} +1 -1
- package/dist/{sentinel-bridge-VR357PKL.js → sentinel-bridge-UR2MKARY.js} +1 -1
- package/dist/{serve-U47GULB6.js → serve-3FMUWW5K.js} +1 -1
- package/dist/serve-OQYUO7CR.js +12 -0
- package/dist/{server-4YNUIK4W.js → server-4D77LCST.js} +1 -1
- package/dist/server-FGUL2FWQ.js +7 -0
- package/dist/session-tracker-HHNY6J4I.js +2 -0
- package/dist/{session-work-log-ZP45TREI.js → session-work-log-MEJ33TYD.js} +1 -1
- package/dist/{session-work-log-PAKXOFGL.js → session-work-log-ZVVJGO7X.js} +1 -1
- package/dist/{setup-FEWSYS3Y.js → setup-ZSEC72BS.js} +1 -1
- package/dist/shift-WGMZGWOC.js +60 -0
- package/dist/{show-PJ5LFLIL.js → show-JH7LJ5MT.js} +1 -1
- package/dist/show-WVHAL4VU.js +7 -0
- package/dist/{spawn-M5BAV252.js → spawn-KKDDR6UR.js} +1 -1
- package/dist/status-S7Z5FVIE.js +6 -0
- package/dist/{summary-PYTEIJ4U.js → summary-WLI3NF4G.js} +2 -2
- package/dist/{sweep-HU74OPVW.js → sweep-7TZFN5NS.js} +1 -1
- package/dist/sync-55U6QPIA.js +2 -0
- package/dist/{sync-llms-7CAI74QL.js → sync-llms-GF7DDQDI.js} +1 -1
- package/dist/{team-PDK64JXI.js → team-2LGZQRP4.js} +1 -1
- package/dist/{timeline-K3ZFKJ3R.js → timeline-RK7O2SCM.js} +1 -1
- package/dist/tools-4RRFTU5H.js +2 -0
- package/dist/university-content/notes/N-para-001-build-something.md +126 -0
- package/dist/university-content/notes/N-para-001-meet-the-team.md +85 -0
- package/dist/university-content/notes/N-para-001-shift-setup.md +74 -0
- package/dist/university-content/notes/N-para-101-component-types.md +99 -0
- package/dist/university-content/notes/N-para-101-first-steps.md +134 -0
- package/dist/university-content/notes/N-para-101-five-symbols.md +128 -0
- package/dist/university-content/notes/N-para-101-paradigm-logger.md +89 -0
- package/dist/university-content/notes/N-para-101-portal-yaml.md +112 -0
- package/dist/university-content/notes/N-para-101-project-structure.md +143 -0
- package/dist/university-content/notes/N-para-101-purpose-files.md +121 -0
- package/dist/university-content/notes/N-para-101-tags-and-classification.md +93 -0
- package/dist/university-content/notes/N-para-101-welcome.md +51 -0
- package/dist/university-content/notes/N-para-201-architecture-review.md +175 -0
- package/dist/university-content/notes/N-para-201-aspect-graph.md +79 -0
- package/dist/university-content/notes/N-para-201-aspects-and-anchors.md +112 -0
- package/dist/university-content/notes/N-para-201-component-patterns.md +138 -0
- package/dist/university-content/notes/N-para-201-cross-cutting-concerns.md +145 -0
- package/dist/university-content/notes/N-para-201-disciplines.md +187 -0
- package/dist/university-content/notes/N-para-201-flows-deep-dive.md +119 -0
- package/dist/university-content/notes/N-para-201-gates-deep-dive.md +165 -0
- package/dist/university-content/notes/N-para-201-portal-protocol.md +133 -0
- package/dist/university-content/notes/N-para-201-signal-patterns.md +159 -0
- package/dist/university-content/notes/N-para-201-symbol-naming.md +149 -0
- package/dist/university-content/notes/N-para-301-context-management.md +53 -0
- package/dist/university-content/notes/N-para-301-decisions.md +99 -0
- package/dist/university-content/notes/N-para-301-doctor-and-validation.md +70 -0
- package/dist/university-content/notes/N-para-301-enforcement-levels.md +102 -0
- package/dist/university-content/notes/N-para-301-fragility-tracking.md +50 -0
- package/dist/university-content/notes/N-para-301-history-system.md +42 -0
- package/dist/university-content/notes/N-para-301-navigation-system.md +55 -0
- package/dist/university-content/notes/N-para-301-operations-review.md +55 -0
- package/dist/university-content/notes/N-para-301-paradigm-shift.md +93 -0
- package/dist/university-content/notes/N-para-301-protocols.md +113 -0
- package/dist/university-content/notes/N-para-301-ripple-analysis.md +53 -0
- package/dist/university-content/notes/N-para-301-sentinel-observability.md +87 -0
- package/dist/university-content/notes/N-para-301-sync-and-maintenance.md +57 -0
- package/dist/university-content/notes/N-para-301-wisdom-system.md +89 -0
- package/dist/university-content/notes/N-para-401-agent-identity.md +99 -0
- package/dist/university-content/notes/N-para-401-agent-interop.md +87 -0
- package/dist/university-content/notes/N-para-401-agent-roles.md +107 -0
- package/dist/university-content/notes/N-para-401-commit-conventions.md +82 -0
- package/dist/university-content/notes/N-para-401-mastery-review.md +71 -0
- package/dist/university-content/notes/N-para-401-mcp-tools-overview.md +102 -0
- package/dist/university-content/notes/N-para-401-multi-agent-coordination.md +80 -0
- package/dist/university-content/notes/N-para-401-notebooks-permissions.md +66 -0
- package/dist/university-content/notes/N-para-401-orchestration-workflow.md +101 -0
- package/dist/university-content/notes/N-para-401-pm-governance.md +71 -0
- package/dist/university-content/notes/N-para-401-provider-cascade.md +75 -0
- package/dist/university-content/notes/N-para-401-quick-check.md +95 -0
- package/dist/university-content/notes/N-para-451-agent-routing.md +117 -0
- package/dist/university-content/notes/N-para-451-archetypes-vs-instances.md +82 -0
- package/dist/university-content/notes/N-para-451-identity-layers.md +76 -0
- package/dist/university-content/notes/N-para-451-orchestration-modes.md +85 -0
- package/dist/university-content/notes/N-para-451-paradigm-shift.md +95 -0
- package/dist/university-content/notes/N-para-451-partners-primitive.md +107 -0
- package/dist/university-content/notes/N-para-451-roster-management.md +132 -0
- package/dist/university-content/notes/N-para-451-roster-reference.md +106 -0
- package/dist/university-content/notes/N-para-451-the-team-pattern.md +87 -0
- package/dist/university-content/notes/N-para-451-tiers.md +81 -0
- package/dist/university-content/notes/N-para-451-welcome.md +55 -0
- package/dist/university-content/notes/N-para-451-what-is-an-agent.md +73 -0
- package/dist/university-content/notes/N-para-501-advanced-workflows.md +122 -0
- package/dist/university-content/notes/N-para-501-aspect-graph-advanced.md +195 -0
- package/dist/university-content/notes/N-para-501-aspect-graph-internals.md +97 -0
- package/dist/university-content/notes/N-para-501-assessment-loops.md +116 -0
- package/dist/university-content/notes/N-para-501-conductor-workspace.md +77 -0
- package/dist/university-content/notes/N-para-501-habits-practice.md +164 -0
- package/dist/university-content/notes/N-para-501-hook-enforcement.md +100 -0
- package/dist/university-content/notes/N-para-501-lore-system.md +155 -0
- package/dist/university-content/notes/N-para-501-platform-agent-ui.md +108 -0
- package/dist/university-content/notes/N-para-501-review-compliance.md +72 -0
- package/dist/university-content/notes/N-para-501-sentinel-deep-dive.md +173 -0
- package/dist/university-content/notes/N-para-501-session-intelligence.md +104 -0
- package/dist/university-content/notes/N-para-501-symphony-a-mail.md +120 -0
- package/dist/university-content/notes/N-para-501-symphony-networking.md +119 -0
- package/dist/university-content/notes/N-para-501-task-management.md +100 -0
- package/dist/university-content/notes/N-para-601-agent-renaissance.md +121 -0
- package/dist/university-content/notes/N-para-601-attention-scoring.md +129 -0
- package/dist/university-content/notes/N-para-601-context-composition.md +146 -0
- package/dist/university-content/notes/N-para-601-data-sovereignty.md +140 -0
- package/dist/university-content/notes/N-para-601-event-stream.md +126 -0
- package/dist/university-content/notes/N-para-601-knowledge-streams.md +144 -0
- package/dist/university-content/notes/N-para-601-learning-loop.md +68 -0
- package/dist/university-content/notes/N-para-601-maestro-team-collab.md +136 -0
- package/dist/university-content/notes/N-para-601-nominations-debates.md +115 -0
- package/dist/university-content/notes/N-para-701-agent-notebooks.md +131 -0
- package/dist/university-content/notes/N-para-701-agent-pods-nevrland.md +182 -0
- package/dist/university-content/notes/N-para-701-agent-profiles.md +197 -0
- package/dist/university-content/notes/N-para-701-agent-roster.md +82 -0
- package/dist/university-content/notes/N-para-701-agent-state.md +180 -0
- package/dist/university-content/notes/N-para-701-learning-feedback-loop.md +188 -0
- package/dist/university-content/notes/N-para-701-model-tier-resolution.md +204 -0
- package/dist/university-content/notes/N-para-701-orchestration-enforcement.md +169 -0
- package/dist/university-content/notes/N-para-701-per-project-rosters.md +198 -0
- package/dist/university-content/notes/N-para-701-symphony-visibility.md +142 -0
- package/dist/university-content/paths/LP-para-001.yaml +29 -0
- package/dist/university-content/paths/LP-para-101.yaml +59 -0
- package/dist/university-content/paths/LP-para-201.yaml +69 -0
- package/dist/university-content/paths/LP-para-301.yaml +84 -0
- package/dist/university-content/paths/LP-para-401.yaml +74 -0
- package/dist/university-content/paths/LP-para-451.yaml +69 -0
- package/dist/university-content/paths/LP-para-501.yaml +89 -0
- package/dist/university-content/paths/LP-para-601.yaml +59 -0
- package/dist/university-content/paths/LP-para-701.yaml +64 -0
- package/dist/university-content/quizzes/Q-para-001-build-something.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-001-meet-the-team.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-001-shift-setup.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-101-component-types.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-101-first-steps.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-101-five-symbols.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-101-paradigm-logger.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-101-portal-yaml.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-101-project-structure.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-101-purpose-files.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-101-tags-and-classification.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-101-welcome.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-201-architecture-review.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-201-aspect-graph.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-201-aspects-and-anchors.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-201-component-patterns.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-201-cross-cutting-concerns.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-201-disciplines.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-201-flows-deep-dive.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-201-gates-deep-dive.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-201-portal-protocol.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-201-signal-patterns.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-201-symbol-naming.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-301-context-management.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-301-decisions.yaml +76 -0
- package/dist/university-content/quizzes/Q-para-301-doctor-and-validation.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-301-enforcement-levels.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-301-fragility-tracking.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-301-history-system.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-301-navigation-system.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-301-operations-review.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-301-paradigm-shift.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-301-protocols.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-301-ripple-analysis.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-301-sentinel-observability.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-301-sync-and-maintenance.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-301-wisdom-system.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-401-agent-identity.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-401-agent-interop.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-401-agent-roles.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-401-commit-conventions.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-401-mastery-review.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-401-mcp-tools-overview.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-401-multi-agent-coordination.yaml +76 -0
- package/dist/university-content/quizzes/Q-para-401-notebooks-permissions.yaml +61 -0
- package/dist/university-content/quizzes/Q-para-401-orchestration-workflow.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-401-pm-governance.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-401-provider-cascade.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-401-quick-check.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-451-foundations.yaml +154 -0
- package/dist/university-content/quizzes/Q-para-451-when-to-invoke.yaml +182 -0
- package/dist/university-content/quizzes/Q-para-501-advanced-workflows.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-501-aspect-graph-advanced.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-501-aspect-graph-internals.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-501-assessment-loops.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-501-conductor-workspace.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-501-habits-practice.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-501-hook-enforcement.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-501-lore-system.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-501-platform-agent-ui.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-501-review-compliance.yaml +61 -0
- package/dist/university-content/quizzes/Q-para-501-sentinel-deep-dive.yaml +86 -0
- package/dist/university-content/quizzes/Q-para-501-session-intelligence.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-501-symphony-a-mail.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-501-symphony-networking.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-501-task-management.yaml +46 -0
- package/dist/university-content/quizzes/Q-para-601-agent-renaissance.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-601-attention-scoring.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-601-context-composition.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-601-data-sovereignty.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-601-event-stream.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-601-knowledge-streams.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-601-learning-loop.yaml +56 -0
- package/dist/university-content/quizzes/Q-para-601-maestro-team-collab.yaml +86 -0
- package/dist/university-content/quizzes/Q-para-601-nominations-debates.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-agent-notebooks.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-agent-pods-nevrland.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-agent-profiles.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-agent-roster.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-agent-state.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-learning-feedback-loop.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-model-tier-resolution.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-orchestration-enforcement.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-per-project-rosters.yaml +66 -0
- package/dist/university-content/quizzes/Q-para-701-symphony-visibility.yaml +66 -0
- package/dist/university-content/quizzes/Q-plsat-v2.yaml +904 -0
- package/dist/university-content/quizzes/Q-plsat-v3.yaml +2909 -0
- package/dist/university-content/reference.json +2 -2
- package/dist/university-ui/assets/{index-CecQrfSn.js → index-nNgzO1il.js} +2 -2
- package/dist/university-ui/assets/{index-CecQrfSn.js.map → index-nNgzO1il.js.map} +1 -1
- package/dist/university-ui/index.html +1 -1
- package/dist/{upgrade-GX56QE3C.js → upgrade-NKN63VTY.js} +2 -2
- package/dist/validate-XUQZTF3H.js +9 -0
- package/dist/{watch-YCODNIET.js → watch-25GJHQYT.js} +1 -1
- package/lore-ui/dist/assets/{index-Bk-K0qgN.js → index-DKhNxgtW.js} +10 -10
- package/lore-ui/dist/index.html +1 -1
- package/package.json +2 -2
- package/platform-ui/dist/assets/{AmbientSection-BYjt75R1.js → AmbientSection-CwatqcBD.js} +1 -1
- package/platform-ui/dist/assets/{CanvasSection-rKvA_vZj.js → CanvasSection-dFAthehN.js} +1 -1
- package/platform-ui/dist/assets/{DocsSection-CI9K73M-.js → DocsSection-BZ2SFJBZ.js} +1 -1
- package/platform-ui/dist/assets/{GitSection-DSGj_c6S.js → GitSection-MNNYU1tO.js} +1 -1
- package/platform-ui/dist/assets/{GraphSection-CawN7pC5.js → GraphSection-COYjb4Pt.js} +1 -1
- package/platform-ui/dist/assets/LoreSection-B0hUbfsJ.js +1 -0
- package/platform-ui/dist/assets/{SentinelSection-DNgoYMH0.js → SentinelSection-BCxW1DCp.js} +1 -1
- package/platform-ui/dist/assets/{SymphonySection-C0zfcqv3.js → SymphonySection-BsucZRqy.js} +1 -1
- package/platform-ui/dist/assets/{TeamSection-Bzd3Dt9Q.js → TeamSection-C0QNTudW.js} +1 -1
- package/platform-ui/dist/assets/{UniversitySection-tBr62R0S.js → UniversitySection-DN1-g9pw.js} +1 -1
- package/platform-ui/dist/assets/{index-BaOmyn11.js → index-DwUT8pju.js} +2 -2
- package/platform-ui/dist/index.html +1 -1
- package/dist/add-P76GEMGF.js +0 -8
- package/dist/agent-X6I2YWOB.js +0 -33
- package/dist/chunk-JQKKVAAN.js +0 -2
- package/dist/chunk-NQ47TA6C.js +0 -111
- package/dist/chunk-ODVKPZZ4.js +0 -2
- package/dist/chunk-Q2J542ST.js +0 -2
- package/dist/chunk-RBLK34IA.js +0 -11
- package/dist/chunk-RN4VE6P3.js +0 -521
- package/dist/chunk-WS2N27RX.js +0 -3
- package/dist/config-schema-GUQY2QN7.js +0 -2
- package/dist/decision-loader-2XPZE4EZ.js +0 -2
- package/dist/doctor-WMVULMQD.js +0 -2
- package/dist/list-5IUGP3ZB.js +0 -7
- package/dist/lore-loader-RVQI5GXL.js +0 -2
- package/dist/lore-loader-XY5MZRR2.js +0 -2
- package/dist/migrate-assessments-GEI5WMI2.js +0 -4
- package/dist/portal-compliance-6YR27IQU.js +0 -2
- package/dist/quiz-FE5UGAY2.js +0 -10
- package/dist/registry-KOOKFUWD.js +0 -20
- package/dist/reindex-I6LPAKCC.js +0 -2
- package/dist/serve-OY6XYL7F.js +0 -12
- package/dist/server-2MNROHF6.js +0 -7
- package/dist/session-tracker-MWJAJA6Z.js +0 -2
- package/dist/shift-PC6C7NUX.js +0 -60
- package/dist/show-BOAVWZPZ.js +0 -7
- package/dist/status-A37ECYNJ.js +0 -6
- package/dist/sync-DLUBV5HQ.js +0 -2
- package/dist/tools-5ITPEPSV.js +0 -2
- package/dist/university-content/courses/.purpose +0 -492
- package/dist/university-content/courses/para-001.json +0 -166
- package/dist/university-content/courses/para-101.json +0 -615
- package/dist/university-content/courses/para-201.json +0 -794
- package/dist/university-content/courses/para-301.json +0 -830
- package/dist/university-content/courses/para-401.json +0 -868
- package/dist/university-content/courses/para-501.json +0 -1166
- package/dist/university-content/courses/para-601.json +0 -719
- package/dist/university-content/courses/para-701.json +0 -807
- package/dist/university-content/plsat/.purpose +0 -162
- package/dist/university-content/plsat/v2.0.json +0 -760
- package/dist/university-content/plsat/v3.0.json +0 -3453
- package/dist/validate-C6SMKGYD.js +0 -9
- package/platform-ui/dist/assets/LoreSection-oO5dCe6O.js +0 -1
- /package/dist/{chunk-BV5PRPLB.js → chunk-HXGYVS2N.js} +0 -0
- /package/templates/paradigm/specs/{scan.md → probe.md} +0 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
id: Q-para-401-provider-cascade
|
|
2
|
+
title: 'PARA 401: Orchestration — Provider Cascade'
|
|
3
|
+
description: 'Quiz for lesson: Provider Cascade'
|
|
4
|
+
author: paradigm
|
|
5
|
+
created: '2026-04-22'
|
|
6
|
+
updated: '2026-04-22'
|
|
7
|
+
tags:
|
|
8
|
+
- course
|
|
9
|
+
- para-401
|
|
10
|
+
symbols: []
|
|
11
|
+
difficulty: beginner
|
|
12
|
+
passThreshold: 0.7
|
|
13
|
+
category: paradigm-core
|
|
14
|
+
origin: imported
|
|
15
|
+
source: courses/para-401.json
|
|
16
|
+
questions:
|
|
17
|
+
- id: q1
|
|
18
|
+
question: You are running in a fresh terminal with only the Claude CLI installed. Which provider will the cascade select?
|
|
19
|
+
choices:
|
|
20
|
+
A: claude -- the Anthropic API
|
|
21
|
+
B: claude-code -- the Task tool
|
|
22
|
+
C: claude-cli -- spawning CLI processes
|
|
23
|
+
D: manual -- file-based handoffs
|
|
24
|
+
E: The cascade will fail with an error
|
|
25
|
+
correct: C
|
|
26
|
+
explanation: 'The cascade tries providers in order: claude (needs API key -- not available), claude-code-teams (not available), claude-code (needs Max subscription -- not in this scenario), cursor-cli (not in Cursor -- not available), claude-cli (CLI is installed -- available). It selects claude-cli.'
|
|
27
|
+
- id: q2
|
|
28
|
+
question: You set PARADIGM_AGENT_PROVIDER=cursor-cli but you are not running inside Cursor. What happens?
|
|
29
|
+
choices:
|
|
30
|
+
A: An error is thrown and orchestration fails
|
|
31
|
+
B: The cascade falls through to the next available provider
|
|
32
|
+
C: Cursor is automatically launched
|
|
33
|
+
D: The manual provider is always used as override
|
|
34
|
+
E: The setting is ignored entirely
|
|
35
|
+
correct: B
|
|
36
|
+
explanation: Setting a preferred provider changes the cascade starting point but does not disable it. If cursor-cli is not available (not in Cursor), the cascade continues to claude-cli, then manual. The fallback chain always works.
|
|
37
|
+
- id: q3
|
|
38
|
+
question: Which provider is always available regardless of environment?
|
|
39
|
+
choices:
|
|
40
|
+
A: claude (Anthropic API)
|
|
41
|
+
B: claude-code (Task tool)
|
|
42
|
+
C: cursor-cli
|
|
43
|
+
D: manual (file-based handoffs)
|
|
44
|
+
E: claude-code-teams
|
|
45
|
+
correct: D
|
|
46
|
+
explanation: The manual provider writes agent prompts to files for human or tool execution. It requires no API keys, subscriptions, or specific IDE -- just a filesystem. This universal fallback ensures orchestration works in every environment.
|
|
47
|
+
- id: q4
|
|
48
|
+
question: You just added a new ANTHROPIC_API_KEY to your environment. What command should you run to update Paradigm's awareness of available models?
|
|
49
|
+
choices:
|
|
50
|
+
A: paradigm scan
|
|
51
|
+
B: paradigm team providers --set claude
|
|
52
|
+
C: paradigm team models --refresh
|
|
53
|
+
D: paradigm doctor
|
|
54
|
+
E: paradigm sync
|
|
55
|
+
correct: C
|
|
56
|
+
explanation: paradigm team models --refresh re-discovers available models from all providers. After adding a new API key, this command detects the newly available models and updates the model assignments.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
id: Q-para-401-quick-check
|
|
2
|
+
title: 'PARA 401: Orchestration — Quick-Check: Ask Before You Build'
|
|
3
|
+
description: 'Quiz for lesson: Quick-Check: Ask Before You Build'
|
|
4
|
+
author: paradigm
|
|
5
|
+
created: '2026-04-22'
|
|
6
|
+
updated: '2026-04-22'
|
|
7
|
+
tags:
|
|
8
|
+
- course
|
|
9
|
+
- para-401
|
|
10
|
+
symbols: []
|
|
11
|
+
difficulty: beginner
|
|
12
|
+
passThreshold: 0.7
|
|
13
|
+
category: paradigm-core
|
|
14
|
+
origin: imported
|
|
15
|
+
source: courses/para-401.json
|
|
16
|
+
questions:
|
|
17
|
+
- id: q1
|
|
18
|
+
question: You need to rename a CSS class from .btn-primary to .btn-main across 2 files. Your project uses balanced enforcement with orchestration-required set to warn. What do you do?
|
|
19
|
+
choices:
|
|
20
|
+
A: Run full orchestration — any change should go through the full pipeline
|
|
21
|
+
B: Run quick-check — it is a scoped, low-risk change that will likely get GREENLIGHT
|
|
22
|
+
C: Skip orchestration entirely — CSS changes do not count as "complex tasks"
|
|
23
|
+
D: Ask the architect to plan the rename first
|
|
24
|
+
E: Disable orchestration-required for this one task
|
|
25
|
+
correct: B
|
|
26
|
+
explanation: A CSS class rename across 2 files is exactly the kind of scoped, low-risk change quick-check is designed for. It will likely GREENLIGHT. Skipping orchestration entirely would trigger the enforcement warning. Running full orchestration would waste tokens on a trivial change. Quick-check gives you the compliance checkmark at minimal cost.
|
|
27
|
+
- id: q2
|
|
28
|
+
question: Quick-check returns ESCALATE for your task "add user deletion endpoint." You are short on time and want to build it anyway. What are the consequences?
|
|
29
|
+
choices:
|
|
30
|
+
A: Nothing — ESCALATE is just a suggestion
|
|
31
|
+
B: The build will fail at compile time
|
|
32
|
+
C: The stop hook will flag that you bypassed an ESCALATE recommendation, and the verdict is recorded for traceability
|
|
33
|
+
D: Your code will be automatically reverted
|
|
34
|
+
E: The orchestrator will refuse to run any further tasks
|
|
35
|
+
correct: C
|
|
36
|
+
explanation: ESCALATE is a recorded recommendation, not a hard block (unless orchestration-required is set to block in strict enforcement). However, the stop hook flags the bypass, and the verdict is traceable in the session history. A user deletion endpoint likely needs security review and architectural planning — skipping that introduces real risk.
|
|
37
|
+
- id: q3
|
|
38
|
+
question: 'During quick-check, Jinx asks: "What if the email service is down when sending password reset?" and the reviewer notes "touches auth, new endpoint, email infra — estimated 4+ files." The verdict is ESCALATE. Which agents would full orchestration likely include?'
|
|
39
|
+
choices:
|
|
40
|
+
A: Only builder — the task is clearly defined
|
|
41
|
+
B: architect (4+ files), security (auth + password reset), builder, tester, compliance (symbols)
|
|
42
|
+
C: Only security — it is a security task
|
|
43
|
+
D: All 54 agents to be thorough
|
|
44
|
+
E: Jinx and reviewer again, but with more tokens
|
|
45
|
+
correct: B
|
|
46
|
+
explanation: 'Full orchestration composes the team from trigger patterns: 4+ files triggers architect for multi-file design, auth/password triggers security for review, implementation triggers builder, complexity triggers tester for testing, and compliance runs for symbol planning. This is the value of ESCALATE — it routes you to the right team composition.'
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
id: Q-para-451-foundations
|
|
2
|
+
title: 'PARA 451: Agents Foundations — Foundations Quiz'
|
|
3
|
+
description: >-
|
|
4
|
+
First quiz of PARA 451. Covers what an agent is, the three identity layers
|
|
5
|
+
(id / nickname / archetype), model tiers, the faceted vs sequential
|
|
6
|
+
orchestration modes, when to invoke the always-on backbone agents, and the
|
|
7
|
+
`paradigm shift` auto-rosterer. Six questions.
|
|
8
|
+
author: paradigm
|
|
9
|
+
created: '2026-04-26'
|
|
10
|
+
updated: '2026-04-26'
|
|
11
|
+
tags:
|
|
12
|
+
- course
|
|
13
|
+
- para-451
|
|
14
|
+
- agents
|
|
15
|
+
- foundations
|
|
16
|
+
- quiz
|
|
17
|
+
symbols: []
|
|
18
|
+
difficulty: beginner
|
|
19
|
+
passThreshold: 0.7
|
|
20
|
+
prerequisites:
|
|
21
|
+
- N-para-451-roster-management
|
|
22
|
+
category: paradigm-core
|
|
23
|
+
origin: authored
|
|
24
|
+
source: agents-course-phase-a-design.md
|
|
25
|
+
questions:
|
|
26
|
+
- id: q1
|
|
27
|
+
question: >-
|
|
28
|
+
You rename `forge` to "Lola" on your project, while leaving the agent's
|
|
29
|
+
machine-stable handle and role pattern untouched. Which of the three
|
|
30
|
+
identity layers did you change?
|
|
31
|
+
choices:
|
|
32
|
+
A: id
|
|
33
|
+
B: nickname
|
|
34
|
+
C: archetype
|
|
35
|
+
D: tier
|
|
36
|
+
E: All three — they always change together
|
|
37
|
+
correct: B
|
|
38
|
+
explanation: >-
|
|
39
|
+
The nickname is the user-customisable display layer. Renaming `forge` to
|
|
40
|
+
"Lola" changes only the nickname; the id (`forge`) stays stable so CLI,
|
|
41
|
+
MCP, and registry references keep resolving, and the archetype
|
|
42
|
+
(`intelligence-officer`) stays fixed because that is what the agent *is*,
|
|
43
|
+
not what it is *called*. Tier is an orthogonal axis (which model the
|
|
44
|
+
agent runs on) and is not part of the identity model.
|
|
45
|
+
- id: q2
|
|
46
|
+
question: >-
|
|
47
|
+
A teammate says "let's bump documentor up to opus on this project for
|
|
48
|
+
the next week." Which Paradigm concept are they actually changing?
|
|
49
|
+
choices:
|
|
50
|
+
A: The documentor's archetype
|
|
51
|
+
B: The documentor's notebook tier
|
|
52
|
+
C: The documentor's model tier (its default Claude model)
|
|
53
|
+
D: The documentor's roster status
|
|
54
|
+
E: The documentor's partners declaration
|
|
55
|
+
correct: C
|
|
56
|
+
explanation: >-
|
|
57
|
+
Model tier maps an agent to a default Claude model — tier-1 (opus),
|
|
58
|
+
tier-2 (sonnet), tier-3 (haiku). Bumping `documentor` from its tier-2
|
|
59
|
+
default up to opus is a model-tier override, configured per-project in
|
|
60
|
+
`.paradigm/config.yaml` under `model-resolution`. This is **not** the
|
|
61
|
+
v6.1 notebook-tier concept (scope/ownership of learned patterns), which
|
|
62
|
+
is a separate axis with the same unfortunate name — PARA 451 keeps the
|
|
63
|
+
two strictly separate.
|
|
64
|
+
- id: q3
|
|
65
|
+
question: >-
|
|
66
|
+
You are working in Cursor on a small task. You notice that when the
|
|
67
|
+
orchestrator switches from `architect` to `builder`, builder seems to
|
|
68
|
+
"remember" things architect just discussed. In Claude Code with the
|
|
69
|
+
default settings, this would not happen. What is the difference?
|
|
70
|
+
choices:
|
|
71
|
+
A: Cursor uses faceted mode and Claude Code uses sequential mode
|
|
72
|
+
B: >-
|
|
73
|
+
Cursor uses sequential mode (single shared context, agents take turns
|
|
74
|
+
in the same conversation), while Claude Code defaults to faceted mode
|
|
75
|
+
(each agent runs in an isolated Task subagent with its own memory)
|
|
76
|
+
C: Cursor disables agent profiles entirely
|
|
77
|
+
D: Claude Code shares notebooks across agents while Cursor does not
|
|
78
|
+
E: The two IDEs use entirely different agent rosters
|
|
79
|
+
correct: B
|
|
80
|
+
explanation: >-
|
|
81
|
+
Faceted mode (the Claude Code default) launches each agent as an
|
|
82
|
+
isolated Task subagent — separate context, separate memory, separate
|
|
83
|
+
tool access. Sequential mode (Cursor and other IDEs without Task tool
|
|
84
|
+
support) runs each agent as a persona switch in the same conversation,
|
|
85
|
+
so they share memory. Both modes use the same agent profiles and the
|
|
86
|
+
same identity layers; the difference is the runtime plumbing. The mode
|
|
87
|
+
is configured by `orchestration.default_mode` in `agents.yaml`.
|
|
88
|
+
- id: q4
|
|
89
|
+
question: >-
|
|
90
|
+
You are about to start a feature that will touch eight files across
|
|
91
|
+
three packages and you do not yet have a written plan. Which agent
|
|
92
|
+
should pick this up first?
|
|
93
|
+
choices:
|
|
94
|
+
A: builder — start implementing and figure it out as you go
|
|
95
|
+
B: reviewer — review what you already have before planning
|
|
96
|
+
C: architect — design the multi-file change and produce a spec
|
|
97
|
+
D: tester — write tests first and let the design fall out
|
|
98
|
+
E: documentor — update `.purpose` files first
|
|
99
|
+
correct: C
|
|
100
|
+
explanation: >-
|
|
101
|
+
`architect` is the design agent — system design, specs, multi-file
|
|
102
|
+
planning. Anything that spans three or more files in a non-trivial way
|
|
103
|
+
is architect's territory. `builder` follows the spec architect produces;
|
|
104
|
+
invoking builder first on an unscoped change is exactly the trap
|
|
105
|
+
architect exists to prevent. `reviewer` runs after implementation, not
|
|
106
|
+
before. `documentor` runs as the final orchestration stage on
|
|
107
|
+
`.purpose` files and `portal.yaml`, not as the entry point for
|
|
108
|
+
multi-file design work.
|
|
109
|
+
- id: q5
|
|
110
|
+
question: >-
|
|
111
|
+
`builder` has just finished implementing a feature and the diff is in
|
|
112
|
+
front of you. The change touches the README. Which agents should run
|
|
113
|
+
next, and in what order?
|
|
114
|
+
choices:
|
|
115
|
+
A: documentor first, then reviewer
|
|
116
|
+
B: reviewer first, then documentor (the final orchestration stage)
|
|
117
|
+
C: ftux first, then reviewer, then documentor
|
|
118
|
+
D: reviewer first, then ftux (because the README is a user-visible
|
|
119
|
+
surface), then documentor as the final stage
|
|
120
|
+
E: Only documentor — reviewer is unnecessary on small features
|
|
121
|
+
correct: D
|
|
122
|
+
explanation: >-
|
|
123
|
+
The canonical post-implementation sequence: `reviewer` does the
|
|
124
|
+
two-stage review (spec compliance, then code quality) and hands back
|
|
125
|
+
without fixing. `ftux` (Nora) runs after Builder when the task touches
|
|
126
|
+
a user-visible surface — README qualifies, and ftux reads ONLY
|
|
127
|
+
user-facing surfaces to simulate first-time-user friction. `documentor`
|
|
128
|
+
is **always the final orchestration stage** — it updates `.purpose`
|
|
129
|
+
files, `portal.yaml`, and lore, never source. Reviewer-only or
|
|
130
|
+
documentor-only sequences skip the friction signal that Nora exists to
|
|
131
|
+
capture.
|
|
132
|
+
- id: q6
|
|
133
|
+
question: >-
|
|
134
|
+
You have just cloned a fresh Swift project and the repo has no
|
|
135
|
+
`.paradigm/roster.yaml` yet. Which command bootstraps an initial roster
|
|
136
|
+
that includes both the always-on backbone *and* the matching ecosystem
|
|
137
|
+
agent?
|
|
138
|
+
choices:
|
|
139
|
+
A: paradigm agent list
|
|
140
|
+
B: paradigm agent activate swift
|
|
141
|
+
C: paradigm shift
|
|
142
|
+
D: paradigm agent get architect
|
|
143
|
+
E: paradigm agent bench --all
|
|
144
|
+
correct: C
|
|
145
|
+
explanation: >-
|
|
146
|
+
`paradigm shift` is the auto-rosterer. It detects the project's
|
|
147
|
+
language and platform (Swift in this case), selects the always-on
|
|
148
|
+
backbone (architect, builder, reviewer, security, tester, documentor,
|
|
149
|
+
cid), and adds matching ecosystem agents (`swift` for a Swift project).
|
|
150
|
+
`paradigm agent list` only displays the current roster; `paradigm agent
|
|
151
|
+
activate swift` would only add the ecosystem agent and would not seed
|
|
152
|
+
the backbone; the other options do unrelated things. `paradigm shift`
|
|
153
|
+
is the single command that gets a fresh project from "no roster" to "a
|
|
154
|
+
sensible default roster".
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
id: Q-para-451-when-to-invoke
|
|
2
|
+
title: 'PARA 451: Agents Foundations — When to Invoke Quiz'
|
|
3
|
+
description: >-
|
|
4
|
+
Highest-leverage routing quiz of PARA 451. Five scenario questions covering
|
|
5
|
+
builder-vs-documentor differentiation, reviewer activation timing, scholar
|
|
6
|
+
deep-dive triggering, ftux first-time UX simulation, and designer for visual
|
|
7
|
+
work. Tests the decision-tree material from N-para-451-agent-routing.
|
|
8
|
+
Architect-routing scenario is intentionally omitted (already covered in
|
|
9
|
+
Q-para-451-foundations q4).
|
|
10
|
+
type: quiz
|
|
11
|
+
author: paradigm
|
|
12
|
+
created: '2026-04-26'
|
|
13
|
+
updated: '2026-04-26'
|
|
14
|
+
tags:
|
|
15
|
+
- course
|
|
16
|
+
- para-451
|
|
17
|
+
- agents
|
|
18
|
+
- routing
|
|
19
|
+
- when-to-invoke
|
|
20
|
+
- quiz
|
|
21
|
+
symbols: []
|
|
22
|
+
difficulty: beginner
|
|
23
|
+
passThreshold: 0.7
|
|
24
|
+
prerequisites:
|
|
25
|
+
- N-para-451-agent-routing
|
|
26
|
+
category: paradigm-core
|
|
27
|
+
origin: authored
|
|
28
|
+
source: agents-course-phase-a-design.md
|
|
29
|
+
questions:
|
|
30
|
+
- id: q1
|
|
31
|
+
question: >-
|
|
32
|
+
Builder has just shipped a feature. The diff modifies source files and
|
|
33
|
+
adds three new exported functions, but does not touch any `.purpose`
|
|
34
|
+
files, `portal.yaml`, or lore. Two agents are clearly relevant: one to
|
|
35
|
+
verify the implementation, and one to keep framework metadata in sync.
|
|
36
|
+
Which agent owns which job, and in what order do they run?
|
|
37
|
+
choices:
|
|
38
|
+
A: documentor reviews the code, then builder updates .purpose files
|
|
39
|
+
B: >-
|
|
40
|
+
reviewer reviews the code (spec compliance, then code quality), then
|
|
41
|
+
documentor updates `.purpose` files, `portal.yaml`, and lore as the
|
|
42
|
+
final orchestration stage. documentor never touches source.
|
|
43
|
+
C: >-
|
|
44
|
+
documentor reviews the code AND updates .purpose files in one pass —
|
|
45
|
+
reviewer is unnecessary for small changes
|
|
46
|
+
D: >-
|
|
47
|
+
reviewer reviews the code AND updates .purpose files in one pass —
|
|
48
|
+
documentor is for user-facing docs only
|
|
49
|
+
E: >-
|
|
50
|
+
builder updates `.purpose` files itself; neither reviewer nor
|
|
51
|
+
documentor needs to run
|
|
52
|
+
correct: B
|
|
53
|
+
explanation: >-
|
|
54
|
+
reviewer and documentor own non-overlapping jobs. reviewer runs the
|
|
55
|
+
two-stage review (spec compliance, then code quality) and hands back
|
|
56
|
+
without fixing — its job is verifying the code. documentor is **always
|
|
57
|
+
the final orchestration stage** and updates `.purpose` files,
|
|
58
|
+
`portal.yaml`, and lore — never source. The two agents differentiate
|
|
59
|
+
cleanly: reviewer touches code (read-only), documentor touches
|
|
60
|
+
framework metadata (write). Conflating them is the most common routing
|
|
61
|
+
mistake; that is why this quiz tests the difference explicitly.
|
|
62
|
+
- id: q2
|
|
63
|
+
question: >-
|
|
64
|
+
You are halfway through implementing a feature in builder when you
|
|
65
|
+
realise the spec is ambiguous about an edge case. What is the right
|
|
66
|
+
escalation move?
|
|
67
|
+
choices:
|
|
68
|
+
A: >-
|
|
69
|
+
Push through with a best-guess interpretation; reviewer will catch it
|
|
70
|
+
later
|
|
71
|
+
B: Bench builder and switch to architect to redesign the whole feature
|
|
72
|
+
C: >-
|
|
73
|
+
Have builder push back on the ambiguity (this is one of builder's
|
|
74
|
+
documented behaviours) and route the clarifying question to architect
|
|
75
|
+
— the agent that produced the spec — before continuing
|
|
76
|
+
D: >-
|
|
77
|
+
Ask documentor to clarify the spec, since documentor owns
|
|
78
|
+
framework-text consistency
|
|
79
|
+
E: Invoke jinx (advocate) to pick the safer interpretation
|
|
80
|
+
correct: C
|
|
81
|
+
explanation: >-
|
|
82
|
+
builder's profile explicitly says "follows specs exactly. Pushes back
|
|
83
|
+
when unclear." Pushing back on ambiguity is the documented behaviour,
|
|
84
|
+
not a failure mode. The clarifying question routes to architect because
|
|
85
|
+
architect owns the spec — that is exactly what architect was invoked
|
|
86
|
+
for. reviewer runs after implementation, not as a clarification surface
|
|
87
|
+
mid-implementation. documentor never touches spec content. jinx is for
|
|
88
|
+
stress-testing assumptions before high-risk decisions, not for
|
|
89
|
+
arbitrating ambiguous spec text.
|
|
90
|
+
- id: q3
|
|
91
|
+
question: >-
|
|
92
|
+
You are about to add a new technical research entry to the project's
|
|
93
|
+
learning materials — citations, file references, careful sourcing — and
|
|
94
|
+
then shape it into a sequenced quiz. Which agent (or pair) picks this
|
|
95
|
+
up?
|
|
96
|
+
choices:
|
|
97
|
+
A: educator alone — pedagogical sequencing covers all of it
|
|
98
|
+
B: scholar alone — research includes the shaping step
|
|
99
|
+
C: researcher alone — all research is researcher's job
|
|
100
|
+
D: >-
|
|
101
|
+
scholar and educator as a reciprocal pair — scholar produces the
|
|
102
|
+
source material with citation discipline; educator shapes it
|
|
103
|
+
pedagogically into the quiz. This is the canonical use of the
|
|
104
|
+
partners primitive.
|
|
105
|
+
E: documentor — University content is framework-text, so documentor owns it
|
|
106
|
+
correct: D
|
|
107
|
+
explanation: >-
|
|
108
|
+
scholar and educator (Sheila) are the canonical partners pair in
|
|
109
|
+
Paradigm. scholar produces source material with citation discipline;
|
|
110
|
+
educator shapes it into pedagogical form (sequenced quizzes, paths,
|
|
111
|
+
PLSAT modules). Routing to one alone leaves half the work undone.
|
|
112
|
+
researcher is the **business / market** research agent, not technical
|
|
113
|
+
research — different archetype entirely. documentor handles framework
|
|
114
|
+
metadata (`.purpose`, `portal.yaml`, lore), not University content.
|
|
115
|
+
This routing is the same partnership that authored PARA 451 itself.
|
|
116
|
+
- id: q4
|
|
117
|
+
question: >-
|
|
118
|
+
Builder has just shipped a CLI command improvement. The change updates
|
|
119
|
+
the `--help` output, the printed error messages, and the README's
|
|
120
|
+
install section. After reviewer signs off but before documentor runs,
|
|
121
|
+
which additional agent should be in the pipeline, and what is the rule
|
|
122
|
+
for when to include it?
|
|
123
|
+
choices:
|
|
124
|
+
A: >-
|
|
125
|
+
scholar — to research how other CLIs handle the same command shape
|
|
126
|
+
B: >-
|
|
127
|
+
ftux — Nora simulates a first-time user and reads ONLY user-facing
|
|
128
|
+
surfaces (README, --help, docs, error messages). Include ftux after
|
|
129
|
+
builder when the task touches a user-visible surface; skip when the
|
|
130
|
+
change is purely internal.
|
|
131
|
+
C: >-
|
|
132
|
+
designer — Mika reviews any text change for visual hierarchy
|
|
133
|
+
D: >-
|
|
134
|
+
ftux always runs after every builder pass, regardless of whether the
|
|
135
|
+
change is user-facing
|
|
136
|
+
E: >-
|
|
137
|
+
jinx — to stress-test the new error messages for failure modes
|
|
138
|
+
correct: B
|
|
139
|
+
explanation: >-
|
|
140
|
+
ftux (Nora) is the framework's first-time-user-experience guard. Its
|
|
141
|
+
simulation integrity rule is strict — it reads ONLY user-facing surfaces
|
|
142
|
+
(README, --help, docs, changelogs, error strings). It never reads
|
|
143
|
+
source code; confusion observed in user-facing surfaces **is** data.
|
|
144
|
+
The trigger condition is "the task touches a user-visible surface" —
|
|
145
|
+
a CLI `--help` change, a README update, or new error messages all
|
|
146
|
+
qualify. Internal-only refactors do not. ftux running after every
|
|
147
|
+
builder pass would be wasted invocation; ftux skipping a CLI surface
|
|
148
|
+
change would miss the friction it exists to catch.
|
|
149
|
+
- id: q5
|
|
150
|
+
question: >-
|
|
151
|
+
You are about to redesign the visual layout of a settings panel — UI
|
|
152
|
+
hierarchy, spacing, motion, accessibility. Which agent owns this work,
|
|
153
|
+
and what is the relationship to builder?
|
|
154
|
+
choices:
|
|
155
|
+
A: >-
|
|
156
|
+
builder owns it — visual work is just code, and builder writes the
|
|
157
|
+
code
|
|
158
|
+
B: >-
|
|
159
|
+
designer (Mika) owns the visual surface; builder owns the wiring.
|
|
160
|
+
Invoke designer for the visual decisions, builder for the
|
|
161
|
+
implementation, often in parallel for visual / UI / design-system
|
|
162
|
+
work.
|
|
163
|
+
C: >-
|
|
164
|
+
forge owns it — visual changes are agent work
|
|
165
|
+
D: >-
|
|
166
|
+
documentor owns it, since visual changes are user-facing
|
|
167
|
+
E: >-
|
|
168
|
+
Only mika can ever touch UI code; builder must be benched on UI
|
|
169
|
+
projects entirely
|
|
170
|
+
correct: B
|
|
171
|
+
explanation: >-
|
|
172
|
+
designer (Mika) is the design engineer — UI/UX, design systems, motion,
|
|
173
|
+
accessibility. designer owns the **surface** (the visual decisions, the
|
|
174
|
+
hierarchy, the spacing, the motion); builder owns the **wiring** (the
|
|
175
|
+
implementation that makes the surface real). On UI work the two run
|
|
176
|
+
together — often in parallel — with designer producing the surface
|
|
177
|
+
decisions and builder shipping the implementation. forge is the
|
|
178
|
+
intelligence-officer archetype (Loid) and has nothing to do with
|
|
179
|
+
visual work. documentor only touches framework metadata. Benching
|
|
180
|
+
builder on UI projects entirely would be incorrect — builder is
|
|
181
|
+
always part of the implementation pipeline; designer is the
|
|
182
|
+
*additional* agent that owns the visual decisions builder implements.
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
id: Q-para-501-advanced-workflows
|
|
2
|
+
title: 'PARA 501: Advanced Systems — The Complete Workflow'
|
|
3
|
+
description: 'Quiz for lesson: The Complete Workflow'
|
|
4
|
+
author: paradigm
|
|
5
|
+
created: '2026-04-22'
|
|
6
|
+
updated: '2026-04-22'
|
|
7
|
+
tags:
|
|
8
|
+
- course
|
|
9
|
+
- para-501
|
|
10
|
+
symbols: []
|
|
11
|
+
difficulty: beginner
|
|
12
|
+
passThreshold: 0.7
|
|
13
|
+
category: paradigm-core
|
|
14
|
+
origin: imported
|
|
15
|
+
source: courses/para-501.json
|
|
16
|
+
questions:
|
|
17
|
+
- id: q1
|
|
18
|
+
question: In the complete workflow, why does `paradigm_habits_check(preflight)` run BEFORE `paradigm_ripple` and `paradigm_wisdom_context`?
|
|
19
|
+
choices:
|
|
20
|
+
A: To block the session if discovery habits were violated in the previous session
|
|
21
|
+
B: To verify that the agent intends to call discovery tools — the habit check reminds and tracks, while the actual tools provide the context
|
|
22
|
+
C: Because habits must always run first regardless of workflow position
|
|
23
|
+
D: To generate the list of symbols that ripple and wisdom should check
|
|
24
|
+
E: The order does not matter — they can run in any sequence
|
|
25
|
+
correct: B
|
|
26
|
+
explanation: The preflight habits check evaluates whether discovery habits (ripple, navigate, wisdom) are being followed. It runs early to remind and track compliance. The actual MCP tools (ripple, wisdom_context) run after to provide the substantive context. The habit check is about behavioral discipline; the tools are about information gathering.
|
|
27
|
+
- id: q2
|
|
28
|
+
question: An agent implements a feature, updates .purpose files, but forgets to record lore before committing. The session modified 5 source files. What sequence of events occurs?
|
|
29
|
+
choices:
|
|
30
|
+
A: Pre-commit hook blocks the commit until lore is recorded
|
|
31
|
+
B: Stop hook blocks, citing missing lore entry → agent records lore → re-attempts commit → stop hook passes
|
|
32
|
+
C: Commit succeeds but the next session receives a warning about missing lore
|
|
33
|
+
D: The post-write hook retroactively creates a lore entry from tracked files
|
|
34
|
+
E: The commit succeeds — lore is enforced by habits, not hooks
|
|
35
|
+
correct: B
|
|
36
|
+
explanation: The stop hook checks for lore entries when 3+ source files were modified. With 5 files and no lore entry, it blocks. The agent must then call `paradigm_lore_record` with the session summary, and re-attempt the commit. The pre-commit hook only rebuilds the index — it doesn't check compliance. Lore enforcement lives in the stop hook.
|
|
37
|
+
- id: q3
|
|
38
|
+
question: How does Sentinel benefit from the Habits system?
|
|
39
|
+
choices:
|
|
40
|
+
A: Sentinel directly calls habit checks during incident recording
|
|
41
|
+
B: Practice profiles show correlations between skipped habits and incident rates, providing evidence for severity upgrades
|
|
42
|
+
C: Habits automatically resolve Sentinel incidents when compliance is high
|
|
43
|
+
D: Sentinel and Habits are independent systems with no interaction
|
|
44
|
+
E: Habits disable Sentinel checks when compliance is above 90%
|
|
45
|
+
correct: B
|
|
46
|
+
explanation: The feedback loop between Habits and Sentinel works through practice profiles. When an agent frequently skips `ripple-before-modify` and the symbols it touches have higher incident rates, the practice profile surfaces this correlation. This provides data-driven evidence to upgrade the habit's severity from advisory to warn or block — closing the loop between behavior and outcomes.
|
|
47
|
+
- id: q4
|
|
48
|
+
question: What is the relationship between Lore entries and Session checkpoints?
|
|
49
|
+
choices:
|
|
50
|
+
A: They are the same thing — checkpoints are stored as lore entries
|
|
51
|
+
B: Checkpoints are ephemeral (7-day expiry) for crash recovery; lore entries are permanent for institutional memory
|
|
52
|
+
C: Lore entries are auto-generated from checkpoints at session end
|
|
53
|
+
D: Checkpoints replace lore entries in Paradigm v2
|
|
54
|
+
E: Lore entries expire after 30 days; checkpoints are permanent
|
|
55
|
+
correct: B
|
|
56
|
+
explanation: 'Checkpoints and lore serve different purposes with different lifespans. Checkpoints are ephemeral snapshots for crash recovery — they expire after 7 days because their value is immediate continuity. Lore entries are permanent project history — they capture decisions, learnings, and context that remain valuable months or years later. You need both: checkpoints for resilience, lore for memory.'
|
|
57
|
+
- id: q5
|
|
58
|
+
question: A team's practice profile shows high compliance across all categories, yet incidents keep occurring in `#payment-service`. What system should they investigate?
|
|
59
|
+
choices:
|
|
60
|
+
A: Habits — add more habits targeting the payment service
|
|
61
|
+
B: Hooks — the stop hook might not be running for payment-related changes
|
|
62
|
+
C: Sentinel — check `paradigm_sentinel_patterns` and `paradigm_sentinel_stats` for the symbol to identify recurring failure patterns and resolution gaps
|
|
63
|
+
D: Lore — the payment service lore entries might be inaccurate
|
|
64
|
+
E: Session Intelligence — breadcrumbs might be losing payment context
|
|
65
|
+
correct: C
|
|
66
|
+
explanation: High habit compliance means the behavioral discipline is fine — agents are doing the right things. If incidents persist despite good practices, the issue is likely in the code or architecture, not the process. Sentinel's pattern analysis (`paradigm_sentinel_patterns`) can reveal if the same failure keeps recurring despite resolutions, and `paradigm_sentinel_stats` can show the symbol's incident rate and resolution effectiveness. The answer lives in the incident data, not the compliance data.
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
id: Q-para-501-aspect-graph-advanced
|
|
2
|
+
title: 'PARA 501: Advanced Systems — The Aspect Graph at Scale'
|
|
3
|
+
description: 'Quiz for lesson: The Aspect Graph at Scale'
|
|
4
|
+
author: paradigm
|
|
5
|
+
created: '2026-04-22'
|
|
6
|
+
updated: '2026-04-22'
|
|
7
|
+
tags:
|
|
8
|
+
- course
|
|
9
|
+
- para-501
|
|
10
|
+
symbols: []
|
|
11
|
+
difficulty: beginner
|
|
12
|
+
passThreshold: 0.7
|
|
13
|
+
category: paradigm-core
|
|
14
|
+
origin: imported
|
|
15
|
+
source: courses/para-501.json
|
|
16
|
+
questions:
|
|
17
|
+
- id: q1
|
|
18
|
+
question: How many built-in detectors does paradigm_aspect_suggest_scan use, and which of these is NOT one of them?
|
|
19
|
+
choices:
|
|
20
|
+
A: 8 built-in detectors; 'database schema' is not one of them
|
|
21
|
+
B: 6 built-in detectors; 'magic numbers' is not one of them
|
|
22
|
+
C: 8 built-in detectors; 'rate limits' IS one of them (trick question)
|
|
23
|
+
D: 10 built-in detectors; 'feature flags' is not one of them
|
|
24
|
+
E: 5 built-in detectors; 'environment checks' is not one of them
|
|
25
|
+
correct: A
|
|
26
|
+
explanation: 'paradigm_aspect_suggest_scan uses 8 built-in detectors: magic numbers, hardcoded strings, rate limits, time values, environment checks, feature flags, regex patterns, and assertion guards. ''Database schema'' is not among them. Custom detectors can be added via .paradigm/aspect-detectors.yaml to extend the detection system.'
|
|
27
|
+
- id: q2
|
|
28
|
+
question: 'You want to find all rules that enforce constraints on #payment-service through the aspect graph. Which query approach is most effective?'
|
|
29
|
+
choices:
|
|
30
|
+
A: 'paradigm_aspect_search({ query: ''payment rules'' }) to find them by text'
|
|
31
|
+
B: 'paradigm_aspect_graph({ symbol: ''#payment-service'', hops: 1 }) filtered by ''enforced-by'' edge relation'
|
|
32
|
+
C: 'paradigm_aspect_heatmap({ limit: 100 }) and manually scan for payment-related aspects'
|
|
33
|
+
D: 'paradigm_aspect_drift({ aspectId: ''#payment-service'' }) to find stale rules'
|
|
34
|
+
E: 'paradigm_ripple({ symbol: ''#payment-service'' }) without any graph filtering'
|
|
35
|
+
correct: B
|
|
36
|
+
explanation: An edge-filtered graph query at 1 hop with the 'enforced-by' relation is the most direct approach. It returns exactly the aspects that enforce rules on the target component. Search (A) finds by text, not by graph relationship. Heatmap (C) ranks by usage, not by target. Drift (D) checks anchor freshness, not relationships.
|
|
37
|
+
- id: q3
|
|
38
|
+
question: Your CI pipeline should fail when aspect anchors have drifted. Which command configuration achieves this?
|
|
39
|
+
choices:
|
|
40
|
+
A: paradigm doctor with no flags — drift is always a blocking error
|
|
41
|
+
B: paradigm doctor --strict — treats drifted anchors as errors that cause a non-zero exit code
|
|
42
|
+
C: paradigm scan --fix — automatically fixes drifted anchors
|
|
43
|
+
D: paradigm_aspect_drift with no arguments — checks all aspects and exits non-zero on drift
|
|
44
|
+
E: paradigm lint --strict — lint checks include drift detection
|
|
45
|
+
correct: B
|
|
46
|
+
explanation: paradigm doctor --strict treats warnings (including drifted anchors) as errors, producing a non-zero exit code that fails the CI step. Without --strict, drifted anchors are warnings that do not block. paradigm scan rebuilds the index but does not check drift. paradigm lint checks .purpose file structure, not anchor content hashes.
|
|
47
|
+
- id: q4
|
|
48
|
+
question: A new project's aspect search always falls to Tier 3 (fuzzy matching). How do you warm the learning system so common queries use Tier 1?
|
|
49
|
+
choices:
|
|
50
|
+
A: Manually edit the search_weights SQLite table to insert mappings
|
|
51
|
+
B: Run paradigm_reindex with a --warm-search flag
|
|
52
|
+
C: Run common queries with paradigm_aspect_search, then confirm the best results with paradigm_aspect_confirm for each query
|
|
53
|
+
D: Wait for 100+ searches to accumulate — Tier 1 learns automatically without confirmation
|
|
54
|
+
E: Set limits.searchLearningRate to a higher value in config.yaml
|
|
55
|
+
correct: C
|
|
56
|
+
explanation: The learning system requires explicit confirmation via paradigm_aspect_confirm. When you search for a term and confirm the best result, the confirmed aspect gets +1.0 weight for that query. After 3-5 confirmations, the weight exceeds the Tier 1 threshold and future queries return instantly. There is no automatic learning without confirmation — the system relies on user feedback to improve.
|
|
57
|
+
- id: q5
|
|
58
|
+
question: During a quarterly governance review, the heatmap shows that 30 aspects out of 120 have zero access across all types (search, ripple, navigate, direct). What does this indicate and what should you do?
|
|
59
|
+
choices:
|
|
60
|
+
A: These aspects are well-documented and need no changes — zero access means no issues
|
|
61
|
+
B: Delete all 30 immediately — unused aspects are always stale
|
|
62
|
+
C: These aspects may be stale, poorly named, or irrelevant — evaluate each for removal, renaming, or consolidation as part of the governance review
|
|
63
|
+
D: Increase their severity to 'critical' to force agents to access them
|
|
64
|
+
E: Move them to a separate 'archive' section in the .purpose files
|
|
65
|
+
correct: C
|
|
66
|
+
explanation: Zero-access aspects are candidates for review, not automatic deletion. Some may be legitimate but poorly named (rename to improve discoverability). Some may be truly stale with drifted anchors (remove or update). Some may have been superseded by newer aspects (consolidate with supersedes edges). The governance review evaluates each case individually.
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
id: Q-para-501-aspect-graph-internals
|
|
2
|
+
title: 'PARA 501: Advanced Systems — Aspect Graph Internals'
|
|
3
|
+
description: 'Quiz for lesson: Aspect Graph Internals'
|
|
4
|
+
author: paradigm
|
|
5
|
+
created: '2026-04-22'
|
|
6
|
+
updated: '2026-04-22'
|
|
7
|
+
tags:
|
|
8
|
+
- course
|
|
9
|
+
- para-501
|
|
10
|
+
symbols: []
|
|
11
|
+
difficulty: beginner
|
|
12
|
+
passThreshold: 0.7
|
|
13
|
+
category: paradigm-core
|
|
14
|
+
origin: imported
|
|
15
|
+
source: courses/para-501.json
|
|
16
|
+
questions:
|
|
17
|
+
- id: q1
|
|
18
|
+
question: What is the default maxDepth for recursive ripple in the aspect graph?
|
|
19
|
+
choices:
|
|
20
|
+
A: 3 — to keep traversals fast and focused
|
|
21
|
+
B: 5 — balancing depth of discovery with performance
|
|
22
|
+
C: 10 — the maximum allowed value
|
|
23
|
+
D: Unlimited — ripple traverses until minWeight is reached
|
|
24
|
+
E: 1 — only direct connections are followed by default
|
|
25
|
+
correct: B
|
|
26
|
+
explanation: The default maxDepth for recursive ripple is 5, with a maximum configurable value of 10. This default balances discovery depth with performance — at 5 hops, you see a meaningful neighborhood without traversing the entire graph. The minWeight threshold (default 0.1) provides additional pruning by cutting off low-confidence paths before they reach maxDepth.
|
|
27
|
+
- id: q2
|
|
28
|
+
question: What happens to search weights when a result is confirmed via paradigm_aspect_confirm?
|
|
29
|
+
choices:
|
|
30
|
+
A: The confirmed result gets +0.5 weight and all others are deleted
|
|
31
|
+
B: The confirmed result gets +1.0 weight and all other results for the same query decay by *0.95
|
|
32
|
+
C: All results for the query get +1.0 weight to reinforce the entire set
|
|
33
|
+
D: The confirmed result is permanently pinned and decay is disabled
|
|
34
|
+
E: The confirmed result replaces all other entries for that query
|
|
35
|
+
correct: B
|
|
36
|
+
explanation: The search learning system adds +1.0 to the confirmed result's weight for that query and multiplies all other existing results for the same query by 0.95 (a 5% decay). This self-correcting mechanism lets the best result rise to the top over time while alternatives gradually fade. The decay only applies to aspects that have existing search_weights entries for the query — it does not penalize unrelated aspects.
|
|
37
|
+
- id: q3
|
|
38
|
+
question: Which SQLite table stores aspect access frequency for the heatmap tool?
|
|
39
|
+
choices:
|
|
40
|
+
A: aspects — in an access_count column
|
|
41
|
+
B: edges — access frequency is tracked per edge
|
|
42
|
+
C: search_weights — all access types feed into search weights
|
|
43
|
+
D: heatmap — with columns for aspect_id, access_type, count, and last_accessed
|
|
44
|
+
E: anchors — access is tracked per anchor location
|
|
45
|
+
correct: D
|
|
46
|
+
explanation: The `heatmap` table stores aspect access frequency with columns for `aspect_id`, `access_type` (search, ripple, navigate, direct), `count`, and `last_accessed`. This dedicated table allows the `paradigm_aspect_heatmap` tool to rank aspects by usage frequency and break down how each aspect is typically discovered — whether through search, ripple analysis, navigation, or direct access.
|
|
47
|
+
- id: q4
|
|
48
|
+
question: What is the queue limit for recursive ripple BFS traversal?
|
|
49
|
+
choices:
|
|
50
|
+
A: 100 nodes — to keep memory usage minimal
|
|
51
|
+
B: 500 nodes — a balance between coverage and performance
|
|
52
|
+
C: 1000 nodes — preventing runaway traversals in dense graphs
|
|
53
|
+
D: Unlimited — the queue grows until maxDepth is reached
|
|
54
|
+
E: 10000 nodes — large enough for enterprise-scale graphs
|
|
55
|
+
correct: C
|
|
56
|
+
explanation: The BFS queue limit is 1000 nodes. This prevents runaway traversals in densely connected aspect graphs where the number of reachable nodes could grow exponentially with depth. When the queue exceeds 1000 entries, the oldest entries are dropped, ensuring the algorithm completes in bounded time and memory regardless of graph density.
|
|
57
|
+
- id: q5
|
|
58
|
+
question: How are aspect edges inferred from existing data during materialization?
|
|
59
|
+
choices:
|
|
60
|
+
A: By analyzing import statements in source code files
|
|
61
|
+
B: From applies-to references with weight 0.5 and origin 'inferred', and from shared lore references with origin 'learned'
|
|
62
|
+
C: By running static analysis on anchor code blocks
|
|
63
|
+
D: From git commit history showing which aspects changed together
|
|
64
|
+
E: Only explicit edges are created — no inference occurs
|
|
65
|
+
correct: B
|
|
66
|
+
explanation: The materialization pipeline creates inferred edges in two ways. First, `materializeAspects` generates edges from `applies-to` references with weight 0.5 and origin 'inferred' — when an aspect applies to a component, a relationship edge is created. Second, `inferLoreEdges` scans for aspects sharing lore references and creates edges with origin 'learned' and weight proportional to the overlap. These supplement explicit YAML edges to build a richer graph.
|