dsh-vibe-math 2.3.15 → 2.3.16

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.
@@ -0,0 +1,187 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1720 1260" width="1720" height="1260" role="img" aria-label="Vibe Math V4 resident self-organizing architecture diagram">
3
+ <defs>
4
+ <marker id="both" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#7d93a3"/></marker>
5
+ <marker id="bothHuman" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#5b4bb8"/></marker>
6
+ <marker id="bothFrame" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#0b6fb8"/></marker>
7
+ <marker id="bothData" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#1f7a52"/></marker>
8
+ <marker id="bothHouse" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#b26a00"/></marker>
9
+ <marker id="bothGate" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#b3202c"/></marker>
10
+ </defs>
11
+ <rect width="1720" height="1260" fill="#ffffff"/>
12
+ <g font-family="'Microsoft YaHei','PingFang SC','Hiragino Sans GB','Noto Sans CJK SC','Source Han Sans SC',sans-serif">
13
+ <text x="860" y="40" font-size="27" font-weight="700" fill="#10202e" text-anchor="middle">Vibe Math V4 —— Resident Self-Organizing Collaborative Research</text>
14
+ <text x="860" y="67" font-size="13" font-weight="400" fill="#5d7788" text-anchor="middle">The framework is only a medium: relay messages · persist artifacts · count votes · manage context. It never assigns tasks —— division of labor is decided by residents messaging and meeting</text>
15
+ <rect x="40" y="84" width="1640" height="92" rx="14" fill="#fdeef0" stroke="#b3202c" stroke-width="2"/>
16
+ <text x="58" y="111" font-size="15" font-weight="700" fill="#b3202c">Truth gate —— the only rule that lets an object enter Verified/</text>
17
+ <text x="58" y="131" font-size="12" fill="#5d7788">All residents agree true (all 1) or agree false (all 0) · no forced / flat / near-consensus auto-closing —— strong disagreement must not be forced true</text>
18
+ <rect x="62" y="140" width="506" height="28" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
19
+ <text x="315" y="158.1" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">All agree true → write Verified/命题|问题/&lt;id&gt;.md; source: verified·true</text>
20
+ <rect x="588" y="140" width="506" height="28" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
21
+ <text x="841" y="158.1" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">All agree false → also write Verified/ (conclusion = false), source = false</text>
22
+ <rect x="1114" y="140" width="524" height="28" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
23
+ <text x="1376" y="158.1" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">Disagreement → debate re-vote; still split → library + average + debate log</text>
24
+ <rect x="230" y="188" width="1450" height="150" rx="14" fill="#fdf5e2" stroke="#b26a00" stroke-width="2"/>
25
+ <text x="248" y="215" font-size="15" font-weight="700" fill="#8a5200">Resident layer (self-organization inside) —— roster, direction and division of labor are all settled among residents; the framework never assigns</text>
26
+ <text x="248" y="235" font-size="12" fill="#5d7788">Initial brainstorm produces each one's own direction · after that they keep working until "all consider it solved" (unanimous meeting consent) · residents can be added / closed</text>
27
+ <rect x="252" y="246" width="338" height="88" rx="10" fill="#ffffff" stroke="#b26a00" stroke-width="1.6"/>
28
+ <text x="421" y="260.7" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">Resident r-1</text>
29
+ <text x="421" y="277.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">continuable persistent session</text>
30
+ <text x="421" y="294.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Independent context · autonomous direction</text>
31
+ <text x="421" y="311.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Writes only its own library</text>
32
+ <text x="421" y="328.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Cross-reads others' libraries (read-only)</text>
33
+ <rect x="608" y="246" width="338" height="88" rx="10" fill="#ffffff" stroke="#b26a00" stroke-width="1.6"/>
34
+ <text x="777" y="260.7" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">Resident r-2</text>
35
+ <text x="777" y="277.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">continuable persistent session</text>
36
+ <text x="777" y="294.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Independent context · autonomous direction</text>
37
+ <text x="777" y="311.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Writes only its own library</text>
38
+ <text x="777" y="328.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Cross-reads others' libraries (read-only)</text>
39
+ <rect x="964" y="246" width="338" height="88" rx="10" fill="#ffffff" stroke="#b26a00" stroke-width="1.6"/>
40
+ <text x="1133" y="260.7" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">Resident r-3</text>
41
+ <text x="1133" y="277.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">continuable persistent session</text>
42
+ <text x="1133" y="294.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Independent context · autonomous direction</text>
43
+ <text x="1133" y="311.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Writes only its own library</text>
44
+ <text x="1133" y="328.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Cross-reads others' libraries (read-only)</text>
45
+ <rect x="1320" y="246" width="338" height="88" rx="10" fill="#ffffff" stroke="#b26a00" stroke-width="1.6"/>
46
+ <text x="1489" y="260.7" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">… r-N</text>
47
+ <text x="1489" y="277.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">add_member / remove_member</text>
48
+ <text x="1489" y="294.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">residentCount defaults to 4</text>
49
+ <text x="1489" y="311.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Wake-up = sendMessage</text>
50
+ <text x="1489" y="328.7" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">One round = one full thought</text>
51
+ <rect x="42" y="188" width="176" height="150" rx="10" fill="#ffffff" stroke="#5b4bb8" stroke-width="1.6"/>
52
+ <text x="130" y="219.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">Human / assistant</text>
53
+ <text x="130" y="235.3" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">Root agent = the interface</text>
54
+ <text x="130" y="251.3" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">configure → start</text>
55
+ <text x="130" y="267.3" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">message / meeting</text>
56
+ <text x="130" y="283.3" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">add_member / remove_member</text>
57
+ <text x="130" y="299.3" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">pause / resume / abort</text>
58
+ <text x="130" y="315.3" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">set parameters (immediate)</text>
59
+ <rect x="230" y="400" width="1450" height="384" rx="14" fill="#eaf3fd" stroke="#0b6fb8" stroke-width="2"/>
60
+ <text x="248" y="427" font-size="15" font-weight="700" fill="#084d80">Framework vibe-v4 —— only a medium (middleware): relay · persist · count · schedule</text>
61
+ <text x="248" y="447" font-size="12" fill="#5d7788">Each round: "state block + this round's question"; each resident returns one JSON: summary / solved / input / vote / propose_verify / propose_task / claim_task / task_done / voteSolved / formal / contextPct</text>
62
+ <rect x="252" y="462" width="454" height="76" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
63
+ <text x="479" y="479.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Message bus · mailbox</text>
64
+ <text x="479" y="496.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">vibe_v4_message(to|all) → into the target mailbox</text>
65
+ <text x="479" y="512.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Idle → sendMessage wake-up; residents never call each other directly</text>
66
+ <text x="479" y="529.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Everything via the framework relay (simulated inbox) · broadcast</text>
67
+ <rect x="728" y="462" width="454" height="76" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
68
+ <text x="955" y="479.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Meeting / debate</text>
69
+ <text x="955" y="496.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">vibe_v4_meeting(agenda) → everyone speaks</text>
70
+ <text x="955" y="512.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Writes Shared/meetings/&lt;id&gt;.md and broadcasts the conclusion</text>
71
+ <text x="955" y="529.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Watchdog vs deadlock · queued, never preempts verification</text>
72
+ <rect x="1204" y="462" width="454" height="76" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
73
+ <text x="1431" y="479.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Task board (relay only)</text>
74
+ <text x="1431" y="496.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Propose / claim written in the receipt → Shared/taskboard.md</text>
75
+ <text x="1431" y="512.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Claiming wakes the claimer; the framework never decides who does what</text>
76
+ <text x="1431" y="529.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Open tasks come first in the idle-resident wake-up order</text>
77
+ <rect x="252" y="548" width="454" height="76" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
78
+ <text x="479" y="565.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Consensus verification (unanimous)</text>
79
+ <text x="479" y="582.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Receipt field propose_verify → FIFO queue</text>
80
+ <text x="479" y="598.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Independent first vote (blind to each other) → public debate re-vote</text>
81
+ <text x="479" y="615.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Max verdictMaxRounds rounds (default 3); unanimous same-way → Verified/</text>
82
+ <rect x="728" y="548" width="454" height="76" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
83
+ <text x="955" y="565.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Context / compact</text>
84
+ <text x="955" y="582.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">contextPct ≥ compactThreshold (default 66)</text>
85
+ <text x="955" y="598.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Triggers DSH /compact; core rules restated after compaction</text>
86
+ <text x="955" y="615.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">compactAfterRounds default 8; persona and philosophy kept</text>
87
+ <rect x="1204" y="548" width="454" height="76" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
88
+ <text x="1431" y="565.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Liveness / concurrency / recovery</text>
89
+ <text x="1431" y="582.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">activityTimeoutMs heartbeat · maxParallel concurrency gate</text>
90
+ <text x="1431" y="598.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Stall stallAutoMeetingMs (default 6 min) automatic meeting</text>
91
+ <text x="1431" y="615.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">resume re-seeds from residents.json + progress.md</text>
92
+ <rect x="252" y="636" width="1406" height="84" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
93
+ <text x="955" y="658.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">Lean formal verification (adjustable parameter formalVerify = off / encourage / require) · tools vibe_v4_lean_run / _archive / _lib</text>
94
+ <text x="955" y="674.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">encourage: decide by implementation difficulty whether to formalize; require: a true/false conclusion needs "Lean passed" or an explicit blocking record, otherwise it is recorded as undecided</text>
95
+ <text x="955" y="690.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">★ Once Lean passes, the object of review changes: no longer "is the derivation right" but "are Lean's definitions/objects/conditions/assumptions/conclusions faithful to the original text of the proposition"</text>
96
+ <text x="955" y="706.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">★ A fidelity defect (decision=defect) ≠ the proposition is false: revoke "passed" + withdraw the archived proof + add to the "formalization TODO"; never record it as 0/false</text>
97
+ <rect x="252" y="732" width="1406" height="40" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
98
+ <text x="955" y="756.0" font-size="11" font-weight="700" fill="#10202e" text-anchor="middle">After subagent/end the framework advances: ① non-empty mailbox → wake non-busy recipients ② open task → wake proposer/claimer ③ pending verification → meeting ④ else heartbeat: wake longest-idle resident into a meeting</text>
99
+ <rect x="230" y="816" width="470" height="250" rx="14" fill="#eef7f1" stroke="#1f7a52" stroke-width="2"/>
100
+ <text x="248" y="843" font-size="15" font-weight="700" fill="#125a3c">Resident-owned libraries (one directory each)</text>
101
+ <text x="248" y="863" font-size="12" fill="#5d7788">Owner writes · others read-only · via fs · framework registers</text>
102
+ <rect x="252" y="872" width="426" height="176" rx="10" fill="#ffffff" stroke="#1f7a52" stroke-width="1.6"/>
103
+ <text x="465" y="909.9" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">Progress/&lt;r-id&gt;/progress.md</text>
104
+ <text x="465" y="925.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Ongoing progress (append-only; checkpoint resume re-seeds from it)</text>
105
+ <text x="465" y="940.9" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle"></text>
106
+ <text x="465" y="956.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Propos/&lt;r-id&gt;/&lt;p-id&gt;.md proposition</text>
107
+ <text x="465" y="971.9" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Methods/&lt;r-id&gt;/&lt;m-id&gt;.md theory / method / tool</text>
108
+ <text x="465" y="987.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Subproblems/&lt;r-id&gt;/&lt;s-id&gt;.md subproblem</text>
109
+ <text x="465" y="1002.9" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle"></text>
110
+ <text x="465" y="1018.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Required per record: value · motivation-use plan · own probability</text>
111
+ <rect x="720" y="816" width="470" height="250" rx="14" fill="#eef7f1" stroke="#1f7a52" stroke-width="2"/>
112
+ <text x="738" y="843" font-size="15" font-weight="700" fill="#125a3c">Shared and concluded (VibeMath/Projects/&lt;project&gt;/)</text>
113
+ <text x="738" y="863" font-size="12" fill="#5d7788">Shared/ = artifacts; Verified/ = only conclusion, read-only</text>
114
+ <rect x="742" y="872" width="426" height="176" rx="10" fill="#ffffff" stroke="#1f7a52" stroke-width="1.6"/>
115
+ <text x="955" y="909.9" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">Shared/meetings/&lt;id&gt;.md meeting minutes + conclusion</text>
116
+ <text x="955" y="925.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Shared/debates/&lt;target&gt;.md debate record (first vote + re-vote)</text>
117
+ <text x="955" y="940.9" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Shared/taskboard.md task board (propose / claim)</text>
118
+ <text x="955" y="956.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Shared/meetings/brainstorm.md initial brainstorm</text>
119
+ <text x="955" y="971.9" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle"></text>
120
+ <text x="955" y="987.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Verified/命题/&lt;id&gt;.md (or 问题/, 方法 → trusted assertion)</text>
121
+ <text x="955" y="1002.9" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Problems/&lt;id&gt;.md original problem statement</text>
122
+ <text x="955" y="1018.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Not unanimous → source library + average probability + debate record</text>
123
+ <rect x="1210" y="816" width="470" height="250" rx="14" fill="#eef7f1" stroke="#1f7a52" stroke-width="2"/>
124
+ <text x="1228" y="843" font-size="15" font-weight="700" fill="#125a3c">State / isolation / recovery</text>
125
+ <text x="1228" y="863" font-size="12" fill="#5d7788">Framework state: registry, mailboxes, locks, process epoch</text>
126
+ <rect x="1232" y="872" width="426" height="176" rx="10" fill="#ffffff" stroke="#1f7a52" stroke-width="1.6"/>
127
+ <text x="1445" y="909.9" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">State/residents.json resident registry</text>
128
+ <text x="1445" y="925.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">State/mailboxes.json mailboxes (who has not read)</text>
129
+ <text x="1445" y="940.9" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">State/taskboard.json task board machine state</text>
130
+ <text x="1445" y="956.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">State/decisions.json key decisions on record</text>
131
+ <text x="1445" y="971.9" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">State/session.json activity log (human-readable)</text>
132
+ <text x="1445" y="987.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">State/settings.json parameters (set takes effect immediately)</text>
133
+ <text x="1445" y="1002.9" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">State/formal.json Lean formalization record (non-off tiers)</text>
134
+ <text x="1445" y="1018.4" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">fileOwner write lock · projectLock · processEpoch · abort→resume</text>
135
+ <rect x="230" y="1102" width="1450" height="118" rx="14" fill="#fdeef0" stroke="#b3202c" stroke-width="2"/>
136
+ <text x="248" y="1129" font-size="15" font-weight="700" fill="#b3202c">Philosophical red lines (non-negotiable)</text>
137
+ <text x="248" y="1149" font-size="12" fill="#5d7788">These five are the design itself, not implementation details; changing them means a different architecture</text>
138
+ <rect x="252" y="1158" width="268.4" height="56" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
139
+ <text x="386.2" y="1174.6" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">The framework never assigns tasks</text>
140
+ <text x="386.2" y="1190.1" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">Direction / division / who does what</text>
141
+ <text x="386.2" y="1205.6" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">only residents, by messages and meetings</text>
142
+ <rect x="536.4" y="1158" width="268.4" height="56" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
143
+ <text x="670.5999999999999" y="1174.6" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">Conclusions must be unanimous</text>
144
+ <text x="670.5999999999999" y="1190.1" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">No forced / flat / near-consensus closing</text>
145
+ <text x="670.5999999999999" y="1205.6" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">strong disagreement stays in the library</text>
146
+ <rect x="820.8" y="1158" width="268.4" height="56" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
147
+ <text x="955" y="1174.6" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">Only Verified/ is absolutely trusted</text>
148
+ <text x="955" y="1190.1" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">the rest (unverified method-library claims)</text>
149
+ <text x="955" y="1205.6" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">is empirical reference only</text>
150
+ <rect x="1105.1999999999998" y="1158" width="268.4" height="56" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
151
+ <text x="1239.3999999999999" y="1174.6" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">Residents never call each other</text>
152
+ <text x="1239.3999999999999" y="1190.1" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">all messages go through framework relay</text>
153
+ <text x="1239.3999999999999" y="1205.6" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">(simulated inbox: persisted before delivery)</text>
154
+ <rect x="1389.6" y="1158" width="268.4" height="56" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
155
+ <text x="1523.8" y="1174.6" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">Self-organization survives intervention</text>
156
+ <text x="1523.8" y="1190.1" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">messages / meetings / add-remove members</text>
157
+ <text x="1523.8" y="1205.6" font-size="10" font-weight="400" fill="#2c4557" text-anchor="middle">but "what happens next" is up to residents</text>
158
+ <path d="M 129 338 L 129 470 L 230 470" fill="none" stroke="#5b4bb8" stroke-width="2" marker-start="url(#bothHuman)" marker-end="url(#bothHuman)"/>
159
+ <text x="129" y="384" font-size="12" font-weight="700" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">Tool surface</text>
160
+ <text x="129" y="404" font-size="11" font-weight="400" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">vibe_v4_*</text>
161
+ <text x="129" y="422" font-size="11" font-weight="400" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">/v4 commands</text>
162
+ <text x="129" y="446" font-size="13" font-weight="700" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">↓</text>
163
+ <text x="129" y="506" font-size="12" font-weight="700" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">Report</text>
164
+ <text x="129" y="526" font-size="11" font-weight="400" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">status</text>
165
+ <text x="129" y="544" font-size="11" font-weight="400" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">report</text>
166
+ <text x="129" y="572" font-size="13" font-weight="700" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">↑</text>
167
+ <line x1="600" y1="338" x2="600" y2="400" stroke="#0b6fb8" stroke-width="2" marker-start="url(#bothFrame)" marker-end="url(#bothFrame)"/>
168
+ <line x1="1360" y1="338" x2="1360" y2="400" stroke="#0b6fb8" stroke-width="2" marker-start="url(#bothFrame)" marker-end="url(#bothFrame)"/>
169
+ <text x="980" y="366" font-size="10.5" font-weight="400" fill="#0b6fb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">↑ prompt each round (state block + this round's question)  ↓ a single JSON receipt</text>
170
+ <text x="980" y="386" font-size="9.5" font-weight="400" fill="#5d7788" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">say / progress / record_* / propose_verify / verdict / vote_solved / input / reject_assign / task_done</text>
171
+ <line x1="560" y1="784" x2="560" y2="816" stroke="#1f7a52" stroke-width="2" marker-start="url(#bothData)" marker-end="url(#bothData)"/>
172
+ <text x="552" y="806" font-size="10.5" font-weight="400" fill="#1f7a52" text-anchor="end" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">Persist / record / wake</text>
173
+ <line x1="1180" y1="784" x2="1180" y2="816" stroke="#b3202c" stroke-width="2" stroke-dasharray="7 5" marker-start="url(#bothGate)" marker-end="url(#bothGate)"/>
174
+ <text x="1188" y="806" font-size="10.5" font-weight="400" fill="#b3202c" text-anchor="start" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">Not unanimous → kept in library with probability (dashed)</text>
175
+ <text x="52" y="1246" font-size="12" font-weight="700" fill="#10202e" text-anchor="start">Legend</text>
176
+ <rect x="108" y="1235" width="14" height="14" rx="3" fill="#ffffff" stroke="#5b4bb8" stroke-width="2"/>
177
+ <text x="129" y="1247" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">Human / assistant (no research, no vote)</text>
178
+ <rect x="438" y="1235" width="14" height="14" rx="3" fill="#ffffff" stroke="#b26a00" stroke-width="2"/>
179
+ <text x="459" y="1247" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">Resident subagent (votes · autonomous direction)</text>
180
+ <rect x="768" y="1235" width="14" height="14" rx="3" fill="#ffffff" stroke="#0b6fb8" stroke-width="2"/>
181
+ <text x="789" y="1247" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">Framework (relay / persist / count / schedule)</text>
182
+ <rect x="1098" y="1235" width="14" height="14" rx="3" fill="#ffffff" stroke="#1f7a52" stroke-width="2"/>
183
+ <text x="1119" y="1247" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">Artifacts, state (resident lib / Shared / State)</text>
184
+ <rect x="1428" y="1235" width="14" height="14" rx="3" fill="#ffffff" stroke="#b3202c" stroke-width="2"/>
185
+ <text x="1449" y="1247" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">Truth gate / Lean formalization (adjustable)</text>
186
+ </g>
187
+ </svg>
@@ -0,0 +1,174 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1720 1204" width="1720" height="1204" role="img" aria-label="Vibe Math V5 institute architecture diagram">
3
+ <defs>
4
+ <marker id="both" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#7d93a3"/></marker>
5
+ <marker id="bothHuman" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#5b4bb8"/></marker>
6
+ <marker id="bothFrame" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#0b6fb8"/></marker>
7
+ <marker id="bothData" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#1f7a52"/></marker>
8
+ <marker id="bothHouse" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="#b26a00"/></marker>
9
+ </defs>
10
+ <rect width="1720" height="1204" fill="#ffffff"/>
11
+ <g font-family="'Microsoft YaHei','PingFang SC','Hiragino Sans GB','Noto Sans CJK SC','Source Han Sans SC',sans-serif">
12
+ <text x="860" y="40" font-size="27" font-weight="700" fill="#10202e" text-anchor="middle">Vibe Math V5 —— Institute System</text>
13
+ <text x="860" y="67" font-size="13" font-weight="400" fill="#5d7788" text-anchor="middle">The framework is only a medium: relaying messages · persisting artifacts · counting votes · managing context. It never assigns tasks —— organizing and assigning is the academician's job</text>
14
+ <rect x="40" y="84" width="1640" height="94" rx="14" fill="#fdeef0" stroke="#b3202c" stroke-width="2"/>
15
+ <text x="58" y="111" font-size="15" font-weight="700" fill="#b3202c">Truth gate —— the only rule that lets an object enter Verified/</text>
16
+ <text x="58" y="131" font-size="12" fill="#5d7788">m = min(quorumCap, number of registered voting members) · a vote is a [0,1] probability: exactly 1 = assert true, exactly 0 = assert false, strictly between = abstention/doubt (not counted toward m, counted in the group average)</text>
17
+ <rect x="62" y="140" width="506" height="28" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
18
+ <text x="315" y="158.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">Boolean votes ≥ m and all 1 or all 0 → conclusion, written to Verified/</text>
19
+ <rect x="588" y="140" width="506" height="28" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
20
+ <text x="841" y="158.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">Both 1 and 0 → blocked: the minority cannot push a conclusion through</text>
21
+ <rect x="1114" y="140" width="524" height="28" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
22
+ <text x="1376" y="158.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">Below quorum → stays in the library + average probability + debate record</text>
23
+ <rect x="40" y="190" width="1640" height="100" rx="14" fill="#f1eefc" stroke="#5b4bb8" stroke-width="2"/>
24
+ <text x="58" y="217" font-size="15" font-weight="700" fill="#5b4bb8">Institute office (session root agent / human) —— the institute's external interface</text>
25
+ <text x="58" y="237" font-size="12" fill="#5d7788">Does not research · does not vote · only reports and relays the human's instructions; holds the one-off creation rights the platform requires</text>
26
+ <rect x="62" y="246" width="372" height="38" rx="10" fill="#ffffff" stroke="#5b4bb8" stroke-width="1.6"/>
27
+ <text x="248" y="261.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">Natural-language interface + reporter</text>
28
+ <text x="248" y="277.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">"solve XX" "how is it going" "pause"</text>
29
+ <rect x="452" y="246" width="372" height="38" rx="10" fill="#ffffff" stroke="#5b4bb8" stroke-width="1.6"/>
30
+ <text x="638" y="261.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">vibe_v5_configure → start</text>
31
+ <text x="638" y="277.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">message / meeting / hire / fire</text>
32
+ <rect x="842" y="246" width="330" height="38" rx="10" fill="#ffffff" stroke="#5b4bb8" stroke-width="1.6"/>
33
+ <text x="1007" y="261.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">pause / resume / stop</text>
34
+ <text x="1007" y="277.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">set parameters (effective immediately)</text>
35
+ <rect x="1190" y="246" width="448" height="38" rx="10" fill="#ffffff" stroke="#5b4bb8" stroke-width="1.6"/>
36
+ <text x="1414" y="261.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">/v5 slash commands (equivalent to the tools)</text>
37
+ <text x="1414" y="277.3" font-size="9" font-weight="400" fill="#2c4557" text-anchor="middle">configure|start|resume|pause|status|report|members|message|meeting|hire|fire|set</text>
38
+ <rect x="226" y="302" width="1454" height="240" rx="14" fill="#fdf5e2" stroke="#b26a00" stroke-width="2"/>
39
+ <text x="244" y="329" font-size="15" font-weight="700" fill="#8a5200">Institute (internal autonomy) —— roster, organization and assignment all happen among members; the framework never assigns</text>
40
+ <text x="244" y="349" font-size="12" fill="#5d7788">Academician acad: leader / center of organization and coordination · resident researcher r-n: voting rights · temp worker t-n: no voting rights (hired and fired by its employer)</text>
41
+ <rect x="248" y="362" width="300" height="142" rx="10" fill="#ffffff" stroke="#b26a00" stroke-width="1.6"/>
42
+ <text x="398" y="376.6" font-size="13.5" font-weight="700" fill="#10202e" text-anchor="middle">Academician acad</text>
43
+ <text x="398" y="394.1" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Leader · organization and coordination center</text>
44
+ <text x="398" y="411.6" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">L1 institute-wide overview (overview)</text>
45
+ <text x="398" y="429.1" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">L2 decompose and assign tasks (assign)</text>
46
+ <text x="398" y="446.6" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">L3 set priorities (prioritize)</text>
47
+ <text x="398" y="464.1" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">L4 convene and chair meetings (convene)</text>
48
+ <text x="398" y="481.6" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">L5 supervise progress (nudge)</text>
49
+ <text x="398" y="499.1" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">L6 move temp workers · L7 external</text>
50
+ <text x="398" y="520" font-size="10" font-weight="400" fill="#b3202c" text-anchor="middle">Four boundaries: one vote, equally weighted /</text>
51
+ <text x="398" y="536" font-size="10" font-weight="400" fill="#b3202c" text-anchor="middle">what is assigned is work, not conclusions /</text>
52
+ <text x="576" y="372" font-size="11.5" font-weight="700" fill="#8a5200" text-anchor="start">Resident researcher (voting rights · may autonomously hire/fire its own temp workers)</text>
53
+ <rect x="576" y="380" width="326" height="52" rx="10" fill="#ffffff" stroke="#b26a00" stroke-width="1.6"/>
54
+ <text x="739" y="402.2" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">Resident researcher r-1</text>
55
+ <text x="739" y="419.2" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">continuable persistent session · own direction</text>
56
+ <rect x="922" y="380" width="326" height="52" rx="10" fill="#ffffff" stroke="#b26a00" stroke-width="1.6"/>
57
+ <text x="1085" y="402.2" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">Resident researcher r-2</text>
58
+ <text x="1085" y="419.2" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">continuable persistent session · own direction</text>
59
+ <rect x="1268" y="380" width="326" height="52" rx="10" fill="#ffffff" stroke="#b26a00" stroke-width="1.6"/>
60
+ <text x="1431" y="402.2" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">Resident researcher r-3</text>
61
+ <text x="1431" y="419.2" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">continuable persistent session · own direction</text>
62
+ <text x="576" y="452" font-size="11.5" font-weight="700" fill="#8a5200" text-anchor="start">Temp worker (no voting rights · hired temporarily for a specific task · fired by its employer or the academician)</text>
63
+ <rect x="576" y="460" width="326" height="52" rx="10" fill="#ffffff" stroke="#c99a4a" stroke-width="1.6"/>
64
+ <text x="739" y="482.2" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">Temp worker t-1</text>
65
+ <text x="739" y="499.2" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Hired by r-1 · read/think/speak, write own library</text>
66
+ <rect x="922" y="460" width="326" height="52" rx="10" fill="#ffffff" stroke="#c99a4a" stroke-width="1.6"/>
67
+ <text x="1085" y="482.2" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">Temp worker t-2</text>
68
+ <text x="1085" y="499.2" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Hired by r-2 · read/think/speak, write own library</text>
69
+ <rect x="1268" y="460" width="326" height="52" rx="10" fill="#ffffff" stroke="#c99a4a" stroke-width="1.6"/>
70
+ <text x="1431" y="482.2" font-size="13" font-weight="700" fill="#10202e" text-anchor="middle">Temp worker t-3</text>
71
+ <text x="1431" y="499.2" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Hired by r-3 · read/think/speak, write own library</text>
72
+ <text x="576" y="536" font-size="10.5" font-weight="400" fill="#5d7788" text-anchor="start">In-institute organization (assignment · priority · nudge · meetings · staffing) is initiated by the academician, not the framework —— it only delivers</text>
73
+ <rect x="226" y="566" width="1454" height="382" rx="14" fill="#eaf3fd" stroke="#0b6fb8" stroke-width="2"/>
74
+ <text x="244" y="593" font-size="15" font-weight="700" fill="#084d80">Framework vibe-v5 —— only a medium (middleware): relay · persistence · counting · scheduling</text>
75
+ <text x="244" y="613" font-size="12" fill="#5d7788">Each round: "state block + this round's question" (the charter is in the persona); a member returns one JSON: say / progress / record / verdict / task_* / hire / fire / reject_assign / input / vote_solved</text>
76
+ <rect x="248" y="620" width="455.3333333333333" height="78" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
77
+ <text x="475.66666666666663" y="638.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Message relay (persistent mailbox)</text>
78
+ <text x="475.66666666666663" y="655.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">group chat / direct message / to all voters</text>
79
+ <text x="475.66666666666663" y="671.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">office notice / assignment / nudge / framework hint</text>
80
+ <text x="475.66666666666663" y="688.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">persisted per recipient · written before delivery · group chat batched</text>
81
+ <rect x="725.3333333333333" y="620" width="455.3333333333333" height="78" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
82
+ <text x="952.9999999999999" y="638.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Meeting / debate</text>
83
+ <text x="952.9999999999999" y="655.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">agenda · live roster check · random speaking order</text>
84
+ <text x="952.9999999999999" y="671.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">mutually exclusive with verification: while one runs, the other queues</text>
85
+ <text x="952.9999999999999" y="688.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">watchdog: if it hangs, abandon it and return to self-organization</text>
86
+ <rect x="1202.6666666666665" y="620" width="455.3333333333333" height="78" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
87
+ <text x="1430.3333333333333" y="638.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Task board (CAS + DAG)</text>
88
+ <text x="1430.3333333333333" y="655.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">open / claim / release / complete / reopen / assign</text>
89
+ <text x="1430.3333333333333" y="671.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">compare-and-set revision · dependency cycle detection</text>
90
+ <text x="1430.3333333333333" y="688.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">write-scope overlap warning · firing reclaims tasks</text>
91
+ <rect x="248" y="708" width="455.3333333333333" height="78" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
92
+ <text x="475.66666666666663" y="726.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">m-vote consensus verification</text>
93
+ <text x="475.66666666666663" y="743.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">propose → independent initial assessment → open debate and re-vote</text>
94
+ <text x="475.66666666666663" y="759.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Boolean unanimity + ≥ m decides it</text>
95
+ <text x="475.66666666666663" y="776.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Verified/ card + debate record + group average probability</text>
96
+ <rect x="725.3333333333333" y="708" width="455.3333333333333" height="78" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
97
+ <text x="952.9999999999999" y="726.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Context and liveness</text>
98
+ <text x="952.9999999999999" y="743.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">threshold compaction (persona kept) · poll-free activity wait</text>
99
+ <text x="952.9999999999999" y="759.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">priority scheduling · heartbeat always re-armed</text>
100
+ <text x="952.9999999999999" y="776.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">concurrency gate maxParallel · automatic meeting on stall</text>
101
+ <rect x="1202.6666666666665" y="708" width="455.3333333333333" height="78" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
102
+ <text x="1430.3333333333333" y="726.8" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Roster and hiring</text>
103
+ <text x="1430.3333333333333" y="743.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">academician/researchers can hire their own temp workers</text>
104
+ <text x="1430.3333333333333" y="759.8" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">employer or academician can really fire (releases the child session)</text>
105
+ <text x="1430.3333333333333" y="776.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">codenames never reused · dual quota per member / institute-wide</text>
106
+ <rect x="248" y="796" width="1410" height="90" rx="10" fill="#ffffff" stroke="#b3202c" stroke-width="1.6"/>
107
+ <text x="953" y="812.5" font-size="12.5" font-weight="700" fill="#10202e" text-anchor="middle">Lean formal verification (adjustable parameter formalVerify = off / encourage / require)</text>
108
+ <text x="953" y="829.0" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">encourage: at verification time, implementation difficulty decides whether to formalize; require: a true/false conclusion needs "Lean passed" or an explicit blocking record first</text>
109
+ <text x="953" y="845.5" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">★ Once Lean passes, the object of review changes: no longer "is the derivation correct", but "are Lean's definitions/objects/conditions/assumptions/conclusions faithful to the proposition"</text>
110
+ <text x="953" y="862.0" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">★ A fidelity defect (decision=defect) ≠ the proposition is false: revoke "passed" + revoke the archived proof + enter the "formalization TODO", never recorded as 0/false</text>
111
+ <text x="953" y="878.5" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Archive: proof → Verified/Lean/&lt;object&gt;.lean | reusable definition → VibeMath/Formal/Lib/ | proved lemma → VibeMath/Formal/Proved/</text>
112
+ <rect x="248" y="880" width="1410" height="38" rx="10" fill="#ffffff" stroke="#0b6fb8" stroke-width="1.6"/>
113
+ <text x="953" y="903.1" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">Scheduler priority: meeting/verification (mutually exclusive) → queued verification → meetings → active tasks (throttled by activityTimeoutMs) → mail → chat digest → meeting on stall → heartbeat</text>
114
+ <rect x="40" y="964" width="790" height="196" rx="14" fill="#eef7f1" stroke="#1f7a52" stroke-width="2"/>
115
+ <text x="58" y="991" font-size="15" font-weight="700" fill="#125a3c">Source of truth: host-only projection cell of the session log (key vibeMathV5)</text>
116
+ <text x="58" y="1011" font-size="12" fill="#5d7788">The only side effect is appending events to the session log, outside the model context (zero token cost)</text>
117
+ <rect x="62" y="1020" width="360" height="124" rx="10" fill="#ffffff" stroke="#1f7a52" stroke-width="1.6"/>
118
+ <text x="242" y="1046.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">applyV5Event (pure fold, the only copy)</text>
119
+ <text x="242" y="1062.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">11 kinds of events: institute / member / task /</text>
120
+ <text x="242" y="1078.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">message / delivered / meeting / debate /</text>
121
+ <text x="242" y="1094.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">verdict / queue / counters / progress</text>
122
+ <text x="242" y="1110.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">unknown/bad event → skipped and recorded in diagnostics:</text>
123
+ <text x="242" y="1126.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">availability first, one bad event never stalls the field</text>
124
+ <rect x="434" y="1020" width="374" height="124" rx="10" fill="#ffffff" stroke="#1f7a52" stroke-width="1.6"/>
125
+ <text x="621" y="1046.3" font-size="12" font-weight="700" fill="#10202e" text-anchor="middle">checkpoint / restore / resume</text>
126
+ <text x="621" y="1062.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">the projection is checkpointed with the session log; restore</text>
127
+ <text x="621" y="1078.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">re-folds snapshot + log tail → across and within processes</text>
128
+ <text x="621" y="1094.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">one process recovery takes the same code path</text>
129
+ <text x="621" y="1110.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">fallback: host without sessionProjections → hardened</text>
130
+ <text x="621" y="1126.3" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">JSON: State/&lt;institute&gt;.v5state.json</text>
131
+ <rect x="852" y="964" width="828" height="196" rx="14" fill="#eef7f1" stroke="#1f7a52" stroke-width="2"/>
132
+ <text x="870" y="991" font-size="15" font-weight="700" fill="#125a3c">File plane: human-readable artifacts (everything outside the projection is only a mirror)</text>
133
+ <text x="870" y="1011" font-size="12" fill="#5d7788">The authority for consensus is the projection; files are readable artifacts, breaking them by hand does not damage it</text>
134
+ <rect x="874" y="1020" width="784" height="124" rx="10" fill="#ffffff" stroke="#1f7a52" stroke-width="1.6"/>
135
+ <text x="1266" y="1055.1" font-size="11.5" font-weight="700" fill="#10202e" text-anchor="middle">Members/&lt;id&gt;/Progress|Propos|Methods|Subproblems/</text>
136
+ <text x="1266" y="1070.6" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">only the owner can write, everyone can read (cross-reading is encouraged)</text>
137
+ <text x="1266" y="1086.1" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Shared/Chat/*.md · Shared/Meetings/&lt;mt-id&gt;.md · Shared/Debates/&lt;obj&gt;.md</text>
138
+ <text x="1266" y="1101.6" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Shared/TaskBoard.md · Institutes.md (roster mirror) · State/README.md (says the authority is not here)</text>
139
+ <text x="1266" y="1117.1" font-size="10.5" font-weight="400" fill="#2c4557" text-anchor="middle">Problems/&lt;id&gt;.md (original problem) · Problems/conclusion.md (conclusion) · Verified/&lt;type&gt;/&lt;id&gt;.md (conclusion, read-only)</text>
140
+ <path d="M 127 290 L 127 700 L 226 700" fill="none" stroke="#5b4bb8" stroke-width="2" marker-start="url(#bothHuman)" marker-end="url(#bothHuman)"/>
141
+ <text x="127" y="336" font-size="12" font-weight="700" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">Tool surface</text>
142
+ <text x="127" y="356" font-size="11" font-weight="400" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">vibe_v5_*</text>
143
+ <text x="127" y="374" font-size="11" font-weight="400" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">/v5 commands</text>
144
+ <text x="127" y="398" font-size="13" font-weight="700" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">↓</text>
145
+ <text x="127" y="470" font-size="12" font-weight="700" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">Report</text>
146
+ <text x="127" y="490" font-size="11" font-weight="400" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">status</text>
147
+ <text x="127" y="508" font-size="11" font-weight="400" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">report</text>
148
+ <text x="127" y="532" font-size="13" font-weight="700" fill="#5b4bb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">↑</text>
149
+ <text x="127" y="600" font-size="10" font-weight="400" fill="#5d7788" text-anchor="middle">the office does not vote</text>
150
+ <text x="127" y="616" font-size="10" font-weight="400" fill="#5d7788" text-anchor="middle">cannot make a conclusion true</text>
151
+ <text x="127" y="644" font-size="10" font-weight="400" fill="#5d7788" text-anchor="middle">nor think or sign</text>
152
+ <text x="127" y="660" font-size="10" font-weight="400" fill="#5d7788" text-anchor="middle">on a member's behalf</text>
153
+ <line x1="560" y1="542" x2="560" y2="566" stroke="#0b6fb8" stroke-width="2" marker-start="url(#bothFrame)" marker-end="url(#bothFrame)"/>
154
+ <line x1="1400" y1="542" x2="1400" y2="566" stroke="#0b6fb8" stroke-width="2" marker-start="url(#bothFrame)" marker-end="url(#bothFrame)"/>
155
+ <text x="980" y="559" font-size="10.5" font-weight="400" fill="#0b6fb8" text-anchor="middle" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">↑ per-round prompt (state block + this round's question)  ↓ single JSON receipt</text>
156
+ <line x1="556" y1="400" x2="578" y2="400" stroke="#b26a00" stroke-width="1.8" stroke-dasharray="7 5" marker-start="url(#bothHouse)" marker-end="url(#bothHouse)"/>
157
+ <line x1="556" y1="430" x2="578" y2="430" stroke="#b26a00" stroke-width="1.8" stroke-dasharray="7 5" marker-start="url(#bothHouse)" marker-end="url(#bothHouse)"/>
158
+ <line x1="400" y1="940" x2="400" y2="964" stroke="#1f7a52" stroke-width="2" marker-start="url(#bothData)" marker-end="url(#bothData)"/>
159
+ <text x="392" y="956" font-size="10.5" font-weight="400" fill="#1f7a52" text-anchor="end" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">append / fold / stateOf</text>
160
+ <line x1="1280" y1="940" x2="1280" y2="964" stroke="#1f7a52" stroke-width="2" marker-start="url(#bothData)" marker-end="url(#bothData)"/>
161
+ <text x="1288" y="956" font-size="10.5" font-weight="400" fill="#1f7a52" text-anchor="start" paint-order="stroke" stroke="#ffffff" stroke-width="4" stroke-linejoin="round">read/write artifacts</text>
162
+ <text x="52" y="1186" font-size="12" font-weight="700" fill="#10202e" text-anchor="start">Legend</text>
163
+ <rect x="108" y="1175" width="14" height="14" rx="3" fill="#ffffff" stroke="#5b4bb8" stroke-width="2"/>
164
+ <text x="129" y="1187" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">Institute office / human (no research, no vote)</text>
165
+ <rect x="438" y="1175" width="14" height="14" rx="3" fill="#ffffff" stroke="#b26a00" stroke-width="2"/>
166
+ <text x="459" y="1187" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">Members and org (dashed = not framework)</text>
167
+ <rect x="768" y="1175" width="14" height="14" rx="3" fill="#ffffff" stroke="#0b6fb8" stroke-width="2"/>
168
+ <text x="789" y="1187" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">Framework (relay / persist / count / sched.)</text>
169
+ <rect x="1098" y="1175" width="14" height="14" rx="3" fill="#ffffff" stroke="#1f7a52" stroke-width="2"/>
170
+ <text x="1119" y="1187" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">State and artifacts</text>
171
+ <rect x="1428" y="1175" width="14" height="14" rx="3" fill="#ffffff" stroke="#b3202c" stroke-width="2"/>
172
+ <text x="1449" y="1187" font-size="11" font-weight="400" fill="#2c4557" text-anchor="start">Truth gate / Lean formalization (adjustable)</text>
173
+ </g>
174
+ </svg>