pwn 0.5.618 → 0.5.620
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/Gemfile +2 -2
- data/README.md +14 -6
- data/bin/pwn_gqrx_scanner +25 -5
- data/documentation/Agent-Tool-Registry.md +3 -3
- data/documentation/Diagrams.md +6 -2
- data/documentation/Extrospection.md +30 -11
- data/documentation/Home.md +5 -4
- data/documentation/How-PWN-Works.md +7 -4
- data/documentation/Mistakes.md +96 -0
- data/documentation/Persistence.md +3 -1
- data/documentation/SDR.md +23 -5
- data/documentation/Skills-Memory-Learning.md +15 -5
- data/documentation/diagrams/agent-tool-registry.svg +94 -92
- data/documentation/diagrams/dot/agent-tool-registry.dot +2 -2
- data/documentation/diagrams/dot/extrospection-world-awareness.dot +9 -7
- data/documentation/diagrams/dot/memory-skills-detailed.dot +12 -5
- data/documentation/diagrams/dot/mistakes-negative-feedback.dot +93 -0
- data/documentation/diagrams/dot/overall-pwn-architecture.dot +7 -5
- data/documentation/diagrams/dot/persistence-filesystem.dot +3 -2
- data/documentation/diagrams/dot/pwn-ai-feedback-learning-loop.dot +19 -7
- data/documentation/diagrams/dot/sdr-radio-flow.dot +13 -11
- data/documentation/diagrams/extrospection-world-awareness.svg +111 -93
- data/documentation/diagrams/memory-skills-detailed.svg +146 -97
- data/documentation/diagrams/mistakes-negative-feedback.svg +266 -0
- data/documentation/diagrams/overall-pwn-architecture.svg +184 -173
- data/documentation/diagrams/persistence-filesystem.svg +77 -62
- data/documentation/diagrams/pwn-ai-feedback-learning-loop.svg +217 -149
- data/documentation/diagrams/sdr-radio-flow.svg +76 -56
- data/documentation/pwn-ai-Agent.md +28 -15
- data/lib/pwn/ai/agent/extrospection.rb +65 -6
- data/lib/pwn/ai/agent/learning.rb +67 -7
- data/lib/pwn/ai/agent/loop.rb +72 -6
- data/lib/pwn/ai/agent/mistakes.rb +369 -0
- data/lib/pwn/ai/agent/prompt_builder.rb +10 -1
- data/lib/pwn/ai/agent/tools/extrospection.rb +2 -2
- data/lib/pwn/ai/agent/tools/mistakes.rb +132 -0
- data/lib/pwn/ai/agent.rb +1 -0
- data/lib/pwn/plugins/jira_data_center.rb +2 -2
- data/lib/pwn/sdr/decoder/adsb.rb +101 -0
- data/lib/pwn/sdr/decoder/apt.rb +75 -0
- data/lib/pwn/sdr/decoder/bluetooth.rb +78 -0
- data/lib/pwn/sdr/decoder/dect.rb +84 -0
- data/lib/pwn/sdr/decoder/gps.rb +83 -0
- data/lib/pwn/sdr/decoder/gsm.rb +50 -29
- data/lib/pwn/sdr/decoder/iridium.rb +81 -0
- data/lib/pwn/sdr/decoder/lora.rb +87 -0
- data/lib/pwn/sdr/decoder/lte.rb +88 -0
- data/lib/pwn/sdr/decoder/morse.rb +64 -0
- data/lib/pwn/sdr/decoder/p25.rb +71 -0
- data/lib/pwn/sdr/decoder/pager.rb +77 -0
- data/lib/pwn/sdr/decoder/pocsag.rb +26 -11
- data/lib/pwn/sdr/decoder/rfid.rb +88 -0
- data/lib/pwn/sdr/decoder/rtl433.rb +95 -0
- data/lib/pwn/sdr/decoder/rtty.rb +66 -0
- data/lib/pwn/sdr/decoder/wifi.rb +98 -0
- data/lib/pwn/sdr/decoder/zigbee.rb +96 -0
- data/lib/pwn/sdr/decoder.rb +67 -7
- data/lib/pwn/sdr/frequency_allocation.rb +82 -41
- data/lib/pwn/sdr/gqrx.rb +186 -95
- data/lib/pwn/version.rb +1 -1
- data/spec/lib/pwn/ai/agent/mistakes_spec.rb +36 -0
- data/spec/lib/pwn/ai/agent/tools/mistakes_spec.rb +12 -0
- data/spec/lib/pwn/sdr/decoder/adsb_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/apt_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/bluetooth_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/dect_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/gps_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/iridium_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/lora_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/lte_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/morse_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/p25_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/pager_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/rfid_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/rtl433_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/rtty_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/wifi_spec.rb +15 -0
- data/spec/lib/pwn/sdr/decoder/zigbee_spec.rb +15 -0
- data/third_party/pwn_rdoc.jsonl +92 -3
- metadata +44 -6
- data/README.md.bak +0 -200
|
@@ -4,303 +4,371 @@
|
|
|
4
4
|
<!-- Generated by graphviz version 14.1.2 (0)
|
|
5
5
|
-->
|
|
6
6
|
<!-- Title: PWN_AI_Feedback_Learning_Loop Pages: 1 -->
|
|
7
|
-
<svg width="
|
|
8
|
-
viewBox="0.00 0.00
|
|
9
|
-
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(43.2
|
|
7
|
+
<svg width="1658pt" height="723pt"
|
|
8
|
+
viewBox="0.00 0.00 1658.00 723.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(43.2 679.95)">
|
|
10
10
|
<title>PWN_AI_Feedback_Learning_Loop</title>
|
|
11
|
-
<polygon fill="#0f172a" stroke="none" points="-43.2,43.2 -43.2,-
|
|
12
|
-
<text xml:space="preserve" text-anchor="start" x="
|
|
13
|
-
<text xml:space="preserve" text-anchor="start" x="
|
|
11
|
+
<polygon fill="#0f172a" stroke="none" points="-43.2,43.2 -43.2,-679.95 1614.99,-679.95 1614.99,43.2 -43.2,43.2"/>
|
|
12
|
+
<text xml:space="preserve" text-anchor="start" x="592.4" y="-614.75" font-family="sans-Serif" font-weight="bold" font-size="20.00" fill="#e2e8f0">pwn-ai — Closed Self-Improvement Loop</text>
|
|
13
|
+
<text xml:space="preserve" text-anchor="start" x="599.52" y="-603.3" font-family="sans-Serif" font-size="11.00" fill="#94a3b8">Introspection (self)  ⟷  Extrospection (world)  ·  Mistakes (negative feedback)</text>
|
|
14
14
|
<g id="clust2" class="cluster">
|
|
15
15
|
<title>cluster_core</title>
|
|
16
|
-
<path fill="#2e1065" stroke="#6d28d9" stroke-width="2" d="
|
|
17
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
16
|
+
<path fill="#2e1065" stroke="#6d28d9" stroke-width="2" d="M131.59,-424C131.59,-424 468.59,-424 468.59,-424 474.59,-424 480.59,-430 480.59,-436 480.59,-436 480.59,-495.25 480.59,-495.25 480.59,-501.25 474.59,-507.25 468.59,-507.25 468.59,-507.25 131.59,-507.25 131.59,-507.25 125.59,-507.25 119.59,-501.25 119.59,-495.25 119.59,-495.25 119.59,-436 119.59,-436 119.59,-430 125.59,-424 131.59,-424"/>
|
|
17
|
+
<text xml:space="preserve" text-anchor="middle" x="300.09" y="-484.25" font-family="sans-Serif" font-size="20.00" fill="#ddd6fe">PWN::AI::Agent::Loop</text>
|
|
18
18
|
</g>
|
|
19
19
|
<g id="clust4" class="cluster">
|
|
20
20
|
<title>cluster_intro</title>
|
|
21
|
-
<path fill="#022c22" stroke="#047857" stroke-width="2" d="
|
|
22
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
21
|
+
<path fill="#022c22" stroke="#047857" stroke-width="2" d="M416.59,-257.75C416.59,-257.75 928.59,-257.75 928.59,-257.75 934.59,-257.75 940.59,-263.75 940.59,-269.75 940.59,-269.75 940.59,-355 940.59,-355 940.59,-361 934.59,-367 928.59,-367 928.59,-367 416.59,-367 416.59,-367 410.59,-367 404.59,-361 404.59,-355 404.59,-355 404.59,-269.75 404.59,-269.75 404.59,-263.75 410.59,-257.75 416.59,-257.75"/>
|
|
22
|
+
<text xml:space="preserve" text-anchor="middle" x="672.59" y="-344" font-family="sans-Serif" font-size="20.00" fill="#a7f3d0">INTROSPECTION  (self)</text>
|
|
23
23
|
</g>
|
|
24
24
|
<g id="clust5" class="cluster">
|
|
25
25
|
<title>cluster_extro</title>
|
|
26
|
-
<path fill="#422006" stroke="#a16207" stroke-width="2" d="
|
|
27
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
26
|
+
<path fill="#422006" stroke="#a16207" stroke-width="2" d="M106.59,-264.5C106.59,-264.5 365.59,-264.5 365.59,-264.5 371.59,-264.5 377.59,-270.5 377.59,-276.5 377.59,-276.5 377.59,-348.25 377.59,-348.25 377.59,-354.25 371.59,-360.25 365.59,-360.25 365.59,-360.25 106.59,-360.25 106.59,-360.25 100.59,-360.25 94.59,-354.25 94.59,-348.25 94.59,-348.25 94.59,-276.5 94.59,-276.5 94.59,-270.5 100.59,-264.5 106.59,-264.5"/>
|
|
27
|
+
<text xml:space="preserve" text-anchor="middle" x="236.09" y="-337.25" font-family="sans-Serif" font-size="20.00" fill="#fde68a">EXTROSPECTION  (world)</text>
|
|
28
28
|
</g>
|
|
29
29
|
<g id="clust7" class="cluster">
|
|
30
30
|
<title>cluster_store</title>
|
|
31
|
-
<path fill="#1e293b" stroke="#334155" stroke-dasharray="5,2" d="
|
|
32
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
31
|
+
<path fill="#1e293b" stroke="#334155" stroke-dasharray="5,2" d="M318.59,-8C318.59,-8 1002.59,-8 1002.59,-8 1008.59,-8 1014.59,-14 1014.59,-20 1014.59,-20 1014.59,-79.25 1014.59,-79.25 1014.59,-85.25 1008.59,-91.25 1002.59,-91.25 1002.59,-91.25 318.59,-91.25 318.59,-91.25 312.59,-91.25 306.59,-85.25 306.59,-79.25 306.59,-79.25 306.59,-20 306.59,-20 306.59,-14 312.59,-8 318.59,-8"/>
|
|
32
|
+
<text xml:space="preserve" text-anchor="middle" x="660.59" y="-68.25" font-family="sans-Serif" font-size="20.00" fill="#94a3b8">~/.pwn/</text>
|
|
33
33
|
</g>
|
|
34
34
|
<!-- User -->
|
|
35
35
|
<g id="node1" class="node">
|
|
36
36
|
<title>User</title>
|
|
37
|
-
<path fill="#7dd3fc" stroke="#334155" stroke-width="1.4" d="
|
|
38
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
37
|
+
<path fill="#7dd3fc" stroke="#334155" stroke-width="1.4" d="M329.47,-597.75C329.47,-597.75 261.72,-597.75 261.72,-597.75 255.72,-597.75 249.72,-591.75 249.72,-585.75 249.72,-585.75 249.72,-573.75 249.72,-573.75 249.72,-567.75 255.72,-561.75 261.72,-561.75 261.72,-561.75 329.47,-561.75 329.47,-561.75 335.47,-561.75 341.47,-567.75 341.47,-573.75 341.47,-573.75 341.47,-585.75 341.47,-585.75 341.47,-591.75 335.47,-597.75 329.47,-597.75"/>
|
|
38
|
+
<text xml:space="preserve" text-anchor="middle" x="295.59" y="-576.05" font-family="sans-Serif" font-size="11.00" fill="#0f172a">👤  Researcher</text>
|
|
39
39
|
</g>
|
|
40
40
|
<!-- Prompt -->
|
|
41
41
|
<g id="node4" class="node">
|
|
42
42
|
<title>Prompt</title>
|
|
43
|
-
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.4" d="
|
|
44
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
45
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
43
|
+
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.4" d="M317.09,-468C317.09,-468 256.09,-468 256.09,-468 250.09,-468 244.09,-462 244.09,-456 244.09,-456 244.09,-444 244.09,-444 244.09,-438 250.09,-432 256.09,-432 256.09,-432 317.09,-432 317.09,-432 323.09,-432 329.09,-438 329.09,-444 329.09,-444 329.09,-456 329.09,-456 329.09,-462 323.09,-468 317.09,-468"/>
|
|
44
|
+
<text xml:space="preserve" text-anchor="middle" x="286.59" y="-453.05" font-family="sans-Serif" font-size="11.00" fill="#0f172a">PromptBuilder</text>
|
|
45
|
+
<text xml:space="preserve" text-anchor="middle" x="286.59" y="-439.55" font-family="sans-Serif" font-size="11.00" fill="#0f172a">inject context</text>
|
|
46
46
|
</g>
|
|
47
47
|
<!-- User->Prompt -->
|
|
48
48
|
<g id="edge1" class="edge">
|
|
49
49
|
<title>User->Prompt</title>
|
|
50
|
-
<path fill="none" stroke="#38bdf8" stroke-width="2" d="
|
|
51
|
-
<polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="2" points="
|
|
52
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
50
|
+
<path fill="none" stroke="#38bdf8" stroke-width="2" d="M294.36,-561.25C292.87,-540.16 290.36,-504.42 288.59,-479.36"/>
|
|
51
|
+
<polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="2" points="291.41,-479.5 288.05,-471.71 285.82,-479.89 291.41,-479.5"/>
|
|
52
|
+
<text xml:space="preserve" text-anchor="middle" x="299.88" y="-517.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">task</text>
|
|
53
|
+
</g>
|
|
54
|
+
<!-- Mistakes -->
|
|
55
|
+
<g id="node9" class="node">
|
|
56
|
+
<title>Mistakes</title>
|
|
57
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="2" d="M751.84,-327.75C751.84,-327.75 605.34,-327.75 605.34,-327.75 599.34,-327.75 593.34,-321.75 593.34,-315.75 593.34,-315.75 593.34,-277.75 593.34,-277.75 593.34,-271.75 599.34,-265.75 605.34,-265.75 605.34,-265.75 751.84,-265.75 751.84,-265.75 757.84,-265.75 763.84,-271.75 763.84,-277.75 763.84,-277.75 763.84,-315.75 763.84,-315.75 763.84,-321.75 757.84,-327.75 751.84,-327.75"/>
|
|
58
|
+
<text xml:space="preserve" text-anchor="middle" x="678.59" y="-313.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Mistakes</text>
|
|
59
|
+
<text xml:space="preserve" text-anchor="middle" x="678.59" y="-299.8" font-family="sans-Serif" font-size="11.00" fill="#0f172a">record · resolve</text>
|
|
60
|
+
<text xml:space="preserve" text-anchor="middle" x="678.59" y="-286.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">guard · correction_hint</text>
|
|
61
|
+
<text xml:space="preserve" text-anchor="middle" x="678.59" y="-272.8" font-family="sans-Serif" font-size="11.00" fill="#0f172a">[REPEATING] · [REGRESSED]</text>
|
|
62
|
+
</g>
|
|
63
|
+
<!-- User->Mistakes -->
|
|
64
|
+
<g id="edge9" class="edge">
|
|
65
|
+
<title>User->Mistakes</title>
|
|
66
|
+
<path fill="none" stroke="#fb7185" stroke-width="1.3" stroke-dasharray="5,2" d="M249.08,-567.02C169.94,-547.04 17.5,-508.42 16.59,-507.25 -6.09,-478.02 -4.75,-454.22 16.59,-424 54.13,-370.83 90.56,-386.66 154.59,-375 200.19,-366.7 527.28,-380.55 571.59,-367 594,-360.15 616.17,-347.12 634.47,-334.19"/>
|
|
67
|
+
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="1.3" points="635.65,-336.8 640.48,-329.84 632.36,-332.27 635.65,-336.8"/>
|
|
68
|
+
<text xml:space="preserve" text-anchor="middle" x="63.09" y="-451.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">"that's wrong"</text>
|
|
69
|
+
<text xml:space="preserve" text-anchor="middle" x="63.09" y="-441.45" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">check_user_correction</text>
|
|
53
70
|
</g>
|
|
54
71
|
<!-- LLM -->
|
|
55
72
|
<g id="node2" class="node">
|
|
56
73
|
<title>LLM</title>
|
|
57
|
-
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.4" d="
|
|
58
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
74
|
+
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.4" d="M481.59,-597.75C481.59,-597.75 405.59,-597.75 405.59,-597.75 399.59,-597.75 393.59,-591.75 393.59,-585.75 393.59,-585.75 393.59,-573.75 393.59,-573.75 393.59,-567.75 399.59,-561.75 405.59,-561.75 405.59,-561.75 481.59,-561.75 481.59,-561.75 487.59,-561.75 493.59,-567.75 493.59,-573.75 493.59,-573.75 493.59,-585.75 493.59,-585.75 493.59,-591.75 487.59,-597.75 481.59,-597.75"/>
|
|
75
|
+
<text xml:space="preserve" text-anchor="middle" x="443.59" y="-576.05" font-family="sans-Serif" font-size="11.00" fill="#0f172a">🤖  LLM Provider</text>
|
|
59
76
|
</g>
|
|
60
77
|
<!-- Dispatch -->
|
|
61
78
|
<g id="node5" class="node">
|
|
62
79
|
<title>Dispatch</title>
|
|
63
|
-
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.4" d="
|
|
64
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
65
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
80
|
+
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.4" d="M460.59,-468C460.59,-468 426.59,-468 426.59,-468 420.59,-468 414.59,-462 414.59,-456 414.59,-456 414.59,-444 414.59,-444 414.59,-438 420.59,-432 426.59,-432 426.59,-432 460.59,-432 460.59,-432 466.59,-432 472.59,-438 472.59,-444 472.59,-444 472.59,-456 472.59,-456 472.59,-462 466.59,-468 460.59,-468"/>
|
|
81
|
+
<text xml:space="preserve" text-anchor="middle" x="443.59" y="-453.05" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Dispatch</text>
|
|
82
|
+
<text xml:space="preserve" text-anchor="middle" x="443.59" y="-439.55" font-family="sans-Serif" font-size="11.00" fill="#0f172a">tool calls</text>
|
|
66
83
|
</g>
|
|
67
84
|
<!-- LLM->Dispatch -->
|
|
68
85
|
<g id="edge2" class="edge">
|
|
69
86
|
<title>LLM->Dispatch</title>
|
|
70
|
-
<path fill="none" stroke="#a78bfa" stroke-width="2" d="
|
|
71
|
-
<polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="2" points="
|
|
72
|
-
<polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="2" points="
|
|
73
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
87
|
+
<path fill="none" stroke="#a78bfa" stroke-width="2" d="M440.4,-550.18C439.65,-542.28 438.97,-533.69 438.59,-525.75 437.87,-510.42 438.88,-493.35 440.17,-479.39"/>
|
|
88
|
+
<polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="2" points="437.61,-550.42 441.21,-558.1 443.18,-549.86 437.61,-550.42"/>
|
|
89
|
+
<polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="2" points="442.95,-479.77 440.98,-471.52 437.38,-479.19 442.95,-479.77"/>
|
|
90
|
+
<text xml:space="preserve" text-anchor="middle" x="458.09" y="-517.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">tool_calls</text>
|
|
74
91
|
</g>
|
|
75
92
|
<!-- World -->
|
|
76
93
|
<g id="node3" class="node">
|
|
77
94
|
<title>World</title>
|
|
78
|
-
<path fill="#fda4af" stroke="#334155" stroke-width="1.4" d="
|
|
79
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
80
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
95
|
+
<path fill="#fda4af" stroke="#334155" stroke-width="1.4" d="M194.34,-597.75C194.34,-597.75 98.84,-597.75 98.84,-597.75 92.84,-597.75 86.84,-591.75 86.84,-585.75 86.84,-585.75 86.84,-573.75 86.84,-573.75 86.84,-567.75 92.84,-561.75 98.84,-561.75 98.84,-561.75 194.34,-561.75 194.34,-561.75 200.34,-561.75 206.34,-567.75 206.34,-573.75 206.34,-573.75 206.34,-585.75 206.34,-585.75 206.34,-591.75 200.34,-597.75 194.34,-597.75"/>
|
|
96
|
+
<text xml:space="preserve" text-anchor="middle" x="146.59" y="-582.8" font-family="sans-Serif" font-size="11.00" fill="#0f172a">🌍  Host · Net · Repo</text>
|
|
97
|
+
<text xml:space="preserve" text-anchor="middle" x="146.59" y="-569.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Toolchain · RF · Intel</text>
|
|
81
98
|
</g>
|
|
82
99
|
<!-- Result -->
|
|
83
100
|
<g id="node6" class="node">
|
|
84
101
|
<title>Result</title>
|
|
85
|
-
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.4" d="
|
|
86
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
87
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
102
|
+
<path fill="#c4b5fd" stroke="#334155" stroke-width="1.4" d="M189.47,-468C189.47,-468 139.72,-468 139.72,-468 133.72,-468 127.72,-462 127.72,-456 127.72,-456 127.72,-444 127.72,-444 127.72,-438 133.72,-432 139.72,-432 139.72,-432 189.47,-432 189.47,-432 195.47,-432 201.47,-438 201.47,-444 201.47,-444 201.47,-456 201.47,-456 201.47,-462 195.47,-468 189.47,-468"/>
|
|
103
|
+
<text xml:space="preserve" text-anchor="middle" x="164.59" y="-453.05" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Result</text>
|
|
104
|
+
<text xml:space="preserve" text-anchor="middle" x="164.59" y="-439.55" font-family="sans-Serif" font-size="11.00" fill="#0f172a">final answer</text>
|
|
88
105
|
</g>
|
|
89
106
|
<!-- World->Result -->
|
|
90
107
|
<!-- Snapshot -->
|
|
91
|
-
<g id="
|
|
108
|
+
<g id="node10" class="node">
|
|
92
109
|
<title>Snapshot</title>
|
|
93
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="
|
|
94
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
95
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
110
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="M357.59,-321C357.59,-321 281.59,-321 281.59,-321 275.59,-321 269.59,-315 269.59,-309 269.59,-309 269.59,-284.5 269.59,-284.5 269.59,-278.5 275.59,-272.5 281.59,-272.5 281.59,-272.5 357.59,-272.5 357.59,-272.5 363.59,-272.5 369.59,-278.5 369.59,-284.5 369.59,-284.5 369.59,-309 369.59,-309 369.59,-315 363.59,-321 357.59,-321"/>
|
|
111
|
+
<text xml:space="preserve" text-anchor="middle" x="319.59" y="-306.55" font-family="sans-Serif" font-size="11.00" fill="#0f172a">snapshot · drift</text>
|
|
112
|
+
<text xml:space="preserve" text-anchor="middle" x="319.59" y="-293.05" font-family="sans-Serif" font-size="11.00" fill="#0f172a">host/net/toolchain</text>
|
|
113
|
+
<text xml:space="preserve" text-anchor="middle" x="319.59" y="-279.55" font-family="sans-Serif" font-size="11.00" fill="#0f172a">repo/env/rf</text>
|
|
96
114
|
</g>
|
|
97
115
|
<!-- World->Snapshot -->
|
|
98
|
-
<g id="
|
|
116
|
+
<g id="edge12" class="edge">
|
|
99
117
|
<title>World->Snapshot</title>
|
|
100
|
-
<path fill="none" stroke="#fb7185" stroke-width="1.3" d="
|
|
101
|
-
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="1.3" points="
|
|
118
|
+
<path fill="none" stroke="#fb7185" stroke-width="1.3" d="M206.94,-565.64C214.22,-564.24 221.56,-562.9 228.59,-561.75 294.2,-550.99 476.64,-570.73 525.59,-525.75 575.71,-479.7 599.49,-424.33 552.59,-375 540.48,-362.26 410.8,-373.81 394.59,-367 375.12,-358.81 357.52,-343.23 344.27,-328.92"/>
|
|
119
|
+
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="1.3" points="346.47,-327.18 339.06,-323.07 342.28,-330.9 346.47,-327.18"/>
|
|
102
120
|
</g>
|
|
103
121
|
<!-- Observe -->
|
|
104
|
-
<g id="
|
|
122
|
+
<g id="node11" class="node">
|
|
105
123
|
<title>Observe</title>
|
|
106
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="
|
|
107
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
108
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
124
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="M214.97,-314.75C214.97,-314.75 114.22,-314.75 114.22,-314.75 108.22,-314.75 102.22,-308.75 102.22,-302.75 102.22,-302.75 102.22,-290.75 102.22,-290.75 102.22,-284.75 108.22,-278.75 114.22,-278.75 114.22,-278.75 214.97,-278.75 214.97,-278.75 220.97,-278.75 226.97,-284.75 226.97,-290.75 226.97,-290.75 226.97,-302.75 226.97,-302.75 226.97,-308.75 220.97,-314.75 214.97,-314.75"/>
|
|
125
|
+
<text xml:space="preserve" text-anchor="middle" x="164.59" y="-299.8" font-family="sans-Serif" font-size="11.00" fill="#0f172a">observe · intel</text>
|
|
126
|
+
<text xml:space="preserve" text-anchor="middle" x="164.59" y="-286.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">recon facts · CVE feed</text>
|
|
109
127
|
</g>
|
|
110
128
|
<!-- World->Observe -->
|
|
111
|
-
<g id="
|
|
129
|
+
<g id="edge13" class="edge">
|
|
112
130
|
<title>World->Observe</title>
|
|
113
|
-
<path fill="none" stroke="#fb7185" stroke-width="1.3" d="
|
|
114
|
-
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="1.3" points="
|
|
131
|
+
<path fill="none" stroke="#fb7185" stroke-width="1.3" d="M206.91,-565.44C214.19,-564.07 221.55,-562.8 228.59,-561.75 271.74,-555.31 590.19,-557.98 619.59,-525.75 635.69,-508.11 806.02,-559.02 601.59,-375 587.01,-361.88 266.98,-373.84 248.59,-367 224.01,-357.86 201.4,-338.28 185.85,-322.27"/>
|
|
132
|
+
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="1.3" points="188.08,-320.56 180.56,-316.65 184,-324.39 188.08,-320.56"/>
|
|
115
133
|
</g>
|
|
116
134
|
<!-- Prompt->Dispatch -->
|
|
117
135
|
<g id="edge4" class="edge">
|
|
118
136
|
<title>Prompt->Dispatch</title>
|
|
119
|
-
<path fill="none" stroke="#a78bfa" stroke-width="1.3" d="
|
|
120
|
-
<polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="1.3" points="
|
|
137
|
+
<path fill="none" stroke="#a78bfa" stroke-width="1.3" d="M329.52,-450C354.44,-450 379.35,-450 404.26,-450"/>
|
|
138
|
+
<polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="1.3" points="404.22,-452.8 412.22,-450 404.22,-447.2 404.22,-452.8"/>
|
|
121
139
|
</g>
|
|
122
140
|
<!-- Dispatch->Result -->
|
|
123
141
|
<g id="edge5" class="edge">
|
|
124
142
|
<title>Dispatch->Result</title>
|
|
125
|
-
<path fill="none" stroke="#a78bfa" stroke-width="1.3" d="
|
|
126
|
-
<polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="1.3" points="
|
|
143
|
+
<path fill="none" stroke="#a78bfa" stroke-width="1.3" d="M426.28,-468.49C405.51,-489.19 368.52,-521.53 329.09,-534.5 293.21,-546.31 278.77,-549.49 244.09,-534.5 217.08,-522.82 195,-496.95 181.03,-476.88"/>
|
|
144
|
+
<polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="1.3" points="183.42,-475.42 176.64,-470.33 178.76,-478.54 183.42,-475.42"/>
|
|
127
145
|
</g>
|
|
128
146
|
<!-- Metrics -->
|
|
129
147
|
<g id="node7" class="node">
|
|
130
148
|
<title>Metrics</title>
|
|
131
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.4" d="
|
|
132
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
133
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
149
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.4" d="M538.34,-314.75C538.34,-314.75 424.84,-314.75 424.84,-314.75 418.84,-314.75 412.84,-308.75 412.84,-302.75 412.84,-302.75 412.84,-290.75 412.84,-290.75 412.84,-284.75 418.84,-278.75 424.84,-278.75 424.84,-278.75 538.34,-278.75 538.34,-278.75 544.34,-278.75 550.34,-284.75 550.34,-290.75 550.34,-290.75 550.34,-302.75 550.34,-302.75 550.34,-308.75 544.34,-314.75 538.34,-314.75"/>
|
|
150
|
+
<text xml:space="preserve" text-anchor="middle" x="481.59" y="-299.8" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Metrics</text>
|
|
151
|
+
<text xml:space="preserve" text-anchor="middle" x="481.59" y="-286.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">per-tool success · avg ms</text>
|
|
134
152
|
</g>
|
|
135
153
|
<!-- Dispatch->Metrics -->
|
|
136
154
|
<g id="edge6" class="edge">
|
|
137
155
|
<title>Dispatch->Metrics</title>
|
|
138
|
-
<path fill="none" stroke="#34d399" stroke-width="1.3" d="
|
|
139
|
-
<polygon fill="#34d399" stroke="#34d399" stroke-width="1.3" points="
|
|
140
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
156
|
+
<path fill="none" stroke="#34d399" stroke-width="1.3" d="M422.8,-431.36C408.23,-416.73 392.77,-395.15 401.34,-375 410.6,-353.24 429.32,-334.64 446.36,-321.15"/>
|
|
157
|
+
<polygon fill="#34d399" stroke="#34d399" stroke-width="1.3" points="447.78,-323.58 452.46,-316.51 444.39,-319.13 447.78,-323.58"/>
|
|
158
|
+
<text xml:space="preserve" text-anchor="middle" x="417.47" y="-382.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">record()</text>
|
|
141
159
|
</g>
|
|
142
|
-
<!-- Dispatch->
|
|
160
|
+
<!-- Dispatch->Mistakes -->
|
|
143
161
|
<g id="edge8" class="edge">
|
|
162
|
+
<title>Dispatch->Mistakes</title>
|
|
163
|
+
<path fill="none" stroke="#fb7185" stroke-width="2" d="M473.21,-448.45C542.47,-446.46 711.81,-437.4 746.59,-396 762.37,-377.23 749.08,-354.84 730.2,-336.18"/>
|
|
164
|
+
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="2" points="732.12,-334.15 724.35,-330.76 728.31,-338.25 732.12,-334.15"/>
|
|
165
|
+
<text xml:space="preserve" text-anchor="middle" x="772.71" y="-387.45" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">on failure</text>
|
|
166
|
+
<text xml:space="preserve" text-anchor="middle" x="772.71" y="-376.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">record()</text>
|
|
167
|
+
</g>
|
|
168
|
+
<!-- Dispatch->Snapshot -->
|
|
169
|
+
<g id="edge10" class="edge">
|
|
144
170
|
<title>Dispatch->Snapshot</title>
|
|
145
|
-
<path fill="none" stroke="#f59e0b" stroke-width="1.3" d="
|
|
146
|
-
<polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="
|
|
147
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
171
|
+
<path fill="none" stroke="#f59e0b" stroke-width="1.3" d="M413.98,-434.36C397.73,-425.15 378.18,-411.98 364.59,-396 348.44,-377 336.92,-351.24 329.59,-330.86"/>
|
|
172
|
+
<polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="332.31,-330.15 327.06,-323.49 327.01,-331.97 332.31,-330.15"/>
|
|
173
|
+
<text xml:space="preserve" text-anchor="middle" x="376.59" y="-382.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">probe</text>
|
|
148
174
|
</g>
|
|
149
175
|
<!-- Result->User -->
|
|
150
|
-
<g id="
|
|
176
|
+
<g id="edge33" class="edge">
|
|
151
177
|
<title>Result->User</title>
|
|
152
|
-
<path fill="none" stroke="#38bdf8" stroke-width="2" d="
|
|
153
|
-
<polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="2" points="
|
|
154
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
178
|
+
<path fill="none" stroke="#38bdf8" stroke-width="2" d="M176.86,-468.54C187.3,-481.86 203.6,-499.21 222.59,-507.25 235.95,-512.9 473.49,-504.84 483.59,-515.25 486.84,-518.6 486.41,-522.03 483.59,-525.75 475.46,-536.5 404.87,-554.35 352.57,-566.33"/>
|
|
179
|
+
<polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="2" points="352.18,-563.54 345,-568.05 353.42,-569.01 352.18,-563.54"/>
|
|
180
|
+
<text xml:space="preserve" text-anchor="middle" x="500.87" y="-517.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">answer</text>
|
|
155
181
|
</g>
|
|
156
182
|
<!-- Learning -->
|
|
157
183
|
<g id="node8" class="node">
|
|
158
184
|
<title>Learning</title>
|
|
159
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.4" d="
|
|
160
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
161
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
162
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
185
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.4" d="M920.34,-321C920.34,-321 818.84,-321 818.84,-321 812.84,-321 806.84,-315 806.84,-309 806.84,-309 806.84,-284.5 806.84,-284.5 806.84,-278.5 812.84,-272.5 818.84,-272.5 818.84,-272.5 920.34,-272.5 920.34,-272.5 926.34,-272.5 932.34,-278.5 932.34,-284.5 932.34,-284.5 932.34,-309 932.34,-309 932.34,-315 926.34,-321 920.34,-321"/>
|
|
186
|
+
<text xml:space="preserve" text-anchor="middle" x="869.59" y="-306.55" font-family="sans-Serif" font-size="11.00" fill="#0f172a">Learning</text>
|
|
187
|
+
<text xml:space="preserve" text-anchor="middle" x="869.59" y="-293.05" font-family="sans-Serif" font-size="11.00" fill="#0f172a">note_outcome · reflect</text>
|
|
188
|
+
<text xml:space="preserve" text-anchor="middle" x="869.59" y="-279.55" font-family="sans-Serif" font-size="11.00" fill="#0f172a">consolidate · distill_skill</text>
|
|
163
189
|
</g>
|
|
164
190
|
<!-- Result->Learning -->
|
|
165
191
|
<g id="edge7" class="edge">
|
|
166
192
|
<title>Result->Learning</title>
|
|
167
|
-
<path fill="none" stroke="#34d399" stroke-width="1.3" d="
|
|
168
|
-
<polygon fill="#34d399" stroke="#34d399" stroke-width="1.3" points="
|
|
169
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
193
|
+
<path fill="none" stroke="#34d399" stroke-width="1.3" d="M200.45,-431.32C207.64,-428.42 215.24,-425.78 222.59,-424 400.11,-381.01 454.09,-434.7 632.59,-396 658.57,-390.37 662.66,-380.81 688.59,-375 730.8,-365.54 745.52,-383.28 785.59,-367 806.66,-358.44 826.48,-342.63 841.57,-328.28"/>
|
|
194
|
+
<polygon fill="#34d399" stroke="#34d399" stroke-width="1.3" points="843.44,-330.37 847.18,-322.77 839.51,-326.38 843.44,-330.37"/>
|
|
195
|
+
<text xml:space="preserve" text-anchor="middle" x="712.59" y="-382.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">auto_reflect</text>
|
|
170
196
|
</g>
|
|
171
197
|
<!-- Result->Observe -->
|
|
172
|
-
<g id="
|
|
198
|
+
<g id="edge11" class="edge">
|
|
173
199
|
<title>Result->Observe</title>
|
|
174
|
-
<path fill="none" stroke="#f59e0b" stroke-width="1.3" d="
|
|
175
|
-
<polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="
|
|
176
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
200
|
+
<path fill="none" stroke="#f59e0b" stroke-width="1.3" d="M164.59,-431.35C164.59,-405.17 164.59,-355.81 164.59,-324.97"/>
|
|
201
|
+
<polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="167.39,-325.25 164.59,-317.25 161.79,-325.25 167.39,-325.25"/>
|
|
202
|
+
<text xml:space="preserve" text-anchor="middle" x="197.22" y="-382.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">auto_extrospect</text>
|
|
177
203
|
</g>
|
|
178
204
|
<!-- Correlate -->
|
|
179
|
-
<g id="
|
|
205
|
+
<g id="node12" class="node">
|
|
180
206
|
<title>Correlate</title>
|
|
181
|
-
<path fill="#fda4af" stroke="#334155" stroke-width="2" d="
|
|
182
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
183
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
207
|
+
<path fill="#fda4af" stroke="#334155" stroke-width="2" d="M435.47,-172.75C435.47,-172.75 235.72,-172.75 235.72,-172.75 229.72,-172.75 223.72,-166.75 223.72,-160.75 223.72,-160.75 223.72,-148.25 223.72,-148.25 223.72,-142.25 229.72,-136.25 235.72,-136.25 235.72,-136.25 435.47,-136.25 435.47,-136.25 441.47,-136.25 447.47,-142.25 447.47,-148.25 447.47,-148.25 447.47,-160.75 447.47,-160.75 447.47,-166.75 441.47,-172.75 435.47,-172.75"/>
|
|
208
|
+
<text xml:space="preserve" text-anchor="middle" x="335.59" y="-157.35" font-family="sans-Serif" font-size="12.00" fill="#0f172a">extro_correlate()</text>
|
|
209
|
+
<text xml:space="preserve" text-anchor="middle" x="335.59" y="-143.1" font-family="sans-Serif" font-size="12.00" fill="#0f172a">"I did it wrong"  vs  "the world changed"</text>
|
|
184
210
|
</g>
|
|
185
211
|
<!-- Metrics->Correlate -->
|
|
186
|
-
<g id="
|
|
212
|
+
<g id="edge14" class="edge">
|
|
187
213
|
<title>Metrics->Correlate</title>
|
|
188
|
-
<path fill="none" stroke="#34d399" stroke-width="1.3" d="
|
|
189
|
-
<polygon fill="#34d399" stroke="#34d399" stroke-width="1.3" points="
|
|
214
|
+
<path fill="none" stroke="#34d399" stroke-width="1.3" d="M463.4,-278.27C437.75,-253.63 390.82,-208.55 361.53,-180.41"/>
|
|
215
|
+
<polygon fill="#34d399" stroke="#34d399" stroke-width="1.3" points="363.61,-178.53 355.9,-175.01 359.73,-182.57 363.61,-178.53"/>
|
|
190
216
|
</g>
|
|
191
217
|
<!-- Fmet -->
|
|
192
|
-
<g id="
|
|
218
|
+
<g id="node13" class="node">
|
|
193
219
|
<title>Fmet</title>
|
|
194
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="
|
|
195
|
-
<path fill="none" stroke="#334155" stroke-width="1.4" d="
|
|
196
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
220
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="M533.09,-48.73C533.09,-50.53 516.73,-52 496.59,-52 476.45,-52 460.09,-50.53 460.09,-48.73 460.09,-48.73 460.09,-19.27 460.09,-19.27 460.09,-17.47 476.45,-16 496.59,-16 516.73,-16 533.09,-17.47 533.09,-19.27 533.09,-19.27 533.09,-48.73 533.09,-48.73"/>
|
|
221
|
+
<path fill="none" stroke="#334155" stroke-width="1.4" d="M533.09,-48.73C533.09,-46.92 516.73,-45.45 496.59,-45.45 476.45,-45.45 460.09,-46.92 460.09,-48.73"/>
|
|
222
|
+
<text xml:space="preserve" text-anchor="middle" x="496.59" y="-30.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">metrics.json</text>
|
|
197
223
|
</g>
|
|
198
224
|
<!-- Metrics->Fmet -->
|
|
199
|
-
<g id="
|
|
225
|
+
<g id="edge20" class="edge">
|
|
200
226
|
<title>Metrics->Fmet</title>
|
|
201
|
-
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="
|
|
202
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="
|
|
227
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M482.6,-278.24C485.16,-233.7 491.94,-115.88 495.03,-62.26"/>
|
|
228
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="497.81,-62.55 495.48,-54.4 492.22,-62.23 497.81,-62.55"/>
|
|
203
229
|
</g>
|
|
204
230
|
<!-- Learning->Correlate -->
|
|
205
|
-
<g id="
|
|
231
|
+
<g id="edge15" class="edge">
|
|
206
232
|
<title>Learning->Correlate</title>
|
|
207
|
-
<path fill="none" stroke="#34d399" stroke-width="1.3" d="
|
|
208
|
-
<polygon fill="#34d399" stroke="#34d399" stroke-width="1.3" points="
|
|
233
|
+
<path fill="none" stroke="#34d399" stroke-width="1.3" d="M821.4,-271.95C809.85,-266.81 797.43,-261.73 785.59,-257.75 675.2,-220.66 545.09,-192.73 453.25,-175.51"/>
|
|
234
|
+
<polygon fill="#34d399" stroke="#34d399" stroke-width="1.3" points="453.96,-172.79 445.58,-174.08 452.93,-178.29 453.96,-172.79"/>
|
|
209
235
|
</g>
|
|
210
236
|
<!-- Flrn -->
|
|
211
|
-
<g id="
|
|
237
|
+
<g id="node14" class="node">
|
|
212
238
|
<title>Flrn</title>
|
|
213
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="
|
|
214
|
-
<path fill="none" stroke="#334155" stroke-width="1.4" d="
|
|
215
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
239
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="M899.09,-48.73C899.09,-50.53 881.39,-52 859.59,-52 837.8,-52 820.09,-50.53 820.09,-48.73 820.09,-48.73 820.09,-19.27 820.09,-19.27 820.09,-17.47 837.8,-16 859.59,-16 881.39,-16 899.09,-17.47 899.09,-19.27 899.09,-19.27 899.09,-48.73 899.09,-48.73"/>
|
|
240
|
+
<path fill="none" stroke="#334155" stroke-width="1.4" d="M899.09,-48.73C899.09,-46.92 881.39,-45.45 859.59,-45.45 837.8,-45.45 820.09,-46.92 820.09,-48.73"/>
|
|
241
|
+
<text xml:space="preserve" text-anchor="middle" x="859.59" y="-30.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">learning.jsonl</text>
|
|
216
242
|
</g>
|
|
217
243
|
<!-- Learning->Flrn -->
|
|
218
|
-
<g id="
|
|
244
|
+
<g id="edge21" class="edge">
|
|
219
245
|
<title>Learning->Flrn</title>
|
|
220
|
-
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="
|
|
221
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="
|
|
246
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M879.02,-271.98C883.55,-259.59 888.62,-244.06 891.59,-229.75 903.38,-172.96 908.63,-154.69 891.59,-99.25 887.58,-86.19 881.13,-72.52 875.07,-61.17"/>
|
|
247
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="877.62,-59.99 871.3,-54.34 872.71,-62.7 877.62,-59.99"/>
|
|
222
248
|
</g>
|
|
223
249
|
<!-- Fmem -->
|
|
224
|
-
<g id="
|
|
250
|
+
<g id="node16" class="node">
|
|
225
251
|
<title>Fmem</title>
|
|
226
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="
|
|
227
|
-
<path fill="none" stroke="#334155" stroke-width="1.4" d="
|
|
228
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
252
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="M777.34,-48.73C777.34,-50.53 759.98,-52 738.59,-52 717.21,-52 699.84,-50.53 699.84,-48.73 699.84,-48.73 699.84,-19.27 699.84,-19.27 699.84,-17.47 717.21,-16 738.59,-16 759.98,-16 777.34,-17.47 777.34,-19.27 777.34,-19.27 777.34,-48.73 777.34,-48.73"/>
|
|
253
|
+
<path fill="none" stroke="#334155" stroke-width="1.4" d="M777.34,-48.73C777.34,-46.92 759.98,-45.45 738.59,-45.45 717.21,-45.45 699.84,-46.92 699.84,-48.73"/>
|
|
254
|
+
<text xml:space="preserve" text-anchor="middle" x="738.59" y="-30.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">memory.json</text>
|
|
229
255
|
</g>
|
|
230
256
|
<!-- Learning->Fmem -->
|
|
231
|
-
<g id="
|
|
257
|
+
<g id="edge24" class="edge">
|
|
232
258
|
<title>Learning->Fmem</title>
|
|
233
|
-
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="
|
|
234
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="
|
|
235
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
259
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M858.17,-271.87C843.14,-240.59 815.81,-184.1 791.59,-136.25 778.62,-110.61 763.36,-81.58 752.56,-61.2"/>
|
|
260
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="755.08,-59.97 748.85,-54.22 750.13,-62.6 755.08,-59.97"/>
|
|
261
|
+
<text xml:space="preserve" text-anchor="middle" x="823.24" y="-151.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">lesson</text>
|
|
236
262
|
</g>
|
|
237
263
|
<!-- Fskl -->
|
|
238
|
-
<g id="
|
|
264
|
+
<g id="node17" class="node">
|
|
239
265
|
<title>Fskl</title>
|
|
240
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="
|
|
241
|
-
<path fill="none" stroke="#334155" stroke-width="1.4" d="
|
|
242
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
266
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="M1006.59,-48.73C1006.59,-50.53 992.25,-52 974.59,-52 956.94,-52 942.59,-50.53 942.59,-48.73 942.59,-48.73 942.59,-19.27 942.59,-19.27 942.59,-17.47 956.94,-16 974.59,-16 992.25,-16 1006.59,-17.47 1006.59,-19.27 1006.59,-19.27 1006.59,-48.73 1006.59,-48.73"/>
|
|
267
|
+
<path fill="none" stroke="#334155" stroke-width="1.4" d="M1006.59,-48.73C1006.59,-46.92 992.25,-45.45 974.59,-45.45 956.94,-45.45 942.59,-46.92 942.59,-48.73"/>
|
|
268
|
+
<text xml:space="preserve" text-anchor="middle" x="974.59" y="-30.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">skills/*.md</text>
|
|
243
269
|
</g>
|
|
244
270
|
<!-- Learning->Fskl -->
|
|
245
|
-
<g id="
|
|
271
|
+
<g id="edge25" class="edge">
|
|
246
272
|
<title>Learning->Fskl</title>
|
|
247
|
-
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="
|
|
248
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="
|
|
249
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
273
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M894.37,-272.03C905.38,-260.26 917.62,-245.25 925.59,-229.75 954.14,-174.25 966.72,-101.15 971.71,-62.19"/>
|
|
274
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="974.45,-62.84 972.63,-54.56 968.89,-62.16 974.45,-62.84"/>
|
|
275
|
+
<text xml:space="preserve" text-anchor="middle" x="965.73" y="-151.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">skill</text>
|
|
276
|
+
</g>
|
|
277
|
+
<!-- Mistakes->Dispatch -->
|
|
278
|
+
<g id="edge31" class="edge">
|
|
279
|
+
<title>Mistakes->Dispatch</title>
|
|
280
|
+
<path fill="none" stroke="#fb7185" stroke-width="2" stroke-dasharray="5,2" d="M630.95,-328.65C612.43,-340.64 591.04,-354.48 571.59,-367 540.76,-386.85 505.7,-409.31 480.07,-425.69"/>
|
|
281
|
+
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="2" points="478.87,-423.14 473.63,-429.81 481.88,-427.86 478.87,-423.14"/>
|
|
282
|
+
<text xml:space="preserve" text-anchor="middle" x="590.35" y="-387.45" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">correction_hint</text>
|
|
283
|
+
<text xml:space="preserve" text-anchor="middle" x="590.35" y="-376.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">(inline, next iter)</text>
|
|
284
|
+
</g>
|
|
285
|
+
<!-- Mistakes->Correlate -->
|
|
286
|
+
<g id="edge16" class="edge">
|
|
287
|
+
<title>Mistakes->Correlate</title>
|
|
288
|
+
<path fill="none" stroke="#34d399" stroke-width="1.3" d="M602.9,-264.8C538.1,-238.3 446.45,-200.83 389.05,-177.36"/>
|
|
289
|
+
<polygon fill="#34d399" stroke="#34d399" stroke-width="1.3" points="390.43,-174.9 381.96,-174.46 388.31,-180.08 390.43,-174.9"/>
|
|
290
|
+
</g>
|
|
291
|
+
<!-- Fmis -->
|
|
292
|
+
<g id="node15" class="node">
|
|
293
|
+
<title>Fmis</title>
|
|
294
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="M656.84,-48.73C656.84,-50.53 638.8,-52 616.59,-52 594.38,-52 576.34,-50.53 576.34,-48.73 576.34,-48.73 576.34,-19.27 576.34,-19.27 576.34,-17.47 594.38,-16 616.59,-16 638.8,-16 656.84,-17.47 656.84,-19.27 656.84,-19.27 656.84,-48.73 656.84,-48.73"/>
|
|
295
|
+
<path fill="none" stroke="#334155" stroke-width="1.4" d="M656.84,-48.73C656.84,-46.92 638.8,-45.45 616.59,-45.45 594.38,-45.45 576.34,-46.92 576.34,-48.73"/>
|
|
296
|
+
<text xml:space="preserve" text-anchor="middle" x="616.59" y="-30.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">mistakes.json</text>
|
|
297
|
+
</g>
|
|
298
|
+
<!-- Mistakes->Fmis -->
|
|
299
|
+
<g id="edge22" class="edge">
|
|
300
|
+
<title>Mistakes->Fmis</title>
|
|
301
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M671.24,-264.81C658.99,-213.3 634.62,-110.8 623.02,-62.02"/>
|
|
302
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="625.78,-61.51 621.2,-54.38 620.33,-62.81 625.78,-61.51"/>
|
|
303
|
+
</g>
|
|
304
|
+
<!-- Mistakes->Fmem -->
|
|
305
|
+
<g id="edge23" class="edge">
|
|
306
|
+
<title>Mistakes->Fmem</title>
|
|
307
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M685.71,-264.81C697.56,-213.3 721.15,-110.8 732.38,-62.02"/>
|
|
308
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="735.07,-62.8 734.13,-54.38 729.61,-61.55 735.07,-62.8"/>
|
|
309
|
+
<text xml:space="preserve" text-anchor="middle" x="748.29" y="-151.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">resolve→lesson</text>
|
|
250
310
|
</g>
|
|
251
311
|
<!-- Snapshot->Correlate -->
|
|
252
|
-
<g id="
|
|
312
|
+
<g id="edge17" class="edge">
|
|
253
313
|
<title>Snapshot->Correlate</title>
|
|
254
|
-
<path fill="none" stroke="#f59e0b" stroke-width="1.3" d="
|
|
255
|
-
<polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="
|
|
314
|
+
<path fill="none" stroke="#f59e0b" stroke-width="1.3" d="M322.31,-271.96C325.11,-247.4 329.48,-209.11 332.43,-183.2"/>
|
|
315
|
+
<polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="335.18,-183.82 333.31,-175.55 329.62,-183.18 335.18,-183.82"/>
|
|
256
316
|
</g>
|
|
257
317
|
<!-- Observe->Correlate -->
|
|
258
|
-
<g id="
|
|
318
|
+
<g id="edge18" class="edge">
|
|
259
319
|
<title>Observe->Correlate</title>
|
|
260
|
-
<path fill="none" stroke="#f59e0b" stroke-width="1.3" d="
|
|
261
|
-
<polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="
|
|
320
|
+
<path fill="none" stroke="#f59e0b" stroke-width="1.3" d="M185.91,-278.27C216.2,-253.42 271.84,-207.79 306.09,-179.7"/>
|
|
321
|
+
<polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="307.54,-182.13 311.95,-174.89 303.99,-177.8 307.54,-182.13"/>
|
|
262
322
|
</g>
|
|
263
323
|
<!-- Fext -->
|
|
264
|
-
<g id="
|
|
324
|
+
<g id="node18" class="node">
|
|
265
325
|
<title>Fext</title>
|
|
266
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="
|
|
267
|
-
<path fill="none" stroke="#334155" stroke-width="1.4" d="
|
|
268
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
326
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.4" d="M416.72,-48.73C416.72,-50.53 393.8,-52 365.59,-52 337.38,-52 314.47,-50.53 314.47,-48.73 314.47,-48.73 314.47,-19.27 314.47,-19.27 314.47,-17.47 337.38,-16 365.59,-16 393.8,-16 416.72,-17.47 416.72,-19.27 416.72,-19.27 416.72,-48.73 416.72,-48.73"/>
|
|
327
|
+
<path fill="none" stroke="#334155" stroke-width="1.4" d="M416.72,-48.73C416.72,-46.92 393.8,-45.45 365.59,-45.45 337.38,-45.45 314.47,-46.92 314.47,-48.73"/>
|
|
328
|
+
<text xml:space="preserve" text-anchor="middle" x="365.59" y="-30.3" font-family="sans-Serif" font-size="11.00" fill="#0f172a">extrospection.json</text>
|
|
269
329
|
</g>
|
|
270
330
|
<!-- Observe->Fext -->
|
|
271
|
-
<g id="
|
|
331
|
+
<g id="edge26" class="edge">
|
|
272
332
|
<title>Observe->Fext</title>
|
|
273
|
-
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="
|
|
274
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="
|
|
333
|
+
<path fill="none" stroke="#94a3b8" stroke-width="1.3" d="M164.56,-278.16C165.36,-246.73 170.97,-180.13 202.59,-136.25 229.7,-98.63 275.53,-71.98 311.7,-55.5"/>
|
|
334
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" stroke-width="1.3" points="312.69,-58.13 318.87,-52.33 310.42,-53.01 312.69,-58.13"/>
|
|
275
335
|
</g>
|
|
276
336
|
<!-- Correlate->Prompt -->
|
|
277
|
-
<g id="
|
|
337
|
+
<g id="edge32" class="edge">
|
|
278
338
|
<title>Correlate->Prompt</title>
|
|
279
|
-
<path fill="none" stroke="#fb7185" stroke-width="2" stroke-dasharray="5,2" d="
|
|
280
|
-
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="2" points="
|
|
281
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
339
|
+
<path fill="none" stroke="#fb7185" stroke-width="2" stroke-dasharray="5,2" d="M448.33,-166.31C617.02,-183.66 918.83,-219.63 950.59,-257.75 981.67,-295.05 981.47,-329.53 950.59,-367 911.03,-415.01 455.12,-414.76 393.59,-424 376.02,-426.64 357.06,-430.67 340.06,-434.73"/>
|
|
340
|
+
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="2" points="339.8,-431.91 332.7,-436.53 341.13,-437.35 339.8,-431.91"/>
|
|
341
|
+
<text xml:space="preserve" text-anchor="middle" x="1013.2" y="-293.45" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">findings → next run</text>
|
|
282
342
|
</g>
|
|
283
343
|
<!-- Correlate->Fmet -->
|
|
344
|
+
<!-- Fmis->Prompt -->
|
|
345
|
+
<g id="edge29" class="edge">
|
|
346
|
+
<title>Fmis->Prompt</title>
|
|
347
|
+
<path fill="none" stroke="#fb7185" stroke-width="2" stroke-dasharray="5,2" d="M630.71,-52.47C642.18,-65.39 659.54,-82.24 678.59,-91.25 802.47,-149.82 868.26,-62.26 983.59,-136.25 1074.83,-194.78 1130.78,-282.74 1062.59,-367 1015.66,-424.99 467.46,-413.52 393.59,-424 376,-426.5 357.04,-430.49 340.04,-434.55"/>
|
|
348
|
+
<polygon fill="#fb7185" stroke="#fb7185" stroke-width="2" points="339.78,-431.74 332.67,-436.36 341.11,-437.17 339.78,-431.74"/>
|
|
349
|
+
<text xml:space="preserve" text-anchor="middle" x="1117.63" y="-221.2" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">KNOWN MISTAKES</text>
|
|
350
|
+
<text xml:space="preserve" text-anchor="middle" x="1117.63" y="-210.7" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">+ KNOWN FIXES</text>
|
|
351
|
+
</g>
|
|
284
352
|
<!-- Fmem->Prompt -->
|
|
285
|
-
<g id="
|
|
353
|
+
<g id="edge27" class="edge">
|
|
286
354
|
<title>Fmem->Prompt</title>
|
|
287
|
-
<path fill="none" stroke="#fbbf24" stroke-width="1.3" stroke-dasharray="5,2" d="
|
|
288
|
-
<polygon fill="#fbbf24" stroke="#fbbf24" stroke-width="1.3" points="
|
|
289
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
355
|
+
<path fill="none" stroke="#fbbf24" stroke-width="1.3" stroke-dasharray="5,2" d="M752.47,-52.54C763.56,-65.32 780.26,-81.95 798.59,-91.25 952.48,-169.27 1081.22,-59.97 1168.59,-208.75 1206.61,-273.48 1162.46,-313.71 1109.59,-367 1087.03,-389.75 1074.8,-388.74 1043.59,-396 761.95,-461.51 680.07,-384.71 393.59,-424 375.65,-426.46 356.31,-430.53 339.06,-434.68"/>
|
|
356
|
+
<polygon fill="#fbbf24" stroke="#fbbf24" stroke-width="1.3" points="338.73,-431.88 331.63,-436.52 340.07,-437.32 338.73,-431.88"/>
|
|
357
|
+
<text xml:space="preserve" text-anchor="middle" x="1210.36" y="-215.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">MEMORY block</text>
|
|
290
358
|
</g>
|
|
291
359
|
<!-- Fskl->Prompt -->
|
|
292
|
-
<g id="
|
|
360
|
+
<g id="edge28" class="edge">
|
|
293
361
|
<title>Fskl->Prompt</title>
|
|
294
|
-
<path fill="none" stroke="#fbbf24" stroke-width="1.3" stroke-dasharray="5,2" d="
|
|
295
|
-
<polygon fill="#fbbf24" stroke="#fbbf24" stroke-width="1.3" points="
|
|
296
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
362
|
+
<path fill="none" stroke="#fbbf24" stroke-width="1.3" stroke-dasharray="5,2" d="M1007.1,-43.55C1068.89,-61.81 1201.64,-111.12 1252.59,-208.75 1288.52,-277.58 1236.71,-315.52 1178.59,-367 1152.15,-390.42 1139.17,-388.76 1104.59,-396 795.06,-460.82 706.98,-381.61 393.59,-424 375.65,-426.43 356.3,-430.49 339.06,-434.65"/>
|
|
363
|
+
<polygon fill="#fbbf24" stroke="#fbbf24" stroke-width="1.3" points="338.72,-431.84 331.63,-436.48 340.06,-437.28 338.72,-431.84"/>
|
|
364
|
+
<text xml:space="preserve" text-anchor="middle" x="1288.2" y="-215.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">SKILLS block</text>
|
|
297
365
|
</g>
|
|
298
366
|
<!-- Fext->Prompt -->
|
|
299
|
-
<g id="
|
|
367
|
+
<g id="edge30" class="edge">
|
|
300
368
|
<title>Fext->Prompt</title>
|
|
301
|
-
<path fill="none" stroke="#fbbf24" stroke-width="1.3" stroke-dasharray="5,2" d="
|
|
302
|
-
<polygon fill="#fbbf24" stroke="#fbbf24" stroke-width="1.3" points="
|
|
303
|
-
<text xml:space="preserve" text-anchor="middle" x="
|
|
369
|
+
<path fill="none" stroke="#fbbf24" stroke-width="1.3" stroke-dasharray="5,2" d="M382.38,-52.56C396.13,-65.71 416.81,-82.81 438.59,-91.25 663.41,-178.31 1570.24,4.82 1514.59,-229.75 1498.83,-296.18 1497.91,-323.13 1445.59,-367 1411.11,-395.91 1393.02,-388.84 1348.59,-396 929.38,-463.61 814.67,-369.2 393.59,-424 375.64,-426.34 356.29,-430.38 339.04,-434.54"/>
|
|
370
|
+
<polygon fill="#fbbf24" stroke="#fbbf24" stroke-width="1.3" points="338.7,-431.74 331.61,-436.38 340.05,-437.17 338.7,-431.74"/>
|
|
371
|
+
<text xml:space="preserve" text-anchor="middle" x="1544.42" y="-215.95" font-family="sans-Serif" font-size="9.00" fill="#cbd5e1">EXTRO block</text>
|
|
304
372
|
</g>
|
|
305
373
|
</g>
|
|
306
374
|
</svg>
|