@furongjun1999/dsh-memory 0.4.11 → 0.5.1

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 (580) hide show
  1. package/README.md +552 -465
  2. package/codebuddy/CODEBUDDY.md +11 -3
  3. package/codebuddy/README.md +92 -90
  4. package/codebuddy/mcp.json +27 -27
  5. package/docs/GBrain/345/217/257/345/200/237/351/211/264/347/202/271_/347/201/265/346/236/242/350/220/275/347/202/271/344/272/244/346/216/245_20260919.md +169 -169
  6. package/docs/Pi/345/217/257/345/255/246/344/271/240/344/274/230/347/202/271_/347/201/265/346/236/242/345/244/247/350/204/221/346/224/271/350/277/233/344/272/244/346/216/245_20260915.md +144 -144
  7. package/docs/README.md +143 -111
  8. package/docs/discipline/harnesses.yaml +244 -226
  9. package/docs/discipline/templates/full.md.tmpl +61 -61
  10. package/docs/discipline/templates/rules.mdc.tmpl +68 -0
  11. package/docs/discipline/templates/skill.md.tmpl +23 -23
  12. package/docs/eval/AGI/344/270/203/347/273/264/350/257/204/345/210/206/346/212/245/345/221/212_md_cg_v1.0.md +299 -299
  13. package/docs/eval/AGI/344/270/203/347/273/264/350/257/204/345/210/206/346/212/245/345/221/212_md_cg_v2.0.md +239 -239
  14. package/docs/eval/bench_lingshu_self/bench_self.py +140 -0
  15. package/docs/eval/bench_lingshu_self/self_bench_result.json +404 -0
  16. package/docs/eval/bench_lingshu_self//347/201/265/346/236/242/350/207/252/345/272/223/347/253/257/345/210/260/347/253/257/346/243/200/347/264/242/345/256/236/346/265/213_v1.0.md +38 -0
  17. package/docs/eval//344/270/215/345/217/257/351/235/240/346/200/247/350/220/275/345/234/260_P0_v1.0.md +185 -0
  18. package/docs/eval//345/256/236/351/252/214/346/226/271/346/241/210_/345/255/246/344/271/240/351/227/255/347/216/257AB/344/270/216/346/250/252/350/257/204_v1.0.md +174 -174
  19. package/docs/eval//346/225/205/351/232/234/346/263/250/345/205/245/345/256/236/346/265/213_v1.0.md +422 -0
  20. package/docs/eval//346/250/252/350/257/204_/345/205/255/345/256/266100/351/242/230/344/270/255/350/213/261/345/217/214/346/237/245_v1.0.md +223 -223
  21. package/docs/eval//347/253/257/345/210/260/347/253/257LoCoMoQA/345/220/214/345/217/243/345/276/204/345/257/271/347/205/247_v1.0.md +100 -0
  22. package/docs/eval//347/253/257/345/210/260/347/253/257/345/271/262/346/211/260/346/261/240/350/257/204/346/265/213_/347/241/256/345/256/232/346/200/247/350/243/201/345/206/263vsLLM_judge_v1.1.md +197 -0
  23. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v1.md +156 -0
  24. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v10.md +210 -0
  25. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v11.md +227 -0
  26. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v12.md +203 -0
  27. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v13.md +233 -0
  28. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v14.md +191 -0
  29. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v15.md +213 -0
  30. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v16.md +214 -0
  31. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v17.md +199 -0
  32. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v2.md +156 -0
  33. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v3.md +152 -0
  34. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v4.md +128 -0
  35. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v5.md +114 -0
  36. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v6.md +192 -0
  37. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v7.md +187 -0
  38. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v8.md +207 -0
  39. package/docs/eval//347/274/272/351/231/267/346/214/226/346/216/230_/350/207/252/344/270/273/350/277/255/344/273/243_v9.md +203 -0
  40. package/docs/{mdcg → hive}//344/273/244/347/211/214/344/270/216/350/247/222/350/211/262/346/235/203/350/201/214/345/210/206/347/246/273_v0.1.md +165 -160
  41. package/docs/hive//344/273/244/347/211/214/350/257/255/344/271/211/344/277/256/346/255/243_/344/273/262/350/243/201/344/275/215_v0.1.md +76 -0
  42. package/docs/{mdcg → hive}//345/255/220/344/273/243/347/220/206/351/205/215/347/275/256/346/240/207/345/207/206_v0.5.md +236 -236
  43. package/docs/hive//345/256/211/345/205/250/345/256/241/350/256/241/345/256/236/351/224/232_v0.1.md +202 -0
  44. package/docs/hive//346/243/200/347/264/242/346/224/266/346/225/233/345/256/236/346/265/213/344/270/216S1b/350/256/276/350/256/241_v0.1.md +43 -43
  45. package/docs/hive//346/243/200/347/264/242/347/256/227/346/263/225/345/217/243/345/276/204/345/257/271/347/205/247_v0.1.md +85 -0
  46. package/docs/hive//346/243/200/347/264/242/350/267/257/345/276/204/344/270/216/350/256/244/347/237/245/347/273/223/346/236/204/345/245/221/347/272/246_v0.1.md +102 -102
  47. package/docs/hive//350/234/202/345/267/242M6_ingest/345/256/236/346/226/275/350/256/241/345/210/222_v0.1.md +47 -0
  48. package/docs/hive//350/234/202/345/267/242/345/217/214/345/256/236/344/276/213/344/272/222/351/252/214_/350/256/276/350/256/241/345/256/232/347/250/277.md +519 -503
  49. package/docs/hive//350/234/202/345/267/242/345/267/245/344/275/234/350/256/260/345/277/206_/351/241/271/347/233/256/350/256/241/345/210/222.md +85 -85
  50. package/docs/hive//350/234/202/345/267/242/350/256/276/350/256/241_/347/220/206/350/256/272/345/257/271/351/275/220_v0.1.md +191 -0
  51. package/docs/hive//350/234/202/345/267/242/350/277/255/344/273/243_/345/256/217/350/247/202/344/270/216/347/276/244/344/275/223/350/260/203/345/272/246_v0.1.md +90 -0
  52. package/docs/images/lingshu-moonlight-covenant-poster-preview.jpg +0 -0
  53. package/docs/images/lingshu-moonlight-covenant-poster.png +0 -0
  54. package/docs/mdcg/D_meta_/345/267/245/347/250/213/345/214/226/346/226/271/346/241/210_v0.2.md +216 -216
  55. package/docs/mdcg/README/350/257/246/347/273/206/347/211/210_v0.4.10.md +646 -646
  56. package/docs/mdcg/lingshu_tutorial.html +14449 -14449
  57. package/docs/mdcg/release_v0.4.11.md +49 -0
  58. package/docs/mdcg/release_v0.4.5.md +55 -55
  59. package/docs/mdcg/tool_table_v0.3.0.md +117 -117
  60. package/docs/mdcg//345/205/250/345/272/223/344/273/243/347/240/201/350/257/204/345/256/241/344/270/216/346/235/241/344/273/266/345/214/226/346/263/250/351/207/212_/350/256/241/345/210/222_v0.1.md +600 -600
  61. package/docs/mdcg//345/212/237/350/203/275/350/260/203/347/224/250/346/230/240/345/260/204/350/241/250_v0.1.md +40 -40
  62. package/docs/mdcg//345/215/225/345/205/203/350/207/252/346/210/221/351/224/232/347/202/271_/347/263/273/347/273/237/346/217/220/347/244/272/350/257/215/346/240/207/345/207/206_v0.3.md +275 -275
  63. package/docs/mdcg//345/217/221/345/270/203/351/227/250/347/246/201/351/223/276_v0.1.md +54 -0
  64. package/docs/mdcg//346/272/220/347/240/201/347/272/247/346/236/266/346/236/204/345/256/241/350/256/241_GPT/346/211/271/350/257/204/345/257/271/347/205/247_v1.0.md +130 -130
  65. package/docs/mdcg//347/201/265/346/236/24282/345/267/245/345/205/267_/345/212/237/350/203/275/346/225/264/347/220/206/344/270/216/350/277/201/347/247/273/346/230/240/345/260/204_v0.1.md +278 -278
  66. package/docs/mdcg//347/201/265/346/236/242/350/256/260/345/277/206/345/212/250/350/257/215/345/215/217/350/256/256_v1.0-draft.md +172 -172
  67. package/docs/mdcg//347/274/272/345/217/243/345/215/225_P0/346/224/266/345/217/243_v0.1.md +270 -270
  68. package/docs/mdcg//350/256/244/347/237/245/345/233/276_G4-G8/347/274/272/345/217/243/350/243/201/345/256/232/345/215/225_v0.1.md +491 -491
  69. package/docs/mdcg//350/256/244/347/237/245/345/233/276_/346/235/241/344/273/266/347/251/272/351/227/264/345/220/210/346/210/220/344/270/216/347/224/237/346/225/210/346/235/241/344/273/266/345/217/243/345/276/204_v0.1.md +340 -340
  70. package/docs/mdcg//350/256/244/347/237/245/345/233/276_/347/264/242/345/274/225/344/270/216/345/267/245/347/250/213/350/247/204/350/214/203/345/214/226_/350/256/241/345/210/222_v0.1.md +588 -588
  71. package/docs/plans/GridWorld/346/234/200/345/260/217/351/227/255/347/216/257/350/247/204/346/240/274_v0.1.md +176 -176
  72. package/docs/plans//345/221/275/345/220/215/346/262/273/347/220/206_/351/241/271/347/233/256/350/256/241/345/210/222.md +81 -81
  73. package/docs/swarm//350/234/202/347/276/244/344/272/222/350/201/224_v0.1.md +704 -704
  74. package/docs/swarm//350/234/202/347/276/244/345/220/214/351/224/231/346/243/200/346/265/213/345/256/236/351/252/214/345/215/217/350/256/256_v0.1.md +242 -242
  75. package/docs/theory//344/270/215/345/217/257/351/235/240/345/256/232/347/220/206/344/270/216/345/244/261/346/225/210/344/274/230/345/205/210/346/241/206/346/236/266_v0.3.md +365 -0
  76. package/docs/theory//345/215/225/347/272/277/347/250/213/344/270/216/346/263/250/346/204/217/345/212/233/351/233/206/344/270/255_/346/227/240/344/272/211/350/256/256/347/220/206/350/256/272/346/226/207/346/241/243_v1.0.md +129 -129
  77. package/docs/theory//345/271/266/345/217/221/345/277/205/347/204/266/346/200/247/347/220/206/350/256/272_v0.2.md +134 -134
  78. package/docs/theory//346/231/272/350/203/275/350/256/2723.4.md +5260 -5260
  79. package/docs/theory//346/246/202/345/277/265/345/210/206/345/261/202/345/257/271/351/275/220/350/241/250_v0.1.md +145 -145
  80. package/docs/theory//347/220/206/350/256/272_/346/234/272/345/210/266_/344/273/243/347/240/201_/345/256/236/351/252/214_/347/274/272/345/217/243/347/237/251/351/230/265_v0.1.md +144 -144
  81. package/docs/theory//347/220/206/350/256/272/344/273/223/346/213/206/345/210/206/344/270/216/347/231/275/347/256/261/347/237/245/350/257/206/345/272/223/345/206/205/350/277/201_v0.1.md +198 -198
  82. package/docs/theory//350/256/244/347/237/245/344/273/243/347/220/206/344/270/216/346/224/266/346/225/233/347/273/223/346/236/204_/346/235/241/344/273/266/350/256/272/351/207/215/346/236/204_v0.1.md +221 -221
  83. package/docs/world_model//344/270/226/347/225/214/346/250/241/345/236/213_/347/245/236/347/273/217/347/275/221/347/273/234/345/272/225/345/261/202/346/236/266/346/236/204_v1.0.md +237 -237
  84. package/docs//344/270/215/345/217/257/351/235/240/346/200/247/347/220/206/350/256/272_v0.1.md +343 -0
  85. package/docs//345/217/221/345/270/203/344/273/266/345/233/236/346/272/257/350/257/264/346/230/216_v0.1.md +82 -82
  86. package/docs//345/267/245/344/275/234/347/272/252/345/276/213_/350/256/244/347/237/245/345/233/276/346/235/241/347/233/256_v1.1.json +28 -2
  87. package/dsh/README.md +82 -82
  88. package/dsh/cordis.yml.example +139 -139
  89. package/dsh/update-lingshu.bat +11 -11
  90. package/lib/bridge.d.ts +9 -0
  91. package/lib/bridge.js +35 -0
  92. package/lib/hooks.js +36 -2
  93. package/lib/index.js +7 -1
  94. package/lib/lib/roleplay_web.js +116 -29
  95. package/lib/lib/token_store.d.ts +7 -1
  96. package/lib/lib/token_store.js +12 -3
  97. package/md_cg/__init__.py +7 -7
  98. package/md_cg/audit.py +379 -368
  99. package/md_cg/autonomy.py +287 -287
  100. package/md_cg/backfill.py +1328 -1327
  101. package/md_cg/backfill_bigdomain.py +34 -34
  102. package/md_cg/backfill_bucket_zh.py +35 -0
  103. package/md_cg/bench6_arms.py +410 -410
  104. package/md_cg/bench6_common.py +230 -230
  105. package/md_cg/bench6_competitors.py +212 -212
  106. package/md_cg/bench_axis_domain.py +257 -257
  107. package/md_cg/bench_blind_comp.py +308 -308
  108. package/md_cg/bench_e2e_judge.py +532 -0
  109. package/md_cg/bench_e2e_locomo_qa.py +368 -0
  110. package/md_cg/bench_e2e_qa.py +256 -0
  111. package/md_cg/bench_en_atoms_public.py +230 -230
  112. package/md_cg/bench_governance.py +348 -348
  113. package/md_cg/bench_lme_zh.py +410 -410
  114. package/md_cg/bench_locomo.py +121 -121
  115. package/md_cg/bench_locomo_zh.py +450 -450
  116. package/md_cg/bench_locomo_zh_public.py +147 -147
  117. package/md_cg/bench_longmem.py +112 -112
  118. package/md_cg/bench_membench.py +632 -632
  119. package/md_cg/bench_p0.py +149 -149
  120. package/md_cg/bench_progressive.py +287 -287
  121. package/md_cg/bench_role_views.py +238 -238
  122. package/md_cg/bench_task_ab.py +243 -243
  123. package/md_cg/bench_task_ab_llm.py +408 -408
  124. package/md_cg/bench_unified_en.py +204 -204
  125. package/md_cg/bench_zh_mad.py +601 -601
  126. package/md_cg/blindspot_tickets.py +123 -123
  127. package/md_cg/branches.py +301 -285
  128. package/md_cg/build_postings.py +73 -73
  129. package/md_cg/ccgc.py +1006 -948
  130. package/md_cg/census.py +132 -132
  131. package/md_cg/chain.py +315 -300
  132. package/md_cg/codeindex.py +531 -531
  133. package/md_cg/coldverify.py +292 -292
  134. package/md_cg/comment_gate.py +337 -337
  135. package/md_cg/cond_compose.py +190 -190
  136. package/md_cg/cond_facts.py +154 -154
  137. package/md_cg/cond_template.json +106 -106
  138. package/md_cg/condition_anchor.py +142 -142
  139. package/md_cg/conformance.py +726 -726
  140. package/md_cg/consistency.py +717 -717
  141. package/md_cg/consolidate.py +1537 -1439
  142. package/md_cg/corpus.py +110 -110
  143. package/md_cg/crosscheck.py +1098 -1097
  144. package/md_cg/crypto.py +3 -1
  145. package/md_cg/d_meta.py +310 -310
  146. package/md_cg/datapath.py +78 -18
  147. package/md_cg/docindex.py +473 -473
  148. package/md_cg/eval_common.py +575 -575
  149. package/md_cg/evidence.py +4 -2
  150. package/md_cg/evolution.py +477 -477
  151. package/md_cg/export.py +222 -220
  152. package/md_cg/forgetting.py +581 -581
  153. package/md_cg/fsutil.py +377 -329
  154. package/md_cg/hotcache.py +48 -7
  155. package/md_cg/hyperedge.py +251 -251
  156. package/md_cg/identity.py +390 -390
  157. package/md_cg/insight.py +500 -500
  158. package/md_cg/interop.py +338 -0
  159. package/md_cg/judgment_manifest.py +177 -0
  160. package/md_cg/lexicon/build_cedict_en_zh.py +329 -329
  161. package/md_cg/lexicon/build_standard_en.py +171 -171
  162. package/md_cg/lexicon/expand_en_zh.py +211 -211
  163. package/md_cg/lifecycle.py +272 -272
  164. package/md_cg/linkref.py +280 -280
  165. package/md_cg/links.py +140 -107
  166. package/md_cg/mcp_server.py +403 -55
  167. package/md_cg/md_whitebox.py +345 -345
  168. package/md_cg/mdcg.py +783 -233
  169. package/md_cg/mdcos.py +500 -70
  170. package/md_cg/metacognition.py +591 -591
  171. package/md_cg/migrate.py +119 -119
  172. package/md_cg/migrate_aeis.py +221 -221
  173. package/md_cg/migrate_roleplay.py +293 -293
  174. package/md_cg/migrate_wisdom_graph.py +360 -360
  175. package/md_cg/mreview/__init__.py +25 -25
  176. package/md_cg/mreview/__main__.py +110 -110
  177. package/md_cg/mreview/bundle.py +178 -178
  178. package/md_cg/mreview/candidates.py +262 -262
  179. package/md_cg/mreview/govern.py +694 -693
  180. package/md_cg/mreview/locate.py +939 -939
  181. package/md_cg/mreview/pipeline.py +728 -728
  182. package/md_cg/mreview/rules/duplication.json +21 -21
  183. package/md_cg/mreview/rules/field_coverage.json +54 -54
  184. package/md_cg/mreview/rules/source_license.json +21 -21
  185. package/md_cg/mreview/rules/template_flow.json +21 -21
  186. package/md_cg/mreview/ruleset.py +252 -252
  187. package/md_cg/nodefile.py +575 -575
  188. package/md_cg/pooling.py +484 -472
  189. package/md_cg/postings.py +300 -298
  190. package/md_cg/predict.py +1100 -1100
  191. package/md_cg/progressive.py +123 -123
  192. package/md_cg/protect.py +272 -272
  193. package/md_cg/protocol/md_cg_gate.proto +33 -33
  194. package/md_cg/protocol.py +372 -372
  195. package/md_cg/provenance.py +582 -582
  196. package/md_cg/reach.py +453 -453
  197. package/md_cg/readcache.py +143 -0
  198. package/md_cg/reconcile.py +228 -0
  199. package/md_cg/refindex.py +833 -833
  200. package/md_cg/refine.py +604 -604
  201. package/md_cg/review_cli.py +170 -0
  202. package/md_cg/roleviews.py +89 -89
  203. package/md_cg/routing.py +393 -365
  204. package/md_cg/run_tests.py +211 -0
  205. package/md_cg/scrub.py +13 -3
  206. package/md_cg/security.py +128 -18
  207. package/md_cg/self_state.py +1029 -1029
  208. package/md_cg/selfreport.py +152 -151
  209. package/md_cg/semantic/__init__.py +10 -10
  210. package/md_cg/semantic/canonical.py +122 -122
  211. package/md_cg/semantic/en_normalizer.py +364 -364
  212. package/md_cg/semantic/en_zh_map.json +28694 -0
  213. package/md_cg/semantic/export_en_zh_map.py +64 -0
  214. package/md_cg/semantic/unify.py +45 -0
  215. package/md_cg/semantic/zh_en_atoms.py +139 -139
  216. package/md_cg/signer.py +7 -4
  217. package/md_cg/sources.py +816 -582
  218. package/md_cg/statushdr.py +179 -179
  219. package/md_cg/stg.py +54 -37
  220. package/md_cg/subgraph.py +729 -729
  221. package/md_cg/sustain.py +35 -5
  222. package/md_cg/tasks.py +470 -470
  223. package/md_cg/test_access_hints.py +147 -0
  224. package/md_cg/test_action_derive.py +203 -203
  225. package/md_cg/test_audit_rotate.py +270 -270
  226. package/md_cg/test_autonomy.py +143 -143
  227. package/md_cg/test_bench_governance.py +102 -102
  228. package/md_cg/test_blindspot_tickets.py +166 -166
  229. package/md_cg/test_branch_discard_tombstone.py +136 -0
  230. package/md_cg/test_branches.py +13 -3
  231. package/md_cg/test_ccg_perturb.py +184 -184
  232. package/md_cg/test_ccgc.py +433 -433
  233. package/md_cg/test_census_prune.py +81 -81
  234. package/md_cg/test_chain_read_isolate.py +168 -0
  235. package/md_cg/test_cond_compose_anchors.py +76 -76
  236. package/md_cg/test_cond_match.py +165 -165
  237. package/md_cg/test_condition_anchor.py +81 -81
  238. package/md_cg/test_d_meta.py +412 -412
  239. package/md_cg/test_datapath_device_name.py +203 -0
  240. package/md_cg/test_datapath_root.py +199 -199
  241. package/md_cg/test_emit_negtail_cache.py +156 -0
  242. package/md_cg/test_en_pipeline.py +22 -2
  243. package/md_cg/test_gain_gate.py +212 -212
  244. package/md_cg/test_govern_directread.py +421 -0
  245. package/md_cg/test_health_scale.py +173 -173
  246. package/md_cg/test_hive_ingest.py +285 -0
  247. package/md_cg/test_hot_cold.py +215 -215
  248. package/md_cg/test_hyperedge.py +245 -245
  249. package/md_cg/test_i26_empty_first_write.py +116 -0
  250. package/md_cg/test_i27_e041_identity.py +128 -0
  251. package/md_cg/test_i28_hotcache_prodpath.py +122 -0
  252. package/md_cg/test_i32_hotcache_env_key.py +218 -0
  253. package/md_cg/test_identity_attribution.py +96 -15
  254. package/md_cg/test_index_durability.py +17 -3
  255. package/md_cg/test_interop.py +95 -0
  256. package/md_cg/test_interop_judgment.py +228 -0
  257. package/md_cg/test_issue39_utf8_stdio.py +273 -0
  258. package/md_cg/test_lifecycle.py +309 -309
  259. package/md_cg/test_linkref.py +306 -306
  260. package/md_cg/test_links_concurrent_write.py +188 -0
  261. package/md_cg/test_lock.py +43 -43
  262. package/md_cg/test_md_access_parity.py +255 -255
  263. package/md_cg/test_md_writepath.py +345 -345
  264. package/md_cg/test_mdstore_search_parity.py +160 -0
  265. package/md_cg/test_merge_upsert.py +168 -0
  266. package/md_cg/test_mr_m2.py +587 -587
  267. package/md_cg/test_mr_m3.py +710 -710
  268. package/md_cg/test_mr_m4.py +485 -485
  269. package/md_cg/test_n123_derive_expiry_chain.py +205 -0
  270. package/md_cg/test_n130_verify_falsified_protect.py +185 -0
  271. package/md_cg/test_n131_merge_gate.py +205 -0
  272. package/md_cg/test_p0.py +250 -250
  273. package/md_cg/test_p1.py +316 -316
  274. package/md_cg/test_p10_identity.py +173 -173
  275. package/md_cg/test_p11_consistency.py +233 -233
  276. package/md_cg/test_p12_metacognition.py +212 -212
  277. package/md_cg/test_p13_encryption.py +241 -241
  278. package/md_cg/test_p14_sustain.py +249 -249
  279. package/md_cg/test_p15_scrub.py +280 -280
  280. package/md_cg/test_p16_self_state.py +301 -301
  281. package/md_cg/test_p17_predict.py +354 -354
  282. package/md_cg/test_p18_whitebox.py +171 -171
  283. package/md_cg/test_p19_migrate_roleplay.py +149 -149
  284. package/md_cg/test_p1x_ref_root.py +160 -0
  285. package/md_cg/test_p20_evolution.py +315 -315
  286. package/md_cg/test_p21_tokens.py +293 -270
  287. package/md_cg/test_p22_theory.py +175 -175
  288. package/md_cg/test_p23_links.py +311 -311
  289. package/md_cg/test_p24_evidence.py +227 -227
  290. package/md_cg/test_p25_weights.py +156 -156
  291. package/md_cg/test_p26_refindex.py +416 -416
  292. package/md_cg/test_p27_docindex.py +16 -7
  293. package/md_cg/test_p28_refcheck.py +305 -305
  294. package/md_cg/test_p29_session_ingest_export.py +354 -333
  295. package/md_cg/test_p2_mcp.py +3 -0
  296. package/md_cg/test_p3.py +11 -2
  297. package/md_cg/test_p30_maintain.py +330 -330
  298. package/md_cg/test_p31_insight.py +534 -534
  299. package/md_cg/test_p32_backfill.py +7 -1
  300. package/md_cg/test_p33_ccg_wiring.py +293 -293
  301. package/md_cg/test_p34_crosscheck.py +331 -331
  302. package/md_cg/test_p35_conditioned_claim.py +252 -252
  303. package/md_cg/test_p36_kp_align.py +230 -230
  304. package/md_cg/test_p37_condition_space.py +248 -248
  305. package/md_cg/test_p38_concurrent_flush.py +102 -0
  306. package/md_cg/test_p38_contextualize.py +273 -273
  307. package/md_cg/test_p39_verify_flow.py +153 -0
  308. package/md_cg/test_p39_vision_evidence.py +369 -369
  309. package/md_cg/test_p40_refine_worklist.py +241 -241
  310. package/md_cg/test_p41_evolve_patrol.py +224 -224
  311. package/md_cg/test_p42_provenance.py +269 -269
  312. package/md_cg/test_p43_pooling.py +412 -398
  313. package/md_cg/test_p44_md_whitebox.py +231 -231
  314. package/md_cg/test_p45_session_identity.py +219 -219
  315. package/md_cg/test_p46_unit_scope.py +272 -272
  316. package/md_cg/test_p47_session_view.py +316 -0
  317. package/md_cg/test_p4_fuzzy.py +223 -223
  318. package/md_cg/test_p5_semantic.py +226 -226
  319. package/md_cg/test_p6_consolidate.py +440 -387
  320. package/md_cg/test_p7_goals_recent.py +202 -202
  321. package/md_cg/test_p8_subgraph_chain.py +200 -200
  322. package/md_cg/test_p9_forget_protect.py +231 -231
  323. package/md_cg/test_predict_beta.py +135 -135
  324. package/md_cg/test_preflight_failclosed.py +100 -100
  325. package/md_cg/test_progressive.py +146 -146
  326. package/md_cg/test_propose_tail_index.py +157 -0
  327. package/md_cg/test_protocol.py +243 -243
  328. package/md_cg/test_reach.py +378 -378
  329. package/md_cg/test_reach_keys.py +201 -201
  330. package/md_cg/test_read_clip.py +141 -141
  331. package/md_cg/test_read_scope_b27.py +277 -0
  332. package/md_cg/test_readcache_default_on.py +168 -0
  333. package/md_cg/test_readcache_precise_inval.py +270 -0
  334. package/md_cg/test_readcache_prodpath.py +203 -0
  335. package/md_cg/test_reconcile_v0.py +294 -0
  336. package/md_cg/test_retr_gates_prodpath.py +140 -0
  337. package/md_cg/test_retr_s1.py +344 -340
  338. package/md_cg/test_retr_s1b.py +276 -209
  339. package/md_cg/test_retr_s3.py +194 -194
  340. package/md_cg/test_retr_s4.py +163 -163
  341. package/md_cg/test_retr_s5.py +200 -200
  342. package/md_cg/test_retr_s6.py +157 -157
  343. package/md_cg/test_retr_s7.py +392 -384
  344. package/md_cg/test_retr_s8_time.py +369 -316
  345. package/md_cg/test_retr_s9_edges.py +286 -286
  346. package/md_cg/test_retr_s9_entity_ctx.py +9 -3
  347. package/md_cg/test_retr_score_once.py +208 -0
  348. package/md_cg/test_review_conformance.py +367 -367
  349. package/md_cg/test_review_onepass.py +170 -0
  350. package/md_cg/test_role_views.py +354 -354
  351. package/md_cg/test_rrf_graph_seed_cache.py +154 -0
  352. package/md_cg/test_security_audit.py +155 -0
  353. package/md_cg/test_security_audit_b26.py +161 -0
  354. package/md_cg/test_security_audit_v21.py +250 -0
  355. package/md_cg/test_sem_noise.py +242 -242
  356. package/md_cg/test_semantic_canonical.py +16 -2
  357. package/md_cg/test_session_isolation.py +168 -0
  358. package/md_cg/test_snapshot_autoclose.py +187 -0
  359. package/md_cg/test_subproc_encoding.py +192 -192
  360. package/md_cg/test_sustain_mutual.py +153 -153
  361. package/md_cg/test_tail_watermark_race.py +208 -0
  362. package/md_cg/test_tasks.py +409 -409
  363. package/md_cg/test_tenant_env_override_warn.py +139 -0
  364. package/md_cg/test_tenant_registry_corrupt_warn.py +151 -0
  365. package/md_cg/test_tool_face.py +189 -189
  366. package/md_cg/test_transfer.py +180 -180
  367. package/md_cg/test_trust.py +361 -361
  368. package/md_cg/test_twophase.py +286 -286
  369. package/md_cg/test_v14_fixes.py +38 -20
  370. package/md_cg/test_validity_filter.py +280 -280
  371. package/md_cg/test_verify_answer.py +138 -138
  372. package/md_cg/test_verify_dirty_reconcile.py +157 -0
  373. package/md_cg/test_wisdom_md_store.py +292 -292
  374. package/md_cg/test_writelimit.py +197 -197
  375. package/md_cg/test_writepipe.py +214 -214
  376. package/md_cg/theory.py +6 -3
  377. package/md_cg/tokens.py +85 -14
  378. package/md_cg/tool_face.py +260 -260
  379. package/md_cg/trust.py +986 -950
  380. package/md_cg/twophase.py +231 -231
  381. package/md_cg/units.py +668 -667
  382. package/md_cg/vision_evidence.py +667 -666
  383. package/md_cg/weights.py +624 -624
  384. package/md_cg/whitebox.py +527 -527
  385. package/md_cg/whitebox_kb/__init__.py +37 -37
  386. package/md_cg/whitebox_kb/aeis_core/__init__.py +42 -42
  387. package/md_cg/whitebox_kb/aeis_core/semantic.py +280 -280
  388. package/md_cg/whitebox_kb/aeis_core/textutil.py +13 -13
  389. package/md_cg/whitebox_kb/engine.py +310 -310
  390. package/md_cg/whitebox_kb/seed_knowledge//346/231/272/350/203/275/350/256/2723.4.md +5260 -5260
  391. package/md_cg/whitebox_kb/wisdom/browser_units.py +2631 -2631
  392. package/md_cg/whitebox_kb/wisdom/causal_discover.py +432 -432
  393. package/md_cg/whitebox_kb/wisdom/chat_engine.py +1506 -1506
  394. package/md_cg/whitebox_kb/wisdom/compiler_code_units.py +3033 -3033
  395. package/md_cg/whitebox_kb/wisdom/condition_algebra.py +112 -112
  396. package/md_cg/whitebox_kb/wisdom/condition_frame.py +315 -315
  397. package/md_cg/whitebox_kb/wisdom/condition_kb.py +108 -108
  398. package/md_cg/whitebox_kb/wisdom/conflict_map.json +4445 -4445
  399. package/md_cg/whitebox_kb/wisdom/core/lexer.py +512 -512
  400. package/md_cg/whitebox_kb/wisdom/core/name_checker.py +1023 -1023
  401. package/md_cg/whitebox_kb/wisdom/cspmn.py +258 -258
  402. package/md_cg/whitebox_kb/wisdom/csre.py +264 -264
  403. package/md_cg/whitebox_kb/wisdom/danmaku_audit.py +252 -252
  404. package/md_cg/whitebox_kb/wisdom/distilled_condition_units.json +6417 -6417
  405. package/md_cg/whitebox_kb/wisdom/docs/WB-EVAL-20260902b.json +1950 -1950
  406. package/md_cg/whitebox_kb/wisdom/docs/WB-EVAL-20260902c.json +1296 -1296
  407. package/md_cg/whitebox_kb/wisdom/docs/whitebox_capability_graph_demo.json +59 -59
  408. package/md_cg/whitebox_kb/wisdom/graph_db_units.py +3089 -3089
  409. package/md_cg/whitebox_kb/wisdom/knowledge_points.py +318 -318
  410. package/md_cg/whitebox_kb/wisdom/md_access.py +470 -470
  411. package/md_cg/whitebox_kb/wisdom/md_store.py +276 -251
  412. package/md_cg/whitebox_kb/wisdom/migrate_wisdom.py +476 -476
  413. package/md_cg/whitebox_kb/wisdom/multilang_ir.py +128 -124
  414. package/md_cg/whitebox_kb/wisdom/navigate.py +248 -248
  415. package/md_cg/whitebox_kb/wisdom/neural_retrieve.py +224 -224
  416. package/md_cg/whitebox_kb/wisdom/os_units.py +2735 -2735
  417. package/md_cg/whitebox_kb/wisdom/pattern_separation.py +376 -376
  418. package/md_cg/whitebox_kb/wisdom/prereq_map.json +364 -364
  419. package/md_cg/whitebox_kb/wisdom/python_code_units.py +2766 -2766
  420. package/md_cg/whitebox_kb/wisdom/role_solidified.json +7 -7
  421. package/md_cg/whitebox_kb/wisdom/route_memory.py +244 -244
  422. package/md_cg/whitebox_kb/wisdom/scene_reconstruction.py +148 -148
  423. package/md_cg/whitebox_kb/wisdom/snr_report.json +40 -40
  424. package/md_cg/whitebox_kb/wisdom/test_code_compose_domains.py +7541 -7541
  425. package/md_cg/whitebox_kb/wisdom/test_compiler_self_bootstrap.py +354 -354
  426. package/md_cg/whitebox_kb/wisdom/test_ecosystem_assembly.py +158 -158
  427. package/md_cg/whitebox_kb/wisdom/test_ecosystem_demos.py +193 -193
  428. package/md_cg/whitebox_kb/wisdom/test_graph_db.py +292 -292
  429. package/md_cg/whitebox_kb/wisdom/test_python_self_bootstrap.py +160 -160
  430. package/md_cg/whitebox_kb/wisdom/trigger_words_index.json +4366 -4366
  431. package/md_cg/whitebox_kb/wisdom/verifier.py +1297 -1297
  432. package/md_cg/writelimit.py +356 -356
  433. package/md_cg/writepipe.py +20 -8
  434. package/package.json +101 -96
  435. package/skills/plugin.json +54 -54
  436. package/skills/skills/designer-perspective/SKILL.md +158 -158
  437. package/skills/skills/designer-perspective/references/01-observation-position.md +66 -66
  438. package/skills/skills/designer-perspective/references/02-structure-recognition.md +62 -62
  439. package/skills/skills/designer-perspective/references/03-direction-judgment.md +55 -55
  440. package/skills/skills/designer-perspective/references/04-qualification-verdict.md +72 -72
  441. package/skills/skills/designer-perspective/references/05-condition-attribution.md +74 -74
  442. package/skills/skills/designer-perspective/scripts/designer.py +545 -545
  443. package/skills/skills/designer-perspective/tests/cases.jsonl +17 -17
  444. package/skills/skills/designer-perspective/tests/selftest.py +61 -61
  445. package/skills/skills/lingshu-browser/SKILL.md +60 -60
  446. package/skills/skills/lingshu-compiler/SKILL.md +56 -56
  447. package/skills/skills/lingshu-compiler/units/analyze-type-infer/SKILL.md +45 -45
  448. package/skills/skills/lingshu-compiler/units/check-name-real/SKILL.md +45 -45
  449. package/skills/skills/lingshu-compiler/units/compile-assign/SKILL.md +45 -45
  450. package/skills/skills/lingshu-compiler/units/compile-expr-tree/SKILL.md +45 -45
  451. package/skills/skills/lingshu-compiler/units/compile-full-pipeline/SKILL.md +45 -45
  452. package/skills/skills/lingshu-compiler/units/compile-func-def/SKILL.md +45 -45
  453. package/skills/skills/lingshu-compiler/units/compile-if-then/SKILL.md +45 -45
  454. package/skills/skills/lingshu-compiler/units/compile-logic-expr/SKILL.md +45 -45
  455. package/skills/skills/lingshu-compiler/units/compile-recursive/SKILL.md +45 -45
  456. package/skills/skills/lingshu-compiler/units/compile-scope/SKILL.md +45 -45
  457. package/skills/skills/lingshu-compiler/units/compile-type-check/SKILL.md +45 -45
  458. package/skills/skills/lingshu-compiler/units/compile-while/SKILL.md +45 -45
  459. package/skills/skills/lingshu-compiler/units/compiler-0010c4bf/SKILL.md +45 -45
  460. package/skills/skills/lingshu-compiler/units/compiler-0355bffb/SKILL.md +45 -45
  461. package/skills/skills/lingshu-compiler/units/compiler-0361708a/SKILL.md +45 -45
  462. package/skills/skills/lingshu-compiler/units/compiler-054a0414/SKILL.md +45 -45
  463. package/skills/skills/lingshu-compiler/units/compiler-05a1691a/SKILL.md +45 -45
  464. package/skills/skills/lingshu-compiler/units/compiler-05eeed1e/SKILL.md +45 -45
  465. package/skills/skills/lingshu-compiler/units/compiler-0622a1f6/SKILL.md +45 -45
  466. package/skills/skills/lingshu-compiler/units/compiler-08b54217/SKILL.md +45 -45
  467. package/skills/skills/lingshu-compiler/units/compiler-0a62b70c/SKILL.md +45 -45
  468. package/skills/skills/lingshu-compiler/units/compiler-0ab24d00/SKILL.md +45 -45
  469. package/skills/skills/lingshu-compiler/units/compiler-0e093688/SKILL.md +45 -45
  470. package/skills/skills/lingshu-compiler/units/compiler-0e82b966/SKILL.md +45 -45
  471. package/skills/skills/lingshu-compiler/units/compiler-0ee9b9b9/SKILL.md +45 -45
  472. package/skills/skills/lingshu-compiler/units/compiler-0f3787e6/SKILL.md +45 -45
  473. package/skills/skills/lingshu-compiler/units/compiler-1028685f/SKILL.md +45 -45
  474. package/skills/skills/lingshu-compiler/units/compiler-11897630/SKILL.md +45 -45
  475. package/skills/skills/lingshu-compiler/units/compiler-16661b9b/SKILL.md +45 -45
  476. package/skills/skills/lingshu-compiler/units/compiler-1f722303/SKILL.md +45 -45
  477. package/skills/skills/lingshu-compiler/units/compiler-25be1262/SKILL.md +45 -45
  478. package/skills/skills/lingshu-compiler/units/compiler-2a76ba07/SKILL.md +45 -45
  479. package/skills/skills/lingshu-compiler/units/compiler-2dbea54a/SKILL.md +45 -45
  480. package/skills/skills/lingshu-compiler/units/compiler-2df52f16/SKILL.md +45 -45
  481. package/skills/skills/lingshu-compiler/units/compiler-2ec2c9d2/SKILL.md +45 -45
  482. package/skills/skills/lingshu-compiler/units/compiler-2f8c8f39/SKILL.md +45 -45
  483. package/skills/skills/lingshu-compiler/units/compiler-38378ac7/SKILL.md +45 -45
  484. package/skills/skills/lingshu-compiler/units/compiler-39457d2e/SKILL.md +45 -45
  485. package/skills/skills/lingshu-compiler/units/compiler-39fb5926/SKILL.md +45 -45
  486. package/skills/skills/lingshu-compiler/units/compiler-47f4fbfa/SKILL.md +45 -45
  487. package/skills/skills/lingshu-compiler/units/compiler-4a8cd1f1/SKILL.md +45 -45
  488. package/skills/skills/lingshu-compiler/units/compiler-4b230b6b/SKILL.md +45 -45
  489. package/skills/skills/lingshu-compiler/units/compiler-4cbbda95/SKILL.md +45 -45
  490. package/skills/skills/lingshu-compiler/units/compiler-4d5a68ff/SKILL.md +45 -45
  491. package/skills/skills/lingshu-compiler/units/compiler-56dc9bdd/SKILL.md +45 -45
  492. package/skills/skills/lingshu-compiler/units/compiler-57e76ebe/SKILL.md +45 -45
  493. package/skills/skills/lingshu-compiler/units/compiler-61ff016b/SKILL.md +45 -45
  494. package/skills/skills/lingshu-compiler/units/compiler-63eae588/SKILL.md +45 -45
  495. package/skills/skills/lingshu-compiler/units/compiler-64c4224b/SKILL.md +45 -45
  496. package/skills/skills/lingshu-compiler/units/compiler-66377955/SKILL.md +45 -45
  497. package/skills/skills/lingshu-compiler/units/compiler-674ab4f6/SKILL.md +45 -45
  498. package/skills/skills/lingshu-compiler/units/compiler-6af76fd6/SKILL.md +45 -45
  499. package/skills/skills/lingshu-compiler/units/compiler-6d979db2/SKILL.md +45 -45
  500. package/skills/skills/lingshu-compiler/units/compiler-6de326c0/SKILL.md +45 -45
  501. package/skills/skills/lingshu-compiler/units/compiler-6f1c0eea/SKILL.md +45 -45
  502. package/skills/skills/lingshu-compiler/units/compiler-724d6c9b/SKILL.md +45 -45
  503. package/skills/skills/lingshu-compiler/units/compiler-7690177f/SKILL.md +45 -45
  504. package/skills/skills/lingshu-compiler/units/compiler-7b229a7d/SKILL.md +45 -45
  505. package/skills/skills/lingshu-compiler/units/compiler-7f471b3a/SKILL.md +45 -45
  506. package/skills/skills/lingshu-compiler/units/compiler-815cad08/SKILL.md +45 -45
  507. package/skills/skills/lingshu-compiler/units/compiler-83c61634/SKILL.md +45 -45
  508. package/skills/skills/lingshu-compiler/units/compiler-8c798c81/SKILL.md +45 -45
  509. package/skills/skills/lingshu-compiler/units/compiler-8dd747ac/SKILL.md +45 -45
  510. package/skills/skills/lingshu-compiler/units/compiler-90324d0a/SKILL.md +45 -45
  511. package/skills/skills/lingshu-compiler/units/compiler-94b8d72d/SKILL.md +45 -45
  512. package/skills/skills/lingshu-compiler/units/compiler-94f12231/SKILL.md +45 -45
  513. package/skills/skills/lingshu-compiler/units/compiler-95937c16/SKILL.md +45 -45
  514. package/skills/skills/lingshu-compiler/units/compiler-98a5625b/SKILL.md +45 -45
  515. package/skills/skills/lingshu-compiler/units/compiler-98b4c42f/SKILL.md +45 -45
  516. package/skills/skills/lingshu-compiler/units/compiler-98e3894a/SKILL.md +45 -45
  517. package/skills/skills/lingshu-compiler/units/compiler-9bdfe4b8/SKILL.md +45 -45
  518. package/skills/skills/lingshu-compiler/units/compiler-9d9b4e83/SKILL.md +45 -45
  519. package/skills/skills/lingshu-compiler/units/compiler-9f7be5ad/SKILL.md +45 -45
  520. package/skills/skills/lingshu-compiler/units/compiler-a6daf076/SKILL.md +45 -45
  521. package/skills/skills/lingshu-compiler/units/compiler-a7995a0c/SKILL.md +45 -45
  522. package/skills/skills/lingshu-compiler/units/compiler-a8399248/SKILL.md +45 -45
  523. package/skills/skills/lingshu-compiler/units/compiler-aabbd099/SKILL.md +45 -45
  524. package/skills/skills/lingshu-compiler/units/compiler-afe169d8/SKILL.md +45 -45
  525. package/skills/skills/lingshu-compiler/units/compiler-b0678bda/SKILL.md +45 -45
  526. package/skills/skills/lingshu-compiler/units/compiler-b09bd196/SKILL.md +45 -45
  527. package/skills/skills/lingshu-compiler/units/compiler-b1396e23/SKILL.md +45 -45
  528. package/skills/skills/lingshu-compiler/units/compiler-b9b31ce0/SKILL.md +45 -45
  529. package/skills/skills/lingshu-compiler/units/compiler-c10264a7/SKILL.md +45 -45
  530. package/skills/skills/lingshu-compiler/units/compiler-cb1e8e4b/SKILL.md +45 -45
  531. package/skills/skills/lingshu-compiler/units/compiler-ccafd438/SKILL.md +45 -45
  532. package/skills/skills/lingshu-compiler/units/compiler-cda9c262/SKILL.md +45 -45
  533. package/skills/skills/lingshu-compiler/units/compiler-ce648068/SKILL.md +45 -45
  534. package/skills/skills/lingshu-compiler/units/compiler-cf5776a4/SKILL.md +45 -45
  535. package/skills/skills/lingshu-compiler/units/compiler-d974e5d3/SKILL.md +45 -45
  536. package/skills/skills/lingshu-compiler/units/compiler-e3979fd3/SKILL.md +45 -45
  537. package/skills/skills/lingshu-compiler/units/compiler-eb1cf2b5/SKILL.md +45 -45
  538. package/skills/skills/lingshu-compiler/units/compiler-ecb30d5b/SKILL.md +45 -45
  539. package/skills/skills/lingshu-compiler/units/compiler-f8c8b24b/SKILL.md +45 -45
  540. package/skills/skills/lingshu-compiler/units/compiler-f99fedbe/SKILL.md +45 -45
  541. package/skills/skills/lingshu-compiler/units/compiler-fa8ff5f7/SKILL.md +45 -45
  542. package/skills/skills/lingshu-compiler/units/compiler-fe1b058d/SKILL.md +45 -45
  543. package/skills/skills/lingshu-compiler/units/lex-chinese-program/SKILL.md +45 -45
  544. package/skills/skills/lingshu-compiler/units/lex-dao-de-jing/SKILL.md +45 -45
  545. package/skills/skills/lingshu-compiler/units/lex-nine-chapters/SKILL.md +45 -45
  546. package/skills/skills/lingshu-compiler/units/vm-arithmetic/SKILL.md +45 -45
  547. package/skills/skills/lingshu-compiler/units/vm-array-ops/SKILL.md +45 -45
  548. package/skills/skills/lingshu-compiler/units/vm-closure-call/SKILL.md +45 -45
  549. package/skills/skills/lingshu-compiler/units/vm-closure-create/SKILL.md +45 -45
  550. package/skills/skills/lingshu-compiler/units/vm-compare/SKILL.md +45 -45
  551. package/skills/skills/lingshu-compiler/units/vm-cond-jump/SKILL.md +45 -45
  552. package/skills/skills/lingshu-compiler/units/vm-cond-space/SKILL.md +45 -45
  553. package/skills/skills/lingshu-compiler/units/vm-exception/SKILL.md +45 -45
  554. package/skills/skills/lingshu-compiler/units/vm-func-call/SKILL.md +45 -45
  555. package/skills/skills/lingshu-compiler/units/vm-loop-run/SKILL.md +45 -45
  556. package/skills/skills/lingshu-compiler/units/vm-profiling/SKILL.md +45 -45
  557. package/skills/skills/lingshu-compiler/units/vm-refcount/SKILL.md +45 -45
  558. package/skills/skills/lingshu-compiler/units/vm-run-loop/SKILL.md +45 -45
  559. package/skills/skills/lingshu-compiler/units/vm-short-circuit/SKILL.md +45 -45
  560. package/skills/skills/lingshu-compiler/units/vm-stack-guard/SKILL.md +45 -45
  561. package/skills/skills/lingshu-compiler/units/vm-stack-ops/SKILL.md +45 -45
  562. package/skills/skills/lingshu-compiler/units/vm-trust-accum/SKILL.md +45 -45
  563. package/skills/skills/lingshu-graph/SKILL.md +63 -63
  564. package/skills/skills/lingshu-net/SKILL.md +48 -48
  565. package/skills/skills/lingshu-os/SKILL.md +64 -64
  566. package/skills/skills/lingshu-pylang/SKILL.md +71 -71
  567. package/src/bridge.ts +33 -0
  568. package/src/hooks.ts +38 -2
  569. package/src/index.ts +526 -518
  570. package/src/lib/datapath.ts +326 -326
  571. package/src/lib/mdcg_client.ts +413 -413
  572. package/src/lib/mutual.ts +428 -428
  573. package/src/lib/prompt_safety.ts +62 -62
  574. package/src/lib/python_path.ts +71 -71
  575. package/src/lib/roleplay_web.ts +116 -29
  576. package/src/lib/token_store.ts +13 -3
  577. package/src/tools.ts +212 -212
  578. package/zcode/AGENTS.md +11 -3
  579. package/zcode/README.md +41 -41
  580. /package/docs/{mdcg → hive}//344/270/273/344/273/243/347/220/206/345/255/220/344/273/243/347/220/206/350/256/260/345/277/206/346/236/266/346/236/204/350/256/276/350/256/241.md" +0 -0
@@ -1,64 +1,64 @@
1
- ---
2
- name: lingshu-os
3
- description: >-
4
- 灵枢白箱条件单元域入口:操作系统(112 单元 / 18 子域)。触发词:进程、线程、调度、内存管理、文件系统、系统调用、并发、中断。
5
- 场景:任务命中本域任一子域主题时使用。先查下方路由表定位单元,语义模糊时经 mdcg cg op=route 路由;
6
- 单元正文在 units/<slug>/SKILL.md 按需回读(KCCS 四要素在各单元内,不随本入口加载)。
7
- 【不适用】Not for:任务不属于本域任何子域主题(负路由);跨域方向判断改用 designer-perspective 元技能。
8
- license: MIT
9
- allowed-tools: Read Grep Glob Bash
10
- metadata:
11
- version: "2.0"
12
- skill-author: 灵枢(AEIS)
13
- last-reviewed: "2026-09-11"
14
- domain: os
15
- unit-count: 112
16
- kccs:
17
- trigger_words: ["文件", "系统", "内存", "进程", "调度", "并发", "安全", "IPC", "中断", "存储", "设备", "可信"]
18
- when: "任务命中本域单元的生效条件(子域主题见路由表;单元级条件在 units/<slug>/SKILL.md)"
19
- sub: ["文件", "系统", "内存", "进程", "调度", "并发", "安全", "IPC", "中断", "存储", "设备", "可信", "性能", "系统调用", "启动", "虚拟化", "信号", "容器"]
20
- execute: "① 定位:路由表或 mdcg cg op=route → ② 回读 units/<slug>/SKILL.md → ③ 按单元 KCCS 执行 → ④ 验证交灵枢 MCP(编译/运行/断言)"
21
- not_applicable: ["任务不属于本域任何子域主题(负路由)", "需要全局观测/资格裁决时改用 designer-perspective(元技能不执行操作层)"]
22
- ---
23
-
24
- # 灵枢 操作系统域入口(lingshu-os)
25
-
26
- 白箱条件单元域入口(v2.0 层级化重组)。本域 112 个单元收纳于 `units/`,
27
- 本文件只承载**子域路由**——description 进上下文做域级命中,单元按需回读。
28
-
29
- ## 路由表(子域 → 单元)
30
-
31
- | 子域 | 数 | 单元(slug · 中文主题)|
32
- |---|---|---|
33
- | 文件 | 21 | `os-0c7f14cb` · 文件-稀疏文件(os-0c7f14cb)、`os-1d3bcf28` · 文件-系统挂载(os-1d3bcf28)、`os-350bc623` · 文件-内存映射(os-350bc623)、`os-35ee1a30` · 文件-文件权限(os-35ee1a30)、`os-3e9405d2` · 文件-RAID条带(os-3e9405d2)、`os-55672763` · 文件-目录树(os-55672763)、`os-5582bce6` · 文件-日志恢复(os-5582bce6)、`os-607f1963` · 文件-磁盘配额(os-607f1963)、`os-62f9278b` · 文件-RAID奇偶校验(os-62f9278b)、`os-6b0a68bf` · 文件-文件锁(os-6b0a68bf)、`os-819f3093` · 文件-写时复制快照(os-819f3093)、`os-83670c2b` · 文件-文件压缩(os-83670c2b)、`os-878c18b3` · 文件-文件系统日志(os-878c18b3)、`os-b776ade1` · 文件-路径解析(os-b776ade1)、`os-c980a25d` · 文件-inode(os-c980a25d)、`os-cfa66a1b` · 文件-块管理(os-cfa66a1b)、`os-da482caf` · 文件-链接管理(os-da482caf)、`os-dd4ff45e` · 文件-文件版本(os-dd4ff45e)、`os-e0ad3364` · 文件-文件系统快照(os-e0ad3364)、`os-ea444e45` · 文件-文件描述符(os-ea444e45)、`os-ecfceae7` · 文件-元数据查询(os-ecfceae7) |
34
- | 系统 | 15 | `os-027dc9be` · 系统-日志轮转(os-027dc9be)、`os-06fa98ed` · 系统-固件接口(os-06fa98ed)、`os-128f3820` · 系统-模块加载(os-128f3820)、`os-1898928a` · 系统-监控指标(os-1898928a)、`os-26a4f86a` · 系统-权限提升(os-26a4f86a)、`os-2ea9a5ff` · 系统-资源限额(os-2ea9a5ff)、`os-3db42aac` · 系统-网络接口(os-3db42aac)、`os-97aacf40` · 系统-电源管理(os-97aacf40)、`os-abd48f17` · 系统-环境变量(os-abd48f17)、`os-c3d5cd44` · 系统-定时任务(os-c3d5cd44)、`os-c9f8df6e` · 系统-服务管理(os-c9f8df6e)、`os-ebc34d83` · 系统-设备驱动(os-ebc34d83)、`os-ed8de3a3` · 系统-配置管理(os-ed8de3a3)、`os-f69c0b08` · 系统-守护进程(os-f69c0b08)、`os-fcdd828d` · 系统-时钟节拍(os-fcdd828d) |
35
- | 内存 | 14 | `os-15796db5` · 内存-内存压缩(os-15796db5)、`os-192b8ca9` · 内存-段式管理(os-192b8ca9)、`os-1f224514` · 内存-分页分配(os-1f224514)、`os-3e0aff42` · 内存-页表映射(os-3e0aff42)、`os-485833fa` · 内存-页缓存(os-485833fa)、`os-512b1b6c` · 内存-伙伴系统(os-512b1b6c)、`os-6a1fe224` · 内存-页置换(os-6a1fe224)、`os-72e879a3` · 内存-首次适配(os-72e879a3)、`os-80cc3283` · 内存-缺页处理(os-80cc3283)、`os-9c86a7a2` · 内存-内存池(os-9c86a7a2)、`os-b6509cac` · 内存-页面错误(os-b6509cac)、`os-c7d35a30` · 内存-内存热插拔(os-c7d35a30)、`os-d237e500` · 内存-内存碎片(os-d237e500)、`os-f9bf8dd4` · 内存-写时复制(os-f9bf8dd4) |
36
- | 进程 | 10 | `os-03c0d7d6` · 进程-互斥锁(os-03c0d7d6)、`os-1234eb00` · 进程-时间片轮转(os-1234eb00)、`os-310dda5b` · 进程-调度(os-310dda5b)、`os-34ad4b62` · 进程-状态机(os-34ad4b62)、`os-3cd28220` · 进程-进程树(os-3cd28220)、`os-41d14544` · 进程-孤儿进程(os-41d14544)、`os-462f3ed4` · 进程-优先级继承(os-462f3ed4)、`os-5ca15108` · 进程-僵尸进程(os-5ca15108)、`os-c0fa71bd` · 进程-生命周期(os-c0fa71bd)、`os-c76b5a43` · 进程-进程组(os-c76b5a43) |
37
- | 调度 | 8 | `os-4c14cec2` · 调度-亲和性(os-4c14cec2)、`os-7598748a` · 调度-优先级(os-7598748a)、`os-92276145` · 调度-时间片轮转(os-92276145)、`os-955c4d66` · 调度-多级反馈队列(os-955c4d66)、`os-a568affe` · 调度-实时EDF(os-a568affe)、`os-b718657b` · 调度-多核均衡(os-b718657b)、`os-da0aadde` · 调度-SJF(os-da0aadde)、`os-ecbebbe3` · 调度-工作窃取(os-ecbebbe3) |
38
- | 并发 | 7 | `os-111ce1de` · 并发-信号量(os-111ce1de)、`os-29c96147` · 并发-读写锁(os-29c96147)、`os-300ef22c` · 并发-生产者消费者(os-300ef22c)、`os-313ef4ed` · 并发-屏障同步(os-313ef4ed)、`os-4f05d577` · 并发-自旋锁(os-4f05d577)、`os-6fb1ff58` · 并发-工作池(os-6fb1ff58)、`os-d39ef086` · 并发-条件变量(os-d39ef086) |
39
- | 安全 | 6 | `os-0205cf9b` · 安全-加密文件系统(os-0205cf9b)、`os-0854291c` · 安全-强制访问控制(os-0854291c)、`os-5192621b` · 安全-能力系统(os-5192621b)、`os-6e5cee67` · 安全-系统调用过滤(os-6e5cee67)、`os-89ed7af1` · 安全-审计日志(os-89ed7af1)、`os-bda92711` · 安全-访问控制(os-bda92711) |
40
- | IPC | 4 | `os-040b5505` · IPC-消息队列(os-040b5505)、`os-4bf77933` · IPC-管道(os-4bf77933)、`os-bd1fc177` · IPC-共享内存(os-bd1fc177)、`os-de0556c5` · IPC-邮箱(os-de0556c5) |
41
- | 中断 | 4 | `os-0d855af2` · 中断-上下文切换(os-0d855af2)、`os-4a1cf781` · 中断-软中断(os-4a1cf781)、`os-63797b86` · 中断-嵌套优先级(os-63797b86)、`os-cd9e686a` · 中断-向量表(os-cd9e686a) |
42
- | 存储 | 4 | `os-0e87e997` · 存储-磨损均衡(os-0e87e997)、`os-a13ce4aa` · 存储-磁盘调度SCAN(os-a13ce4aa)、`os-ba24fa08` · 存储-碎片整理(os-ba24fa08)、`os-cc49ef2f` · 存储-存储池(os-cc49ef2f) |
43
- | 设备 | 4 | `os-601663e1` · 设备-即插即用(os-601663e1)、`os-9b6ed02c` · 设备-字符设备(os-9b6ed02c)、`os-d4f9e813` · 设备-设备树(os-d4f9e813)、`os-f6ae6205` · 设备-热插拔(os-f6ae6205) |
44
- | 可信 | 3 | `os-509a4596` · 可信-哈希校验(os-509a4596)、`os-71389592` · 可信-TPM度量(os-71389592)、`os-d97915c0` · 可信-安全启动(os-d97915c0) |
45
- | 性能 | 3 | `os-8cb7279d` · 性能-瓶颈检测(os-8cb7279d)、`os-b0416edc` · 性能-调优建议(os-b0416edc)、`os-ea6e7e0b` · 性能-性能分析(os-ea6e7e0b) |
46
- | 系统调用 | 3 | `os-5a096a1f` · 系统调用-接口(os-5a096a1f)、`os-6158581b` · 系统调用-参数校验(os-6158581b)、`os-c7661eb1` · 系统调用-文件分派(os-c7661eb1) |
47
- | 启动 | 2 | `os-329a2147` · 启动-初始化流程(os-329a2147)、`os-3d84e0c9` · 启动-引导加载(os-3d84e0c9) |
48
- | 虚拟化 | 2 | `os-0f8ed882` · 虚拟化-命名空间(os-0f8ed882)、`os-c6b6a763` · 虚拟化-cgroup限制(os-c6b6a763) |
49
- | 信号 | 1 | `os-4f50ad0b` · 信号-信号处理(os-4f50ad0b) |
50
- | 容器 | 1 | `os-e7612c68` · 容器-生命周期(os-e7612c68) |
51
-
52
- ## 路由流程
53
-
54
- 1. **词面命中**:任务含子域/单元触发词 → 直接查上表回读对应单元
55
- 2. **语义模糊**:`mdcg cg op=route intent=<任务描述>` → 返回建议能力名与知识
56
- 3. **回读**:`units/<单元slug>/SKILL.md`(含 KCCS 四要素与验证样例)
57
- 4. **验证**:灵枢 MCP 工具物理执行(编译/运行/断言裁决),技能说"怎么验证"、MCP 负责"真去跑"
58
-
59
- ## 真源与纪律
60
-
61
- - 知识真源:`md_cg/whitebox_kb/wisdom/os_units.py`(KCCS 四要素唯一真源)
62
- - 本包为生成投影(2026-09-11 层级化重组 v2.0):单元内容零改动,仅目录收纳 + 域入口新增
63
- - 触发词全量索引:`md_cg/whitebox_kb/wisdom/trigger_words_index.json`
64
- - 变更须在真源层修改后重新导出(R6 变更验证),勿直接改本目录单元
1
+ ---
2
+ name: lingshu-os
3
+ description: >-
4
+ 灵枢白箱条件单元域入口:操作系统(112 单元 / 18 子域)。触发词:进程、线程、调度、内存管理、文件系统、系统调用、并发、中断。
5
+ 场景:任务命中本域任一子域主题时使用。先查下方路由表定位单元,语义模糊时经 mdcg cg op=route 路由;
6
+ 单元正文在 units/<slug>/SKILL.md 按需回读(KCCS 四要素在各单元内,不随本入口加载)。
7
+ 【不适用】Not for:任务不属于本域任何子域主题(负路由);跨域方向判断改用 designer-perspective 元技能。
8
+ license: MIT
9
+ allowed-tools: Read Grep Glob Bash
10
+ metadata:
11
+ version: "2.0"
12
+ skill-author: 灵枢(AEIS)
13
+ last-reviewed: "2026-09-11"
14
+ domain: os
15
+ unit-count: 112
16
+ kccs:
17
+ trigger_words: ["文件", "系统", "内存", "进程", "调度", "并发", "安全", "IPC", "中断", "存储", "设备", "可信"]
18
+ when: "任务命中本域单元的生效条件(子域主题见路由表;单元级条件在 units/<slug>/SKILL.md)"
19
+ sub: ["文件", "系统", "内存", "进程", "调度", "并发", "安全", "IPC", "中断", "存储", "设备", "可信", "性能", "系统调用", "启动", "虚拟化", "信号", "容器"]
20
+ execute: "① 定位:路由表或 mdcg cg op=route → ② 回读 units/<slug>/SKILL.md → ③ 按单元 KCCS 执行 → ④ 验证交灵枢 MCP(编译/运行/断言)"
21
+ not_applicable: ["任务不属于本域任何子域主题(负路由)", "需要全局观测/资格裁决时改用 designer-perspective(元技能不执行操作层)"]
22
+ ---
23
+
24
+ # 灵枢 操作系统域入口(lingshu-os)
25
+
26
+ 白箱条件单元域入口(v2.0 层级化重组)。本域 112 个单元收纳于 `units/`,
27
+ 本文件只承载**子域路由**——description 进上下文做域级命中,单元按需回读。
28
+
29
+ ## 路由表(子域 → 单元)
30
+
31
+ | 子域 | 数 | 单元(slug · 中文主题)|
32
+ |---|---|---|
33
+ | 文件 | 21 | `os-0c7f14cb` · 文件-稀疏文件(os-0c7f14cb)、`os-1d3bcf28` · 文件-系统挂载(os-1d3bcf28)、`os-350bc623` · 文件-内存映射(os-350bc623)、`os-35ee1a30` · 文件-文件权限(os-35ee1a30)、`os-3e9405d2` · 文件-RAID条带(os-3e9405d2)、`os-55672763` · 文件-目录树(os-55672763)、`os-5582bce6` · 文件-日志恢复(os-5582bce6)、`os-607f1963` · 文件-磁盘配额(os-607f1963)、`os-62f9278b` · 文件-RAID奇偶校验(os-62f9278b)、`os-6b0a68bf` · 文件-文件锁(os-6b0a68bf)、`os-819f3093` · 文件-写时复制快照(os-819f3093)、`os-83670c2b` · 文件-文件压缩(os-83670c2b)、`os-878c18b3` · 文件-文件系统日志(os-878c18b3)、`os-b776ade1` · 文件-路径解析(os-b776ade1)、`os-c980a25d` · 文件-inode(os-c980a25d)、`os-cfa66a1b` · 文件-块管理(os-cfa66a1b)、`os-da482caf` · 文件-链接管理(os-da482caf)、`os-dd4ff45e` · 文件-文件版本(os-dd4ff45e)、`os-e0ad3364` · 文件-文件系统快照(os-e0ad3364)、`os-ea444e45` · 文件-文件描述符(os-ea444e45)、`os-ecfceae7` · 文件-元数据查询(os-ecfceae7) |
34
+ | 系统 | 15 | `os-027dc9be` · 系统-日志轮转(os-027dc9be)、`os-06fa98ed` · 系统-固件接口(os-06fa98ed)、`os-128f3820` · 系统-模块加载(os-128f3820)、`os-1898928a` · 系统-监控指标(os-1898928a)、`os-26a4f86a` · 系统-权限提升(os-26a4f86a)、`os-2ea9a5ff` · 系统-资源限额(os-2ea9a5ff)、`os-3db42aac` · 系统-网络接口(os-3db42aac)、`os-97aacf40` · 系统-电源管理(os-97aacf40)、`os-abd48f17` · 系统-环境变量(os-abd48f17)、`os-c3d5cd44` · 系统-定时任务(os-c3d5cd44)、`os-c9f8df6e` · 系统-服务管理(os-c9f8df6e)、`os-ebc34d83` · 系统-设备驱动(os-ebc34d83)、`os-ed8de3a3` · 系统-配置管理(os-ed8de3a3)、`os-f69c0b08` · 系统-守护进程(os-f69c0b08)、`os-fcdd828d` · 系统-时钟节拍(os-fcdd828d) |
35
+ | 内存 | 14 | `os-15796db5` · 内存-内存压缩(os-15796db5)、`os-192b8ca9` · 内存-段式管理(os-192b8ca9)、`os-1f224514` · 内存-分页分配(os-1f224514)、`os-3e0aff42` · 内存-页表映射(os-3e0aff42)、`os-485833fa` · 内存-页缓存(os-485833fa)、`os-512b1b6c` · 内存-伙伴系统(os-512b1b6c)、`os-6a1fe224` · 内存-页置换(os-6a1fe224)、`os-72e879a3` · 内存-首次适配(os-72e879a3)、`os-80cc3283` · 内存-缺页处理(os-80cc3283)、`os-9c86a7a2` · 内存-内存池(os-9c86a7a2)、`os-b6509cac` · 内存-页面错误(os-b6509cac)、`os-c7d35a30` · 内存-内存热插拔(os-c7d35a30)、`os-d237e500` · 内存-内存碎片(os-d237e500)、`os-f9bf8dd4` · 内存-写时复制(os-f9bf8dd4) |
36
+ | 进程 | 10 | `os-03c0d7d6` · 进程-互斥锁(os-03c0d7d6)、`os-1234eb00` · 进程-时间片轮转(os-1234eb00)、`os-310dda5b` · 进程-调度(os-310dda5b)、`os-34ad4b62` · 进程-状态机(os-34ad4b62)、`os-3cd28220` · 进程-进程树(os-3cd28220)、`os-41d14544` · 进程-孤儿进程(os-41d14544)、`os-462f3ed4` · 进程-优先级继承(os-462f3ed4)、`os-5ca15108` · 进程-僵尸进程(os-5ca15108)、`os-c0fa71bd` · 进程-生命周期(os-c0fa71bd)、`os-c76b5a43` · 进程-进程组(os-c76b5a43) |
37
+ | 调度 | 8 | `os-4c14cec2` · 调度-亲和性(os-4c14cec2)、`os-7598748a` · 调度-优先级(os-7598748a)、`os-92276145` · 调度-时间片轮转(os-92276145)、`os-955c4d66` · 调度-多级反馈队列(os-955c4d66)、`os-a568affe` · 调度-实时EDF(os-a568affe)、`os-b718657b` · 调度-多核均衡(os-b718657b)、`os-da0aadde` · 调度-SJF(os-da0aadde)、`os-ecbebbe3` · 调度-工作窃取(os-ecbebbe3) |
38
+ | 并发 | 7 | `os-111ce1de` · 并发-信号量(os-111ce1de)、`os-29c96147` · 并发-读写锁(os-29c96147)、`os-300ef22c` · 并发-生产者消费者(os-300ef22c)、`os-313ef4ed` · 并发-屏障同步(os-313ef4ed)、`os-4f05d577` · 并发-自旋锁(os-4f05d577)、`os-6fb1ff58` · 并发-工作池(os-6fb1ff58)、`os-d39ef086` · 并发-条件变量(os-d39ef086) |
39
+ | 安全 | 6 | `os-0205cf9b` · 安全-加密文件系统(os-0205cf9b)、`os-0854291c` · 安全-强制访问控制(os-0854291c)、`os-5192621b` · 安全-能力系统(os-5192621b)、`os-6e5cee67` · 安全-系统调用过滤(os-6e5cee67)、`os-89ed7af1` · 安全-审计日志(os-89ed7af1)、`os-bda92711` · 安全-访问控制(os-bda92711) |
40
+ | IPC | 4 | `os-040b5505` · IPC-消息队列(os-040b5505)、`os-4bf77933` · IPC-管道(os-4bf77933)、`os-bd1fc177` · IPC-共享内存(os-bd1fc177)、`os-de0556c5` · IPC-邮箱(os-de0556c5) |
41
+ | 中断 | 4 | `os-0d855af2` · 中断-上下文切换(os-0d855af2)、`os-4a1cf781` · 中断-软中断(os-4a1cf781)、`os-63797b86` · 中断-嵌套优先级(os-63797b86)、`os-cd9e686a` · 中断-向量表(os-cd9e686a) |
42
+ | 存储 | 4 | `os-0e87e997` · 存储-磨损均衡(os-0e87e997)、`os-a13ce4aa` · 存储-磁盘调度SCAN(os-a13ce4aa)、`os-ba24fa08` · 存储-碎片整理(os-ba24fa08)、`os-cc49ef2f` · 存储-存储池(os-cc49ef2f) |
43
+ | 设备 | 4 | `os-601663e1` · 设备-即插即用(os-601663e1)、`os-9b6ed02c` · 设备-字符设备(os-9b6ed02c)、`os-d4f9e813` · 设备-设备树(os-d4f9e813)、`os-f6ae6205` · 设备-热插拔(os-f6ae6205) |
44
+ | 可信 | 3 | `os-509a4596` · 可信-哈希校验(os-509a4596)、`os-71389592` · 可信-TPM度量(os-71389592)、`os-d97915c0` · 可信-安全启动(os-d97915c0) |
45
+ | 性能 | 3 | `os-8cb7279d` · 性能-瓶颈检测(os-8cb7279d)、`os-b0416edc` · 性能-调优建议(os-b0416edc)、`os-ea6e7e0b` · 性能-性能分析(os-ea6e7e0b) |
46
+ | 系统调用 | 3 | `os-5a096a1f` · 系统调用-接口(os-5a096a1f)、`os-6158581b` · 系统调用-参数校验(os-6158581b)、`os-c7661eb1` · 系统调用-文件分派(os-c7661eb1) |
47
+ | 启动 | 2 | `os-329a2147` · 启动-初始化流程(os-329a2147)、`os-3d84e0c9` · 启动-引导加载(os-3d84e0c9) |
48
+ | 虚拟化 | 2 | `os-0f8ed882` · 虚拟化-命名空间(os-0f8ed882)、`os-c6b6a763` · 虚拟化-cgroup限制(os-c6b6a763) |
49
+ | 信号 | 1 | `os-4f50ad0b` · 信号-信号处理(os-4f50ad0b) |
50
+ | 容器 | 1 | `os-e7612c68` · 容器-生命周期(os-e7612c68) |
51
+
52
+ ## 路由流程
53
+
54
+ 1. **词面命中**:任务含子域/单元触发词 → 直接查上表回读对应单元
55
+ 2. **语义模糊**:`mdcg cg op=route intent=<任务描述>` → 返回建议能力名与知识
56
+ 3. **回读**:`units/<单元slug>/SKILL.md`(含 KCCS 四要素与验证样例)
57
+ 4. **验证**:灵枢 MCP 工具物理执行(编译/运行/断言裁决),技能说"怎么验证"、MCP 负责"真去跑"
58
+
59
+ ## 真源与纪律
60
+
61
+ - 知识真源:`md_cg/whitebox_kb/wisdom/os_units.py`(KCCS 四要素唯一真源)
62
+ - 本包为生成投影(2026-09-11 层级化重组 v2.0):单元内容零改动,仅目录收纳 + 域入口新增
63
+ - 触发词全量索引:`md_cg/whitebox_kb/wisdom/trigger_words_index.json`
64
+ - 变更须在真源层修改后重新导出(R6 变更验证),勿直接改本目录单元
@@ -1,71 +1,71 @@
1
- ---
2
- name: lingshu-pylang
3
- description: >-
4
- 灵枢白箱条件单元域入口:Python 语言机制(120 单元 / 25 子域)。触发词:Python、闭包、装饰器、异步、asyncio、推导式、数据结构、元编程。
5
- 场景:任务命中本域任一子域主题时使用。先查下方路由表定位单元,语义模糊时经 mdcg cg op=route 路由;
6
- 单元正文在 units/<slug>/SKILL.md 按需回读(KCCS 四要素在各单元内,不随本入口加载)。
7
- 【不适用】Not for:任务不属于本域任何子域主题(负路由);跨域方向判断改用 designer-perspective 元技能。
8
- license: MIT
9
- allowed-tools: Read Grep Glob Bash
10
- metadata:
11
- version: "2.0"
12
- skill-author: 灵枢(AEIS)
13
- last-reviewed: "2026-09-11"
14
- domain: pylang
15
- unit-count: 120
16
- kccs:
17
- trigger_words: ["工具", "数据结构", "异步", "异常", "面向对象", "元编程", "求值", "语法", "推导式", "类型", "闭包", "字符串"]
18
- when: "任务命中本域单元的生效条件(子域主题见路由表;单元级条件在 units/<slug>/SKILL.md)"
19
- sub: ["工具", "数据结构", "异步", "异常", "面向对象", "元编程", "求值", "语法", "推导式", "类型", "闭包", "字符串", "栈机", "上下文", "函数", "参数", "复合赋值", "环境", "生成器", "程序", "蜂群", "装饰器", "词法", "运算符", "迭代器"]
20
- execute: "① 定位:路由表或 mdcg cg op=route → ② 回读 units/<slug>/SKILL.md → ③ 按单元 KCCS 执行 → ④ 验证交灵枢 MCP(编译/运行/断言)"
21
- not_applicable: ["任务不属于本域任何子域主题(负路由)", "需要全局观测/资格裁决时改用 designer-perspective(元技能不执行操作层)"]
22
- ---
23
-
24
- # 灵枢 Python 语言机制域入口(lingshu-pylang)
25
-
26
- 白箱条件单元域入口(v2.0 层级化重组)。本域 120 个单元收纳于 `units/`,
27
- 本文件只承载**子域路由**——description 进上下文做域级命中,单元按需回读。
28
-
29
- ## 路由表(子域 → 单元)
30
-
31
- | 子域 | 数 | 单元(slug · 中文主题)|
32
- |---|---|---|
33
- | 工具 | 54 | `pylang-074fd698` · 工具-随机采样(pylang-074fd698)、`pylang-10ce3e91` · 工具-迭代工具(pylang-10ce3e91)、`pylang-15f76c64` · 工具-计数器(pylang-15f76c64)、`pylang-1aa3e939` · 工具-格式化(pylang-1aa3e939)、`pylang-1bed54cf` · 工具-归约(pylang-1bed54cf)、`pylang-1dd35612` · 工具-字节编解码(pylang-1dd35612)、`pylang-24273d7b` · 工具-直方图(pylang-24273d7b)、`pylang-2853f59f` · 工具-顺序去重(pylang-2853f59f)、`pylang-2a6bc16e` · 工具-嵌套扁平化(pylang-2a6bc16e)、`pylang-395085ca` · 工具-属性访问(pylang-395085ca)、`pylang-39c72c78` · 工具-数值统计(pylang-39c72c78)、`pylang-486a1e94` · 工具-二分查找(pylang-486a1e94)、`pylang-4963b28a` · 工具-数据类(pylang-4963b28a)、`pylang-4ca283f2` · 工具-过滤(pylang-4ca283f2)、`pylang-5102c069` · 工具-函数缓存(pylang-5102c069)、`pylang-5880b7a1` · 工具-行程压缩(pylang-5880b7a1)、`pylang-621123dd` · 工具-众数统计(pylang-621123dd)、`pylang-642cd625` · 工具-排序键控(pylang-642cd625)、`pylang-672df225` · 工具-字符串哈希(pylang-672df225)、`pylang-67d3368e` · 工具-分组(pylang-67d3368e)、`pylang-6be54340` · 工具-深拷贝(pylang-6be54340)、`pylang-70b2006f` · 工具-模板渲染(pylang-70b2006f)、`pylang-730c3fe4` · 工具-矩阵运算(pylang-730c3fe4)、`pylang-733c1286` · 工具-排列组合(pylang-733c1286)、`pylang-7df8ca78` · 工具-峰值检测(pylang-7df8ca78)、`pylang-8182681d` · 工具-滑动均值(pylang-8182681d)、`pylang-82b73f3d` · 工具-字符串判断(pylang-82b73f3d)、`pylang-8404bbde` · 工具-数学函数(pylang-8404bbde)、`pylang-8584040d` · 工具-正则匹配(pylang-8584040d)、`pylang-8d6ec58a` · 工具-位掩码(pylang-8d6ec58a)、`pylang-91277748` · 工具-累加器(pylang-91277748)、`pylang-943b9dcb` · 工具-打乱(pylang-943b9dcb)、`pylang-a7c3d0e2` · 工具-字符串替换(pylang-a7c3d0e2)、`pylang-ab7dddc2` · 工具-循环轮转(pylang-ab7dddc2)、`pylang-b8040e1c` · 工具-日期时间(pylang-b8040e1c)、`pylang-b8d45f76` · 工具-进制转换(pylang-b8d45f76)、`pylang-ba956e52` · 工具-JSON序列化(pylang-ba956e52)、`pylang-bb18b1f9` · 工具-时间格式化(pylang-bb18b1f9)、`pylang-c910ad31` · 工具-映射(pylang-c910ad31)、`pylang-cf0fca1c` · 工具-最长公共前缀(pylang-cf0fca1c)、`pylang-d2001e1f` · 工具-切片操作(pylang-d2001e1f)、`pylang-d8962e66` · 工具-编辑距离(pylang-d8962e66)、`pylang-db6214cd` · 工具-性能计时(pylang-db6214cd)、`pylang-dfad3dba` · 工具-字符串对齐(pylang-dfad3dba)、`pylang-e1aa3818` · 工具-数值舍入(pylang-e1aa3818)、`pylang-e88e31fd` · 工具-文本分词(pylang-e88e31fd)、`pylang-ecd569d2` · 工具-字符串拆分(pylang-ecd569d2)、`pylang-f127a8d1` · 工具-环境查询(pylang-f127a8d1)、`pylang-f2f40090` · 工具-文件读取(pylang-f2f40090)、`pylang-f4aa9e65` · 工具-分位数(pylang-f4aa9e65)、`pylang-f4f820d4` · 工具-笛卡尔积(pylang-f4f820d4)、`pylang-f5b34833` · 工具-列表分块(pylang-f5b34833)、`pylang-fd7595f0` · 工具-成对迭代(pylang-fd7595f0)、`pylang-fda87aa1` · 工具-字典反转(pylang-fda87aa1) |
34
- | 数据结构 | 11 | `pylang-01b23f80` · 数据结构-有序字典(pylang-01b23f80)、`pylang-0b490bb2` · 数据结构-链表(pylang-0b490bb2)、`pylang-36d178bc` · 数据结构-列表字典(pylang-36d178bc)、`pylang-49026041` · 数据结构-并查集(pylang-49026041)、`pylang-50614726` · 数据结构-最小堆(pylang-50614726)、`pylang-85d8617b` · 数据结构-集合运算(pylang-85d8617b)、`pylang-a4d3d7b1` · 数据结构-枚举(pylang-a4d3d7b1)、`pylang-a88db70d` · 数据结构-队列栈(pylang-a88db70d)、`pylang-b00660e6` · 数据结构-默认字典(pylang-b00660e6)、`pylang-bb46f3f2` · 数据结构-跳表(pylang-bb46f3f2)、`pylang-cd4234a5` · 数据结构-二叉树(pylang-cd4234a5) |
35
- | 异步 | 8 | `pylang-0ca7f08b` · 异步-信号量(pylang-0ca7f08b)、`pylang-3a659480` · 异步-超时控制(pylang-3a659480)、`pylang-4ddf31f3` · 异步-异步生成器(pylang-4ddf31f3)、`pylang-521b1bf8` · 异步-事件循环(pylang-521b1bf8)、`pylang-961e9e43` · 异步-async await(pylang-961e9e43)、`pylang-b880c6c6` · 异步-并发任务(pylang-b880c6c6)、`pylang-beb47b63` · 异步-任务取消(pylang-beb47b63)、`pylang-c5c76a12` · 异步-异步队列(pylang-c5c76a12) |
36
- | 异常 | 5 | `pylang-482be62b` · 异常-捕获(pylang-482be62b)、`pylang-7c4cc6f8` · 异常-抛出(pylang-7c4cc6f8)、`pylang-ac2a4b38` · 异常-传播(pylang-ac2a4b38)、`pylang-afaf67c0` · 异常-自定义异常(pylang-afaf67c0)、`pylang-c1317cd9` · 异常-异常链(pylang-c1317cd9) |
37
- | 面向对象 | 5 | `pylang-61a9102d` · 面向对象-继承(pylang-61a9102d)、`pylang-7c7193ad` · 面向对象-组合(pylang-7c7193ad)、`pylang-8b6f071e` · 面向对象-运算符重载(pylang-8b6f071e)、`pylang-b4d7616d` · 面向对象-类定义(pylang-b4d7616d)、`pylang-c36fabf7` · 面向对象-多态(pylang-c36fabf7) |
38
- | 元编程 | 4 | `pylang-65ca79b7` · 元编程-描述符协议(pylang-65ca79b7)、`pylang-70b215f1` · 元编程-类装饰器(pylang-70b215f1)、`pylang-c42465ec` · 元编程-元类定制(pylang-c42465ec)、`pylang-ca9332cf` · 元编程-动态建类(pylang-ca9332cf) |
39
- | 求值 | 4 | `pylang-81ad40ee` · 求值-逻辑短路(pylang-81ad40ee)、`pylang-9dbd8e2b` · 求值-控制流(pylang-9dbd8e2b)、`pylang-f124f0e6` · 求值-闭包(pylang-f124f0e6)、`pylang-f2d6ec27` · 求值-解包赋值(pylang-f2d6ec27) |
40
- | 语法 | 4 | `pylang-79845f4d` · 语法-多行字符串(pylang-79845f4d)、`pylang-88ab2f96` · 语法-切片赋值(pylang-88ab2f96)、`pylang-b67b1878` · 语法-字典合并(pylang-b67b1878)、`pylang-f6ebb66e` · 语法-优先级(pylang-f6ebb66e) |
41
- | 推导式 | 3 | `pylang-c017681a` · 推导式-字典推导(pylang-c017681a)、`pylang-dfd5aac2` · 推导式-列表推导(pylang-dfd5aac2)、`pylang-f92bc49b` · 推导式-集合推导(pylang-f92bc49b) |
42
- | 类型 | 3 | `pylang-31f5b8db` · 类型-协议接口(pylang-31f5b8db)、`pylang-886935a3` · 类型-类型注解(pylang-886935a3)、`pylang-be55a094` · 类型-运行时检查(pylang-be55a094) |
43
- | 闭包 | 3 | `pylang-38600583` · 闭包-延迟绑定(pylang-38600583)、`pylang-9018c39a` · 闭包-工厂(pylang-9018c39a)、`pylang-d616eb28` · 闭包-捕获更新(pylang-d616eb28) |
44
- | 字符串 | 2 | `pylang-7d86ab5d` · 字符串-切分(pylang-7d86ab5d)、`pylang-962954d9` · 字符串-大写(pylang-962954d9) |
45
- | 栈机 | 2 | `pylang-2ae78997` · 栈机-完整执行(pylang-2ae78997)、`pylang-2bc88f4c` · 栈机-字节码执行(pylang-2bc88f4c) |
46
- | 上下文 | 1 | `pylang-e476915b` · 上下文-管理器(pylang-e476915b) |
47
- | 函数 | 1 | `pylang-f78bdcd7` · 函数-定义调用(pylang-f78bdcd7) |
48
- | 参数 | 1 | `pylang-dcde3040` · 参数-默认值与关键字绑定(pylang-dcde3040) |
49
- | 复合赋值 | 1 | `pylang-1703046f` · 复合赋值-执行内核(pylang-1703046f) |
50
- | 环境 | 1 | `pylang-8fe98252` · 环境-作用域链(pylang-8fe98252) |
51
- | 生成器 | 1 | `pylang-cce90fa0` · 生成器-yield(pylang-cce90fa0) |
52
- | 程序 | 1 | `pylang-4af9140e` · 程序-完整执行(pylang-4af9140e) |
53
- | 蜂群 | 1 | `pylang-ecf27e0c` · 蜂群-服务发现(pylang-ecf27e0c) |
54
- | 装饰器 | 1 | `pylang-a02eac31` · 装饰器-定义使用(pylang-a02eac31) |
55
- | 词法 | 1 | `pylang-8283d7c0` · 词法-记号化(pylang-8283d7c0) |
56
- | 运算符 | 1 | `pylang-399b317e` · 运算符-in 成员判断(pylang-399b317e) |
57
- | 迭代器 | 1 | `pylang-38e8f9ff` · 迭代器-协议(pylang-38e8f9ff) |
58
-
59
- ## 路由流程
60
-
61
- 1. **词面命中**:任务含子域/单元触发词 → 直接查上表回读对应单元
62
- 2. **语义模糊**:`mdcg cg op=route intent=<任务描述>` → 返回建议能力名与知识
63
- 3. **回读**:`units/<单元slug>/SKILL.md`(含 KCCS 四要素与验证样例)
64
- 4. **验证**:灵枢 MCP 工具物理执行(编译/运行/断言裁决),技能说"怎么验证"、MCP 负责"真去跑"
65
-
66
- ## 真源与纪律
67
-
68
- - 知识真源:`md_cg/whitebox_kb/wisdom/python_code_units.py`(KCCS 四要素唯一真源)
69
- - 本包为生成投影(2026-09-11 层级化重组 v2.0):单元内容零改动,仅目录收纳 + 域入口新增
70
- - 触发词全量索引:`md_cg/whitebox_kb/wisdom/trigger_words_index.json`
71
- - 变更须在真源层修改后重新导出(R6 变更验证),勿直接改本目录单元
1
+ ---
2
+ name: lingshu-pylang
3
+ description: >-
4
+ 灵枢白箱条件单元域入口:Python 语言机制(120 单元 / 25 子域)。触发词:Python、闭包、装饰器、异步、asyncio、推导式、数据结构、元编程。
5
+ 场景:任务命中本域任一子域主题时使用。先查下方路由表定位单元,语义模糊时经 mdcg cg op=route 路由;
6
+ 单元正文在 units/<slug>/SKILL.md 按需回读(KCCS 四要素在各单元内,不随本入口加载)。
7
+ 【不适用】Not for:任务不属于本域任何子域主题(负路由);跨域方向判断改用 designer-perspective 元技能。
8
+ license: MIT
9
+ allowed-tools: Read Grep Glob Bash
10
+ metadata:
11
+ version: "2.0"
12
+ skill-author: 灵枢(AEIS)
13
+ last-reviewed: "2026-09-11"
14
+ domain: pylang
15
+ unit-count: 120
16
+ kccs:
17
+ trigger_words: ["工具", "数据结构", "异步", "异常", "面向对象", "元编程", "求值", "语法", "推导式", "类型", "闭包", "字符串"]
18
+ when: "任务命中本域单元的生效条件(子域主题见路由表;单元级条件在 units/<slug>/SKILL.md)"
19
+ sub: ["工具", "数据结构", "异步", "异常", "面向对象", "元编程", "求值", "语法", "推导式", "类型", "闭包", "字符串", "栈机", "上下文", "函数", "参数", "复合赋值", "环境", "生成器", "程序", "蜂群", "装饰器", "词法", "运算符", "迭代器"]
20
+ execute: "① 定位:路由表或 mdcg cg op=route → ② 回读 units/<slug>/SKILL.md → ③ 按单元 KCCS 执行 → ④ 验证交灵枢 MCP(编译/运行/断言)"
21
+ not_applicable: ["任务不属于本域任何子域主题(负路由)", "需要全局观测/资格裁决时改用 designer-perspective(元技能不执行操作层)"]
22
+ ---
23
+
24
+ # 灵枢 Python 语言机制域入口(lingshu-pylang)
25
+
26
+ 白箱条件单元域入口(v2.0 层级化重组)。本域 120 个单元收纳于 `units/`,
27
+ 本文件只承载**子域路由**——description 进上下文做域级命中,单元按需回读。
28
+
29
+ ## 路由表(子域 → 单元)
30
+
31
+ | 子域 | 数 | 单元(slug · 中文主题)|
32
+ |---|---|---|
33
+ | 工具 | 54 | `pylang-074fd698` · 工具-随机采样(pylang-074fd698)、`pylang-10ce3e91` · 工具-迭代工具(pylang-10ce3e91)、`pylang-15f76c64` · 工具-计数器(pylang-15f76c64)、`pylang-1aa3e939` · 工具-格式化(pylang-1aa3e939)、`pylang-1bed54cf` · 工具-归约(pylang-1bed54cf)、`pylang-1dd35612` · 工具-字节编解码(pylang-1dd35612)、`pylang-24273d7b` · 工具-直方图(pylang-24273d7b)、`pylang-2853f59f` · 工具-顺序去重(pylang-2853f59f)、`pylang-2a6bc16e` · 工具-嵌套扁平化(pylang-2a6bc16e)、`pylang-395085ca` · 工具-属性访问(pylang-395085ca)、`pylang-39c72c78` · 工具-数值统计(pylang-39c72c78)、`pylang-486a1e94` · 工具-二分查找(pylang-486a1e94)、`pylang-4963b28a` · 工具-数据类(pylang-4963b28a)、`pylang-4ca283f2` · 工具-过滤(pylang-4ca283f2)、`pylang-5102c069` · 工具-函数缓存(pylang-5102c069)、`pylang-5880b7a1` · 工具-行程压缩(pylang-5880b7a1)、`pylang-621123dd` · 工具-众数统计(pylang-621123dd)、`pylang-642cd625` · 工具-排序键控(pylang-642cd625)、`pylang-672df225` · 工具-字符串哈希(pylang-672df225)、`pylang-67d3368e` · 工具-分组(pylang-67d3368e)、`pylang-6be54340` · 工具-深拷贝(pylang-6be54340)、`pylang-70b2006f` · 工具-模板渲染(pylang-70b2006f)、`pylang-730c3fe4` · 工具-矩阵运算(pylang-730c3fe4)、`pylang-733c1286` · 工具-排列组合(pylang-733c1286)、`pylang-7df8ca78` · 工具-峰值检测(pylang-7df8ca78)、`pylang-8182681d` · 工具-滑动均值(pylang-8182681d)、`pylang-82b73f3d` · 工具-字符串判断(pylang-82b73f3d)、`pylang-8404bbde` · 工具-数学函数(pylang-8404bbde)、`pylang-8584040d` · 工具-正则匹配(pylang-8584040d)、`pylang-8d6ec58a` · 工具-位掩码(pylang-8d6ec58a)、`pylang-91277748` · 工具-累加器(pylang-91277748)、`pylang-943b9dcb` · 工具-打乱(pylang-943b9dcb)、`pylang-a7c3d0e2` · 工具-字符串替换(pylang-a7c3d0e2)、`pylang-ab7dddc2` · 工具-循环轮转(pylang-ab7dddc2)、`pylang-b8040e1c` · 工具-日期时间(pylang-b8040e1c)、`pylang-b8d45f76` · 工具-进制转换(pylang-b8d45f76)、`pylang-ba956e52` · 工具-JSON序列化(pylang-ba956e52)、`pylang-bb18b1f9` · 工具-时间格式化(pylang-bb18b1f9)、`pylang-c910ad31` · 工具-映射(pylang-c910ad31)、`pylang-cf0fca1c` · 工具-最长公共前缀(pylang-cf0fca1c)、`pylang-d2001e1f` · 工具-切片操作(pylang-d2001e1f)、`pylang-d8962e66` · 工具-编辑距离(pylang-d8962e66)、`pylang-db6214cd` · 工具-性能计时(pylang-db6214cd)、`pylang-dfad3dba` · 工具-字符串对齐(pylang-dfad3dba)、`pylang-e1aa3818` · 工具-数值舍入(pylang-e1aa3818)、`pylang-e88e31fd` · 工具-文本分词(pylang-e88e31fd)、`pylang-ecd569d2` · 工具-字符串拆分(pylang-ecd569d2)、`pylang-f127a8d1` · 工具-环境查询(pylang-f127a8d1)、`pylang-f2f40090` · 工具-文件读取(pylang-f2f40090)、`pylang-f4aa9e65` · 工具-分位数(pylang-f4aa9e65)、`pylang-f4f820d4` · 工具-笛卡尔积(pylang-f4f820d4)、`pylang-f5b34833` · 工具-列表分块(pylang-f5b34833)、`pylang-fd7595f0` · 工具-成对迭代(pylang-fd7595f0)、`pylang-fda87aa1` · 工具-字典反转(pylang-fda87aa1) |
34
+ | 数据结构 | 11 | `pylang-01b23f80` · 数据结构-有序字典(pylang-01b23f80)、`pylang-0b490bb2` · 数据结构-链表(pylang-0b490bb2)、`pylang-36d178bc` · 数据结构-列表字典(pylang-36d178bc)、`pylang-49026041` · 数据结构-并查集(pylang-49026041)、`pylang-50614726` · 数据结构-最小堆(pylang-50614726)、`pylang-85d8617b` · 数据结构-集合运算(pylang-85d8617b)、`pylang-a4d3d7b1` · 数据结构-枚举(pylang-a4d3d7b1)、`pylang-a88db70d` · 数据结构-队列栈(pylang-a88db70d)、`pylang-b00660e6` · 数据结构-默认字典(pylang-b00660e6)、`pylang-bb46f3f2` · 数据结构-跳表(pylang-bb46f3f2)、`pylang-cd4234a5` · 数据结构-二叉树(pylang-cd4234a5) |
35
+ | 异步 | 8 | `pylang-0ca7f08b` · 异步-信号量(pylang-0ca7f08b)、`pylang-3a659480` · 异步-超时控制(pylang-3a659480)、`pylang-4ddf31f3` · 异步-异步生成器(pylang-4ddf31f3)、`pylang-521b1bf8` · 异步-事件循环(pylang-521b1bf8)、`pylang-961e9e43` · 异步-async await(pylang-961e9e43)、`pylang-b880c6c6` · 异步-并发任务(pylang-b880c6c6)、`pylang-beb47b63` · 异步-任务取消(pylang-beb47b63)、`pylang-c5c76a12` · 异步-异步队列(pylang-c5c76a12) |
36
+ | 异常 | 5 | `pylang-482be62b` · 异常-捕获(pylang-482be62b)、`pylang-7c4cc6f8` · 异常-抛出(pylang-7c4cc6f8)、`pylang-ac2a4b38` · 异常-传播(pylang-ac2a4b38)、`pylang-afaf67c0` · 异常-自定义异常(pylang-afaf67c0)、`pylang-c1317cd9` · 异常-异常链(pylang-c1317cd9) |
37
+ | 面向对象 | 5 | `pylang-61a9102d` · 面向对象-继承(pylang-61a9102d)、`pylang-7c7193ad` · 面向对象-组合(pylang-7c7193ad)、`pylang-8b6f071e` · 面向对象-运算符重载(pylang-8b6f071e)、`pylang-b4d7616d` · 面向对象-类定义(pylang-b4d7616d)、`pylang-c36fabf7` · 面向对象-多态(pylang-c36fabf7) |
38
+ | 元编程 | 4 | `pylang-65ca79b7` · 元编程-描述符协议(pylang-65ca79b7)、`pylang-70b215f1` · 元编程-类装饰器(pylang-70b215f1)、`pylang-c42465ec` · 元编程-元类定制(pylang-c42465ec)、`pylang-ca9332cf` · 元编程-动态建类(pylang-ca9332cf) |
39
+ | 求值 | 4 | `pylang-81ad40ee` · 求值-逻辑短路(pylang-81ad40ee)、`pylang-9dbd8e2b` · 求值-控制流(pylang-9dbd8e2b)、`pylang-f124f0e6` · 求值-闭包(pylang-f124f0e6)、`pylang-f2d6ec27` · 求值-解包赋值(pylang-f2d6ec27) |
40
+ | 语法 | 4 | `pylang-79845f4d` · 语法-多行字符串(pylang-79845f4d)、`pylang-88ab2f96` · 语法-切片赋值(pylang-88ab2f96)、`pylang-b67b1878` · 语法-字典合并(pylang-b67b1878)、`pylang-f6ebb66e` · 语法-优先级(pylang-f6ebb66e) |
41
+ | 推导式 | 3 | `pylang-c017681a` · 推导式-字典推导(pylang-c017681a)、`pylang-dfd5aac2` · 推导式-列表推导(pylang-dfd5aac2)、`pylang-f92bc49b` · 推导式-集合推导(pylang-f92bc49b) |
42
+ | 类型 | 3 | `pylang-31f5b8db` · 类型-协议接口(pylang-31f5b8db)、`pylang-886935a3` · 类型-类型注解(pylang-886935a3)、`pylang-be55a094` · 类型-运行时检查(pylang-be55a094) |
43
+ | 闭包 | 3 | `pylang-38600583` · 闭包-延迟绑定(pylang-38600583)、`pylang-9018c39a` · 闭包-工厂(pylang-9018c39a)、`pylang-d616eb28` · 闭包-捕获更新(pylang-d616eb28) |
44
+ | 字符串 | 2 | `pylang-7d86ab5d` · 字符串-切分(pylang-7d86ab5d)、`pylang-962954d9` · 字符串-大写(pylang-962954d9) |
45
+ | 栈机 | 2 | `pylang-2ae78997` · 栈机-完整执行(pylang-2ae78997)、`pylang-2bc88f4c` · 栈机-字节码执行(pylang-2bc88f4c) |
46
+ | 上下文 | 1 | `pylang-e476915b` · 上下文-管理器(pylang-e476915b) |
47
+ | 函数 | 1 | `pylang-f78bdcd7` · 函数-定义调用(pylang-f78bdcd7) |
48
+ | 参数 | 1 | `pylang-dcde3040` · 参数-默认值与关键字绑定(pylang-dcde3040) |
49
+ | 复合赋值 | 1 | `pylang-1703046f` · 复合赋值-执行内核(pylang-1703046f) |
50
+ | 环境 | 1 | `pylang-8fe98252` · 环境-作用域链(pylang-8fe98252) |
51
+ | 生成器 | 1 | `pylang-cce90fa0` · 生成器-yield(pylang-cce90fa0) |
52
+ | 程序 | 1 | `pylang-4af9140e` · 程序-完整执行(pylang-4af9140e) |
53
+ | 蜂群 | 1 | `pylang-ecf27e0c` · 蜂群-服务发现(pylang-ecf27e0c) |
54
+ | 装饰器 | 1 | `pylang-a02eac31` · 装饰器-定义使用(pylang-a02eac31) |
55
+ | 词法 | 1 | `pylang-8283d7c0` · 词法-记号化(pylang-8283d7c0) |
56
+ | 运算符 | 1 | `pylang-399b317e` · 运算符-in 成员判断(pylang-399b317e) |
57
+ | 迭代器 | 1 | `pylang-38e8f9ff` · 迭代器-协议(pylang-38e8f9ff) |
58
+
59
+ ## 路由流程
60
+
61
+ 1. **词面命中**:任务含子域/单元触发词 → 直接查上表回读对应单元
62
+ 2. **语义模糊**:`mdcg cg op=route intent=<任务描述>` → 返回建议能力名与知识
63
+ 3. **回读**:`units/<单元slug>/SKILL.md`(含 KCCS 四要素与验证样例)
64
+ 4. **验证**:灵枢 MCP 工具物理执行(编译/运行/断言裁决),技能说"怎么验证"、MCP 负责"真去跑"
65
+
66
+ ## 真源与纪律
67
+
68
+ - 知识真源:`md_cg/whitebox_kb/wisdom/python_code_units.py`(KCCS 四要素唯一真源)
69
+ - 本包为生成投影(2026-09-11 层级化重组 v2.0):单元内容零改动,仅目录收纳 + 域入口新增
70
+ - 触发词全量索引:`md_cg/whitebox_kb/wisdom/trigger_words_index.json`
71
+ - 变更须在真源层修改后重新导出(R6 变更验证),勿直接改本目录单元
package/src/bridge.ts CHANGED
@@ -159,8 +159,34 @@ export class LingshuBridge {
159
159
  return new Promise((resolve) => this.bootQueue.push(resolve))
160
160
  }
161
161
 
162
+ /**
163
+ * V23 修复(缺陷 :284):清理上一个仍存活的子进程。
164
+ * 握手超时/启动失败重试时直接 spawn 新进程并覆盖 this.proc(:182),
165
+ * 旧进程若仍存活(卡死但不退出的服务端)既不 kill 也不关 stdin——
166
+ * 引用被覆盖后永远无人清理 = 僵尸进程泄漏(最多 MAX_RETRIES 个并存,
167
+ * dispose 也只收尾最后一个)。换代前统一回收:stdin EOF 优雅退出 + kill 兜底。
168
+ * 幂等:已退出(exitCode/signalCode 非 null)的进程跳过。
169
+ */
170
+ private killStaleProc(): void {
171
+ const old = this.proc
172
+ this.proc = null // 先摘引用:旧进程随后的 exit 事件走 stale 早退分支
173
+ if (!old || old.exitCode !== null || old.signalCode !== null) return
174
+ try {
175
+ old.stdin?.end()
176
+ } catch {
177
+ /* 已关闭则忽略 */
178
+ }
179
+ try {
180
+ old.kill()
181
+ } catch {
182
+ /* 已退出则忽略 */
183
+ }
184
+ }
185
+
162
186
  private spawnAndHandshake(): void {
163
187
  if (this.disposed) return
188
+ // V23:重试路径先回收上一个仍存活的子进程(防换代泄漏僵尸进程)
189
+ this.killStaleProc()
164
190
  this.procStartedAt = Date.now()
165
191
  const { python, args, env, cwd } = this.options
166
192
  const childEnv = { ...process.env, ...env }
@@ -220,6 +246,13 @@ export class LingshuBridge {
220
246
  })
221
247
 
222
248
  proc.on('exit', (code, signal) => {
249
+ // V23:被换代清理的旧进程退出(this.proc 已指向新一代或为 null)——
250
+ // 不动当前进程的 rl/pending/重试状态机,只留探针;否则旧 exit 会
251
+ // close 新进程的 readline、误拒新进程的挂起请求并多触发一轮重试。
252
+ if (proc !== this.proc) {
253
+ probe(`stale proc exit code=${code} signal=${signal}(换代已回收,不影响当前进程)`)
254
+ return
255
+ }
223
256
  // 探针:写独立文件记录退出(绕过 DSH 日志系统,便于定位)
224
257
  const uptimeS = this.procStartedAt
225
258
  ? Math.round((Date.now() - this.procStartedAt) / 1000)
package/src/hooks.ts CHANGED
@@ -160,6 +160,20 @@ function formatTimelineDecayed(payload: unknown): string {
160
160
  return out.join('\n').slice(0, RECALL_MAX_CHARS)
161
161
  }
162
162
 
163
+ /** 取宿主会话标识(只用于**归因/隔离**,不参与任何权限判断)。
164
+ *
165
+ * 动机:记忆写入必须带会话身份才能区分不同会话;读取默认只看本会话(防串台),
166
+ * 而「所有会话做了什么」用显式 session="*" 取。两侧都依赖这个标识。
167
+ *
168
+ * 字段名按 DSH 既有形态(`id` / `sessionId`)防御式读取,取不到就返回空串——
169
+ * 空串在上游一律等同「不分会话」(退回旧行为),故宿主改字段名最坏只是失去
170
+ * 隔离能力,不会注入错块、不会抛错。 */
171
+ function sessionIdOf(raw: unknown): string {
172
+ const s = raw as { id?: unknown; sessionId?: unknown } | null | undefined
173
+ const v = s?.id ?? s?.sessionId
174
+ return typeof v === 'string' ? v.trim() : ''
175
+ }
176
+
163
177
  /** 安装自动记忆钩子(effect 作用域内,随插件卸载自动移除)。
164
178
  *
165
179
  * mdcg 为 null(config.mdcg.enabled=false)时自动记忆整体停用:记忆真源是
@@ -171,6 +185,9 @@ export function installMemoryHooks(ctx: Context, mdcg: MdcgClient | null, opts:
171
185
  }
172
186
  const graph = mdcg
173
187
 
188
+ /** 最近一次观测到的宿主会话标识(见 sessionIdOf;空串 = 未知/无会话)。 */
189
+ let lastSession = ''
190
+
174
191
  /** 记忆沉淀(fire-and-forget)。认知图未就绪则跳过并告警(不退回 AEIS)。 */
175
192
  const memorize = (label: string, run: (g: MdcgClient) => Promise<unknown>): void => {
176
193
  if (!graph.isReady()) {
@@ -209,7 +226,18 @@ export function installMemoryHooks(ctx: Context, mdcg: MdcgClient | null, opts:
209
226
  try {
210
227
  // 异步取最近记忆节点(失败静默——不阻塞模型请求)
211
228
  if (graph.isReady()) {
212
- const text = formatTimelineDecayed(await graph.timeline(recallLimit))
229
+ // 会话隔离(P45):自动召回只注入**本会话**的记忆,防多会话串台;
230
+ // 取不到会话标识则退回旧行为(不加过滤),不做半吊子猜测。
231
+ // ⚠️ 取值必须**每步稳定**:本块按 v0.4.8 契约每步都 push,内容一旦与上
232
+ // 一步不同宿主就 append 一份新快照——会话标识若中途才出现,会让「无过滤
233
+ // → 有过滤」翻转一次,白付两份快照。故优先取 ctx 上的会话(首步即在),
234
+ // 退回「最近一次 session/event 的会话」。
235
+ // 想读**所有**会话做了什么:别走自动召回(它会串台),显式调
236
+ // `stg(op=timeline, session="*")`,返回项带 session 归属。
237
+ const hostCtx = (_ctx as unknown) as { agent?: { session?: unknown } } | undefined
238
+ const sid = sessionIdOf(hostCtx?.agent?.session) || lastSession
239
+ const text = formatTimelineDecayed(
240
+ await graph.timeline(recallLimit, sid ? { session: sid } : {}))
213
241
  if (text) {
214
242
  // 注入边界转义(issue #16):宿主 system-prompt 对 context 文本做严格
215
243
  // `{{variable}}` 插值,裸 `{{` 会 throw → 该轮请求整体失败。记忆原文
@@ -226,7 +254,12 @@ export function installMemoryHooks(ctx: Context, mdcg: MdcgClient | null, opts:
226
254
  })
227
255
  }
228
256
 
229
- ctx.on('session/event', (_session, event: SessionEvent) => {
257
+ ctx.on('session/event', (session, event: SessionEvent) => {
258
+ // 会话归属(P45):记忆写入必须带会话身份,用来区分不同会话的记忆。
259
+ // 空串 = 宿主未给出会话标识 → 不声明,交给内核回落到进程身份(不编造)。
260
+ const sid = sessionIdOf(session)
261
+ if (sid) lastSession = sid
262
+ const sessionTag = sid ? { session: sid } : {}
230
263
  if (event.type === 'user/message' && opts.userMessage) {
231
264
  // 只记真实用户输入(kind='user'),跳过插件注入/系统上下文
232
265
  if (event.data.source?.kind !== 'user') {
@@ -241,6 +274,7 @@ export function installMemoryHooks(ctx: Context, mdcg: MdcgClient | null, opts:
241
274
  if (safe === null) return
242
275
  memorize('user', (g) => g.remember(safe, {
243
276
  role: 'user', tags: ['dsh', 'user'], importance: opts.importance,
277
+ ...sessionTag,
244
278
  }))
245
279
  // T4:用用户消息做一次语义召回——md_cg 的读取会记 access log(复用观测,
246
280
  // 供 importance / scrub 陈旧度使用),同时预热检索路径。
@@ -253,6 +287,7 @@ export function installMemoryHooks(ctx: Context, mdcg: MdcgClient | null, opts:
253
287
  if (safe === null) return
254
288
  memorize('assistant', (g) => g.remember(safe, {
255
289
  role: 'assistant', tags: ['dsh', 'assistant'], importance: opts.importance * 0.8,
290
+ ...sessionTag,
256
291
  }))
257
292
  } else if (event.type === 'tool/result' && opts.toolResult) {
258
293
  if (event.data.error) return
@@ -262,6 +297,7 @@ export function installMemoryHooks(ctx: Context, mdcg: MdcgClient | null, opts:
262
297
  if (safe === null) return
263
298
  memorize('tool', (g) => g.remember(safe, {
264
299
  role: 'tool-output', tags: ['dsh', 'tool'], importance: opts.importance * 0.6,
300
+ ...sessionTag,
265
301
  }))
266
302
  }
267
303
  })