@cstack-protocol/pingala 1.0.0

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 (328) hide show
  1. package/.agent/CSD.md +39 -0
  2. package/.agent/MANIFEST.md +4 -0
  3. package/.agent/MANIFEST.md.template +4 -0
  4. package/.agent/agent-contractor.md +45 -0
  5. package/.agent/architecture/consent-model-fsm.md +77 -0
  6. package/.agent/architecture/governor-maturity-fsm.md +101 -0
  7. package/.agent/architecture/governor-validation-fsm.md +106 -0
  8. package/.agent/architecture/humanized-audit-fsm.md +76 -0
  9. package/.agent/architecture/pingala-csi-fsm.md +81 -0
  10. package/.agent/architecture.md +34 -0
  11. package/.agent/behavior.md +29 -0
  12. package/.agent/compute.md +32 -0
  13. package/.agent/consent-prompts.md +41 -0
  14. package/.agent/governance.yaml +5 -0
  15. package/.agent/identity.md +29 -0
  16. package/.agent/knowledge-lattice.json +96 -0
  17. package/.agent/knowledge-lattice.md +53 -0
  18. package/.agent/lattice-viz.html +157 -0
  19. package/.agent/mission.md +37 -0
  20. package/.agent/pairing-protocol.md +89 -0
  21. package/.agent/pairing.csp +108 -0
  22. package/.agent/personas/reflective-operator.md +67 -0
  23. package/.agent/personas/research.md +62 -0
  24. package/.agent/pingala.md +47 -0
  25. package/.agent/roadmap.md +56 -0
  26. package/.agent/scripts/lattice-extract.py +100 -0
  27. package/.agent/scripts/sync-agents.sh +82 -0
  28. package/.agent/scripts/vault-ingest.py +80 -0
  29. package/.agent/seo-strategy.md +71 -0
  30. package/.agent/skills/agent-orchestrator/SKILL.md +22 -0
  31. package/.agent/skills/agent-orchestrator/scripts/sync-agents.sh +61 -0
  32. package/.agent/skills/knowledge-lattice/SKILL.md +23 -0
  33. package/.agent/skills/knowledge-lattice/scripts/lattice-extract.py +107 -0
  34. package/.agent/skills/resource-vault/SKILL.md +30 -0
  35. package/.agent/skills/resource-vault/scripts/vault-ingest.py +80 -0
  36. package/.agent/skills/sites-integrity/SKILL.md +28 -0
  37. package/.agent/skills/stack-auditor/SKILL.md +25 -0
  38. package/.agent/sources.md +20 -0
  39. package/.agent/stack-auditor.md +47 -0
  40. package/.agent/standards.md +36 -0
  41. package/.agent/strategy.md +65 -0
  42. package/.agent/vault-schema.md +53 -0
  43. package/.agent/voice.md +27 -0
  44. package/.agent/workflows/sync-agents.md +14 -0
  45. package/.env.example +5 -0
  46. package/.env.production +3 -0
  47. package/DISTRIBUTION-PLAN.md +33 -0
  48. package/HOSTED_SETUP.md +54 -0
  49. package/LANDING_PAGE_DESIGN.md +46 -0
  50. package/MANUAL_VERCEL_STEPS.md +39 -0
  51. package/PRODUCT-ROADMAP.md +241 -0
  52. package/PROVISIONING_GUIDE.md +39 -0
  53. package/README.md +38 -0
  54. package/ROADMAP.md +21 -0
  55. package/SYNC-ENGINE-SPEC.md +257 -0
  56. package/build/core/531-protocol.d.ts +26 -0
  57. package/build/core/531-protocol.js +87 -0
  58. package/build/core/531-protocol.js.map +1 -0
  59. package/build/core/531-rule.d.ts +26 -0
  60. package/build/core/531-rule.js +106 -0
  61. package/build/core/531-rule.js.map +1 -0
  62. package/build/core/auth.d.ts +1 -0
  63. package/build/core/auth.js +24 -0
  64. package/build/core/auth.js.map +1 -0
  65. package/build/core/consent-manager.d.ts +17 -0
  66. package/build/core/consent-manager.js +104 -0
  67. package/build/core/consent-manager.js.map +1 -0
  68. package/build/core/csp.d.ts +12 -0
  69. package/build/core/csp.js +20 -0
  70. package/build/core/csp.js.map +1 -0
  71. package/build/core/engagement-analyzer.d.ts +42 -0
  72. package/build/core/engagement-analyzer.js +71 -0
  73. package/build/core/engagement-analyzer.js.map +1 -0
  74. package/build/core/governor.d.ts +106 -0
  75. package/build/core/governor.js +405 -0
  76. package/build/core/governor.js.map +1 -0
  77. package/build/core/life-area-mapper.d.ts +39 -0
  78. package/build/core/life-area-mapper.js +73 -0
  79. package/build/core/life-area-mapper.js.map +1 -0
  80. package/build/core/methodology.d.ts +39 -0
  81. package/build/core/methodology.js +164 -0
  82. package/build/core/methodology.js.map +1 -0
  83. package/build/core/pingala.d.ts +31 -0
  84. package/build/core/pingala.js +56 -0
  85. package/build/core/pingala.js.map +1 -0
  86. package/build/core/sdk-adapter.d.ts +6 -0
  87. package/build/core/sdk-adapter.js +33 -0
  88. package/build/core/sdk-adapter.js.map +1 -0
  89. package/build/cs-agent-core/sdk/index.d.ts +6 -0
  90. package/build/cs-agent-core/sdk/index.js +18 -0
  91. package/build/cs-agent-core/sdk/index.js.map +1 -0
  92. package/build/cs-agent-core/sdk/patterns/index.d.ts +3 -0
  93. package/build/cs-agent-core/sdk/patterns/index.js +37 -0
  94. package/build/cs-agent-core/sdk/patterns/index.js.map +1 -0
  95. package/build/cs-agent-core/sdk/patterns/registry.d.ts +4 -0
  96. package/build/cs-agent-core/sdk/patterns/registry.js +80 -0
  97. package/build/cs-agent-core/sdk/patterns/registry.js.map +1 -0
  98. package/build/cs-agent-core/sdk/telemetry/buffer.d.ts +9 -0
  99. package/build/cs-agent-core/sdk/telemetry/buffer.js +47 -0
  100. package/build/cs-agent-core/sdk/telemetry/buffer.js.map +1 -0
  101. package/build/cs-agent-core/sdk/telemetry/scrubber.d.ts +3 -0
  102. package/build/cs-agent-core/sdk/telemetry/scrubber.js +13 -0
  103. package/build/cs-agent-core/sdk/telemetry/scrubber.js.map +1 -0
  104. package/build/cs-agent-core/sdk/telemetry/types.d.ts +50 -0
  105. package/build/cs-agent-core/sdk/telemetry/types.js +2 -0
  106. package/build/cs-agent-core/sdk/telemetry/types.js.map +1 -0
  107. package/build/cs-agent-core/sdk/types/decision.d.ts +18 -0
  108. package/build/cs-agent-core/sdk/types/decision.js +2 -0
  109. package/build/cs-agent-core/sdk/types/decision.js.map +1 -0
  110. package/build/cs-agent-core/sdk/types/index.d.ts +4 -0
  111. package/build/cs-agent-core/sdk/types/index.js +5 -0
  112. package/build/cs-agent-core/sdk/types/index.js.map +1 -0
  113. package/build/cs-agent-core/sdk/types/pattern.d.ts +17 -0
  114. package/build/cs-agent-core/sdk/types/pattern.js +2 -0
  115. package/build/cs-agent-core/sdk/types/pattern.js.map +1 -0
  116. package/build/cs-agent-core/sdk/types/stack.d.ts +8 -0
  117. package/build/cs-agent-core/sdk/types/stack.js +2 -0
  118. package/build/cs-agent-core/sdk/types/stack.js.map +1 -0
  119. package/build/cs-agent-core/sdk/types/tool.d.ts +9 -0
  120. package/build/cs-agent-core/sdk/types/tool.js +2 -0
  121. package/build/cs-agent-core/sdk/types/tool.js.map +1 -0
  122. package/build/cs-agent-core/sdk/validator/csi.d.ts +2 -0
  123. package/build/cs-agent-core/sdk/validator/csi.js +24 -0
  124. package/build/cs-agent-core/sdk/validator/csi.js.map +1 -0
  125. package/build/cs-agent-core/sdk/validator/index.d.ts +2 -0
  126. package/build/cs-agent-core/sdk/validator/index.js +3 -0
  127. package/build/cs-agent-core/sdk/validator/index.js.map +1 -0
  128. package/build/cs-agent-core/sdk/validator/rules/geometry.d.ts +11 -0
  129. package/build/cs-agent-core/sdk/validator/rules/geometry.js +22 -0
  130. package/build/cs-agent-core/sdk/validator/rules/geometry.js.map +1 -0
  131. package/build/cs-agent-core/sdk/validator/validate.d.ts +2 -0
  132. package/build/cs-agent-core/sdk/validator/validate.js +46 -0
  133. package/build/cs-agent-core/sdk/validator/validate.js.map +1 -0
  134. package/build/index.d.ts +2 -0
  135. package/build/index.js +444 -0
  136. package/build/index.js.map +1 -0
  137. package/build/pingala-mcp/src/core/531-rule.d.ts +26 -0
  138. package/build/pingala-mcp/src/core/531-rule.js +96 -0
  139. package/build/pingala-mcp/src/core/531-rule.js.map +1 -0
  140. package/build/pingala-mcp/src/core/auth.d.ts +1 -0
  141. package/build/pingala-mcp/src/core/auth.js +15 -0
  142. package/build/pingala-mcp/src/core/auth.js.map +1 -0
  143. package/build/pingala-mcp/src/core/consent-manager.d.ts +17 -0
  144. package/build/pingala-mcp/src/core/consent-manager.js +104 -0
  145. package/build/pingala-mcp/src/core/consent-manager.js.map +1 -0
  146. package/build/pingala-mcp/src/core/csp.d.ts +12 -0
  147. package/build/pingala-mcp/src/core/csp.js +20 -0
  148. package/build/pingala-mcp/src/core/csp.js.map +1 -0
  149. package/build/pingala-mcp/src/core/engagement-analyzer.d.ts +42 -0
  150. package/build/pingala-mcp/src/core/engagement-analyzer.js +71 -0
  151. package/build/pingala-mcp/src/core/engagement-analyzer.js.map +1 -0
  152. package/build/pingala-mcp/src/core/governor.d.ts +104 -0
  153. package/build/pingala-mcp/src/core/governor.js +359 -0
  154. package/build/pingala-mcp/src/core/governor.js.map +1 -0
  155. package/build/pingala-mcp/src/core/life-area-mapper.d.ts +39 -0
  156. package/build/pingala-mcp/src/core/life-area-mapper.js +73 -0
  157. package/build/pingala-mcp/src/core/life-area-mapper.js.map +1 -0
  158. package/build/pingala-mcp/src/core/methodology.d.ts +39 -0
  159. package/build/pingala-mcp/src/core/methodology.js +164 -0
  160. package/build/pingala-mcp/src/core/methodology.js.map +1 -0
  161. package/build/pingala-mcp/src/core/pingala.d.ts +25 -0
  162. package/build/pingala-mcp/src/core/pingala.js +56 -0
  163. package/build/pingala-mcp/src/core/pingala.js.map +1 -0
  164. package/build/pingala-mcp/src/core/sdk-adapter.d.ts +6 -0
  165. package/build/pingala-mcp/src/core/sdk-adapter.js +33 -0
  166. package/build/pingala-mcp/src/core/sdk-adapter.js.map +1 -0
  167. package/build/pingala-mcp/src/index.d.ts +1 -0
  168. package/build/pingala-mcp/src/index.js +221 -0
  169. package/build/pingala-mcp/src/index.js.map +1 -0
  170. package/build/pingala-mcp/src/test-l3.d.ts +1 -0
  171. package/build/pingala-mcp/src/test-l3.js +35 -0
  172. package/build/pingala-mcp/src/test-l3.js.map +1 -0
  173. package/build/pingala-mcp/src/tools/audit-workspace.d.ts +16 -0
  174. package/build/pingala-mcp/src/tools/audit-workspace.js +39 -0
  175. package/build/pingala-mcp/src/tools/audit-workspace.js.map +1 -0
  176. package/build/pingala-mcp/src/tools/calculate-csi.d.ts +24 -0
  177. package/build/pingala-mcp/src/tools/calculate-csi.js +29 -0
  178. package/build/pingala-mcp/src/tools/calculate-csi.js.map +1 -0
  179. package/build/pingala-mcp/src/tools/cs-audit.d.ts +54 -0
  180. package/build/pingala-mcp/src/tools/cs-audit.js +310 -0
  181. package/build/pingala-mcp/src/tools/cs-audit.js.map +1 -0
  182. package/build/pingala-mcp/src/tools/get-governance-context.d.ts +11 -0
  183. package/build/pingala-mcp/src/tools/get-governance-context.js +16 -0
  184. package/build/pingala-mcp/src/tools/get-governance-context.js.map +1 -0
  185. package/build/pingala-mcp/src/tools/validate-stack-change.d.ts +41 -0
  186. package/build/pingala-mcp/src/tools/validate-stack-change.js +35 -0
  187. package/build/pingala-mcp/src/tools/validate-stack-change.js.map +1 -0
  188. package/build/sdk/index.d.ts +6 -0
  189. package/build/sdk/index.js +18 -0
  190. package/build/sdk/index.js.map +1 -0
  191. package/build/sdk/patterns/index.d.ts +3 -0
  192. package/build/sdk/patterns/index.js +37 -0
  193. package/build/sdk/patterns/index.js.map +1 -0
  194. package/build/sdk/patterns/registry.d.ts +4 -0
  195. package/build/sdk/patterns/registry.js +80 -0
  196. package/build/sdk/patterns/registry.js.map +1 -0
  197. package/build/sdk/telemetry/buffer.d.ts +9 -0
  198. package/build/sdk/telemetry/buffer.js +47 -0
  199. package/build/sdk/telemetry/buffer.js.map +1 -0
  200. package/build/sdk/telemetry/scrubber.d.ts +3 -0
  201. package/build/sdk/telemetry/scrubber.js +13 -0
  202. package/build/sdk/telemetry/scrubber.js.map +1 -0
  203. package/build/sdk/telemetry/types.d.ts +50 -0
  204. package/build/sdk/telemetry/types.js +2 -0
  205. package/build/sdk/telemetry/types.js.map +1 -0
  206. package/build/sdk/types/decision.d.ts +18 -0
  207. package/build/sdk/types/decision.js +2 -0
  208. package/build/sdk/types/decision.js.map +1 -0
  209. package/build/sdk/types/index.d.ts +4 -0
  210. package/build/sdk/types/index.js +5 -0
  211. package/build/sdk/types/index.js.map +1 -0
  212. package/build/sdk/types/pattern.d.ts +17 -0
  213. package/build/sdk/types/pattern.js +2 -0
  214. package/build/sdk/types/pattern.js.map +1 -0
  215. package/build/sdk/types/stack.d.ts +8 -0
  216. package/build/sdk/types/stack.js +2 -0
  217. package/build/sdk/types/stack.js.map +1 -0
  218. package/build/sdk/types/tool.d.ts +9 -0
  219. package/build/sdk/types/tool.js +2 -0
  220. package/build/sdk/types/tool.js.map +1 -0
  221. package/build/sdk/validator/csi.d.ts +2 -0
  222. package/build/sdk/validator/csi.js +24 -0
  223. package/build/sdk/validator/csi.js.map +1 -0
  224. package/build/sdk/validator/index.d.ts +2 -0
  225. package/build/sdk/validator/index.js +3 -0
  226. package/build/sdk/validator/index.js.map +1 -0
  227. package/build/sdk/validator/rules/geometry.d.ts +11 -0
  228. package/build/sdk/validator/rules/geometry.js +22 -0
  229. package/build/sdk/validator/rules/geometry.js.map +1 -0
  230. package/build/sdk/validator/validate.d.ts +2 -0
  231. package/build/sdk/validator/validate.js +46 -0
  232. package/build/sdk/validator/validate.js.map +1 -0
  233. package/build/src/core/531-rule.d.ts +26 -0
  234. package/build/src/core/531-rule.js +96 -0
  235. package/build/src/core/531-rule.js.map +1 -0
  236. package/build/src/core/auth.d.ts +1 -0
  237. package/build/src/core/auth.js +15 -0
  238. package/build/src/core/auth.js.map +1 -0
  239. package/build/src/core/consent-manager.d.ts +17 -0
  240. package/build/src/core/consent-manager.js +104 -0
  241. package/build/src/core/consent-manager.js.map +1 -0
  242. package/build/src/core/csp.d.ts +12 -0
  243. package/build/src/core/csp.js +20 -0
  244. package/build/src/core/csp.js.map +1 -0
  245. package/build/src/core/engagement-analyzer.d.ts +42 -0
  246. package/build/src/core/engagement-analyzer.js +71 -0
  247. package/build/src/core/engagement-analyzer.js.map +1 -0
  248. package/build/src/core/governor.d.ts +104 -0
  249. package/build/src/core/governor.js +371 -0
  250. package/build/src/core/governor.js.map +1 -0
  251. package/build/src/core/life-area-mapper.d.ts +39 -0
  252. package/build/src/core/life-area-mapper.js +73 -0
  253. package/build/src/core/life-area-mapper.js.map +1 -0
  254. package/build/src/core/methodology.d.ts +39 -0
  255. package/build/src/core/methodology.js +164 -0
  256. package/build/src/core/methodology.js.map +1 -0
  257. package/build/src/core/pingala.d.ts +25 -0
  258. package/build/src/core/pingala.js +56 -0
  259. package/build/src/core/pingala.js.map +1 -0
  260. package/build/src/core/sdk-adapter.d.ts +8 -0
  261. package/build/src/core/sdk-adapter.js +34 -0
  262. package/build/src/core/sdk-adapter.js.map +1 -0
  263. package/build/src/index.d.ts +2 -0
  264. package/build/src/index.js +333 -0
  265. package/build/src/index.js.map +1 -0
  266. package/build/src/test-l3.d.ts +1 -0
  267. package/build/src/test-l3.js +35 -0
  268. package/build/src/test-l3.js.map +1 -0
  269. package/build/src/tools/audit-workspace.d.ts +16 -0
  270. package/build/src/tools/audit-workspace.js +39 -0
  271. package/build/src/tools/audit-workspace.js.map +1 -0
  272. package/build/src/tools/calculate-csi.d.ts +24 -0
  273. package/build/src/tools/calculate-csi.js +29 -0
  274. package/build/src/tools/calculate-csi.js.map +1 -0
  275. package/build/src/tools/cs-audit.d.ts +54 -0
  276. package/build/src/tools/cs-audit.js +310 -0
  277. package/build/src/tools/cs-audit.js.map +1 -0
  278. package/build/src/tools/get-governance-context.d.ts +11 -0
  279. package/build/src/tools/get-governance-context.js +16 -0
  280. package/build/src/tools/get-governance-context.js.map +1 -0
  281. package/build/src/tools/validate-stack-change.d.ts +41 -0
  282. package/build/src/tools/validate-stack-change.js +35 -0
  283. package/build/src/tools/validate-stack-change.js.map +1 -0
  284. package/build/test-l3.d.ts +1 -0
  285. package/build/test-l3.js +35 -0
  286. package/build/test-l3.js.map +1 -0
  287. package/build/tools/analyze-stack.d.ts +40 -0
  288. package/build/tools/analyze-stack.js +121 -0
  289. package/build/tools/analyze-stack.js.map +1 -0
  290. package/build/tools/audit-workspace.d.ts +16 -0
  291. package/build/tools/audit-workspace.js +39 -0
  292. package/build/tools/audit-workspace.js.map +1 -0
  293. package/build/tools/calculate-csi.d.ts +26 -0
  294. package/build/tools/calculate-csi.js +30 -0
  295. package/build/tools/calculate-csi.js.map +1 -0
  296. package/build/tools/cs-audit.d.ts +43 -0
  297. package/build/tools/cs-audit.js +330 -0
  298. package/build/tools/cs-audit.js.map +1 -0
  299. package/build/tools/get-governance-context.d.ts +11 -0
  300. package/build/tools/get-governance-context.js +61 -0
  301. package/build/tools/get-governance-context.js.map +1 -0
  302. package/build/tools/validate-stack-change.d.ts +41 -0
  303. package/build/tools/validate-stack-change.js +54 -0
  304. package/build/tools/validate-stack-change.js.map +1 -0
  305. package/package.json +34 -0
  306. package/scripts/cloud-bridge.js +62 -0
  307. package/scripts/generate-token.js +13 -0
  308. package/src/core/531-rule.ts +148 -0
  309. package/src/core/auth.ts +42 -0
  310. package/src/core/consent-manager.ts +134 -0
  311. package/src/core/csp.ts +40 -0
  312. package/src/core/engagement-analyzer.ts +122 -0
  313. package/src/core/governor.ts +522 -0
  314. package/src/core/life-area-mapper.ts +138 -0
  315. package/src/core/methodology.ts +256 -0
  316. package/src/core/pingala.ts +77 -0
  317. package/src/core/sdk-adapter.ts +52 -0
  318. package/src/index.ts +562 -0
  319. package/src/test-l3.ts +45 -0
  320. package/src/tools/analyze-stack.ts +153 -0
  321. package/src/tools/audit-workspace.ts +50 -0
  322. package/src/tools/calculate-csi.ts +38 -0
  323. package/src/tools/cs-audit.ts +384 -0
  324. package/src/tools/get-governance-context.ts +69 -0
  325. package/src/tools/validate-stack-change.ts +71 -0
  326. package/src/types.d.ts +2 -0
  327. package/tsconfig.json +40 -0
  328. package/vercel.json +15 -0
@@ -0,0 +1,359 @@
1
+ import * as fs from "node:fs";
2
+ import * as path from "node:path";
3
+ import * as os from "node:os";
4
+ import process from "node:process";
5
+ import { Rule531 } from "./531-rule.js";
6
+ export class Governor {
7
+ static dataDir = process.env.CSTACK_DATA_DIR || path.join(os.homedir(), ".cstack-data");
8
+ static getFilePath(filename) {
9
+ if (!fs.existsSync(this.dataDir)) {
10
+ fs.mkdirSync(this.dataDir, { recursive: true });
11
+ }
12
+ return path.join(this.dataDir, filename);
13
+ }
14
+ static getStack() {
15
+ const filePath = this.getFilePath("stack-map.json");
16
+ if (fs.existsSync(filePath)) {
17
+ try {
18
+ const data = JSON.parse(fs.readFileSync(filePath, "utf-8"));
19
+ return data.tools || [];
20
+ }
21
+ catch (e) {
22
+ console.error("[Governor] Error reading stack-map.json:", e);
23
+ return [];
24
+ }
25
+ }
26
+ return [];
27
+ }
28
+ static saveStack(tools) {
29
+ const filePath = this.getFilePath("stack-map.json");
30
+ fs.writeFileSync(filePath, JSON.stringify({ tools }, null, 2));
31
+ const state = this.getMaturityState();
32
+ state.last_changed_at = new Date().toISOString();
33
+ this.saveMaturityState(state);
34
+ }
35
+ static getMaturityState() {
36
+ const filePath = this.getFilePath("maturity-state.json");
37
+ const defaultState = {
38
+ level: 1,
39
+ level_name: "Fragmented",
40
+ stability_days: 0,
41
+ last_changed_at: new Date().toISOString()
42
+ };
43
+ if (fs.existsSync(filePath)) {
44
+ try {
45
+ const state = JSON.parse(fs.readFileSync(filePath, "utf-8"));
46
+ const lastChanged = new Date(state.last_changed_at);
47
+ const now = new Date();
48
+ const diffTime = Math.abs(now.getTime() - lastChanged.getTime());
49
+ state.stability_days = Math.floor(diffTime / (1000 * 60 * 60 * 24));
50
+ return state;
51
+ }
52
+ catch (e) {
53
+ console.error("[Governor] Error reading maturity-state.json:", e);
54
+ return defaultState;
55
+ }
56
+ }
57
+ return defaultState;
58
+ }
59
+ static saveMaturityState(state) {
60
+ const filePath = this.getFilePath("maturity-state.json");
61
+ fs.writeFileSync(filePath, JSON.stringify(state, null, 2));
62
+ }
63
+ static recordTelemetry(data) {
64
+ const state = this.getMaturityState();
65
+ state.telemetry = {
66
+ attention_depth: data.attention_depth ?? state.telemetry?.attention_depth ?? 50,
67
+ dependency_exposure: data.dependency_exposure ?? state.telemetry?.dependency_exposure ?? 50,
68
+ last_updated: new Date().toISOString()
69
+ };
70
+ this.saveMaturityState(state);
71
+ }
72
+ static recordValidation(justified) {
73
+ const state = this.getMaturityState();
74
+ if (!state.decision_stats) {
75
+ state.decision_stats = { total_validations: 0, justified_validations: 0 };
76
+ }
77
+ state.decision_stats.total_validations++;
78
+ if (justified)
79
+ state.decision_stats.justified_validations++;
80
+ this.saveMaturityState(state);
81
+ }
82
+ static updateCsi(score) {
83
+ const state = this.getMaturityState();
84
+ if (state.csi_baseline === undefined) {
85
+ state.csi_baseline = score;
86
+ }
87
+ state.csi_latest = score;
88
+ this.saveMaturityState(state);
89
+ }
90
+ static getDecisionProvenanceScore() {
91
+ const state = this.getMaturityState();
92
+ if (!state.decision_stats || state.decision_stats.total_validations === 0)
93
+ return 50;
94
+ return Math.round((state.decision_stats.justified_validations / state.decision_stats.total_validations) * 100);
95
+ }
96
+ static getStackDriftScore() {
97
+ const tools = this.getStack();
98
+ const state = this.getMaturityState();
99
+ const validation = Rule531.validate({ tools });
100
+ let score = validation.score;
101
+ const signals = [...validation.violations];
102
+ const lastChanged = new Date(state.last_changed_at);
103
+ const now = new Date();
104
+ const diffDays = Math.floor(Math.abs(now.getTime() - lastChanged.getTime()) / (1000 * 60 * 60 * 24));
105
+ if (diffDays > 0) {
106
+ const temporalPenalty = Math.min(20, diffDays * 5);
107
+ score -= temporalPenalty;
108
+ if (temporalPenalty > 0) {
109
+ signals.push(`Attention Erosion: ${diffDays} days since last protocol synthesis (-${temporalPenalty} points)`);
110
+ }
111
+ }
112
+ if (!tools.some(t => t.role === 'Anchor')) {
113
+ if (!signals.some(s => s.includes("Anchor"))) {
114
+ score -= 10;
115
+ signals.push("Anchor Void: No center of truth established (-10 points)");
116
+ }
117
+ }
118
+ score = Math.max(0, score);
119
+ let summary = "Maintaining Crystalline Geometry.";
120
+ if (score < 85)
121
+ summary = "Minor drift detected. Review Supporting nodes.";
122
+ if (score < 70)
123
+ summary = "Significant architectural erosion. Audit required.";
124
+ if (score < 50)
125
+ summary = "Systemic collapse risk. Execute rapid reversal.";
126
+ return { score, signals, summary };
127
+ }
128
+ static validateStackChange(change) {
129
+ const currentStack = this.getStack();
130
+ const state = this.getMaturityState();
131
+ const validation = this.check531Rules(currentStack, change);
132
+ if (!validation.allowed)
133
+ return validation;
134
+ const gate = this.enforceMaturityGates(state, change);
135
+ if (!gate.allowed)
136
+ return gate;
137
+ return {
138
+ allowed: true,
139
+ reason: "Compliant with the Conscious Stack Protocol (CSP) and Maturity Gates",
140
+ impact: {
141
+ stability_reset: true,
142
+ new_stability_days: 0
143
+ }
144
+ };
145
+ }
146
+ static check531Rules(currentStack, change) {
147
+ const getRoleNodeCount = (tools, role) => {
148
+ const roleTools = tools.filter(t => t.role === role);
149
+ const slots = new Set(roleTools.filter(t => t.functionId).map(t => t.functionId));
150
+ const unclassifiedCount = roleTools.filter(t => !t.functionId).length;
151
+ return slots.size + unclassifiedCount;
152
+ };
153
+ const counts = {
154
+ anchor: getRoleNodeCount(currentStack, 'Anchor'),
155
+ active: getRoleNodeCount(currentStack, 'Active'),
156
+ supporting: getRoleNodeCount(currentStack, 'Supporting')
157
+ };
158
+ if (change.type === 'add_tool' || change.type === 'change_role') {
159
+ const role = change.proposed_role;
160
+ const targetFunctionId = change.functionId;
161
+ const existingNodeTools = targetFunctionId ? currentStack.filter(t => t.functionId === targetFunctionId) : [];
162
+ const isSubstack = existingNodeTools.length > 0;
163
+ if (isSubstack) {
164
+ if (role === 'Anchor' && existingNodeTools.some(t => t.role === 'Anchor')) {
165
+ const currentSubAnchor = existingNodeTools.find(t => t.role === 'Anchor');
166
+ return {
167
+ allowed: false,
168
+ reason: `Fractal Violation: Sub-stack '${targetFunctionId}' already has an Anchor (${currentSubAnchor?.name}). Only one tool can be the 'Visible' gateway for this slot.`,
169
+ alternatives: [
170
+ `Demote ${change.tool_name} to Supporting within the ${targetFunctionId} sub-stack`,
171
+ `Replace ${currentSubAnchor?.name} as the primary gateway for this slot`
172
+ ]
173
+ };
174
+ }
175
+ return { allowed: true };
176
+ }
177
+ if (role === 'Anchor') {
178
+ if (counts.anchor >= 1 && !change.replaces_existing) {
179
+ const currentAnchor = currentStack.find(t => t.role === 'Anchor');
180
+ return {
181
+ allowed: false,
182
+ reason: `Protocol violation: Only 1 Anchor Node permitted in the Core Stack. Current anchor: ${currentAnchor?.name}`,
183
+ alternatives: [
184
+ `Cluster ${change.tool_name} into the existing Anchor slot (building a sub-stack)`,
185
+ `Replace ${currentAnchor?.name} with ${change.tool_name}`,
186
+ `Assign ${change.tool_name} as Active instead`
187
+ ]
188
+ };
189
+ }
190
+ }
191
+ else if (role === 'Active') {
192
+ if (counts.active >= 3 && !change.replaces_existing) {
193
+ return {
194
+ allowed: false,
195
+ reason: `Protocol violation: Max 3 Active Slots permitted. Your Core Stack is congested.`,
196
+ alternatives: [
197
+ `Cluster ${change.tool_name} into an existing Active slot (e.g., as a supporting tool in a sub-stack)`,
198
+ "Archive least-used Active node",
199
+ `Move ${change.tool_name} to Supporting tier`
200
+ ]
201
+ };
202
+ }
203
+ }
204
+ else if (role === 'Supporting') {
205
+ if (counts.supporting >= 5 && !change.replaces_existing) {
206
+ return {
207
+ allowed: false,
208
+ reason: `Protocol violation: Max 5 Supporting Slots permitted in the Core Stack.`,
209
+ alternatives: [
210
+ `Nest ${change.tool_name} inside an existing Supporting sub-stack`,
211
+ "Archive least-used Supporting node",
212
+ "Promote this to Active if critical (requires archiving an Active slot)"
213
+ ]
214
+ };
215
+ }
216
+ }
217
+ }
218
+ return { allowed: true };
219
+ }
220
+ static enforceMaturityGates(state, change) {
221
+ const GATES = {
222
+ 1: {
223
+ level_name: "Fragmented",
224
+ min_stability_days: 7,
225
+ allowed_changes: ["remove_tool", "audit", "emergency_subtract"],
226
+ blocked_changes: ["add_tool", "change_anchor"],
227
+ definition: "Tools and processes are random, chaotic, and uncoordinated.",
228
+ primary_action: "Audit & Eliminate. Reduce tool count by 30%.",
229
+ message: "Level 1: Focus on subtraction and stabilization only"
230
+ },
231
+ 2: {
232
+ level_name: "Siloed",
233
+ min_stability_days: 14,
234
+ allowed_changes: ["remove_tool", "audit", "change_role"],
235
+ blocked_changes: ["add_tool", "change_anchor"],
236
+ definition: "Structure exists, but systems operate in isolation.",
237
+ primary_action: "Standardize. Create specific 'Anchors' for each workflow.",
238
+ message: "Level 2: Maintain 14 days stability before additions"
239
+ },
240
+ 3: {
241
+ level_name: "Integrated",
242
+ min_stability_days: 30,
243
+ allowed_changes: ["remove_tool", "audit", "add_tool", "change_role"],
244
+ blocked_changes: ["change_anchor"],
245
+ definition: "Data flows between systems; reduced friction.",
246
+ primary_action: "Automate. Use APIs to connect Edges.",
247
+ message: "Level 3: Can adjust Active/Supporting after 30 days stability"
248
+ },
249
+ 4: {
250
+ level_name: "Aligned",
251
+ min_stability_days: 90,
252
+ allowed_changes: ["remove_tool", "audit", "add_tool", "change_role", "change_anchor"],
253
+ blocked_changes: [],
254
+ definition: "Stack reflects values, strategy, and purpose.",
255
+ primary_action: "Refine. Align rituals with tool usage.",
256
+ message: "Level 4: All changes permitted with 90+ days stability"
257
+ },
258
+ 5: {
259
+ level_name: "Resonant",
260
+ min_stability_days: 180,
261
+ allowed_changes: ["all"],
262
+ blocked_changes: [],
263
+ definition: "Tech amplifies unique human value and signal.",
264
+ primary_action: "Transcend. The stack becomes invisible.",
265
+ message: "Level 5: Mature stack, trust your judgment"
266
+ }
267
+ };
268
+ const gate = GATES[state.level];
269
+ if (!state.level_name || state.level_name !== gate.level_name) {
270
+ state.level_name = gate.level_name;
271
+ state.definition = gate.definition;
272
+ state.primary_action = gate.primary_action;
273
+ }
274
+ if (change.type === 'remove_tool' || change.type === 'audit') {
275
+ return { allowed: true };
276
+ }
277
+ const currentStability = state.stability_days;
278
+ if (gate.blocked_changes.includes(change.type)) {
279
+ return {
280
+ allowed: false,
281
+ reason: `${gate.message}. Action '${change.type}' is unauthorized at the ${gate.level_name} stage.`,
282
+ gate_requirements: gate
283
+ };
284
+ }
285
+ const isExpansion = change.type === 'add_tool' || change.type === 'change_role' || change.type === 'change_anchor';
286
+ const prevGateStability = state.level > 1 ? GATES[state.level - 1].min_stability_days : 0;
287
+ if (currentStability < prevGateStability && isExpansion) {
288
+ return {
289
+ allowed: false,
290
+ reason: `Stability gate: Reach ${prevGateStability} days of stability in the ${gate.level_name} stage before expanding. Current: ${currentStability} days.`,
291
+ gate_requirements: {
292
+ required_days: prevGateStability,
293
+ current_days: currentStability
294
+ }
295
+ };
296
+ }
297
+ return { allowed: true };
298
+ }
299
+ static getGovernanceContext() {
300
+ const tools = this.getStack();
301
+ const state = this.getMaturityState();
302
+ const nodeMap = {};
303
+ const unclassified = [];
304
+ tools.forEach(t => {
305
+ if (t.functionId) {
306
+ if (!nodeMap[t.functionId])
307
+ nodeMap[t.functionId] = { role: t.role, tools: [] };
308
+ nodeMap[t.functionId].tools.push(t.name);
309
+ }
310
+ else {
311
+ unclassified.push({ id: t.name, role: t.role, tools: [t.name] });
312
+ }
313
+ });
314
+ const functionalNodes = [
315
+ ...Object.entries(nodeMap).map(([id, data]) => ({ id, ...data })),
316
+ ...unclassified
317
+ ];
318
+ const allActions = ["add_tool", "remove_tool", "change_role", "change_anchor"];
319
+ const blocked = allActions.filter(a => {
320
+ const res = this.validateStackChange({ type: a, tool_name: '' });
321
+ return !res.allowed;
322
+ });
323
+ const allowed = allActions.filter(a => !blocked.includes(a));
324
+ const nextLevel = state.level < 5 ? state.level + 1 : null;
325
+ const canLevelUp = nextLevel && state.stability_days >= this.getNextGateRequiredDays(state.level);
326
+ const csiDelta = (state.csi_latest || 0) - (state.csi_baseline || state.csi_latest || 0);
327
+ return {
328
+ current_stack: {
329
+ anchor: tools.find(t => t.role === 'Anchor') || null,
330
+ active: tools.filter(t => t.role === 'Active'),
331
+ supporting: tools.filter(t => t.role === 'Supporting')
332
+ },
333
+ functional_nodes: functionalNodes,
334
+ maturity_level: state.level,
335
+ maturity_name: state.level_name || "Unknown",
336
+ stability_days: state.stability_days,
337
+ csi_latest: state.csi_latest || 0,
338
+ allowed_actions: allowed,
339
+ blocked_actions: blocked, progression: {
340
+ can_level_up: !!canLevelUp,
341
+ next_level: nextLevel,
342
+ days_remaining: Math.max(0, this.getNextGateRequiredDays(state.level) - state.stability_days),
343
+ csi_delta: csiDelta,
344
+ is_l2_eligible: csiDelta >= 10
345
+ }
346
+ };
347
+ }
348
+ static getNextGateRequiredDays(level) {
349
+ const GATES_DAYS = {
350
+ 1: 7,
351
+ 2: 14,
352
+ 3: 30,
353
+ 4: 90,
354
+ 5: 180
355
+ };
356
+ return GATES_DAYS[level] || 0;
357
+ }
358
+ }
359
+ //# sourceMappingURL=governor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"governor.js","sourceRoot":"","sources":["../../../../src/core/governor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { ToolInstance } from "./531-rule.js";
2
+ export interface LifeAreaAnalysis {
3
+ areas: {
4
+ id: string;
5
+ label: string;
6
+ tools: string[];
7
+ description: string;
8
+ }[];
9
+ gaps: string[];
10
+ overIndexed: string[];
11
+ }
12
+ export interface InnerDiamondAnalysis {
13
+ reflections: {
14
+ id: string;
15
+ label: string;
16
+ observation: string;
17
+ prompt: string;
18
+ }[];
19
+ forecast: {
20
+ sovereignty_score: number;
21
+ primary_risk: string;
22
+ evolution_path: string;
23
+ };
24
+ }
25
+ export interface LifeAreaMapper {
26
+ mapToolsToAreas(tools: ToolInstance[], practitionerMode?: boolean): LifeAreaAnalysis;
27
+ }
28
+ export declare class BaguaMapper implements LifeAreaMapper {
29
+ private categories;
30
+ constructor();
31
+ mapToolsToAreas(tools: ToolInstance[], practitionerMode?: boolean): LifeAreaAnalysis;
32
+ }
33
+ export declare class DiamondMapper {
34
+ private categories;
35
+ constructor();
36
+ mapToDiamond(tools: ToolInstance[], practitionerMode?: boolean): InnerDiamondAnalysis;
37
+ private getObservationForCategory;
38
+ private getPromptForCategory;
39
+ }
@@ -0,0 +1,73 @@
1
+ import { MethodologyLoader } from "./methodology.js";
2
+ export class BaguaMapper {
3
+ categories;
4
+ constructor() {
5
+ this.categories = MethodologyLoader.loadBaguaCategories();
6
+ }
7
+ mapToolsToAreas(tools, practitionerMode = false) {
8
+ const mapping = this.categories.map(cat => ({
9
+ id: cat.name,
10
+ label: practitionerMode ? cat.name : (cat.userFacingLabel || cat.description),
11
+ tools: tools.filter(t => t.functionId === cat.name).map(t => t.name),
12
+ description: cat.description
13
+ }));
14
+ const gaps = mapping.filter(m => m.tools.length === 0).map(m => m.label);
15
+ const overIndexed = mapping.filter(m => m.tools.length > 2).map(m => m.label);
16
+ return {
17
+ areas: mapping,
18
+ gaps,
19
+ overIndexed
20
+ };
21
+ }
22
+ }
23
+ export class DiamondMapper {
24
+ categories;
25
+ constructor() {
26
+ this.categories = MethodologyLoader.loadInnerDiamondCategories();
27
+ }
28
+ mapToDiamond(tools, practitionerMode = false) {
29
+ const prompts = MethodologyLoader.loadConsentPrompts();
30
+ const reflections = this.categories.map(cat => ({
31
+ id: cat.name,
32
+ label: practitionerMode ? cat.name : (cat.userFacingLabel || cat.name),
33
+ observation: this.getObservationForCategory(cat.name, tools),
34
+ prompt: this.getPromptForCategory(cat.name, tools)
35
+ }));
36
+ const uniqueFunctions = new Set(tools.map(t => t.functionId).filter(Boolean)).size;
37
+ const sovScore = Math.min(100, Math.round((uniqueFunctions / 9) * 100));
38
+ return {
39
+ reflections,
40
+ forecast: {
41
+ sovereignty_score: sovScore,
42
+ primary_risk: tools.length > 9 ? "Conscious Fragmentation" : "Dependency Lock-in",
43
+ evolution_path: "Move from 'tool-centric' to 'process-centric' autonomy."
44
+ }
45
+ };
46
+ }
47
+ getObservationForCategory(cat, tools) {
48
+ switch (cat) {
49
+ case 'Identity':
50
+ return tools.length > 0 ? `Your choices in ${tools[0].name} suggest a focus on efficiency.` : "No clear identity pattern detected.";
51
+ case 'Purpose':
52
+ const anchors = tools.filter(t => t.role === 'Anchor');
53
+ return anchors.length > 0 ? `Your Anchor (${anchors[0].name}) is the seat of your daily purpose.` : "Your purpose lacks a central digital anchor.";
54
+ case 'Sovereignty':
55
+ return `You are currently balancing ${tools.length} nodes of external dependencies.`;
56
+ default:
57
+ return "Reflecting on pattern...";
58
+ }
59
+ }
60
+ getPromptForCategory(cat, tools) {
61
+ switch (cat) {
62
+ case 'Identity':
63
+ return "Who would you be if this stack was reset tomorrow?";
64
+ case 'Purpose':
65
+ return "Does this stack serve your mission, or does it define it?";
66
+ case 'Sovereignty':
67
+ return "Where are you choosing not to see a dependency?";
68
+ default:
69
+ return "What is ready to evolve?";
70
+ }
71
+ }
72
+ }
73
+ //# sourceMappingURL=life-area-mapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"life-area-mapper.js","sourceRoot":"","sources":["../../../../src/core/life-area-mapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAuC,MAAM,kBAAkB,CAAC;AA2C1F,MAAM,OAAO,WAAW;IACZ,UAAU,CAAkB;IAEpC;QACI,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,CAAC;IAC9D,CAAC;IAKD,eAAe,CAAC,KAAqB,EAAE,mBAA4B,KAAK;QACpE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxC,EAAE,EAAE,GAAG,CAAC,IAAI;YACZ,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,IAAI,GAAG,CAAC,WAAW,CAAC;YAC7E,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACpE,WAAW,EAAE,GAAG,CAAC,WAAW;SAC/B,CAAC,CAAC,CAAC;QAEJ,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAE9E,OAAO;YACH,KAAK,EAAE,OAAO;YACd,IAAI;YACJ,WAAW;SACd,CAAC;IACN,CAAC;CACJ;AAKD,MAAM,OAAO,aAAa;IACd,UAAU,CAAyB;IAE3C;QACI,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,0BAA0B,EAAE,CAAC;IACrE,CAAC;IAKD,YAAY,CAAC,KAAqB,EAAE,mBAA4B,KAAK;QAEjE,MAAM,OAAO,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAEvD,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5C,EAAE,EAAE,GAAG,CAAC,IAAI;YACZ,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,IAAI,GAAG,CAAC,IAAI,CAAC;YACtE,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC;YAC5D,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC;SACrD,CAAC,CAAC,CAAC;QAGJ,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QACnF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAExE,OAAO;YACH,WAAW;YACX,QAAQ,EAAE;gBACN,iBAAiB,EAAE,QAAQ;gBAC3B,YAAY,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,oBAAoB;gBACjF,cAAc,EAAE,yDAAyD;aAC5E;SACJ,CAAC;IACN,CAAC;IAEO,yBAAyB,CAAC,GAAW,EAAE,KAAqB;QAChE,QAAQ,GAAG,EAAE,CAAC;YACV,KAAK,UAAU;gBACX,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,iCAAiC,CAAC,CAAC,CAAC,qCAAqC,CAAC;YACxI,KAAK,SAAS;gBACV,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;gBACvD,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,sCAAsC,CAAC,CAAC,CAAC,8CAA8C,CAAC;YACvJ,KAAK,aAAa;gBACd,OAAO,+BAA+B,KAAK,CAAC,MAAM,kCAAkC,CAAC;YACzF;gBACI,OAAO,0BAA0B,CAAC;QAC1C,CAAC;IACL,CAAC;IAEO,oBAAoB,CAAC,GAAW,EAAE,KAAqB;QAC3D,QAAQ,GAAG,EAAE,CAAC;YACV,KAAK,UAAU;gBACX,OAAO,oDAAoD,CAAC;YAChE,KAAK,SAAS;gBACV,OAAO,2DAA2D,CAAC;YACvE,KAAK,aAAa;gBACd,OAAO,iDAAiD,CAAC;YAC7D;gBACI,OAAO,0BAA0B,CAAC;QAC1C,CAAC;IACL,CAAC;CACJ"}
@@ -0,0 +1,39 @@
1
+ export interface CSIPillar {
2
+ name: string;
3
+ description: string;
4
+ weight: number;
5
+ }
6
+ export interface Protocol531Rules {
7
+ maxTools: number;
8
+ anchorCount: number;
9
+ activeCount: number;
10
+ supportingCount: number;
11
+ rawDescription?: string;
12
+ }
13
+ export interface BaguaCategory {
14
+ name: string;
15
+ description: string;
16
+ userFacingLabel?: string;
17
+ }
18
+ export interface InnerDiamondCategory {
19
+ name: string;
20
+ description: string;
21
+ userFacingLabel?: string;
22
+ }
23
+ export interface ConsentPrompts {
24
+ l2: string;
25
+ l3: string;
26
+ }
27
+ export declare class MethodologyLoader {
28
+ private static basePath;
29
+ private static apiKey;
30
+ static init(): void;
31
+ static loadCSIPillars(): CSIPillar[];
32
+ static load531Rules(): Protocol531Rules;
33
+ static loadBaguaCategories(): BaguaCategory[];
34
+ static loadInnerDiamondCategories(): InnerDiamondCategory[];
35
+ static loadConsentPrompts(): ConsentPrompts;
36
+ private static parseCSIPillarsFromFile;
37
+ private static parseBaguaCategoriesFromFile;
38
+ static getSourceMode(): "creator" | "api" | "fallback";
39
+ }