@furongjun1999/dsh-memory 0.4.11 → 0.5.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.
- package/README.md +16 -16
- package/codebuddy/CODEBUDDY.md +11 -3
- package/codebuddy/README.md +92 -90
- package/codebuddy/mcp.json +27 -27
- 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
- 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
- package/docs/README.md +142 -111
- package/docs/discipline/harnesses.yaml +244 -226
- package/docs/discipline/templates/full.md.tmpl +61 -61
- package/docs/discipline/templates/rules.mdc.tmpl +68 -0
- package/docs/discipline/templates/skill.md.tmpl +23 -23
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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 +503 -503
- 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
- 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
- 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
- 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
- package/docs/mdcg/README/350/257/246/347/273/206/347/211/210_v0.4.10.md +646 -646
- package/docs/mdcg/lingshu_tutorial.html +14449 -14449
- package/docs/mdcg/release_v0.4.11.md +49 -0
- package/docs/mdcg/release_v0.4.5.md +55 -55
- package/docs/mdcg/tool_table_v0.3.0.md +117 -117
- 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
- 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
- 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
- package/docs/mdcg//345/217/221/345/270/203/351/227/250/347/246/201/351/223/276_v0.1.md +54 -0
- 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
- 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
- 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
- package/docs/mdcg//347/274/272/345/217/243/345/215/225_P0/346/224/266/345/217/243_v0.1.md +270 -270
- 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
- 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
- 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
- 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
- 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
- package/docs/swarm//350/234/202/347/276/244/344/272/222/350/201/224_v0.1.md +704 -704
- 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
- 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
- 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
- package/docs/theory//346/231/272/350/203/275/350/256/2723.4.md +5260 -5260
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/dsh/README.md +82 -82
- package/dsh/cordis.yml.example +139 -139
- package/dsh/update-lingshu.bat +11 -11
- package/lib/hooks.js +36 -2
- package/lib/lib/roleplay_web.js +427 -427
- package/md_cg/__init__.py +7 -7
- package/md_cg/audit.py +368 -368
- package/md_cg/autonomy.py +287 -287
- package/md_cg/backfill.py +1327 -1327
- package/md_cg/backfill_bigdomain.py +34 -34
- package/md_cg/bench6_arms.py +410 -410
- package/md_cg/bench6_common.py +230 -230
- package/md_cg/bench6_competitors.py +212 -212
- package/md_cg/bench_axis_domain.py +257 -257
- package/md_cg/bench_blind_comp.py +308 -308
- package/md_cg/bench_en_atoms_public.py +230 -230
- package/md_cg/bench_governance.py +348 -348
- package/md_cg/bench_lme_zh.py +410 -410
- package/md_cg/bench_locomo.py +121 -121
- package/md_cg/bench_locomo_zh.py +450 -450
- package/md_cg/bench_locomo_zh_public.py +147 -147
- package/md_cg/bench_longmem.py +112 -112
- package/md_cg/bench_membench.py +632 -632
- package/md_cg/bench_p0.py +149 -149
- package/md_cg/bench_progressive.py +287 -287
- package/md_cg/bench_role_views.py +238 -238
- package/md_cg/bench_task_ab.py +243 -243
- package/md_cg/bench_task_ab_llm.py +408 -408
- package/md_cg/bench_unified_en.py +204 -204
- package/md_cg/bench_zh_mad.py +601 -601
- package/md_cg/blindspot_tickets.py +123 -123
- package/md_cg/branches.py +285 -285
- package/md_cg/build_postings.py +73 -73
- package/md_cg/ccgc.py +1005 -948
- package/md_cg/census.py +132 -132
- package/md_cg/chain.py +300 -300
- package/md_cg/codeindex.py +531 -531
- package/md_cg/coldverify.py +292 -292
- package/md_cg/comment_gate.py +337 -337
- package/md_cg/cond_compose.py +190 -190
- package/md_cg/cond_facts.py +154 -154
- package/md_cg/cond_template.json +106 -106
- package/md_cg/condition_anchor.py +142 -142
- package/md_cg/conformance.py +726 -726
- package/md_cg/consistency.py +717 -717
- package/md_cg/consolidate.py +1536 -1439
- package/md_cg/corpus.py +110 -110
- package/md_cg/crosscheck.py +1097 -1097
- package/md_cg/crypto.py +437 -437
- package/md_cg/d_meta.py +310 -310
- package/md_cg/datapath.py +334 -334
- package/md_cg/docindex.py +473 -473
- package/md_cg/eval_common.py +575 -575
- package/md_cg/evidence.py +580 -580
- package/md_cg/evolution.py +477 -477
- package/md_cg/export.py +220 -220
- package/md_cg/forgetting.py +581 -581
- package/md_cg/fsutil.py +329 -329
- package/md_cg/hotcache.py +238 -214
- package/md_cg/hyperedge.py +251 -251
- package/md_cg/identity.py +390 -390
- package/md_cg/insight.py +500 -500
- package/md_cg/interop.py +199 -0
- package/md_cg/lexicon/build_cedict_en_zh.py +329 -329
- package/md_cg/lexicon/build_standard_en.py +171 -171
- package/md_cg/lexicon/expand_en_zh.py +211 -211
- package/md_cg/lifecycle.py +272 -272
- package/md_cg/linkref.py +280 -280
- package/md_cg/links.py +622 -622
- package/md_cg/mcp_server.py +129 -32
- package/md_cg/md_whitebox.py +345 -345
- package/md_cg/mdcg.py +176 -117
- package/md_cg/mdcos.py +79 -13
- package/md_cg/metacognition.py +591 -591
- package/md_cg/migrate.py +119 -119
- package/md_cg/migrate_aeis.py +221 -221
- package/md_cg/migrate_roleplay.py +293 -293
- package/md_cg/migrate_wisdom_graph.py +360 -360
- package/md_cg/mreview/__init__.py +25 -25
- package/md_cg/mreview/__main__.py +110 -110
- package/md_cg/mreview/bundle.py +178 -178
- package/md_cg/mreview/candidates.py +262 -262
- package/md_cg/mreview/govern.py +693 -693
- package/md_cg/mreview/locate.py +939 -939
- package/md_cg/mreview/pipeline.py +728 -728
- package/md_cg/mreview/rules/duplication.json +21 -21
- package/md_cg/mreview/rules/field_coverage.json +54 -54
- package/md_cg/mreview/rules/source_license.json +21 -21
- package/md_cg/mreview/rules/template_flow.json +21 -21
- package/md_cg/mreview/ruleset.py +252 -252
- package/md_cg/nodefile.py +575 -575
- package/md_cg/pooling.py +484 -472
- package/md_cg/postings.py +298 -298
- package/md_cg/predict.py +1100 -1100
- package/md_cg/progressive.py +123 -123
- package/md_cg/protect.py +272 -272
- package/md_cg/protocol/md_cg_gate.proto +33 -33
- package/md_cg/protocol.py +372 -372
- package/md_cg/provenance.py +582 -582
- package/md_cg/reach.py +453 -453
- package/md_cg/readcache.py +85 -0
- package/md_cg/refindex.py +833 -833
- package/md_cg/refine.py +604 -604
- package/md_cg/roleviews.py +89 -89
- package/md_cg/routing.py +365 -365
- package/md_cg/scrub.py +852 -852
- package/md_cg/security.py +274 -274
- package/md_cg/self_state.py +1029 -1029
- package/md_cg/selfreport.py +151 -151
- package/md_cg/semantic/__init__.py +10 -10
- package/md_cg/semantic/canonical.py +122 -122
- package/md_cg/semantic/en_normalizer.py +364 -364
- package/md_cg/semantic/en_zh_map.json +28694 -0
- package/md_cg/semantic/export_en_zh_map.py +64 -0
- package/md_cg/semantic/unify.py +45 -0
- package/md_cg/semantic/zh_en_atoms.py +139 -139
- package/md_cg/signer.py +562 -562
- package/md_cg/sources.py +815 -582
- package/md_cg/statushdr.py +179 -179
- package/md_cg/stg.py +48 -37
- package/md_cg/subgraph.py +729 -729
- package/md_cg/sustain.py +1138 -1138
- package/md_cg/tasks.py +470 -470
- package/md_cg/test_action_derive.py +203 -203
- package/md_cg/test_audit_rotate.py +270 -270
- package/md_cg/test_autonomy.py +143 -143
- package/md_cg/test_bench_governance.py +102 -102
- package/md_cg/test_blindspot_tickets.py +166 -166
- package/md_cg/test_branches.py +249 -249
- package/md_cg/test_ccg_perturb.py +184 -184
- package/md_cg/test_ccgc.py +433 -433
- package/md_cg/test_census_prune.py +81 -81
- package/md_cg/test_cond_compose_anchors.py +76 -76
- package/md_cg/test_cond_match.py +165 -165
- package/md_cg/test_condition_anchor.py +81 -81
- package/md_cg/test_d_meta.py +412 -412
- package/md_cg/test_datapath_root.py +199 -199
- package/md_cg/test_en_pipeline.py +166 -166
- package/md_cg/test_gain_gate.py +212 -212
- package/md_cg/test_health_scale.py +173 -173
- package/md_cg/test_hive_ingest.py +285 -0
- package/md_cg/test_hot_cold.py +215 -215
- package/md_cg/test_hyperedge.py +245 -245
- package/md_cg/test_i26_empty_first_write.py +116 -0
- package/md_cg/test_i27_e041_identity.py +128 -0
- package/md_cg/test_i28_hotcache_prodpath.py +122 -0
- package/md_cg/test_identity_attribution.py +147 -147
- package/md_cg/test_index_durability.py +224 -224
- package/md_cg/test_interop.py +93 -0
- package/md_cg/test_lifecycle.py +309 -309
- package/md_cg/test_linkref.py +306 -306
- package/md_cg/test_lock.py +43 -43
- package/md_cg/test_md_access_parity.py +255 -255
- package/md_cg/test_md_writepath.py +345 -345
- package/md_cg/test_mdstore_search_parity.py +160 -0
- package/md_cg/test_mr_m2.py +587 -587
- package/md_cg/test_mr_m3.py +710 -710
- package/md_cg/test_mr_m4.py +485 -485
- package/md_cg/test_p0.py +250 -250
- package/md_cg/test_p1.py +316 -316
- package/md_cg/test_p10_identity.py +173 -173
- package/md_cg/test_p11_consistency.py +233 -233
- package/md_cg/test_p12_metacognition.py +212 -212
- package/md_cg/test_p13_encryption.py +241 -241
- package/md_cg/test_p14_sustain.py +249 -249
- package/md_cg/test_p15_scrub.py +280 -280
- package/md_cg/test_p16_self_state.py +301 -301
- package/md_cg/test_p17_predict.py +354 -354
- package/md_cg/test_p18_whitebox.py +171 -171
- package/md_cg/test_p19_migrate_roleplay.py +149 -149
- package/md_cg/test_p20_evolution.py +315 -315
- package/md_cg/test_p21_tokens.py +293 -270
- package/md_cg/test_p22_theory.py +175 -175
- package/md_cg/test_p23_links.py +311 -311
- package/md_cg/test_p24_evidence.py +227 -227
- package/md_cg/test_p25_weights.py +156 -156
- package/md_cg/test_p26_refindex.py +416 -416
- package/md_cg/test_p27_docindex.py +765 -765
- package/md_cg/test_p28_refcheck.py +305 -305
- package/md_cg/test_p29_session_ingest_export.py +354 -333
- package/md_cg/test_p3.py +11 -2
- package/md_cg/test_p30_maintain.py +330 -330
- package/md_cg/test_p31_insight.py +534 -534
- package/md_cg/test_p32_backfill.py +298 -298
- package/md_cg/test_p33_ccg_wiring.py +293 -293
- package/md_cg/test_p34_crosscheck.py +331 -331
- package/md_cg/test_p35_conditioned_claim.py +252 -252
- package/md_cg/test_p36_kp_align.py +230 -230
- package/md_cg/test_p37_condition_space.py +248 -248
- package/md_cg/test_p38_concurrent_flush.py +102 -0
- package/md_cg/test_p38_contextualize.py +273 -273
- package/md_cg/test_p39_verify_flow.py +113 -0
- package/md_cg/test_p39_vision_evidence.py +369 -369
- package/md_cg/test_p40_refine_worklist.py +241 -241
- package/md_cg/test_p41_evolve_patrol.py +224 -224
- package/md_cg/test_p42_provenance.py +269 -269
- package/md_cg/test_p43_pooling.py +412 -398
- package/md_cg/test_p44_md_whitebox.py +231 -231
- package/md_cg/test_p45_session_identity.py +219 -219
- package/md_cg/test_p46_unit_scope.py +272 -272
- package/md_cg/test_p47_session_view.py +281 -0
- package/md_cg/test_p4_fuzzy.py +223 -223
- package/md_cg/test_p5_semantic.py +226 -226
- package/md_cg/test_p6_consolidate.py +440 -387
- package/md_cg/test_p7_goals_recent.py +202 -202
- package/md_cg/test_p8_subgraph_chain.py +200 -200
- package/md_cg/test_p9_forget_protect.py +231 -231
- package/md_cg/test_predict_beta.py +135 -135
- package/md_cg/test_preflight_failclosed.py +100 -100
- package/md_cg/test_progressive.py +146 -146
- package/md_cg/test_protocol.py +243 -243
- package/md_cg/test_reach.py +378 -378
- package/md_cg/test_reach_keys.py +201 -201
- package/md_cg/test_read_clip.py +141 -141
- package/md_cg/test_readcache_prodpath.py +155 -0
- package/md_cg/test_retr_gates_prodpath.py +140 -0
- package/md_cg/test_retr_s1.py +340 -340
- package/md_cg/test_retr_s1b.py +209 -209
- package/md_cg/test_retr_s3.py +194 -194
- package/md_cg/test_retr_s4.py +163 -163
- package/md_cg/test_retr_s5.py +200 -200
- package/md_cg/test_retr_s6.py +157 -157
- package/md_cg/test_retr_s7.py +384 -384
- package/md_cg/test_retr_s8_time.py +369 -316
- package/md_cg/test_retr_s9_edges.py +286 -286
- package/md_cg/test_retr_s9_entity_ctx.py +175 -175
- package/md_cg/test_review_conformance.py +367 -367
- package/md_cg/test_role_views.py +354 -354
- package/md_cg/test_sem_noise.py +242 -242
- package/md_cg/test_semantic_canonical.py +241 -241
- package/md_cg/test_subproc_encoding.py +192 -192
- package/md_cg/test_sustain_mutual.py +153 -153
- package/md_cg/test_tasks.py +409 -409
- package/md_cg/test_tool_face.py +189 -189
- package/md_cg/test_transfer.py +180 -180
- package/md_cg/test_trust.py +361 -361
- package/md_cg/test_twophase.py +286 -286
- package/md_cg/test_v14_fixes.py +397 -397
- package/md_cg/test_validity_filter.py +280 -280
- package/md_cg/test_verify_answer.py +138 -138
- package/md_cg/test_wisdom_md_store.py +292 -292
- package/md_cg/test_writelimit.py +197 -197
- package/md_cg/test_writepipe.py +214 -214
- package/md_cg/theory.py +273 -273
- package/md_cg/tokens.py +677 -663
- package/md_cg/tool_face.py +260 -260
- package/md_cg/trust.py +986 -950
- package/md_cg/twophase.py +231 -231
- package/md_cg/units.py +667 -667
- package/md_cg/vision_evidence.py +666 -666
- package/md_cg/weights.py +624 -624
- package/md_cg/whitebox.py +527 -527
- package/md_cg/whitebox_kb/__init__.py +37 -37
- package/md_cg/whitebox_kb/aeis_core/__init__.py +42 -42
- package/md_cg/whitebox_kb/aeis_core/semantic.py +280 -280
- package/md_cg/whitebox_kb/aeis_core/textutil.py +13 -13
- package/md_cg/whitebox_kb/engine.py +310 -310
- package/md_cg/whitebox_kb/seed_knowledge//346/231/272/350/203/275/350/256/2723.4.md +5260 -5260
- package/md_cg/whitebox_kb/wisdom/browser_units.py +2631 -2631
- package/md_cg/whitebox_kb/wisdom/causal_discover.py +432 -432
- package/md_cg/whitebox_kb/wisdom/chat_engine.py +1506 -1506
- package/md_cg/whitebox_kb/wisdom/code_solidified.json +6195 -6195
- package/md_cg/whitebox_kb/wisdom/compiler_code_units.py +3033 -3033
- package/md_cg/whitebox_kb/wisdom/condition_algebra.py +112 -112
- package/md_cg/whitebox_kb/wisdom/condition_frame.py +315 -315
- package/md_cg/whitebox_kb/wisdom/condition_kb.py +108 -108
- package/md_cg/whitebox_kb/wisdom/conflict_map.json +4445 -4445
- package/md_cg/whitebox_kb/wisdom/core/lexer.py +512 -512
- package/md_cg/whitebox_kb/wisdom/core/name_checker.py +1023 -1023
- package/md_cg/whitebox_kb/wisdom/cspmn.py +258 -258
- package/md_cg/whitebox_kb/wisdom/csre.py +264 -264
- package/md_cg/whitebox_kb/wisdom/danmaku_audit.py +252 -252
- package/md_cg/whitebox_kb/wisdom/distilled_condition_units.json +6417 -6417
- package/md_cg/whitebox_kb/wisdom/docs/WB-EVAL-20260902b.json +1950 -1950
- package/md_cg/whitebox_kb/wisdom/docs/WB-EVAL-20260902c.json +1296 -1296
- package/md_cg/whitebox_kb/wisdom/docs/whitebox_capability_graph_demo.json +59 -59
- package/md_cg/whitebox_kb/wisdom/graph_db_units.py +3089 -3089
- package/md_cg/whitebox_kb/wisdom/knowledge_points.py +318 -318
- package/md_cg/whitebox_kb/wisdom/md_access.py +470 -470
- package/md_cg/whitebox_kb/wisdom/md_store.py +276 -251
- package/md_cg/whitebox_kb/wisdom/migrate_wisdom.py +476 -476
- package/md_cg/whitebox_kb/wisdom/navigate.py +248 -248
- package/md_cg/whitebox_kb/wisdom/neural_retrieve.py +224 -224
- package/md_cg/whitebox_kb/wisdom/os_units.py +2735 -2735
- package/md_cg/whitebox_kb/wisdom/pattern_separation.py +376 -376
- package/md_cg/whitebox_kb/wisdom/prereq_map.json +364 -364
- package/md_cg/whitebox_kb/wisdom/python_code_units.py +2766 -2766
- package/md_cg/whitebox_kb/wisdom/role_solidified.json +7 -7
- package/md_cg/whitebox_kb/wisdom/route_memory.py +244 -244
- package/md_cg/whitebox_kb/wisdom/scene_reconstruction.py +148 -148
- package/md_cg/whitebox_kb/wisdom/snr_report.json +40 -40
- package/md_cg/whitebox_kb/wisdom/test_code_compose_domains.py +7541 -7541
- package/md_cg/whitebox_kb/wisdom/test_compiler_self_bootstrap.py +354 -354
- package/md_cg/whitebox_kb/wisdom/test_ecosystem_assembly.py +158 -158
- package/md_cg/whitebox_kb/wisdom/test_ecosystem_demos.py +193 -193
- package/md_cg/whitebox_kb/wisdom/test_graph_db.py +292 -292
- package/md_cg/whitebox_kb/wisdom/test_python_self_bootstrap.py +160 -160
- package/md_cg/whitebox_kb/wisdom/trigger_words_index.json +4366 -4366
- package/md_cg/whitebox_kb/wisdom/verifier.py +1297 -1297
- package/md_cg/writelimit.py +356 -356
- package/md_cg/writepipe.py +550 -542
- package/package.json +97 -96
- package/skills/plugin.json +54 -54
- package/skills/skills/designer-perspective/SKILL.md +158 -158
- package/skills/skills/designer-perspective/references/01-observation-position.md +66 -66
- package/skills/skills/designer-perspective/references/02-structure-recognition.md +62 -62
- package/skills/skills/designer-perspective/references/03-direction-judgment.md +55 -55
- package/skills/skills/designer-perspective/references/04-qualification-verdict.md +72 -72
- package/skills/skills/designer-perspective/references/05-condition-attribution.md +74 -74
- package/skills/skills/designer-perspective/scripts/designer.py +545 -545
- package/skills/skills/designer-perspective/tests/cases.jsonl +17 -17
- package/skills/skills/designer-perspective/tests/selftest.py +61 -61
- package/skills/skills/lingshu-browser/SKILL.md +60 -60
- package/skills/skills/lingshu-compiler/SKILL.md +56 -56
- package/skills/skills/lingshu-compiler/units/analyze-type-infer/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/check-name-real/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-assign/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-expr-tree/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-full-pipeline/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-func-def/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-if-then/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-logic-expr/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-recursive/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-scope/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-type-check/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compile-while/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0010c4bf/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0355bffb/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0361708a/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-054a0414/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-05a1691a/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-05eeed1e/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0622a1f6/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-08b54217/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0a62b70c/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0ab24d00/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0e093688/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0e82b966/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0ee9b9b9/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-0f3787e6/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-1028685f/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-11897630/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-16661b9b/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-1f722303/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-25be1262/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-2a76ba07/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-2dbea54a/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-2df52f16/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-2ec2c9d2/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-2f8c8f39/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-38378ac7/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-39457d2e/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-39fb5926/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-47f4fbfa/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-4a8cd1f1/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-4b230b6b/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-4cbbda95/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-4d5a68ff/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-56dc9bdd/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-57e76ebe/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-61ff016b/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-63eae588/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-64c4224b/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-66377955/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-674ab4f6/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-6af76fd6/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-6d979db2/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-6de326c0/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-6f1c0eea/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-724d6c9b/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-7690177f/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-7b229a7d/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-7f471b3a/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-815cad08/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-83c61634/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-8c798c81/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-8dd747ac/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-90324d0a/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-94b8d72d/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-94f12231/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-95937c16/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-98a5625b/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-98b4c42f/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-98e3894a/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-9bdfe4b8/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-9d9b4e83/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-9f7be5ad/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-a6daf076/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-a7995a0c/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-a8399248/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-aabbd099/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-afe169d8/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-b0678bda/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-b09bd196/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-b1396e23/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-b9b31ce0/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-c10264a7/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-cb1e8e4b/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-ccafd438/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-cda9c262/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-ce648068/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-cf5776a4/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-d974e5d3/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-e3979fd3/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-eb1cf2b5/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-ecb30d5b/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-f8c8b24b/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-f99fedbe/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-fa8ff5f7/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/compiler-fe1b058d/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/lex-chinese-program/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/lex-dao-de-jing/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/lex-nine-chapters/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-arithmetic/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-array-ops/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-closure-call/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-closure-create/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-compare/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-cond-jump/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-cond-space/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-exception/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-func-call/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-loop-run/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-profiling/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-refcount/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-run-loop/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-short-circuit/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-stack-guard/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-stack-ops/SKILL.md +45 -45
- package/skills/skills/lingshu-compiler/units/vm-trust-accum/SKILL.md +45 -45
- package/skills/skills/lingshu-graph/SKILL.md +63 -63
- package/skills/skills/lingshu-net/SKILL.md +48 -48
- package/skills/skills/lingshu-os/SKILL.md +64 -64
- package/skills/skills/lingshu-pylang/SKILL.md +71 -71
- package/src/bridge.ts +401 -401
- package/src/hooks.ts +38 -2
- package/src/lib/datapath.ts +326 -326
- package/src/lib/mdcg_client.ts +413 -413
- package/src/lib/mutual.ts +428 -428
- package/src/lib/prompt_safety.ts +62 -62
- package/src/lib/python_path.ts +71 -71
- package/src/lib/roleplay_web.ts +932 -932
- package/src/lib/token_store.ts +192 -192
- package/src/tools.ts +212 -212
- package/zcode/AGENTS.md +11 -3
- package/zcode/README.md +41 -41
- /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,176 +1,176 @@
|
|
|
1
|
-
# GridWorld 最小闭环规格 v0.1
|
|
2
|
-
|
|
3
|
-
> 目的:回应外部评审两轮共识——系统最大缺口是「行动/环境落地」:预测→行动→世界变化→预测误差→模型更新的闭环不存在。缺口矩阵 `docs/theory/理论_机制_代码_实验_缺口矩阵_v0.1.md:51`(#25 三端口架构)已文档声明输出端口,但**专属具身场景测试**仍留白。本文件设计一个最小 Grid World 闭环实验,把「预测→行动→观测→误差→回灌→模型更新」焊成一条可跑通、可度量、可审计的链。
|
|
4
|
-
>
|
|
5
|
-
> **本文件是规格**:启动实现须使用者批准;本文不改任何代码。
|
|
6
|
-
>
|
|
7
|
-
> 诚实边界先行:自建玩具环境(确定性/全观测/可枚举/单目标)证据强度受限(GPT 评审已声明)——本实验证明的是**闭环机制存在且收敛**,不是「世界模型能力证明」(§8)。
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## 1. 可复用资产清单(调研结论)
|
|
12
|
-
|
|
13
|
-
闭环所需零件仓内**全部已存在**,缺口只在「动作/环境」一段(§6)。逐条核对过的接口:
|
|
14
|
-
|
|
15
|
-
| 资产 | 位置 | 签名(核对过) | 闭环角色 |
|
|
16
|
-
|---|---|---|---|
|
|
17
|
-
| 每动作候选枚举 | `md_cg/predict.py:226` | `branch_candidates(cg, node_id, semantic=True) -> [{node_id, confidence, source, relation_type, condition}]` | **动作选择器**:当前状态节点出边枚举,`condition` 字段承载动作 |
|
|
18
|
-
| 多步路线预测 | `md_cg/predict.py:541` | `routes(cg, start_id=None, blindspot_id=None, horizon=3, max_branches=5, sort="composite", limit=0, semantic=True)` | 多步预测面(M3 规划评测);route 含 `path/confidence/uncertainty_bound/score` |
|
|
19
|
-
| 预测反馈回灌 | `md_cg/predict.py:678` | `feedback(cg, predicted_node_id, actual_node_id=None, hit=None, note="", actor="predict", sync_self=True, channel=None)` | **模型更新落点**:hit→指向边置信度 +0.05(`_boost_incoming` `:599`);miss→`add_rejected` 负记忆;`sync_self=True` 自动刷自我状态卡 |
|
|
20
|
-
| 命中率动态死区 | `md_cg/predict.py:655` | `dynamic_hit_threshold(cg, limit=200)`;常量 `MIN_SAMPLES=50`(`:40`)、`BASE_HIT_RATE=0.40`(`:41`)、`EDGE_BOOST=0.05`(`:43`)、`PRIOR_STRENGTH=20`(`:48`) | 自我校准:样本<50 不触发反思;threshold=max(BASE, mean−2σ) |
|
|
21
|
-
| 通道贝叶斯 | `md_cg/predict.py:319` / `:364` | `beta_posterior(hits, prior_k=20, base=0.40)`;`channel_posterior(cg, channel=None, limit=200)` | 可信度后验(置信度≠可信度);`channel="gridworld"` 通道分离 |
|
|
22
|
-
| 预测统计 | `md_cg/predict.py:888` | `stats(cg, limit=20)` → `{calls, routes_generated, feedback_samples, hit_rate, beta, dynamic, recent}` | 指标读数口 |
|
|
23
|
-
| 盲区五态闭环 | `md_cg/predict.py:790` | `learn_blindspots(cg, blindspot_id=None, limit=8, horizon=3, max_branches=5, apply=False, actor="insight")`;五态 `unknowable/no_anchor/unresolved/carried/resolved`(`:797-801`);`apply=True` 落 `gap_hint`(幂等,`:765`) | 元认知闭环:失败区域→待补线索;`_learn.jsonl` 留痕 |
|
|
24
|
-
| 因果可达验证 | `md_cg/predict.py:922` | `causal_path(cg, a_id, b_id, max_depth=5)` | M1 冒烟:验证播种图因果连通性 |
|
|
25
|
-
| 探索提案 | `md_cg/autonomy.py:95` | `proposals(cg, window=200, limit=3, enforce_gain=True)`;评分 `=W_D2·Σ\|d2\|+W_BLINDSPOT·BLINDSPOT+W_DEFER·DEFER`(权重 `:34`),score≤0 不提案 | 探索信号源;**只读 `_reflection.jsonl`**(缺口 G4) |
|
|
26
|
-
| 探索闭环 | `md_cg/autonomy.py:158` | `explore(cg, apply=False, limit=3, window=200, actor="autonomy", bypass_gain=False)`;P-T-40 四保护(`gain_gate` `:51`) | 元认知面:提案→五态验证→回写;`_explore.jsonl` 留痕 |
|
|
27
|
-
| 反思留痕 | `md_cg/mdcg.py:1472` | `MdCG.reflect(query, results, user_feedback=None)` → 记录 `{t, query, d_prev, d_curr, d_delta, d2, states, n_results, feedback}`(`:1487-1497`) | d2/BLINDSPOT 信号产生点,proposals 唯一输入 |
|
|
28
|
-
| 检索(带资格态) | `md_cg/mdcg.py:1247` | `MdCG.search(query, layer=None, k=20, context=None, min_results=1, record=True, include_neg=True, judge=True, pools=None, session=None)` | reflect 的 results 来源;`judge=True` 产出 qualification |
|
|
29
|
-
| 认知图构造 | `md_cg/mdcg.py:477` | `MdCG(root, autoflush=64)` | 实验用独立临时 root,不碰生产库 |
|
|
30
|
-
| 自我状态刷新 | `md_cg/self_state.py:438` | `refresh(cg, subject="self:lingshu", window=20, ..., actor="self_state", force=False, strict=False, session=None)`(幂等 fingerprint `:208`,版本链 `_self_state.jsonl`) | 指标④读数源;`snapshot` `:184` |
|
|
31
|
-
| 自我预测面 | `md_cg/self_state.py:235` | `_prediction_face(cg)` → `{hit_rate, beta_mean, beta_ci95, threshold, reflect, ece}` | 自我可靠性指标直读 |
|
|
32
|
-
| 元认知观测面 | `md_cg/metacognition.py:123` / `:248` / `:167` | `trace(cg, window=50)`、`blindspots(cg, limit=20, window=200)`、`calibration(cg, max_scan=2000)` | 情绪面/ECE 旁证 |
|
|
33
|
-
| mdcos 面板 | `md_cg/mdcos.py:2282` / `:2292` / `:2303` / `:1912-1924` | `predict_routes(...)`、`predict_feedback(predicted_node_id, actual_node_id=None, hit=None, note="", actor="predict", sync_self=True)`、`predict_stats(...)`、`insight(action="explore"/"learn")` | 高层入口;predict_feedback **无 channel 参数**(缺口 G5) |
|
|
34
|
-
| 输出端口对照 | `md_cg/sustain.py:230` / `:297` | `mutual_watch(cg, peer, *, restart_cmd=None, d=None, interval, restart_cooldown, fresh_timeout, poll=0.5, spawner=None)` | #25 既有最小具身形态;本实验是其**环境侧**补充,不替换 |
|
|
35
|
-
|
|
36
|
-
**账本同构约定**:既有 append-only jsonl——`_prediction.jsonl`(`md_cg/predict.py:62`)、`_learn.jsonl`(`:724`)、`_explore.jsonl`(`md_cg/autonomy.py:36`)、`_reflection.jsonl`(`md_cg/metacognition.py:105`)、`_self_state.jsonl`(`md_cg/self_state.py:74`)。统一形态:`type`/`t`/`actor` 前置字段 + `append_jsonl` 失败不阻塞(如 `md_cg/predict.py:86-90`)。本实验新增 **`_gridworld.jsonl`** 同构留痕(§5)。
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## 2. 环境接口(零依赖,纯 python stdlib)
|
|
41
|
-
|
|
42
|
-
对齐零依赖纪律(`md_cg/predict.py:23` 同款声明)。建议形态 `md_cg/gridworld.py`(另案,本文只定接口):
|
|
43
|
-
|
|
44
|
-
```python
|
|
45
|
-
class GridWorldEnv:
|
|
46
|
-
"""最小确定性网格世界:W×H(默认 5×5),单 agent 单目标,静态障碍。"""
|
|
47
|
-
|
|
48
|
-
def __init__(self, width=5, height=5, start, goal,
|
|
49
|
-
obstacles=frozenset(), seed=None): ...
|
|
50
|
-
def reset(self) -> str:
|
|
51
|
-
"""回起点,episode+1,返回初始 state_id("gw_s_x_y")。"""
|
|
52
|
-
def actions(self, state_id) -> tuple:
|
|
53
|
-
"""合法动作:("up","down","left","right") 剔除出界项。"""
|
|
54
|
-
def transition(self, state_id, action) -> str:
|
|
55
|
-
"""纯函数:确定性转移,可离线全量枚举。"""
|
|
56
|
-
def step(self, state_id, action) -> tuple:
|
|
57
|
-
"""执行 → (next_state_id, reward, done)。"""
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
确定性规则(全部可机器断言,M1 验收项):
|
|
61
|
-
|
|
62
|
-
| 规则 | 定义 |
|
|
63
|
-
|---|---|
|
|
64
|
-
| 确定性转移 | 同一 `(s, a)` 永远映射同一 `s'`(`transition` 纯函数,无随机项) |
|
|
65
|
-
| 碰撞 | 目标格是墙(出界)或障碍 → **原地不动**(可学的条件规则,非非法动作) |
|
|
66
|
-
| 奖励 | 到达 goal +1,其余 0;无折扣、无中间奖励 |
|
|
67
|
-
| 终止 | `done = (next_state_id == goal_id)` |
|
|
68
|
-
| 观测 | **全观测**:观测=状态本身,不做部分可观测(诚实边界内,§8) |
|
|
69
|
-
|
|
70
|
-
---
|
|
71
|
-
|
|
72
|
-
## 3. 状态 ↔ 认知图编码
|
|
73
|
-
|
|
74
|
-
世界模型落在认知图的「状态节点 + 动作条件边」,是 `branch_candidates` 的原生数据形态,**零改动**对接:
|
|
75
|
-
|
|
76
|
-
| 编码项 | 规格 | 依据 |
|
|
77
|
-
|---|---|---|
|
|
78
|
-
| 状态节点 id | `gw_s_<x>_<y>` | `_slug` 惯例(`md_cg/self_state.py:95`) |
|
|
79
|
-
| 层 | **必须 `knowledge`** | `_SAFE_LAYERS=("knowledge","contextual","structural")`(`md_cg/predict.py:592`)——hit 分支 `_boost_incoming`(`:615`)只改这三层,其他层**静默不改边**,模型更新闭环失效(缺口 G2) |
|
|
80
|
-
| 正文 | CCG 五行齐全:`# 功能名:格(x,y)` / `# 生效条件:…` / `# 执行:…` / `# 子功能:…` / `# 不适用条件:…` | `_is_settled`(`md_cg/predict.py:739-757`)判「知识层+五要素」为 resolved——五态闭环才能出 `resolved` 终态 |
|
|
81
|
-
| 边 | `edges=[{"target": s_next, "relation_type": "causal", "condition": "动作:上", "confidence": 0.5}]` | `CAUSAL_BRANCH_TYPES=("causal","sequential")`(`:50`);`condition` 经 `chain.edge_condition` 透传进候选(`:239`)——**动作信息沿既有通道流动,无需新字段** |
|
|
82
|
-
| 初始置信度 | 0.5(无先验声明;上限 1.0 封顶,`:623`) | 诚实:播种即「未经验证」 |
|
|
83
|
-
| 标签 | `tags=["gridworld", "gw_pos:<x>_<y>"]` | 检索/审计隔离面 |
|
|
84
|
-
| 频道约定 | `feedback(..., channel="gridworld")` | `channel_posterior` 按面分层(`:364-375`),与既有通道零混淆 |
|
|
85
|
-
|
|
86
|
-
---
|
|
87
|
-
|
|
88
|
-
## 4. 闭环管线(observe→predict→execute→error→feedback→learn)
|
|
89
|
-
|
|
90
|
-
| # | 步骤 | 对接(签名见 §1) | 说明 |
|
|
91
|
-
|---|---|---|---|
|
|
92
|
-
| 1 | observe | `env.reset()` / `env.step()` → `state_id` | 全观测 |
|
|
93
|
-
| 2 | 候选动作 | `predict.branch_candidates(cg, state_id, semantic=False)` | **`semantic=False`**:玩具环境边即全集,关闭语义诱导防伪因果门噪声(D-002 门 `:169` 无增益) |
|
|
94
|
-
| 3 | 预测 | 首候选=预测终态 `predicted_node_id`;多步面(M3):`predict_routes(start_id=state_id, horizon=3)` | 候选的 `condition` 即动作 |
|
|
95
|
-
| 4 | 决策+执行 | 解码 `condition`→`a`;`next_state, reward, done = env.step(state_id, a)` | 无候选(未播种邻域)→ ε-greedy uniform 探索(M2 固定 ε=0.2 占位;与 `gain_gate` 的探索资格协同属 M3 可选) |
|
|
96
|
-
| 5 | 误差计算 | `hit = (predicted_node_id == actual_next_node_id)` | **显式传 hit**,不依赖 feedback 内部 `pred==act` 字符串判定(`:693-694`;缺口 G3) |
|
|
97
|
-
| 6 | 误差回灌 | `predict.feedback(cg, predicted_node_id, actual_next_node_id, hit=hit, note=f"ep{e}/s{t}", actor="gridworld", channel="gridworld")` | hit→边置信度+0.05(**模型更新**);miss→`add_rejected`(负证据);`sync_self=True` 刷自我卡 |
|
|
98
|
-
| 7 | 反思留痕(必选步) | `results, _ = cg.search(状态描述, k=4)`;`cg.reflect(f"gw:ep{e}:{state_id}", results)` | 产 d2/states 信号——proposals 唯一输入(缺口 G4) |
|
|
99
|
-
| 8 | 元认知闭环(每 episode 末) | `predict.learn_blindspots(cg, apply=True)`;或 `autonomy.explore(cg, apply=True, limit=3)` | 失败区域→五态终判→`gap_hint`;`_explore.jsonl` outcomes 供下轮 `gain_gate` |
|
|
100
|
-
| 9 | 自我面(每 episode 末) | `self_state.refresh(cg, actor="gridworld")` | 幂等(fingerprint 不变跳过);版本链留痕 |
|
|
101
|
-
| 10 | 留痕 | `_gridworld.jsonl`(§5) | 实验主账本 |
|
|
102
|
-
|
|
103
|
-
语义对应评审闭环:**observe(1)→predict(2-3)→execute(4)→世界变化→prediction error(5)→feedback(6)→模型更新(边置信度/负记忆)→下轮预测改变**。元认知支线(7-8)与自我支线(9)复用既有链路。
|
|
104
|
-
|
|
105
|
-
---
|
|
106
|
-
|
|
107
|
-
## 5. 审计留痕(`_gridworld.jsonl`)
|
|
108
|
-
|
|
109
|
-
```jsonc
|
|
110
|
-
// step(每步一条)
|
|
111
|
-
{"type": "step", "t": 0.0, "actor": "gridworld",
|
|
112
|
-
"episode": 3, "step": 7, "state": "gw_s_1_2", "action": "up",
|
|
113
|
-
"predicted": "gw_s_1_3", "actual": "gw_s_1_3", "hit": true,
|
|
114
|
-
"reward": 0, "done": false, "n_candidates": 4, "channel": "gridworld"}
|
|
115
|
-
// episode_end(每 episode 一条)
|
|
116
|
-
{"type": "episode_end", "t": 0.0, "episode": 3, "steps": 18, "hits": 14,
|
|
117
|
-
"reached_goal": true, "hit_rate": 0.7778, "n_rejected_new": 2,
|
|
118
|
-
"edge_conf_sum": 41.35, "actor": "gridworld"}
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
同构纪律:`type`/`t`/`actor` 前置(对齐 `_explore.jsonl` 形态 `md_cg/autonomy.py:199-205`);append 失败不阻塞;指标全部可从 `_gridworld.jsonl` + `predict.stats` + `self_state.snapshot` 重算(白箱可审计)。
|
|
122
|
-
|
|
123
|
-
---
|
|
124
|
-
|
|
125
|
-
## 6. 识别出的对接缺口
|
|
126
|
-
|
|
127
|
-
调研发现的真缺口(规格层裁定,均**不改既有代码**):
|
|
128
|
-
|
|
129
|
-
| # | 缺口 | 取证 | 规格裁定 |
|
|
130
|
-
|---|---|---|---|
|
|
131
|
-
| G1 | **动作概念缺位**:predict 全链只认「节点+边」,无动作空间抽象;`routes` 是图内路径生成器不是动作选择器 | `md_cg/predict.py:477-520`(DFS 无动作参数) | 以「边 `condition` 字段承载动作」编码(§3);选择器=branch_candidates 首候选解码。动作沿既有 `condition` 通道流动,零改动 |
|
|
132
|
-
| G2 | **层硬约束**:hit 分支 `_boost_incoming` 只改 `_SAFE_LAYERS` 三层,其余层静默不改边 | `md_cg/predict.py:592`、`:615` | 状态节点强制落 `knowledge` 层(§3);M1 冒烟加断言:feedback 后边置信度确有上升 |
|
|
133
|
-
| G3 | hit 隐式判定是 `pred==act` 字符串相等 | `md_cg/predict.py:693-694` | 实验显式传 `hit=True/False`,不依赖字符串约定 |
|
|
134
|
-
| G4 | **盲区信号依赖 reflect**:`autonomy.proposals` 只读 `_reflection.jsonl`,闭环不调 `reflect()` 则零信号、五态闭环空转(「信号在记录、无人在听」防复发) | `md_cg/autonomy.py:107` | 管线第 7 步为**必选步**(§4),每步 search(record=True, judge=True)+reflect |
|
|
135
|
-
| G5 | **mdcos.predict_feedback 不透传 channel**(库层有,封装层无) | `md_cg/mdcos.py:2292-2293` vs `md_cg/predict.py:679` | 驱动器**直调库层** `predict.feedback(..., channel="gridworld")`;既有封装不动(面选择,非缺陷) |
|
|
136
|
-
| G6 | `dynamic_hit_threshold` 样本<50 不触发反思(MIN_SAMPLES=50) | `md_cg/predict.py:40`、`:662-665` | 不构成障碍:主判据读 `beta_posterior`(无门槛);反思触发是滞后旁证非主判据 |
|
|
137
|
-
|
|
138
|
-
---
|
|
139
|
-
|
|
140
|
-
## 7. 验证指标与分阶段里程碑
|
|
141
|
-
|
|
142
|
-
### 7.1 验证指标(四类,全部可机器断言)
|
|
143
|
-
|
|
144
|
-
| 指标 | 定义 | 读数口 | 判据(M3) |
|
|
145
|
-
|---|---|---|---|
|
|
146
|
-
| ①预测误差随轮次下降 | 逐步误差=1−hit;episode 级=1−hit_rate;后验均值=β 后验 mean | `_gridworld.jsonl`、`predict.stats()["beta"]["all"]`(`md_cg/predict.py:888-901`) | 后 20% episodes 的后验均值 > 前 20% + 0.2;逐 episode 命中率回归斜率>0(误差单调下降,允许噪声) |
|
|
147
|
-
| ②策略稳定性 | 重复同状态同动作率;每 episode 步数(steps-to-goal) | `_gridworld.jsonl` step 聚合 | 确定性环境下最后 3 episodes 同状态动作一致率 ≥0.95;steps-to-goal 后段 < 前段 |
|
|
148
|
-
| ③条件模型变化 | 边置信度漂移 Σ\|Δconf\|;rejected 新增数;命中边集合收敛 | cg edges 直读 + `n_rejected_new` | EDGE_BOOST 累积集中在通往 goal 的边上;最后 N episodes rejected 新增=0、无新增命中边(模型停止变化=收敛) |
|
|
149
|
-
| ④自我可靠性 | hit_rate / beta_mean / beta_ci95 / reflect(脱离死区)随 episode 演化 | `self_state.snapshot()["prediction"]`(`md_cg/self_state.py:235`) | beta_ci95 收窄;reflect 由 True→False(≥50 样本且过动态阈值);`refresh` 版本链可回放 |
|
|
150
|
-
|
|
151
|
-
对照组(M3 必配):**未学习基线**——同环境同 episode 数,但不跑 feedback(边置信度恒 0.5);两臂 hit rate 必须显著分离,否则①不成立。
|
|
152
|
-
|
|
153
|
-
### 7.2 里程碑(每阶段独立验收)
|
|
154
|
-
|
|
155
|
-
| 阶段 | 内容 | 验收判据(可独立断言) |
|
|
156
|
-
|---|---|---|
|
|
157
|
-
| **M1 环境冒烟** | GridWorldEnv 确定性断言(同一 `(s,a)` 复跑 100 次同 `s'`);9~25 格状态节点+动作条件边播种到临时 root;`branch_candidates` 枚举无异常;`routes()` 返回 `status=ok` 且路径连续;`causal_path(start, goal)` 连通;G2 断言(feedback 后边置信度上升) | 环境与播种层全绿;**不涉及预测质量** |
|
|
158
|
-
| **M2 闭环跑通** | ≥10 episodes 端到端无异常;六账本(`_gridworld`/`_prediction`/`_reflection`/`_learn`/`_explore`/`_self_state`)均非空;至少一次到达 goal;`reflect` 留痕含 d2 | 闭环不死、账本可审计、管线第 7 步有产出 |
|
|
159
|
-
| **M3 指标显著** | 四类指标判据全过 + 对照组分离 | 数字入实验结论文档,判定「闭环机制验证通过」(非「世界模型能力证明」,§8) |
|
|
160
|
-
|
|
161
|
-
---
|
|
162
|
-
|
|
163
|
-
## 8. 诚实边界
|
|
164
|
-
|
|
165
|
-
- **玩具环境证据强度受限**(GPT 评审已声明,本规格如实继承):确定性/全观测/可枚举/单目标——结论只支持「预测→行动→误差→更新→行为改善」的**闭环机制存在且收敛**;不支持「世界模型能力」主张(泛化、部分可观测、非平稳、组合泛化)。对外表述必须用前一句口径。
|
|
166
|
-
- **模型更新是确定性账本式更新**:EDGE_BOOST=0.05 线性增量(`md_cg/predict.py:43`),非参数梯度学习;D-006 口径=工程初值非协议承诺。
|
|
167
|
-
- **ε-greedy 是占位策略**:M2 固定 ε=0.2;探索的「资格裁决」(σ(Gain) 增益门槛)与本环 ε 的协同只列 M3 可选项,不作为 M2 验收面。
|
|
168
|
-
- **单目标奖励无折扣**:不引入 RL 复杂度;本实验不与任何 RL 基线比名次,只做自我前后对照。
|
|
169
|
-
|
|
170
|
-
---
|
|
171
|
-
|
|
172
|
-
## 9. 边界与实现前置
|
|
173
|
-
|
|
174
|
-
- 本文件是**规格**;启动实现须使用者批准。实现建议形态:`md_cg/gridworld.py`(env+runner)+ `md_cg/test_gridworld.py`(确定性断言+闭环端到端+指标断言),临时 root(`MdCG(root=<tempdir>)`,`md_cg/mdcg.py:477`),不碰生产库。
|
|
175
|
-
- 实现后归档按第 16 条纪律:只记核心修改(内容/原因/位置/验证结论),账本与断言数字入结论。
|
|
176
|
-
|
|
1
|
+
# GridWorld 最小闭环规格 v0.1
|
|
2
|
+
|
|
3
|
+
> 目的:回应外部评审两轮共识——系统最大缺口是「行动/环境落地」:预测→行动→世界变化→预测误差→模型更新的闭环不存在。缺口矩阵 `docs/theory/理论_机制_代码_实验_缺口矩阵_v0.1.md:51`(#25 三端口架构)已文档声明输出端口,但**专属具身场景测试**仍留白。本文件设计一个最小 Grid World 闭环实验,把「预测→行动→观测→误差→回灌→模型更新」焊成一条可跑通、可度量、可审计的链。
|
|
4
|
+
>
|
|
5
|
+
> **本文件是规格**:启动实现须使用者批准;本文不改任何代码。
|
|
6
|
+
>
|
|
7
|
+
> 诚实边界先行:自建玩具环境(确定性/全观测/可枚举/单目标)证据强度受限(GPT 评审已声明)——本实验证明的是**闭环机制存在且收敛**,不是「世界模型能力证明」(§8)。
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 1. 可复用资产清单(调研结论)
|
|
12
|
+
|
|
13
|
+
闭环所需零件仓内**全部已存在**,缺口只在「动作/环境」一段(§6)。逐条核对过的接口:
|
|
14
|
+
|
|
15
|
+
| 资产 | 位置 | 签名(核对过) | 闭环角色 |
|
|
16
|
+
|---|---|---|---|
|
|
17
|
+
| 每动作候选枚举 | `md_cg/predict.py:226` | `branch_candidates(cg, node_id, semantic=True) -> [{node_id, confidence, source, relation_type, condition}]` | **动作选择器**:当前状态节点出边枚举,`condition` 字段承载动作 |
|
|
18
|
+
| 多步路线预测 | `md_cg/predict.py:541` | `routes(cg, start_id=None, blindspot_id=None, horizon=3, max_branches=5, sort="composite", limit=0, semantic=True)` | 多步预测面(M3 规划评测);route 含 `path/confidence/uncertainty_bound/score` |
|
|
19
|
+
| 预测反馈回灌 | `md_cg/predict.py:678` | `feedback(cg, predicted_node_id, actual_node_id=None, hit=None, note="", actor="predict", sync_self=True, channel=None)` | **模型更新落点**:hit→指向边置信度 +0.05(`_boost_incoming` `:599`);miss→`add_rejected` 负记忆;`sync_self=True` 自动刷自我状态卡 |
|
|
20
|
+
| 命中率动态死区 | `md_cg/predict.py:655` | `dynamic_hit_threshold(cg, limit=200)`;常量 `MIN_SAMPLES=50`(`:40`)、`BASE_HIT_RATE=0.40`(`:41`)、`EDGE_BOOST=0.05`(`:43`)、`PRIOR_STRENGTH=20`(`:48`) | 自我校准:样本<50 不触发反思;threshold=max(BASE, mean−2σ) |
|
|
21
|
+
| 通道贝叶斯 | `md_cg/predict.py:319` / `:364` | `beta_posterior(hits, prior_k=20, base=0.40)`;`channel_posterior(cg, channel=None, limit=200)` | 可信度后验(置信度≠可信度);`channel="gridworld"` 通道分离 |
|
|
22
|
+
| 预测统计 | `md_cg/predict.py:888` | `stats(cg, limit=20)` → `{calls, routes_generated, feedback_samples, hit_rate, beta, dynamic, recent}` | 指标读数口 |
|
|
23
|
+
| 盲区五态闭环 | `md_cg/predict.py:790` | `learn_blindspots(cg, blindspot_id=None, limit=8, horizon=3, max_branches=5, apply=False, actor="insight")`;五态 `unknowable/no_anchor/unresolved/carried/resolved`(`:797-801`);`apply=True` 落 `gap_hint`(幂等,`:765`) | 元认知闭环:失败区域→待补线索;`_learn.jsonl` 留痕 |
|
|
24
|
+
| 因果可达验证 | `md_cg/predict.py:922` | `causal_path(cg, a_id, b_id, max_depth=5)` | M1 冒烟:验证播种图因果连通性 |
|
|
25
|
+
| 探索提案 | `md_cg/autonomy.py:95` | `proposals(cg, window=200, limit=3, enforce_gain=True)`;评分 `=W_D2·Σ\|d2\|+W_BLINDSPOT·BLINDSPOT+W_DEFER·DEFER`(权重 `:34`),score≤0 不提案 | 探索信号源;**只读 `_reflection.jsonl`**(缺口 G4) |
|
|
26
|
+
| 探索闭环 | `md_cg/autonomy.py:158` | `explore(cg, apply=False, limit=3, window=200, actor="autonomy", bypass_gain=False)`;P-T-40 四保护(`gain_gate` `:51`) | 元认知面:提案→五态验证→回写;`_explore.jsonl` 留痕 |
|
|
27
|
+
| 反思留痕 | `md_cg/mdcg.py:1472` | `MdCG.reflect(query, results, user_feedback=None)` → 记录 `{t, query, d_prev, d_curr, d_delta, d2, states, n_results, feedback}`(`:1487-1497`) | d2/BLINDSPOT 信号产生点,proposals 唯一输入 |
|
|
28
|
+
| 检索(带资格态) | `md_cg/mdcg.py:1247` | `MdCG.search(query, layer=None, k=20, context=None, min_results=1, record=True, include_neg=True, judge=True, pools=None, session=None)` | reflect 的 results 来源;`judge=True` 产出 qualification |
|
|
29
|
+
| 认知图构造 | `md_cg/mdcg.py:477` | `MdCG(root, autoflush=64)` | 实验用独立临时 root,不碰生产库 |
|
|
30
|
+
| 自我状态刷新 | `md_cg/self_state.py:438` | `refresh(cg, subject="self:lingshu", window=20, ..., actor="self_state", force=False, strict=False, session=None)`(幂等 fingerprint `:208`,版本链 `_self_state.jsonl`) | 指标④读数源;`snapshot` `:184` |
|
|
31
|
+
| 自我预测面 | `md_cg/self_state.py:235` | `_prediction_face(cg)` → `{hit_rate, beta_mean, beta_ci95, threshold, reflect, ece}` | 自我可靠性指标直读 |
|
|
32
|
+
| 元认知观测面 | `md_cg/metacognition.py:123` / `:248` / `:167` | `trace(cg, window=50)`、`blindspots(cg, limit=20, window=200)`、`calibration(cg, max_scan=2000)` | 情绪面/ECE 旁证 |
|
|
33
|
+
| mdcos 面板 | `md_cg/mdcos.py:2282` / `:2292` / `:2303` / `:1912-1924` | `predict_routes(...)`、`predict_feedback(predicted_node_id, actual_node_id=None, hit=None, note="", actor="predict", sync_self=True)`、`predict_stats(...)`、`insight(action="explore"/"learn")` | 高层入口;predict_feedback **无 channel 参数**(缺口 G5) |
|
|
34
|
+
| 输出端口对照 | `md_cg/sustain.py:230` / `:297` | `mutual_watch(cg, peer, *, restart_cmd=None, d=None, interval, restart_cooldown, fresh_timeout, poll=0.5, spawner=None)` | #25 既有最小具身形态;本实验是其**环境侧**补充,不替换 |
|
|
35
|
+
|
|
36
|
+
**账本同构约定**:既有 append-only jsonl——`_prediction.jsonl`(`md_cg/predict.py:62`)、`_learn.jsonl`(`:724`)、`_explore.jsonl`(`md_cg/autonomy.py:36`)、`_reflection.jsonl`(`md_cg/metacognition.py:105`)、`_self_state.jsonl`(`md_cg/self_state.py:74`)。统一形态:`type`/`t`/`actor` 前置字段 + `append_jsonl` 失败不阻塞(如 `md_cg/predict.py:86-90`)。本实验新增 **`_gridworld.jsonl`** 同构留痕(§5)。
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 2. 环境接口(零依赖,纯 python stdlib)
|
|
41
|
+
|
|
42
|
+
对齐零依赖纪律(`md_cg/predict.py:23` 同款声明)。建议形态 `md_cg/gridworld.py`(另案,本文只定接口):
|
|
43
|
+
|
|
44
|
+
```python
|
|
45
|
+
class GridWorldEnv:
|
|
46
|
+
"""最小确定性网格世界:W×H(默认 5×5),单 agent 单目标,静态障碍。"""
|
|
47
|
+
|
|
48
|
+
def __init__(self, width=5, height=5, start, goal,
|
|
49
|
+
obstacles=frozenset(), seed=None): ...
|
|
50
|
+
def reset(self) -> str:
|
|
51
|
+
"""回起点,episode+1,返回初始 state_id("gw_s_x_y")。"""
|
|
52
|
+
def actions(self, state_id) -> tuple:
|
|
53
|
+
"""合法动作:("up","down","left","right") 剔除出界项。"""
|
|
54
|
+
def transition(self, state_id, action) -> str:
|
|
55
|
+
"""纯函数:确定性转移,可离线全量枚举。"""
|
|
56
|
+
def step(self, state_id, action) -> tuple:
|
|
57
|
+
"""执行 → (next_state_id, reward, done)。"""
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
确定性规则(全部可机器断言,M1 验收项):
|
|
61
|
+
|
|
62
|
+
| 规则 | 定义 |
|
|
63
|
+
|---|---|
|
|
64
|
+
| 确定性转移 | 同一 `(s, a)` 永远映射同一 `s'`(`transition` 纯函数,无随机项) |
|
|
65
|
+
| 碰撞 | 目标格是墙(出界)或障碍 → **原地不动**(可学的条件规则,非非法动作) |
|
|
66
|
+
| 奖励 | 到达 goal +1,其余 0;无折扣、无中间奖励 |
|
|
67
|
+
| 终止 | `done = (next_state_id == goal_id)` |
|
|
68
|
+
| 观测 | **全观测**:观测=状态本身,不做部分可观测(诚实边界内,§8) |
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## 3. 状态 ↔ 认知图编码
|
|
73
|
+
|
|
74
|
+
世界模型落在认知图的「状态节点 + 动作条件边」,是 `branch_candidates` 的原生数据形态,**零改动**对接:
|
|
75
|
+
|
|
76
|
+
| 编码项 | 规格 | 依据 |
|
|
77
|
+
|---|---|---|
|
|
78
|
+
| 状态节点 id | `gw_s_<x>_<y>` | `_slug` 惯例(`md_cg/self_state.py:95`) |
|
|
79
|
+
| 层 | **必须 `knowledge`** | `_SAFE_LAYERS=("knowledge","contextual","structural")`(`md_cg/predict.py:592`)——hit 分支 `_boost_incoming`(`:615`)只改这三层,其他层**静默不改边**,模型更新闭环失效(缺口 G2) |
|
|
80
|
+
| 正文 | CCG 五行齐全:`# 功能名:格(x,y)` / `# 生效条件:…` / `# 执行:…` / `# 子功能:…` / `# 不适用条件:…` | `_is_settled`(`md_cg/predict.py:739-757`)判「知识层+五要素」为 resolved——五态闭环才能出 `resolved` 终态 |
|
|
81
|
+
| 边 | `edges=[{"target": s_next, "relation_type": "causal", "condition": "动作:上", "confidence": 0.5}]` | `CAUSAL_BRANCH_TYPES=("causal","sequential")`(`:50`);`condition` 经 `chain.edge_condition` 透传进候选(`:239`)——**动作信息沿既有通道流动,无需新字段** |
|
|
82
|
+
| 初始置信度 | 0.5(无先验声明;上限 1.0 封顶,`:623`) | 诚实:播种即「未经验证」 |
|
|
83
|
+
| 标签 | `tags=["gridworld", "gw_pos:<x>_<y>"]` | 检索/审计隔离面 |
|
|
84
|
+
| 频道约定 | `feedback(..., channel="gridworld")` | `channel_posterior` 按面分层(`:364-375`),与既有通道零混淆 |
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## 4. 闭环管线(observe→predict→execute→error→feedback→learn)
|
|
89
|
+
|
|
90
|
+
| # | 步骤 | 对接(签名见 §1) | 说明 |
|
|
91
|
+
|---|---|---|---|
|
|
92
|
+
| 1 | observe | `env.reset()` / `env.step()` → `state_id` | 全观测 |
|
|
93
|
+
| 2 | 候选动作 | `predict.branch_candidates(cg, state_id, semantic=False)` | **`semantic=False`**:玩具环境边即全集,关闭语义诱导防伪因果门噪声(D-002 门 `:169` 无增益) |
|
|
94
|
+
| 3 | 预测 | 首候选=预测终态 `predicted_node_id`;多步面(M3):`predict_routes(start_id=state_id, horizon=3)` | 候选的 `condition` 即动作 |
|
|
95
|
+
| 4 | 决策+执行 | 解码 `condition`→`a`;`next_state, reward, done = env.step(state_id, a)` | 无候选(未播种邻域)→ ε-greedy uniform 探索(M2 固定 ε=0.2 占位;与 `gain_gate` 的探索资格协同属 M3 可选) |
|
|
96
|
+
| 5 | 误差计算 | `hit = (predicted_node_id == actual_next_node_id)` | **显式传 hit**,不依赖 feedback 内部 `pred==act` 字符串判定(`:693-694`;缺口 G3) |
|
|
97
|
+
| 6 | 误差回灌 | `predict.feedback(cg, predicted_node_id, actual_next_node_id, hit=hit, note=f"ep{e}/s{t}", actor="gridworld", channel="gridworld")` | hit→边置信度+0.05(**模型更新**);miss→`add_rejected`(负证据);`sync_self=True` 刷自我卡 |
|
|
98
|
+
| 7 | 反思留痕(必选步) | `results, _ = cg.search(状态描述, k=4)`;`cg.reflect(f"gw:ep{e}:{state_id}", results)` | 产 d2/states 信号——proposals 唯一输入(缺口 G4) |
|
|
99
|
+
| 8 | 元认知闭环(每 episode 末) | `predict.learn_blindspots(cg, apply=True)`;或 `autonomy.explore(cg, apply=True, limit=3)` | 失败区域→五态终判→`gap_hint`;`_explore.jsonl` outcomes 供下轮 `gain_gate` |
|
|
100
|
+
| 9 | 自我面(每 episode 末) | `self_state.refresh(cg, actor="gridworld")` | 幂等(fingerprint 不变跳过);版本链留痕 |
|
|
101
|
+
| 10 | 留痕 | `_gridworld.jsonl`(§5) | 实验主账本 |
|
|
102
|
+
|
|
103
|
+
语义对应评审闭环:**observe(1)→predict(2-3)→execute(4)→世界变化→prediction error(5)→feedback(6)→模型更新(边置信度/负记忆)→下轮预测改变**。元认知支线(7-8)与自我支线(9)复用既有链路。
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## 5. 审计留痕(`_gridworld.jsonl`)
|
|
108
|
+
|
|
109
|
+
```jsonc
|
|
110
|
+
// step(每步一条)
|
|
111
|
+
{"type": "step", "t": 0.0, "actor": "gridworld",
|
|
112
|
+
"episode": 3, "step": 7, "state": "gw_s_1_2", "action": "up",
|
|
113
|
+
"predicted": "gw_s_1_3", "actual": "gw_s_1_3", "hit": true,
|
|
114
|
+
"reward": 0, "done": false, "n_candidates": 4, "channel": "gridworld"}
|
|
115
|
+
// episode_end(每 episode 一条)
|
|
116
|
+
{"type": "episode_end", "t": 0.0, "episode": 3, "steps": 18, "hits": 14,
|
|
117
|
+
"reached_goal": true, "hit_rate": 0.7778, "n_rejected_new": 2,
|
|
118
|
+
"edge_conf_sum": 41.35, "actor": "gridworld"}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
同构纪律:`type`/`t`/`actor` 前置(对齐 `_explore.jsonl` 形态 `md_cg/autonomy.py:199-205`);append 失败不阻塞;指标全部可从 `_gridworld.jsonl` + `predict.stats` + `self_state.snapshot` 重算(白箱可审计)。
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## 6. 识别出的对接缺口
|
|
126
|
+
|
|
127
|
+
调研发现的真缺口(规格层裁定,均**不改既有代码**):
|
|
128
|
+
|
|
129
|
+
| # | 缺口 | 取证 | 规格裁定 |
|
|
130
|
+
|---|---|---|---|
|
|
131
|
+
| G1 | **动作概念缺位**:predict 全链只认「节点+边」,无动作空间抽象;`routes` 是图内路径生成器不是动作选择器 | `md_cg/predict.py:477-520`(DFS 无动作参数) | 以「边 `condition` 字段承载动作」编码(§3);选择器=branch_candidates 首候选解码。动作沿既有 `condition` 通道流动,零改动 |
|
|
132
|
+
| G2 | **层硬约束**:hit 分支 `_boost_incoming` 只改 `_SAFE_LAYERS` 三层,其余层静默不改边 | `md_cg/predict.py:592`、`:615` | 状态节点强制落 `knowledge` 层(§3);M1 冒烟加断言:feedback 后边置信度确有上升 |
|
|
133
|
+
| G3 | hit 隐式判定是 `pred==act` 字符串相等 | `md_cg/predict.py:693-694` | 实验显式传 `hit=True/False`,不依赖字符串约定 |
|
|
134
|
+
| G4 | **盲区信号依赖 reflect**:`autonomy.proposals` 只读 `_reflection.jsonl`,闭环不调 `reflect()` 则零信号、五态闭环空转(「信号在记录、无人在听」防复发) | `md_cg/autonomy.py:107` | 管线第 7 步为**必选步**(§4),每步 search(record=True, judge=True)+reflect |
|
|
135
|
+
| G5 | **mdcos.predict_feedback 不透传 channel**(库层有,封装层无) | `md_cg/mdcos.py:2292-2293` vs `md_cg/predict.py:679` | 驱动器**直调库层** `predict.feedback(..., channel="gridworld")`;既有封装不动(面选择,非缺陷) |
|
|
136
|
+
| G6 | `dynamic_hit_threshold` 样本<50 不触发反思(MIN_SAMPLES=50) | `md_cg/predict.py:40`、`:662-665` | 不构成障碍:主判据读 `beta_posterior`(无门槛);反思触发是滞后旁证非主判据 |
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## 7. 验证指标与分阶段里程碑
|
|
141
|
+
|
|
142
|
+
### 7.1 验证指标(四类,全部可机器断言)
|
|
143
|
+
|
|
144
|
+
| 指标 | 定义 | 读数口 | 判据(M3) |
|
|
145
|
+
|---|---|---|---|
|
|
146
|
+
| ①预测误差随轮次下降 | 逐步误差=1−hit;episode 级=1−hit_rate;后验均值=β 后验 mean | `_gridworld.jsonl`、`predict.stats()["beta"]["all"]`(`md_cg/predict.py:888-901`) | 后 20% episodes 的后验均值 > 前 20% + 0.2;逐 episode 命中率回归斜率>0(误差单调下降,允许噪声) |
|
|
147
|
+
| ②策略稳定性 | 重复同状态同动作率;每 episode 步数(steps-to-goal) | `_gridworld.jsonl` step 聚合 | 确定性环境下最后 3 episodes 同状态动作一致率 ≥0.95;steps-to-goal 后段 < 前段 |
|
|
148
|
+
| ③条件模型变化 | 边置信度漂移 Σ\|Δconf\|;rejected 新增数;命中边集合收敛 | cg edges 直读 + `n_rejected_new` | EDGE_BOOST 累积集中在通往 goal 的边上;最后 N episodes rejected 新增=0、无新增命中边(模型停止变化=收敛) |
|
|
149
|
+
| ④自我可靠性 | hit_rate / beta_mean / beta_ci95 / reflect(脱离死区)随 episode 演化 | `self_state.snapshot()["prediction"]`(`md_cg/self_state.py:235`) | beta_ci95 收窄;reflect 由 True→False(≥50 样本且过动态阈值);`refresh` 版本链可回放 |
|
|
150
|
+
|
|
151
|
+
对照组(M3 必配):**未学习基线**——同环境同 episode 数,但不跑 feedback(边置信度恒 0.5);两臂 hit rate 必须显著分离,否则①不成立。
|
|
152
|
+
|
|
153
|
+
### 7.2 里程碑(每阶段独立验收)
|
|
154
|
+
|
|
155
|
+
| 阶段 | 内容 | 验收判据(可独立断言) |
|
|
156
|
+
|---|---|---|
|
|
157
|
+
| **M1 环境冒烟** | GridWorldEnv 确定性断言(同一 `(s,a)` 复跑 100 次同 `s'`);9~25 格状态节点+动作条件边播种到临时 root;`branch_candidates` 枚举无异常;`routes()` 返回 `status=ok` 且路径连续;`causal_path(start, goal)` 连通;G2 断言(feedback 后边置信度上升) | 环境与播种层全绿;**不涉及预测质量** |
|
|
158
|
+
| **M2 闭环跑通** | ≥10 episodes 端到端无异常;六账本(`_gridworld`/`_prediction`/`_reflection`/`_learn`/`_explore`/`_self_state`)均非空;至少一次到达 goal;`reflect` 留痕含 d2 | 闭环不死、账本可审计、管线第 7 步有产出 |
|
|
159
|
+
| **M3 指标显著** | 四类指标判据全过 + 对照组分离 | 数字入实验结论文档,判定「闭环机制验证通过」(非「世界模型能力证明」,§8) |
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## 8. 诚实边界
|
|
164
|
+
|
|
165
|
+
- **玩具环境证据强度受限**(GPT 评审已声明,本规格如实继承):确定性/全观测/可枚举/单目标——结论只支持「预测→行动→误差→更新→行为改善」的**闭环机制存在且收敛**;不支持「世界模型能力」主张(泛化、部分可观测、非平稳、组合泛化)。对外表述必须用前一句口径。
|
|
166
|
+
- **模型更新是确定性账本式更新**:EDGE_BOOST=0.05 线性增量(`md_cg/predict.py:43`),非参数梯度学习;D-006 口径=工程初值非协议承诺。
|
|
167
|
+
- **ε-greedy 是占位策略**:M2 固定 ε=0.2;探索的「资格裁决」(σ(Gain) 增益门槛)与本环 ε 的协同只列 M3 可选项,不作为 M2 验收面。
|
|
168
|
+
- **单目标奖励无折扣**:不引入 RL 复杂度;本实验不与任何 RL 基线比名次,只做自我前后对照。
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## 9. 边界与实现前置
|
|
173
|
+
|
|
174
|
+
- 本文件是**规格**;启动实现须使用者批准。实现建议形态:`md_cg/gridworld.py`(env+runner)+ `md_cg/test_gridworld.py`(确定性断言+闭环端到端+指标断言),临时 root(`MdCG(root=<tempdir>)`,`md_cg/mdcg.py:477`),不碰生产库。
|
|
175
|
+
- 实现后归档按第 16 条纪律:只记核心修改(内容/原因/位置/验证结论),账本与断言数字入结论。
|
|
176
|
+
|
|
@@ -1,81 +1,81 @@
|
|
|
1
|
-
# 命名治理 · 项目计划(共同记忆面)
|
|
2
|
-
|
|
3
|
-
> **本文件是命名治理项目的唯一记忆状态源。**
|
|
4
|
-
> 子代理不写任何记忆(无记忆写权限,只产 result.json);主代理负责把 job 结果合并回本计划。
|
|
5
|
-
> 任何会话接手此项目,先读本文件——这就是「管理一个项目的记忆」的含义。
|
|
6
|
-
|
|
7
|
-
- 创建:2026-09-14 · 状态:**批次 0 已完成(试点 10/10 合格,已过工作记忆三级闸)**
|
|
8
|
-
- 数据真源:`AEIS/data/graph/naming_report.json`(四问审计,rows 7,204)
|
|
9
|
-
- 认知图真源:`AEIS/data/mdcg/`(只读;治理**不直接改写**认知图,产物是映射表)
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## 1. 目标与对象
|
|
14
|
-
|
|
15
|
-
四问测试(Q1 可连 / Q2 可对齐 / Q3 可复现 / Q4 规范标识)审计 10,499 节点后的分布:
|
|
16
|
-
|
|
17
|
-
| 类别 | 数量 | 特征 | 处置 |
|
|
18
|
-
|---|---|---|---|
|
|
19
|
-
| 已锚定 | 194 | q1–q4 全过 | **不动** |
|
|
20
|
-
| A 层(单节点) | 6,645 | q2/q3/q4 失——名字不承载语义 | LLM 逐节点起规范名 |
|
|
21
|
-
| B 层(重名组) | 365 | q2 过但 q3/q4 失 | LLM 逐组裁决去重(后置) |
|
|
22
|
-
|
|
23
|
-
隔离区 100% 为 q3+q4 失败、q1 全过;哈希样标题 2,159 个;最大桶 `cond_感知系统_d94e90d2`(1,120)。
|
|
24
|
-
|
|
25
|
-
## 2. 命名规范
|
|
26
|
-
|
|
27
|
-
```
|
|
28
|
-
{层级前缀}_{功能主干}
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
- 层级前缀:knowledge 层固定 `kn`
|
|
32
|
-
- 功能主干:**30 字内的汉字语义名**
|
|
33
|
-
- 禁止只有空词(知识/内容/信息/数据 等)
|
|
34
|
-
- 禁止 `/ \ : * ? " < > |` 与空格
|
|
35
|
-
- 英文缩写统一使用原始语义的中文意译,禁音译(如 DeepSeek→深度求索)
|
|
36
|
-
- 四问全过为合格;不可起名(正文为空/纯元数据)如实返回 `new_name: null`
|
|
37
|
-
|
|
38
|
-
## 3. 执行架构(蜂巢 v0.2)
|
|
39
|
-
|
|
40
|
-
| 参数 | 值 | 落点 |
|
|
41
|
-
|---|---|---|
|
|
42
|
-
| 子代理 LLM | `deepseek-flash`(DeepSeek-V4.1-Flash) | spec.model |
|
|
43
|
-
| 思考 | `{"type":"enabled"}` + `reasoning_effort: high` | spec.thinking / spec.reasoning_effort |
|
|
44
|
-
| 上下文预算 | 300,000 tokens(执行器保守估算,超限 fail fast 不白跑 API) | spec.context_budget_tokens |
|
|
45
|
-
| 硬超时 | 600s | spec.timeout_s |
|
|
46
|
-
| 温度 / 输出上限 | 0.3 / 4096(思考链计入) | spec.temperature / max_tokens |
|
|
47
|
-
|
|
48
|
-
子代理任务设计:**一个 job = 一个节点的命名裁决**(单轮 chat/completions,读单节点 md,回单行 JSON)。
|
|
49
|
-
系统提示词(唯一真源):`hive/plans/naming_gov/system_prompt.txt`。
|
|
50
|
-
|
|
51
|
-
## 4. 记忆协议(本项目核心约定)
|
|
52
|
-
|
|
53
|
-
1. **子代理零记忆写权限**——system_prompt 明示;认知图/知识图谱/词表一律不写。
|
|
54
|
-
2. **唯一写入口 = 主代理**:读 `result.json` → 查重(与 194 强锚名、同批已分配名冲突则打回下一轮修正 job)→ 写入本计划批次表 + 命名映射表。
|
|
55
|
-
3. **映射表是最终产物**:`hive/plans/naming_gov/mapping_batch<N>.json`,每行
|
|
56
|
-
`{"old_id", "new_name", "confidence", "reason", "q2_aligned"}`——审计留痕,认知图回写(是否/何时执行)另行裁定,不在本项目范围。
|
|
57
|
-
4. 失败/超时 job 如实记录 `error`,绝不假装 done。
|
|
58
|
-
|
|
59
|
-
## 5. 批次表
|
|
60
|
-
|
|
61
|
-
| 批次 | 范围 | 节点数 | 状态 | 结果摘要 |
|
|
62
|
-
|---|---|---|---|---|
|
|
63
|
-
| 0(试点) | `cond_感知系统_d94e90d2` 前 10 节点 | 10 | **已完成 2026-09-14** | API 10/10 ok(均 2.8s、合计 16,984 tokens);规范校验 7 直通 + 3 经修正轮挽回(超长/含数字)→ 终验 10/10 合格;锚名/批内查重零冲突。映射表:`mapping_batch0.json`;13 job + 主代理批次已过 wm 三级闸入库(`hive/wm-repo`) |
|
|
64
|
-
| 1 | 感知系统桶余量(视试点质量) | 1,110 | **已完成 2026-09-14** | API 1,110/1,110 ok(均 2.5s、合计 190 万 tokens,零错误);验证 579 直通 + 66 如实不可命名 + 465 打回修正轮 1(挽回 445)→ 271 打回修正轮 2(挽回 243);终验 **868(78.2%)合格入映射**、176 批内重名残留(39 组,修正轮上限 2 轮已到)移交 B 批集中裁决。映射表:`mapping_batch1.json`(868 行);1,847 实体(1,110 主 job + 736 修正 job + 主代理批次)全过 wm 三级闸,实测 job 级入库 ~0.9 job/s 全 git 链、main dirty=0 |
|
|
65
|
-
| … | 其余桶按体量降序 | — | 未开始 | — |
|
|
66
|
-
| B | 365 重名组(A 层跑通后) | 365 + **176(批次 1 移交)** = 407 组 / 906 成员 | **已完成 2026-09-14** | 集中裁决实证成功(同组成员一起送 LLM):API 407/407 组 ok 零错误(201 秒墙钟);修正轮 1(146 组打回→280→82 问题)+ 修正轮 2(54 组→65);终验 **759/906(83.8%)合格入 `mapping_batchB.json`**(302 经修正挽回)、82 如实不可命名、65 术语冲突残留。607 job(407 主 + 200 修正反查)全过 wm 三级闸零错误。B 层结构实锤:365 组全为 n=2 两人组(730 成员,`doc_<hash>` 节点,共享章节式坏名如「一、评估条件空间」) |
|
|
67
|
-
| B2 | 不可命名 + 术语冲突节点 | 66(批次 1)+ 82(B 批 null)+ **65(B 批术语冲突)** = 213 | **已完成 2026-09-14** | 148 null(66+82)复核:67 正文<100 字空骨架如实 defer、81 有正文独立重裁 → 47 救回入 `mapping_batchB2.json`;65 残留按组修正后 32 收敛为**结构性冲突**(音译超 8 字上限如「奥迈派会话文件布局」、禁词与语义重合如「信息保留时长」、跨组撞名)——多轮实证无解,`defer_report_B2.json` 166 行如实移交(67 空骨架+67 仍 null+32 冲突)。136 job(60 主+76 修正)全过闸零错误;大组 token 截断教训:>8 节点/组须拆批。规范扩展遗留决策项 → B2R |
|
|
68
|
-
| B2R | 规范扩展轮(使用者裁定 2026-09-14:**上限 8→30 字;英文缩写一律原始含义中文意译、禁音译**;禁词/互异/黑名单约束不变) | 32(B2 结构冲突全量) | **已完成 2026-09-14** | 28/32 命名成功入 `mapping_batchB2R.json`(实证:DeepSeek→深度求索意译替代音译、9 字名合法化、撞名避开);4 残留为**禁词死结**(`信息差公理映射矩阵` 等语义核心即被禁词「信息」,禁词未放开)→ `defer_report_B2R.json` 如实移交——若未来放开禁词豁免可再救 3 个。6 job 全过闸零错误。回溯边界:已命名 1868 节点不按 30 字新规范重跑(成本不成比例,旧名合规且无投诉) |
|
|
69
|
-
|
|
70
|
-
## 6. 运行手册(key 就绪后)
|
|
71
|
-
|
|
72
|
-
```cmd
|
|
73
|
-
set HIVE_API_KEY=<DeepSeek密钥>
|
|
74
|
-
set HIVE_API_BASE=https://api.deepseek.com
|
|
75
|
-
cd /d <本仓根目录>
|
|
76
|
-
python hive\plans\naming_gov\gen_specs.py --bucket cond_感知系统_d94e90d2 --limit 10 --submit
|
|
77
|
-
:: serve 未启动时 submit 自动拉起(MCP 路径);CLI 需先: target\release\hive.exe serve
|
|
78
|
-
target\release\hive.exe poll
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
成本预估(试点):10 job × ≈2k tokens 输入 + 思考/输出 ≈ 0.05 元级。全量 6,645 job 约 15–30 元(deepseek-flash 空闲时段更低)。
|
|
1
|
+
# 命名治理 · 项目计划(共同记忆面)
|
|
2
|
+
|
|
3
|
+
> **本文件是命名治理项目的唯一记忆状态源。**
|
|
4
|
+
> 子代理不写任何记忆(无记忆写权限,只产 result.json);主代理负责把 job 结果合并回本计划。
|
|
5
|
+
> 任何会话接手此项目,先读本文件——这就是「管理一个项目的记忆」的含义。
|
|
6
|
+
|
|
7
|
+
- 创建:2026-09-14 · 状态:**批次 0 已完成(试点 10/10 合格,已过工作记忆三级闸)**
|
|
8
|
+
- 数据真源:`AEIS/data/graph/naming_report.json`(四问审计,rows 7,204)
|
|
9
|
+
- 认知图真源:`AEIS/data/mdcg/`(只读;治理**不直接改写**认知图,产物是映射表)
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## 1. 目标与对象
|
|
14
|
+
|
|
15
|
+
四问测试(Q1 可连 / Q2 可对齐 / Q3 可复现 / Q4 规范标识)审计 10,499 节点后的分布:
|
|
16
|
+
|
|
17
|
+
| 类别 | 数量 | 特征 | 处置 |
|
|
18
|
+
|---|---|---|---|
|
|
19
|
+
| 已锚定 | 194 | q1–q4 全过 | **不动** |
|
|
20
|
+
| A 层(单节点) | 6,645 | q2/q3/q4 失——名字不承载语义 | LLM 逐节点起规范名 |
|
|
21
|
+
| B 层(重名组) | 365 | q2 过但 q3/q4 失 | LLM 逐组裁决去重(后置) |
|
|
22
|
+
|
|
23
|
+
隔离区 100% 为 q3+q4 失败、q1 全过;哈希样标题 2,159 个;最大桶 `cond_感知系统_d94e90d2`(1,120)。
|
|
24
|
+
|
|
25
|
+
## 2. 命名规范
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
{层级前缀}_{功能主干}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
- 层级前缀:knowledge 层固定 `kn`
|
|
32
|
+
- 功能主干:**30 字内的汉字语义名**
|
|
33
|
+
- 禁止只有空词(知识/内容/信息/数据 等)
|
|
34
|
+
- 禁止 `/ \ : * ? " < > |` 与空格
|
|
35
|
+
- 英文缩写统一使用原始语义的中文意译,禁音译(如 DeepSeek→深度求索)
|
|
36
|
+
- 四问全过为合格;不可起名(正文为空/纯元数据)如实返回 `new_name: null`
|
|
37
|
+
|
|
38
|
+
## 3. 执行架构(蜂巢 v0.2)
|
|
39
|
+
|
|
40
|
+
| 参数 | 值 | 落点 |
|
|
41
|
+
|---|---|---|
|
|
42
|
+
| 子代理 LLM | `deepseek-flash`(DeepSeek-V4.1-Flash) | spec.model |
|
|
43
|
+
| 思考 | `{"type":"enabled"}` + `reasoning_effort: high` | spec.thinking / spec.reasoning_effort |
|
|
44
|
+
| 上下文预算 | 300,000 tokens(执行器保守估算,超限 fail fast 不白跑 API) | spec.context_budget_tokens |
|
|
45
|
+
| 硬超时 | 600s | spec.timeout_s |
|
|
46
|
+
| 温度 / 输出上限 | 0.3 / 4096(思考链计入) | spec.temperature / max_tokens |
|
|
47
|
+
|
|
48
|
+
子代理任务设计:**一个 job = 一个节点的命名裁决**(单轮 chat/completions,读单节点 md,回单行 JSON)。
|
|
49
|
+
系统提示词(唯一真源):`hive/plans/naming_gov/system_prompt.txt`。
|
|
50
|
+
|
|
51
|
+
## 4. 记忆协议(本项目核心约定)
|
|
52
|
+
|
|
53
|
+
1. **子代理零记忆写权限**——system_prompt 明示;认知图/知识图谱/词表一律不写。
|
|
54
|
+
2. **唯一写入口 = 主代理**:读 `result.json` → 查重(与 194 强锚名、同批已分配名冲突则打回下一轮修正 job)→ 写入本计划批次表 + 命名映射表。
|
|
55
|
+
3. **映射表是最终产物**:`hive/plans/naming_gov/mapping_batch<N>.json`,每行
|
|
56
|
+
`{"old_id", "new_name", "confidence", "reason", "q2_aligned"}`——审计留痕,认知图回写(是否/何时执行)另行裁定,不在本项目范围。
|
|
57
|
+
4. 失败/超时 job 如实记录 `error`,绝不假装 done。
|
|
58
|
+
|
|
59
|
+
## 5. 批次表
|
|
60
|
+
|
|
61
|
+
| 批次 | 范围 | 节点数 | 状态 | 结果摘要 |
|
|
62
|
+
|---|---|---|---|---|
|
|
63
|
+
| 0(试点) | `cond_感知系统_d94e90d2` 前 10 节点 | 10 | **已完成 2026-09-14** | API 10/10 ok(均 2.8s、合计 16,984 tokens);规范校验 7 直通 + 3 经修正轮挽回(超长/含数字)→ 终验 10/10 合格;锚名/批内查重零冲突。映射表:`mapping_batch0.json`;13 job + 主代理批次已过 wm 三级闸入库(`hive/wm-repo`) |
|
|
64
|
+
| 1 | 感知系统桶余量(视试点质量) | 1,110 | **已完成 2026-09-14** | API 1,110/1,110 ok(均 2.5s、合计 190 万 tokens,零错误);验证 579 直通 + 66 如实不可命名 + 465 打回修正轮 1(挽回 445)→ 271 打回修正轮 2(挽回 243);终验 **868(78.2%)合格入映射**、176 批内重名残留(39 组,修正轮上限 2 轮已到)移交 B 批集中裁决。映射表:`mapping_batch1.json`(868 行);1,847 实体(1,110 主 job + 736 修正 job + 主代理批次)全过 wm 三级闸,实测 job 级入库 ~0.9 job/s 全 git 链、main dirty=0 |
|
|
65
|
+
| … | 其余桶按体量降序 | — | 未开始 | — |
|
|
66
|
+
| B | 365 重名组(A 层跑通后) | 365 + **176(批次 1 移交)** = 407 组 / 906 成员 | **已完成 2026-09-14** | 集中裁决实证成功(同组成员一起送 LLM):API 407/407 组 ok 零错误(201 秒墙钟);修正轮 1(146 组打回→280→82 问题)+ 修正轮 2(54 组→65);终验 **759/906(83.8%)合格入 `mapping_batchB.json`**(302 经修正挽回)、82 如实不可命名、65 术语冲突残留。607 job(407 主 + 200 修正反查)全过 wm 三级闸零错误。B 层结构实锤:365 组全为 n=2 两人组(730 成员,`doc_<hash>` 节点,共享章节式坏名如「一、评估条件空间」) |
|
|
67
|
+
| B2 | 不可命名 + 术语冲突节点 | 66(批次 1)+ 82(B 批 null)+ **65(B 批术语冲突)** = 213 | **已完成 2026-09-14** | 148 null(66+82)复核:67 正文<100 字空骨架如实 defer、81 有正文独立重裁 → 47 救回入 `mapping_batchB2.json`;65 残留按组修正后 32 收敛为**结构性冲突**(音译超 8 字上限如「奥迈派会话文件布局」、禁词与语义重合如「信息保留时长」、跨组撞名)——多轮实证无解,`defer_report_B2.json` 166 行如实移交(67 空骨架+67 仍 null+32 冲突)。136 job(60 主+76 修正)全过闸零错误;大组 token 截断教训:>8 节点/组须拆批。规范扩展遗留决策项 → B2R |
|
|
68
|
+
| B2R | 规范扩展轮(使用者裁定 2026-09-14:**上限 8→30 字;英文缩写一律原始含义中文意译、禁音译**;禁词/互异/黑名单约束不变) | 32(B2 结构冲突全量) | **已完成 2026-09-14** | 28/32 命名成功入 `mapping_batchB2R.json`(实证:DeepSeek→深度求索意译替代音译、9 字名合法化、撞名避开);4 残留为**禁词死结**(`信息差公理映射矩阵` 等语义核心即被禁词「信息」,禁词未放开)→ `defer_report_B2R.json` 如实移交——若未来放开禁词豁免可再救 3 个。6 job 全过闸零错误。回溯边界:已命名 1868 节点不按 30 字新规范重跑(成本不成比例,旧名合规且无投诉) |
|
|
69
|
+
|
|
70
|
+
## 6. 运行手册(key 就绪后)
|
|
71
|
+
|
|
72
|
+
```cmd
|
|
73
|
+
set HIVE_API_KEY=<DeepSeek密钥>
|
|
74
|
+
set HIVE_API_BASE=https://api.deepseek.com
|
|
75
|
+
cd /d <本仓根目录>
|
|
76
|
+
python hive\plans\naming_gov\gen_specs.py --bucket cond_感知系统_d94e90d2 --limit 10 --submit
|
|
77
|
+
:: serve 未启动时 submit 自动拉起(MCP 路径);CLI 需先: target\release\hive.exe serve
|
|
78
|
+
target\release\hive.exe poll
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
成本预估(试点):10 job × ≈2k tokens 输入 + 思考/输出 ≈ 0.05 元级。全量 6,645 job 约 15–30 元(deepseek-flash 空闲时段更低)。
|