pwn 0.5.781 → 0.5.783
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.
- checksums.yaml +4 -4
- data/documentation/Installation.md +33 -9
- data/documentation/diagrams/dot/extrospection-world-awareness.dot +37 -92
- data/documentation/diagrams/dot/memory-skills-detailed.dot +33 -98
- data/documentation/diagrams/dot/overall-pwn-architecture.dot +54 -32
- data/documentation/diagrams/dot/pwn-ai-feedback-learning-loop.dot +53 -30
- data/documentation/diagrams/dot/reinforcement-learning.dot +46 -111
- data/documentation/diagrams/dot/swarm-multi-agent.dot +36 -61
- data/documentation/diagrams/extrospection-world-awareness.svg +139 -510
- data/documentation/diagrams/memory-skills-detailed.svg +126 -475
- data/documentation/diagrams/overall-pwn-architecture.svg +116 -266
- data/documentation/diagrams/pwn-ai-feedback-learning-loop.svg +158 -244
- data/documentation/diagrams/reinforcement-learning.svg +238 -529
- data/documentation/diagrams/swarm-multi-agent.svg +104 -233
- data/documentation/pwn-REPL.md +31 -3
- data/documentation/pwn-ai-Agent.md +62 -2
- data/etc/default_cron/session_cleanup.rb +335 -42
- data/lib/pwn/ai/agent/curriculum.rb +2 -2
- data/lib/pwn/ai/agent/learning.rb +11 -4
- data/lib/pwn/ai/agent/mistakes.rb +22 -3
- data/lib/pwn/ai/agent/tools/sessions.rb +6 -6
- data/lib/pwn/ai/http_retry.rb +3 -0
- data/lib/pwn/ai/router.rb +3 -1
- data/lib/pwn/cron.rb +1 -1
- data/lib/pwn/memory.rb +62 -6
- data/lib/pwn/plugins/repl/ai.rb +13 -3
- data/lib/pwn/plugins/repl/ai_console.rb +37 -21
- data/lib/pwn/session_trace.rb +1 -1
- data/lib/pwn/sessions.rb +305 -80
- data/lib/pwn/version.rb +1 -1
- data/spec/lib/pwn/ai/agent/learning_spec.rb +65 -2
- data/spec/lib/pwn/ai/agent/swarm_spec.rb +3 -3
- data/spec/lib/pwn/memory_spec.rb +58 -1
- data/spec/lib/pwn/plugins/repl/ai_console_spec.rb +191 -6
- data/spec/lib/pwn/plugins/repl/ai_result_chronology_spec.rb +2 -2
- data/spec/lib/pwn/plugins/repl/ai_spec.rb +28 -11
- data/spec/lib/pwn/session_cleanup_default_spec.rb +2 -2
- data/spec/lib/pwn/session_cleanup_payload_spec.rb +467 -36
- data/spec/lib/pwn/sessions_spec.rb +116 -16
- data/third_party/pwn_rdoc.jsonl +12 -0
- metadata +1 -1
|
@@ -4,276 +4,190 @@
|
|
|
4
4
|
<!-- Generated by graphviz version 14.1.2 (0)
|
|
5
5
|
-->
|
|
6
6
|
<!-- Title: PWN_Feedback Pages: 1 -->
|
|
7
|
-
<svg width="
|
|
8
|
-
viewBox="0.00 0.00
|
|
9
|
-
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(
|
|
7
|
+
<svg width="798pt" height="813pt"
|
|
8
|
+
viewBox="0.00 0.00 798.00 813.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
9
|
+
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(28.8 784.29)">
|
|
10
10
|
<title>PWN_Feedback</title>
|
|
11
|
-
<polygon fill="#0f172a" stroke="none" points="-
|
|
12
|
-
<text xml:space="preserve" text-anchor="
|
|
13
|
-
|
|
11
|
+
<polygon fill="#0f172a" stroke="none" points="-28.8,28.8 -28.8,-784.29 768.8,-784.29 768.8,28.8 -28.8,28.8"/>
|
|
12
|
+
<text xml:space="preserve" text-anchor="start" x="161.12" y="-733.49" font-family="sans-Serif" font-weight="bold" font-size="20.00" fill="#e2e8f0">PWN::AI::Agent - Feedback + Learning Loop</text>
|
|
13
|
+
<text xml:space="preserve" text-anchor="start" x="236.88" y="-722.04" font-family="sans-Serif" font-size="11.00" fill="#94a3b8">evidence-backed feedback · not automatic improvement</text>
|
|
14
|
+
<g id="clust1" class="cluster">
|
|
15
|
+
<title>cluster_turn</title>
|
|
16
|
+
<path fill="#1e293b" stroke="#334155" d="M20,-8C20,-8 348,-8 348,-8 354,-8 360,-14 360,-20 360,-20 360,-696.49 360,-696.49 360,-702.49 354,-708.49 348,-708.49 348,-708.49 20,-708.49 20,-708.49 14,-708.49 8,-702.49 8,-696.49 8,-696.49 8,-20 8,-20 8,-14 14,-8 20,-8"/>
|
|
17
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-693.09" font-family="sans-Serif" font-size="12.00" fill="#e2e8f0">REQUEST LIFECYCLE  ·  read top to bottom</text>
|
|
18
|
+
</g>
|
|
19
|
+
<g id="clust2" class="cluster">
|
|
20
|
+
<title>cluster_evaluation</title>
|
|
21
|
+
<path fill="#1e293b" stroke="#94a3b8" stroke-dasharray="5,2" d="M396,-128.04C396,-128.04 720,-128.04 720,-128.04 726,-128.04 732,-134.04 732,-140.04 732,-140.04 732,-696.49 732,-696.49 732,-702.49 726,-708.49 720,-708.49 720,-708.49 396,-708.49 396,-708.49 390,-708.49 384,-702.49 384,-696.49 384,-696.49 384,-140.04 384,-140.04 384,-134.04 390,-128.04 396,-128.04"/>
|
|
22
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-693.09" font-family="sans-Serif" font-size="12.00" fill="#e2e8f0">EVALUATION / PROMOTION  ·  explicit operator workflow</text>
|
|
23
|
+
</g>
|
|
24
|
+
<!-- Prepare -->
|
|
14
25
|
<g id="node1" class="node">
|
|
15
|
-
<title>
|
|
16
|
-
<path fill="#7dd3fc" stroke="#334155" d="
|
|
17
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
18
|
-
</
|
|
19
|
-
|
|
20
|
-
<
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
<text xml:space="preserve" text-anchor="middle" x="312" y="-649.05" font-family="sans-Serif" font-size="11.00">Loop / request-owned runtime</text>
|
|
24
|
-
<text xml:space="preserve" text-anchor="middle" x="312" y="-635.55" font-family="sans-Serif" font-size="11.00">TaskSummarizer compass is UX, not acceptance</text>
|
|
25
|
-
</g>
|
|
26
|
-
<!-- Request->Loop -->
|
|
27
|
-
<g id="edge1" class="edge">
|
|
28
|
-
<title>Request->Loop</title>
|
|
29
|
-
<path fill="none" stroke="#94a3b8" d="M312,-700.81C312,-693.23 312,-684.1 312,-675.54"/>
|
|
30
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="315.5,-675.54 312,-665.54 308.5,-675.54 315.5,-675.54"/>
|
|
31
|
-
</g>
|
|
32
|
-
<!-- Host -->
|
|
26
|
+
<title>Prepare</title>
|
|
27
|
+
<path fill="#7dd3fc" stroke="#334155" stroke-width="1.3" d="M337.6,-678.24C337.6,-678.24 30.4,-678.24 30.4,-678.24 24.4,-678.24 18.4,-672.24 18.4,-666.24 18.4,-666.24 18.4,-613.2 18.4,-613.2 18.4,-607.2 24.4,-601.2 30.4,-601.2 30.4,-601.2 337.6,-601.2 337.6,-601.2 343.6,-601.2 349.6,-607.2 349.6,-613.2 349.6,-613.2 349.6,-666.24 349.6,-666.24 349.6,-672.24 343.6,-678.24 337.6,-678.24"/>
|
|
28
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-656.27" font-family="sans-Serif" font-size="11.00" fill="#0f172a">1  PREPARE</text>
|
|
29
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-642.77" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Original request + additive amendments</text>
|
|
30
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-629.27" font-family="sans-Serif" font-size="11.00" fill="#0f172a">PromptBuilder: recalled memory / skills / lessons / policy</text>
|
|
31
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-615.77" font-family="sans-Serif" font-size="11.00" fill="#0f172a">HOST: DetectOS summary + PreflightChecker</text>
|
|
32
|
+
</g>
|
|
33
|
+
<!-- Execute -->
|
|
33
34
|
<g id="node2" class="node">
|
|
34
|
-
<title>
|
|
35
|
-
<path fill="#
|
|
36
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
37
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
38
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
35
|
+
<title>Execute</title>
|
|
36
|
+
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.3" d="M337.6,-570.2C337.6,-570.2 30.4,-570.2 30.4,-570.2 24.4,-570.2 18.4,-564.2 18.4,-558.2 18.4,-558.2 18.4,-505.16 18.4,-505.16 18.4,-499.16 24.4,-493.16 30.4,-493.16 30.4,-493.16 337.6,-493.16 337.6,-493.16 343.6,-493.16 349.6,-499.16 349.6,-505.16 349.6,-505.16 349.6,-558.2 349.6,-558.2 349.6,-564.2 343.6,-570.2 337.6,-570.2"/>
|
|
37
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-548.23" font-family="sans-Serif" font-size="11.00" fill="#0f172a">2  ACT + OBSERVE</text>
|
|
38
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-534.73" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Loop + Registry + Dispatch: repeat tool / observation turns</text>
|
|
39
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-521.23" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Permissions, confirmation and sandbox</text>
|
|
40
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-507.73" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Extrospection on demand; auto baseline: host / repo / env</text>
|
|
41
|
+
</g>
|
|
42
|
+
<!-- Prepare->Execute -->
|
|
43
|
+
<g id="edge1" class="edge">
|
|
44
|
+
<title>Prepare->Execute</title>
|
|
45
|
+
<path fill="none" stroke="#38bdf8" stroke-width="1.3" d="M184,-600.74C184,-594.19 184,-587.31 184,-580.54"/>
|
|
46
|
+
<polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="1.3" points="186.8,-580.72 184,-572.72 181.2,-580.72 186.8,-580.72"/>
|
|
39
47
|
</g>
|
|
40
|
-
<!--
|
|
48
|
+
<!-- Verify -->
|
|
41
49
|
<g id="node3" class="node">
|
|
42
|
-
<title>
|
|
43
|
-
<path fill="#
|
|
44
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
45
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
46
|
-
</
|
|
47
|
-
|
|
50
|
+
<title>Verify</title>
|
|
51
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.3" d="M337.6,-451.16C337.6,-451.16 30.4,-451.16 30.4,-451.16 24.4,-451.16 18.4,-445.16 18.4,-439.16 18.4,-439.16 18.4,-386.12 18.4,-386.12 18.4,-380.12 24.4,-374.12 30.4,-374.12 30.4,-374.12 337.6,-374.12 337.6,-374.12 343.6,-374.12 349.6,-380.12 349.6,-386.12 349.6,-386.12 349.6,-439.16 349.6,-439.16 349.6,-445.16 343.6,-451.16 337.6,-451.16"/>
|
|
52
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-429.19" font-family="sans-Serif" font-size="11.00" fill="#0f172a">3  CHECK THE EVIDENCE</text>
|
|
53
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-415.69" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Host receipts + exact-target bytes / digests</text>
|
|
54
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-402.19" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Authored checks + complete original obligation coverage</text>
|
|
55
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-388.69" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Completion arbiter: verified / failed / unknown</text>
|
|
56
|
+
</g>
|
|
57
|
+
<!-- Execute->Verify -->
|
|
48
58
|
<g id="edge2" class="edge">
|
|
49
|
-
<title>
|
|
50
|
-
<path fill="none" stroke="#
|
|
51
|
-
<polygon fill="#
|
|
59
|
+
<title>Execute->Verify</title>
|
|
60
|
+
<path fill="none" stroke="#38bdf8" stroke-width="1.3" d="M184,-492.68C184,-482.67 184,-471.73 184,-461.28"/>
|
|
61
|
+
<polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="1.3" points="186.8,-461.42 184,-453.42 181.2,-461.42 186.8,-461.42"/>
|
|
62
|
+
<text xml:space="preserve" text-anchor="middle" x="235.75" y="-468.66" font-family="sans-Serif" font-size="10.00" fill="#cbd5e1">host evidence boundary</text>
|
|
52
63
|
</g>
|
|
53
|
-
<!--
|
|
64
|
+
<!-- Account -->
|
|
65
|
+
<g id="node4" class="node">
|
|
66
|
+
<title>Account</title>
|
|
67
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.3" d="M337.6,-332.12C337.6,-332.12 30.4,-332.12 30.4,-332.12 24.4,-332.12 18.4,-326.12 18.4,-320.12 18.4,-320.12 18.4,-267.08 18.4,-267.08 18.4,-261.08 24.4,-255.08 30.4,-255.08 30.4,-255.08 337.6,-255.08 337.6,-255.08 343.6,-255.08 349.6,-261.08 349.6,-267.08 349.6,-267.08 349.6,-320.12 349.6,-320.12 349.6,-326.12 343.6,-332.12 337.6,-332.12"/>
|
|
68
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-310.15" font-family="sans-Serif" font-size="11.00" fill="#0f172a">4  RECORD FEEDBACK</text>
|
|
69
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-296.65" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Reward + Learning: judge claim != verified completion</text>
|
|
70
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-283.15" font-family="sans-Serif" font-size="11.00" fill="#0f172a">False-completion rate uses checked claims</text>
|
|
71
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-269.65" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Mistakes / Metrics / Reflect: diagnostic lessons</text>
|
|
72
|
+
</g>
|
|
73
|
+
<!-- Verify->Account -->
|
|
54
74
|
<g id="edge3" class="edge">
|
|
55
|
-
<title>
|
|
56
|
-
<path fill="none" stroke="#
|
|
57
|
-
<polygon fill="#
|
|
75
|
+
<title>Verify->Account</title>
|
|
76
|
+
<path fill="none" stroke="#38bdf8" stroke-width="1.3" d="M184,-373.64C184,-363.63 184,-352.69 184,-342.24"/>
|
|
77
|
+
<polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="1.3" points="186.8,-342.38 184,-334.38 181.2,-342.38 186.8,-342.38"/>
|
|
78
|
+
<text xml:space="preserve" text-anchor="middle" x="239.88" y="-349.62" font-family="sans-Serif" font-size="10.00" fill="#cbd5e1">preserve failed / unknown</text>
|
|
58
79
|
</g>
|
|
59
|
-
<!--
|
|
80
|
+
<!-- Retain -->
|
|
60
81
|
<g id="node5" class="node">
|
|
61
|
-
<title>
|
|
62
|
-
<path fill="#
|
|
63
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
64
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
65
|
-
</
|
|
66
|
-
|
|
82
|
+
<title>Retain</title>
|
|
83
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.3" d="M340.09,-213.08C340.09,-213.08 27.91,-213.08 27.91,-213.08 21.91,-213.08 15.91,-207.08 15.91,-201.08 15.91,-201.08 15.91,-148.04 15.91,-148.04 15.91,-142.04 21.91,-136.04 27.91,-136.04 27.91,-136.04 340.09,-136.04 340.09,-136.04 346.09,-136.04 352.09,-142.04 352.09,-148.04 352.09,-148.04 352.09,-201.08 352.09,-201.08 352.09,-207.08 346.09,-213.08 340.09,-213.08"/>
|
|
84
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-191.11" font-family="sans-Serif" font-size="11.00" fill="#0f172a">5  RETAIN ADVISORY CONTEXT</text>
|
|
85
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-177.61" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Policy accounting + ranking: positive training credit</text>
|
|
86
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-164.11" font-family="sans-Serif" font-size="11.00" fill="#0f172a">requires independent action attribution</text>
|
|
87
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-150.61" font-family="sans-Serif" font-size="11.00" fill="#0f172a">SkillReview: recommend by default; limited auto-safe SOP edits</text>
|
|
88
|
+
</g>
|
|
89
|
+
<!-- Account->Retain -->
|
|
67
90
|
<g id="edge4" class="edge">
|
|
68
|
-
<title>
|
|
69
|
-
<path fill="none" stroke="#94a3b8" d="
|
|
70
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="
|
|
71
|
-
</g>
|
|
72
|
-
<!-- Final -->
|
|
73
|
-
<g id="node8" class="node">
|
|
74
|
-
<title>Final</title>
|
|
75
|
-
<path fill="#c4b5fd" stroke="#334155" d="M719.25,-416.75C719.25,-416.75 494.75,-416.75 494.75,-416.75 488.75,-416.75 482.75,-410.75 482.75,-404.75 482.75,-404.75 482.75,-392.75 482.75,-392.75 482.75,-386.75 488.75,-380.75 494.75,-380.75 494.75,-380.75 719.25,-380.75 719.25,-380.75 725.25,-380.75 731.25,-386.75 731.25,-392.75 731.25,-392.75 731.25,-404.75 731.25,-404.75 731.25,-410.75 725.25,-416.75 719.25,-416.75"/>
|
|
76
|
-
<text xml:space="preserve" text-anchor="middle" x="607" y="-401.8" font-family="sans-Serif" font-size="11.00">Completion arbiter</text>
|
|
77
|
-
<text xml:space="preserve" text-anchor="middle" x="607" y="-388.3" font-family="sans-Serif" font-size="11.00">no tool calls != done; all original obligations apply</text>
|
|
78
|
-
</g>
|
|
79
|
-
<!-- Loop->Final -->
|
|
80
|
-
<g id="edge9" class="edge">
|
|
81
|
-
<title>Loop->Final</title>
|
|
82
|
-
<path fill="none" stroke="#94a3b8" d="M437.43,-628.51C505.71,-612.43 584.69,-580.68 627,-518 645.25,-490.97 633.68,-452.75 621.95,-427.15"/>
|
|
83
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="625.2,-425.83 617.66,-418.38 618.91,-428.91 625.2,-425.83"/>
|
|
91
|
+
<title>Account->Retain</title>
|
|
92
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M184,-254.6C184,-244.59 184,-233.65 184,-223.2"/>
|
|
93
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="186.8,-223.34 184,-215.34 181.2,-223.34 186.8,-223.34"/>
|
|
84
94
|
</g>
|
|
85
|
-
<!--
|
|
95
|
+
<!-- Reuse -->
|
|
86
96
|
<g id="node6" class="node">
|
|
87
|
-
<title>
|
|
88
|
-
<path fill="#
|
|
89
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
90
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
91
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
92
|
-
</
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
<title>Tools->World</title>
|
|
96
|
-
<path fill="none" stroke="#94a3b8" d="M276.99,-554.66C258.46,-545.49 235.23,-533.98 214.09,-523.51"/>
|
|
97
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="215.78,-520.45 205.26,-519.14 212.67,-526.72 215.78,-520.45"/>
|
|
98
|
-
</g>
|
|
99
|
-
<!-- Evidence -->
|
|
100
|
-
<g id="node7" class="node">
|
|
101
|
-
<title>Evidence</title>
|
|
102
|
-
<path fill="#fcd34d" stroke="#334155" d="M617.88,-513.44C617.88,-515.85 555.63,-517.81 479,-517.81 402.37,-517.81 340.12,-515.85 340.12,-513.44 340.12,-513.44 340.12,-474.06 340.12,-474.06 340.12,-471.65 402.37,-469.69 479,-469.69 555.63,-469.69 617.88,-471.65 617.88,-474.06 617.88,-474.06 617.88,-513.44 617.88,-513.44"/>
|
|
103
|
-
<path fill="none" stroke="#334155" d="M617.88,-513.44C617.88,-511.02 555.63,-509.06 479,-509.06 402.37,-509.06 340.12,-511.02 340.12,-513.44"/>
|
|
104
|
-
<text xml:space="preserve" text-anchor="middle" x="479" y="-496.8" font-family="sans-Serif" font-size="11.00">Host receipts / exact-target stat + digest</text>
|
|
105
|
-
<text xml:space="preserve" text-anchor="middle" x="479" y="-483.3" font-family="sans-Serif" font-size="11.00">executed authored checks; failed/unknown stay distinct</text>
|
|
106
|
-
</g>
|
|
107
|
-
<!-- Tools->Evidence -->
|
|
97
|
+
<title>Reuse</title>
|
|
98
|
+
<path fill="#7dd3fc" stroke="#334155" stroke-width="1.3" d="M337.6,-93.04C337.6,-93.04 30.4,-93.04 30.4,-93.04 24.4,-93.04 18.4,-87.04 18.4,-81.04 18.4,-81.04 18.4,-28 18.4,-28 18.4,-22 24.4,-16 30.4,-16 30.4,-16 337.6,-16 337.6,-16 343.6,-16 349.6,-22 349.6,-28 349.6,-28 349.6,-81.04 349.6,-81.04 349.6,-87.04 343.6,-93.04 337.6,-93.04"/>
|
|
99
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-71.07" font-family="sans-Serif" font-size="11.00" fill="#0f172a">6  INFORM A LATER TURN</text>
|
|
100
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-57.57" font-family="sans-Serif" font-size="11.00" fill="#0f172a">PromptBuilder recalls retained context as budget permits</text>
|
|
101
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-44.07" font-family="sans-Serif" font-size="11.00" fill="#0f172a">This closes the context loop, not a proof of improvement</text>
|
|
102
|
+
<text xml:space="preserve" text-anchor="middle" x="184" y="-30.57" font-family="sans-Serif" font-size="11.00" fill="#0f172a">TaskSummarizer compass is UX, never acceptance</text>
|
|
103
|
+
</g>
|
|
104
|
+
<!-- Retain->Reuse -->
|
|
108
105
|
<g id="edge5" class="edge">
|
|
109
|
-
<title>
|
|
110
|
-
<path fill="none" stroke="#94a3b8" d="
|
|
111
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="
|
|
112
|
-
</
|
|
113
|
-
<!-- Mistakes -->
|
|
114
|
-
<g id="node10" class="node">
|
|
115
|
-
<title>Mistakes</title>
|
|
116
|
-
<path fill="#6ee7b7" stroke="#334155" d="M345.62,-423C345.62,-423 180.38,-423 180.38,-423 174.38,-423 168.38,-417 168.38,-411 168.38,-411 168.38,-386.5 168.38,-386.5 168.38,-380.5 174.38,-374.5 180.38,-374.5 180.38,-374.5 345.62,-374.5 345.62,-374.5 351.62,-374.5 357.62,-380.5 357.62,-386.5 357.62,-386.5 357.62,-411 357.62,-411 357.62,-417 351.62,-423 345.62,-423"/>
|
|
117
|
-
<text xml:space="preserve" text-anchor="middle" x="263" y="-408.55" font-family="sans-Serif" font-size="11.00">Mistakes / Metrics / Reflect</text>
|
|
118
|
-
<text xml:space="preserve" text-anchor="middle" x="263" y="-395.05" font-family="sans-Serif" font-size="11.00">failures, fixes and diagnostic lessons</text>
|
|
119
|
-
<text xml:space="preserve" text-anchor="middle" x="263" y="-381.55" font-family="sans-Serif" font-size="11.00">correlation is not causal proof</text>
|
|
120
|
-
</g>
|
|
121
|
-
<!-- Tools->Mistakes -->
|
|
122
|
-
<g id="edge11" class="edge">
|
|
123
|
-
<title>Tools->Mistakes</title>
|
|
124
|
-
<path fill="none" stroke="#94a3b8" d="M309.99,-554.67C307.32,-534.06 301.88,-498.77 293,-469.5 289.37,-457.55 284.32,-444.9 279.4,-433.69"/>
|
|
125
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="282.71,-432.51 275.39,-424.84 276.33,-435.4 282.71,-432.51"/>
|
|
126
|
-
</g>
|
|
127
|
-
<!-- World->Prompt -->
|
|
128
|
-
<g id="edge7" class="edge">
|
|
129
|
-
<title>World->Prompt</title>
|
|
130
|
-
<path fill="none" stroke="#94a3b8" stroke-dasharray="5,2" d="M149.68,-469.24C145.2,-450.55 140,-423.67 140,-399.75 140,-399.75 140,-399.75 140,-203.75 140,-169.47 169.89,-146.85 201.54,-132.52"/>
|
|
131
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="202.61,-135.87 210.45,-128.75 199.88,-129.43 202.61,-135.87"/>
|
|
132
|
-
</g>
|
|
133
|
-
<!-- World->Mistakes -->
|
|
134
|
-
<g id="edge12" class="edge">
|
|
135
|
-
<title>World->Mistakes</title>
|
|
136
|
-
<path fill="none" stroke="#94a3b8" stroke-dasharray="5,2" d="M183.28,-469.04C196.61,-457.45 212.83,-443.36 227.15,-430.91"/>
|
|
137
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="229.38,-433.61 234.63,-424.41 224.79,-428.33 229.38,-433.61"/>
|
|
138
|
-
<text xml:space="preserve" text-anchor="middle" x="230.71" y="-442.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">correlate</text>
|
|
139
|
-
</g>
|
|
140
|
-
<!-- Evidence->Final -->
|
|
141
|
-
<g id="edge8" class="edge">
|
|
142
|
-
<title>Evidence->Final</title>
|
|
143
|
-
<path fill="none" stroke="#94a3b8" d="M511.3,-469.28C530.43,-455.38 554.62,-437.8 573.9,-423.8"/>
|
|
144
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="575.94,-426.64 581.97,-417.93 571.82,-420.98 575.94,-426.64"/>
|
|
145
|
-
</g>
|
|
146
|
-
<!-- Reward -->
|
|
147
|
-
<g id="node9" class="node">
|
|
148
|
-
<title>Reward</title>
|
|
149
|
-
<path fill="#6ee7b7" stroke="#334155" d="M693.75,-337.5C693.75,-337.5 520.25,-337.5 520.25,-337.5 514.25,-337.5 508.25,-331.5 508.25,-325.5 508.25,-325.5 508.25,-287.5 508.25,-287.5 508.25,-281.5 514.25,-275.5 520.25,-275.5 520.25,-275.5 693.75,-275.5 693.75,-275.5 699.75,-275.5 705.75,-281.5 705.75,-287.5 705.75,-287.5 705.75,-325.5 705.75,-325.5 705.75,-331.5 699.75,-337.5 693.75,-337.5"/>
|
|
150
|
-
<text xml:space="preserve" text-anchor="middle" x="607" y="-323.05" font-family="sans-Serif" font-size="11.00">Reward + Learning</text>
|
|
151
|
-
<text xml:space="preserve" text-anchor="middle" x="607" y="-309.55" font-family="sans-Serif" font-size="11.00">claimed_completion (judge claim)</text>
|
|
152
|
-
<text xml:space="preserve" text-anchor="middle" x="607" y="-296.05" font-family="sans-Serif" font-size="11.00">verified_completion / false_completion</text>
|
|
153
|
-
<text xml:space="preserve" text-anchor="middle" x="607" y="-282.55" font-family="sans-Serif" font-size="11.00">rate denominator: checked claims</text>
|
|
154
|
-
</g>
|
|
155
|
-
<!-- Final->Reward -->
|
|
156
|
-
<g id="edge10" class="edge">
|
|
157
|
-
<title>Final->Reward</title>
|
|
158
|
-
<path fill="none" stroke="#94a3b8" d="M607,-380.35C607,-371.38 607,-360.02 607,-348.96"/>
|
|
159
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="610.5,-349.16 607,-339.16 603.5,-349.16 610.5,-349.16"/>
|
|
106
|
+
<title>Retain->Reuse</title>
|
|
107
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" stroke-dasharray="5,2" d="M184,-135.56C184,-125.24 184,-113.94 184,-103.16"/>
|
|
108
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="186.8,-103.41 184,-95.41 181.2,-103.41 186.8,-103.41"/>
|
|
109
|
+
<text xml:space="preserve" text-anchor="middle" x="221.88" y="-110.54" font-family="sans-Serif" font-size="10.00" fill="#cbd5e1">later context read</text>
|
|
160
110
|
</g>
|
|
161
|
-
<!--
|
|
162
|
-
<g id="
|
|
163
|
-
<title>
|
|
164
|
-
<path fill="#
|
|
165
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
166
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
167
|
-
</
|
|
168
|
-
|
|
169
|
-
<g id="edge13" class="edge">
|
|
170
|
-
<title>Reward->Policy</title>
|
|
171
|
-
<path fill="none" stroke="#94a3b8" d="M706.18,-287.61C803.55,-270.05 951.65,-243.33 1051.96,-225.24"/>
|
|
172
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="1052.32,-228.73 1061.54,-223.51 1051.08,-221.84 1052.32,-228.73"/>
|
|
111
|
+
<!-- Select -->
|
|
112
|
+
<g id="node7" class="node">
|
|
113
|
+
<title>Select</title>
|
|
114
|
+
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.3" d="M711.6,-678.24C711.6,-678.24 404.4,-678.24 404.4,-678.24 398.4,-678.24 392.4,-672.24 392.4,-666.24 392.4,-666.24 392.4,-613.2 392.4,-613.2 392.4,-607.2 398.4,-601.2 404.4,-601.2 404.4,-601.2 711.6,-601.2 711.6,-601.2 717.6,-601.2 723.6,-607.2 723.6,-613.2 723.6,-613.2 723.6,-666.24 723.6,-666.24 723.6,-672.24 717.6,-678.24 711.6,-678.24"/>
|
|
115
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-656.27" font-family="sans-Serif" font-size="11.00" fill="#0f172a">A  SELECT FROZEN INPUTS</text>
|
|
116
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-642.77" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Explicit baseline + candidate policy snapshots</text>
|
|
117
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-629.27" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Read recorded policy state, not live online writers</text>
|
|
118
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-615.77" font-family="sans-Serif" font-size="11.00" fill="#0f172a">No automatic handoff from the request lifecycle</text>
|
|
173
119
|
</g>
|
|
174
120
|
<!-- Regression -->
|
|
175
|
-
<g id="
|
|
121
|
+
<g id="node8" class="node">
|
|
176
122
|
<title>Regression</title>
|
|
177
|
-
<path fill="#c4b5fd" stroke="#334155" d="
|
|
178
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
179
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
180
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
181
|
-
</
|
|
182
|
-
<!-- Reward->Regression -->
|
|
183
|
-
<g id="edge14" class="edge">
|
|
184
|
-
<title>Reward->Regression</title>
|
|
185
|
-
<path fill="none" stroke="#94a3b8" d="M706,-295.88C841.81,-282.48 1093.82,-256.81 1319.02,-229.35"/>
|
|
186
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="1319.4,-232.83 1328.9,-228.14 1318.55,-225.88 1319.4,-232.83"/>
|
|
187
|
-
<text xml:space="preserve" text-anchor="middle" x="1213.13" y="-248.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">persisted verifier failure</text>
|
|
188
|
-
</g>
|
|
189
|
-
<!-- Skill -->
|
|
190
|
-
<g id="node15" class="node">
|
|
191
|
-
<title>Skill</title>
|
|
192
|
-
<path fill="#c4b5fd" stroke="#334155" d="M688.5,-222.75C688.5,-222.75 441.5,-222.75 441.5,-222.75 435.5,-222.75 429.5,-216.75 429.5,-210.75 429.5,-210.75 429.5,-198.75 429.5,-198.75 429.5,-192.75 435.5,-186.75 441.5,-186.75 441.5,-186.75 688.5,-186.75 688.5,-186.75 694.5,-186.75 700.5,-192.75 700.5,-198.75 700.5,-198.75 700.5,-210.75 700.5,-210.75 700.5,-216.75 694.5,-222.75 688.5,-222.75"/>
|
|
193
|
-
<text xml:space="preserve" text-anchor="middle" x="565" y="-207.8" font-family="sans-Serif" font-size="11.00">SkillReview default recommend</text>
|
|
194
|
-
<text xml:space="preserve" text-anchor="middle" x="565" y="-194.3" font-family="sans-Serif" font-size="11.00">auto-safe limited to proven additions to existing SOPs</text>
|
|
195
|
-
</g>
|
|
196
|
-
<!-- Reward->Skill -->
|
|
197
|
-
<g id="edge20" class="edge">
|
|
198
|
-
<title>Reward->Skill</title>
|
|
199
|
-
<path fill="none" stroke="#94a3b8" d="M594.17,-275.03C588.61,-261.82 582.14,-246.47 576.72,-233.57"/>
|
|
200
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="579.95,-232.25 572.85,-224.39 573.5,-234.96 579.95,-232.25"/>
|
|
201
|
-
</g>
|
|
202
|
-
<!-- Weights -->
|
|
203
|
-
<g id="node16" class="node">
|
|
204
|
-
<title>Weights</title>
|
|
205
|
-
<path fill="#c4b5fd" stroke="#334155" d="M399.88,-229C399.88,-229 218.12,-229 218.12,-229 212.12,-229 206.12,-223 206.12,-217 206.12,-217 206.12,-192.5 206.12,-192.5 206.12,-186.5 212.12,-180.5 218.12,-180.5 218.12,-180.5 399.88,-180.5 399.88,-180.5 405.88,-180.5 411.88,-186.5 411.88,-192.5 411.88,-192.5 411.88,-217 411.88,-217 411.88,-223 405.88,-229 399.88,-229"/>
|
|
206
|
-
<text xml:space="preserve" text-anchor="middle" x="309" y="-214.55" font-family="sans-Serif" font-size="11.00">Curriculum export / optional trainer path</text>
|
|
207
|
-
<text xml:space="preserve" text-anchor="middle" x="309" y="-201.05" font-family="sans-Serif" font-size="11.00">separate from routing-policy promotion</text>
|
|
208
|
-
<text xml:space="preserve" text-anchor="middle" x="309" y="-187.55" font-family="sans-Serif" font-size="11.00">not proof that a live adapter improved</text>
|
|
123
|
+
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.3" d="M711.6,-570.2C711.6,-570.2 404.4,-570.2 404.4,-570.2 398.4,-570.2 392.4,-564.2 392.4,-558.2 392.4,-558.2 392.4,-505.16 392.4,-505.16 392.4,-499.16 398.4,-493.16 404.4,-493.16 404.4,-493.16 711.6,-493.16 711.6,-493.16 717.6,-493.16 723.6,-499.16 723.6,-505.16 723.6,-505.16 723.6,-558.2 723.6,-558.2 723.6,-564.2 717.6,-570.2 711.6,-570.2"/>
|
|
124
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-548.23" font-family="sans-Serif" font-size="11.00" fill="#0f172a">B  KEEP EVALUATION SPLITS SEPARATE</text>
|
|
125
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-534.73" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Optional Learning.regression_task: persisted verifier failure</text>
|
|
126
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-521.23" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Exact request digest + operator-authored file / JSON gold</text>
|
|
127
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-507.73" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Inert regression recipe; never relabel as held-out</text>
|
|
209
128
|
</g>
|
|
210
|
-
<!--
|
|
211
|
-
<g id="
|
|
212
|
-
<title>
|
|
213
|
-
<path fill="none" stroke="#94a3b8" d="
|
|
214
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="
|
|
215
|
-
<text xml:space="preserve" text-anchor="middle" x="485" y="-248.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">explicit opt-in</text>
|
|
216
|
-
</g>
|
|
217
|
-
<!-- Mistakes->Prompt -->
|
|
218
|
-
<g id="edge19" class="edge">
|
|
219
|
-
<title>Mistakes->Prompt</title>
|
|
220
|
-
<path fill="none" stroke="#94a3b8" stroke-dasharray="5,2" d="M245.1,-374.23C216.52,-333.6 166.74,-248.15 197,-180.5 205.31,-161.92 221.28,-146.25 236.62,-134.5"/>
|
|
221
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="238.25,-137.63 244.29,-128.92 234.14,-131.97 238.25,-137.63"/>
|
|
222
|
-
</g>
|
|
223
|
-
<!-- Policy->Prompt -->
|
|
224
|
-
<g id="edge23" class="edge">
|
|
225
|
-
<title>Policy->Prompt</title>
|
|
226
|
-
<path fill="none" stroke="#94a3b8" stroke-dasharray="5,2" d="M1043.57,-186.27C1028.59,-184.22 1013.44,-182.24 999,-180.5 798.61,-156.39 566.22,-135.2 419.9,-122.68"/>
|
|
227
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="420.41,-119.21 410.15,-121.84 419.82,-126.18 420.41,-119.21"/>
|
|
228
|
-
</g>
|
|
229
|
-
<!-- Eval -->
|
|
230
|
-
<g id="node13" class="node">
|
|
231
|
-
<title>Eval</title>
|
|
232
|
-
<path fill="#c4b5fd" stroke="#334155" d="M1513.62,-134C1513.62,-134 1312.38,-134 1312.38,-134 1306.38,-134 1300.38,-128 1300.38,-122 1300.38,-122 1300.38,-97.5 1300.38,-97.5 1300.38,-91.5 1306.38,-85.5 1312.38,-85.5 1312.38,-85.5 1513.62,-85.5 1513.62,-85.5 1519.62,-85.5 1525.62,-91.5 1525.62,-97.5 1525.62,-97.5 1525.62,-122 1525.62,-122 1525.62,-128 1519.62,-134 1513.62,-134"/>
|
|
233
|
-
<text xml:space="preserve" text-anchor="middle" x="1413" y="-119.55" font-family="sans-Serif" font-size="11.00">Frozen local snapshot evaluation</text>
|
|
234
|
-
<text xml:space="preserve" text-anchor="middle" x="1413" y="-106.05" font-family="sans-Serif" font-size="11.00">new HOME / off + baseline + candidate</text>
|
|
235
|
-
<text xml:space="preserve" text-anchor="middle" x="1413" y="-92.55" font-family="sans-Serif" font-size="11.00">public held-out tasks; no live LLM gain claim</text>
|
|
236
|
-
</g>
|
|
237
|
-
<!-- Policy->Eval -->
|
|
238
|
-
<g id="edge16" class="edge">
|
|
239
|
-
<title>Policy->Eval</title>
|
|
240
|
-
<path fill="none" stroke="#94a3b8" d="M1207.59,-186.26C1244.19,-172.8 1295.48,-153.95 1337.65,-138.45"/>
|
|
241
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="1338.84,-141.74 1347.02,-135.01 1336.42,-135.17 1338.84,-141.74"/>
|
|
242
|
-
<text xml:space="preserve" text-anchor="middle" x="1344.34" y="-153.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">explicit frozen snapshots</text>
|
|
129
|
+
<!-- Select->Regression -->
|
|
130
|
+
<g id="edge6" class="edge">
|
|
131
|
+
<title>Select->Regression</title>
|
|
132
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M558,-600.74C558,-594.19 558,-587.31 558,-580.54"/>
|
|
133
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="560.8,-580.72 558,-572.72 555.2,-580.72 560.8,-580.72"/>
|
|
243
134
|
</g>
|
|
244
|
-
<!--
|
|
245
|
-
<g id="
|
|
246
|
-
<title>
|
|
247
|
-
<path fill="
|
|
248
|
-
<
|
|
249
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
135
|
+
<!-- Evaluate -->
|
|
136
|
+
<g id="node9" class="node">
|
|
137
|
+
<title>Evaluate</title>
|
|
138
|
+
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.3" d="M711.6,-451.16C711.6,-451.16 404.4,-451.16 404.4,-451.16 398.4,-451.16 392.4,-445.16 392.4,-439.16 392.4,-439.16 392.4,-386.12 392.4,-386.12 392.4,-380.12 398.4,-374.12 404.4,-374.12 404.4,-374.12 711.6,-374.12 711.6,-374.12 717.6,-374.12 723.6,-380.12 723.6,-386.12 723.6,-386.12 723.6,-439.16 723.6,-439.16 723.6,-445.16 717.6,-451.16 711.6,-451.16"/>
|
|
139
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-429.19" font-family="sans-Serif" font-size="11.00" fill="#0f172a">C  EVALUATE LOCALLY</text>
|
|
140
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-415.69" font-family="sans-Serif" font-size="11.00" fill="#0f172a">PolicyEvaluation: disposable HOME + frozen bytes</text>
|
|
141
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-402.19" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Off / baseline / candidate; public fixed held-out tasks</text>
|
|
142
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-388.69" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Regression replay stays separate from held-out evidence</text>
|
|
143
|
+
</g>
|
|
144
|
+
<!-- Regression->Evaluate -->
|
|
145
|
+
<g id="edge7" class="edge">
|
|
146
|
+
<title>Regression->Evaluate</title>
|
|
147
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M558,-492.68C558,-482.67 558,-471.73 558,-461.28"/>
|
|
148
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="560.8,-461.42 558,-453.42 555.2,-461.42 560.8,-461.42"/>
|
|
149
|
+
<text xml:space="preserve" text-anchor="middle" x="624" y="-468.66" font-family="sans-Serif" font-size="10.00" fill="#cbd5e1">reviewed inputs; distinct splits</text>
|
|
250
150
|
</g>
|
|
251
151
|
<!-- Promote -->
|
|
252
|
-
<g id="
|
|
152
|
+
<g id="node10" class="node">
|
|
253
153
|
<title>Promote</title>
|
|
254
|
-
<path fill="#
|
|
255
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
256
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
257
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
154
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.3" d="M711.6,-332.12C711.6,-332.12 404.4,-332.12 404.4,-332.12 398.4,-332.12 392.4,-326.12 392.4,-320.12 392.4,-320.12 392.4,-267.08 392.4,-267.08 392.4,-261.08 398.4,-255.08 404.4,-255.08 404.4,-255.08 711.6,-255.08 711.6,-255.08 717.6,-255.08 723.6,-261.08 723.6,-267.08 723.6,-267.08 723.6,-320.12 723.6,-320.12 723.6,-326.12 717.6,-332.12 711.6,-332.12"/>
|
|
155
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-310.15" font-family="sans-Serif" font-size="11.00" fill="#0f172a">D  GATE + EXPLICITLY PROMOTE</text>
|
|
156
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-296.65" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Fresh replay; per-task + aggregate nonregression</text>
|
|
157
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-283.15" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Held-out gain; both filesystem environments</text>
|
|
158
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-269.65" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Approval + stopped writers + explicit live policy target</text>
|
|
258
159
|
</g>
|
|
259
|
-
<!--
|
|
260
|
-
<g id="
|
|
261
|
-
<title>
|
|
262
|
-
<path fill="none" stroke="#94a3b8" d="
|
|
263
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="
|
|
160
|
+
<!-- Evaluate->Promote -->
|
|
161
|
+
<g id="edge8" class="edge">
|
|
162
|
+
<title>Evaluate->Promote</title>
|
|
163
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" stroke-dasharray="5,2" d="M558,-373.64C558,-363.63 558,-352.69 558,-342.24"/>
|
|
164
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="560.8,-342.38 558,-334.38 555.2,-342.38 560.8,-342.38"/>
|
|
165
|
+
<text xml:space="preserve" text-anchor="middle" x="596.62" y="-349.62" font-family="sans-Serif" font-size="10.00" fill="#cbd5e1">acceptance gates</text>
|
|
264
166
|
</g>
|
|
265
|
-
<!--
|
|
266
|
-
<g id="
|
|
267
|
-
<title>
|
|
268
|
-
<path fill="
|
|
269
|
-
<
|
|
270
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
167
|
+
<!-- Receipt -->
|
|
168
|
+
<g id="node11" class="node">
|
|
169
|
+
<title>Receipt</title>
|
|
170
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.3" d="M711.6,-213.08C711.6,-213.08 404.4,-213.08 404.4,-213.08 398.4,-213.08 392.4,-207.08 392.4,-201.08 392.4,-201.08 392.4,-148.04 392.4,-148.04 392.4,-142.04 398.4,-136.04 404.4,-136.04 404.4,-136.04 711.6,-136.04 711.6,-136.04 717.6,-136.04 723.6,-142.04 723.6,-148.04 723.6,-148.04 723.6,-201.08 723.6,-201.08 723.6,-207.08 717.6,-213.08 711.6,-213.08"/>
|
|
171
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-191.11" font-family="sans-Serif" font-size="11.00" fill="#0f172a">E  VERSION + RETAIN ROLLBACK EVIDENCE</text>
|
|
172
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-177.61" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Routing-policy replacement only; versioned receipt</text>
|
|
173
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-164.11" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Digest-bound rollback refuses intervening live writes</text>
|
|
174
|
+
<text xml:space="preserve" text-anchor="middle" x="558" y="-150.61" font-family="sans-Serif" font-size="11.00" fill="#0f172a">No claim of general live LLM improvement</text>
|
|
175
|
+
</g>
|
|
176
|
+
<!-- Promote->Receipt -->
|
|
177
|
+
<g id="edge9" class="edge">
|
|
178
|
+
<title>Promote->Receipt</title>
|
|
179
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M558,-254.6C558,-244.59 558,-233.65 558,-223.2"/>
|
|
180
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="560.8,-223.34 558,-215.34 555.2,-223.34 560.8,-223.34"/>
|
|
181
|
+
<text xml:space="preserve" text-anchor="middle" x="639.38" y="-230.58" font-family="sans-Serif" font-size="10.00" fill="#cbd5e1">only after approval and passing gates</text>
|
|
271
182
|
</g>
|
|
272
|
-
<!--
|
|
273
|
-
<g id="
|
|
274
|
-
<title>
|
|
275
|
-
<path fill="
|
|
276
|
-
<
|
|
183
|
+
<!-- Trainer -->
|
|
184
|
+
<g id="node12" class="node">
|
|
185
|
+
<title>Trainer</title>
|
|
186
|
+
<path fill="#1e293b" stroke="#334155" stroke-width="1.3" stroke-dasharray="5,2" d="M708.6,-93.04C708.6,-93.04 401.4,-93.04 401.4,-93.04 395.4,-93.04 389.4,-87.04 389.4,-81.04 389.4,-81.04 389.4,-28 389.4,-28 389.4,-22 395.4,-16 401.4,-16 401.4,-16 708.6,-16 708.6,-16 714.6,-16 720.6,-22 720.6,-28 720.6,-28 720.6,-81.04 720.6,-81.04 720.6,-87.04 714.6,-93.04 708.6,-93.04"/>
|
|
187
|
+
<text xml:space="preserve" text-anchor="middle" x="555" y="-71.07" font-family="sans-Serif" font-size="11.00" fill="#cbd5e1">SEPARATE OPTIONAL WEIGHT PATH</text>
|
|
188
|
+
<text xml:space="preserve" text-anchor="middle" x="555" y="-57.57" font-family="sans-Serif" font-size="11.00" fill="#cbd5e1">Curriculum export / configured trainer is opt-in</text>
|
|
189
|
+
<text xml:space="preserve" text-anchor="middle" x="555" y="-44.07" font-family="sans-Serif" font-size="11.00" fill="#cbd5e1">Not routing-policy promotion or proof of adapter gains</text>
|
|
190
|
+
<text xml:space="preserve" text-anchor="middle" x="555" y="-30.57" font-family="sans-Serif" font-size="11.00" fill="#cbd5e1">Scheduled curriculum jobs are disabled by default</text>
|
|
277
191
|
</g>
|
|
278
192
|
</g>
|
|
279
193
|
</svg>
|