@trevonistrevon/pi-loop 0.5.9 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/.release-please-manifest.json +1 -1
  2. package/AGENTS.md +52 -12
  3. package/CHANGELOG.md +59 -0
  4. package/CONTRIBUTING.md +13 -3
  5. package/README.md +47 -0
  6. package/coverage/coverage-final.json +35 -32
  7. package/coverage/index.html +64 -49
  8. package/coverage/src/api.ts.html +193 -0
  9. package/coverage/src/commands/index.html +32 -32
  10. package/coverage/src/commands/loop-command.ts.html +170 -170
  11. package/coverage/src/commands/tasks-command.ts.html +129 -129
  12. package/coverage/src/coordinator.ts.html +26 -26
  13. package/coverage/src/index.html +61 -106
  14. package/coverage/src/index.ts.html +224 -86
  15. package/coverage/src/loop-parse.ts.html +106 -73
  16. package/coverage/src/loop-reducer.ts.html +21 -21
  17. package/coverage/src/monitor-completion-coordinator.ts.html +1 -1
  18. package/coverage/src/monitor-manager.ts.html +95 -71
  19. package/coverage/src/monitor-reducer.ts.html +15 -15
  20. package/coverage/src/notification-reducer.ts.html +6 -6
  21. package/coverage/src/reducer-backed-store.ts.html +57 -57
  22. package/coverage/src/rpc/channels.ts.html +376 -0
  23. package/coverage/src/rpc/cross-extension-rpc.ts.html +541 -0
  24. package/coverage/src/rpc/index.html +131 -0
  25. package/coverage/src/runtime/index.html +68 -23
  26. package/coverage/src/{goal-coordinator.ts.html → runtime/loop-events.ts.html} +79 -73
  27. package/coverage/src/runtime/monitor-ondone-runtime.ts.html +5 -5
  28. package/coverage/src/runtime/native-task-rpc.ts.html +502 -0
  29. package/coverage/src/runtime/notification-runtime.ts.html +22 -22
  30. package/coverage/src/runtime/scope.ts.html +14 -14
  31. package/coverage/src/runtime/session-runtime.ts.html +32 -32
  32. package/coverage/src/runtime/task-backlog-runtime.ts.html +65 -23
  33. package/coverage/src/runtime/task-events.ts.html +2 -2
  34. package/coverage/src/runtime/task-mutations.ts.html +394 -0
  35. package/coverage/src/runtime/task-rpc.ts.html +102 -120
  36. package/coverage/src/scheduler.ts.html +29 -29
  37. package/coverage/src/store.ts.html +27 -27
  38. package/coverage/src/task-backlog-coordinator.ts.html +8 -8
  39. package/coverage/src/task-reducer.ts.html +42 -42
  40. package/coverage/src/task-store.ts.html +49 -49
  41. package/coverage/src/tools/index.html +39 -24
  42. package/coverage/src/tools/loop-tools.ts.html +12 -21
  43. package/coverage/src/tools/monitor-tools.ts.html +12 -21
  44. package/coverage/src/tools/native-task-tools.ts.html +57 -120
  45. package/coverage/src/tools/tool-result.ts.html +97 -0
  46. package/coverage/src/trigger-system.ts.html +12 -12
  47. package/coverage/src/ui/index.html +1 -1
  48. package/coverage/src/ui/widget.ts.html +23 -23
  49. package/dist/api.d.ts +11 -0
  50. package/dist/api.js +10 -0
  51. package/dist/commands/loop-command.js +2 -2
  52. package/dist/commands/tasks-command.js +3 -3
  53. package/dist/coordinator.d.ts +1 -1
  54. package/dist/index.js +48 -3
  55. package/dist/loop-parse.js +14 -5
  56. package/dist/reducer-backed-store.d.ts +1 -1
  57. package/dist/reducer-backed-store.js +1 -1
  58. package/dist/rpc/channels.d.ts +73 -0
  59. package/dist/rpc/channels.js +30 -0
  60. package/dist/rpc/cross-extension-rpc.d.ts +59 -0
  61. package/dist/rpc/cross-extension-rpc.js +117 -0
  62. package/dist/runtime/loop-events.d.ts +26 -0
  63. package/dist/runtime/loop-events.js +26 -0
  64. package/dist/runtime/native-task-rpc.d.ts +22 -0
  65. package/dist/runtime/native-task-rpc.js +50 -0
  66. package/dist/runtime/task-backlog-runtime.d.ts +3 -0
  67. package/dist/runtime/task-backlog-runtime.js +4 -1
  68. package/dist/runtime/task-mutations.d.ts +39 -0
  69. package/dist/runtime/task-mutations.js +68 -0
  70. package/dist/runtime/task-rpc.d.ts +4 -0
  71. package/dist/runtime/task-rpc.js +40 -58
  72. package/dist/scheduler.js +1 -1
  73. package/dist/tools/loop-tools.js +1 -3
  74. package/dist/tools/monitor-tools.js +1 -3
  75. package/dist/tools/native-task-tools.d.ts +2 -6
  76. package/dist/tools/native-task-tools.js +25 -55
  77. package/dist/tools/tool-result.d.ts +8 -0
  78. package/dist/tools/tool-result.js +4 -0
  79. package/docs/architecture/state-machine-migration.md +0 -44
  80. package/docs/architecture/state-machine-reducer-event-model.md +2 -3
  81. package/package.json +6 -1
  82. package/src/api.ts +36 -0
  83. package/src/commands/loop-command.ts +2 -2
  84. package/src/commands/tasks-command.ts +3 -3
  85. package/src/coordinator.ts +1 -1
  86. package/src/index.ts +49 -3
  87. package/src/loop-parse.ts +18 -7
  88. package/src/reducer-backed-store.ts +3 -3
  89. package/src/rpc/channels.ts +97 -0
  90. package/src/rpc/cross-extension-rpc.ts +152 -0
  91. package/src/runtime/loop-events.ts +60 -0
  92. package/src/runtime/native-task-rpc.ts +139 -0
  93. package/src/runtime/task-backlog-runtime.ts +14 -0
  94. package/src/runtime/task-mutations.ts +103 -0
  95. package/src/runtime/task-rpc.ts +48 -54
  96. package/src/scheduler.ts +1 -1
  97. package/src/tools/loop-tools.ts +1 -4
  98. package/src/tools/monitor-tools.ts +1 -4
  99. package/src/tools/native-task-tools.ts +31 -52
  100. package/src/tools/tool-result.ts +4 -0
  101. package/src/trigger-system.ts +4 -4
  102. package/vitest.config.ts +7 -7
  103. package/coverage/src/goal-reducer.ts.html +0 -982
  104. package/coverage/src/goal-store.ts.html +0 -742
  105. package/coverage/src/goal-verifier.ts.html +0 -808
  106. package/dist/goal-coordinator.d.ts +0 -22
  107. package/dist/goal-coordinator.js +0 -28
  108. package/dist/goal-reducer.d.ts +0 -98
  109. package/dist/goal-reducer.js +0 -190
  110. package/dist/goal-store.d.ts +0 -22
  111. package/dist/goal-store.js +0 -188
  112. package/dist/goal-types.d.ts +0 -82
  113. package/dist/goal-types.js +0 -1
  114. package/dist/goal-verifier.d.ts +0 -20
  115. package/dist/goal-verifier.js +0 -198
  116. package/docs/architecture/goal-state-schema.md +0 -505
  117. package/src/goal-coordinator.ts +0 -58
  118. package/src/goal-reducer.ts +0 -299
  119. package/src/goal-store.ts +0 -219
  120. package/src/goal-types.ts +0 -104
  121. package/src/goal-verifier.ts +0 -241
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">91.72% </span>
26
+ <span class="strong">90.67% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>1064/1160</span>
28
+ <span class='fraction'>836/922</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">83.79% </span>
33
+ <span class="strong">83.54% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>512/611</span>
35
+ <span class='fraction'>401/480</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">98.78% </span>
40
+ <span class="strong">98.5% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>243/246</span>
42
+ <span class='fraction'>197/200</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">94.01% </span>
47
+ <span class="strong">93.34% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>959/1020</span>
49
+ <span class='fraction'>757/811</span>
50
50
  </div>
51
51
 
52
52
 
@@ -79,108 +79,63 @@
79
79
  </tr>
80
80
  </thead>
81
81
  <tbody><tr>
82
+ <td class="file empty" data-value="api.ts"><a href="api.ts.html">api.ts</a></td>
83
+ <td data-value="0" class="pic empty">
84
+ <div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
85
+ </td>
86
+ <td data-value="0" class="pct empty">0%</td>
87
+ <td data-value="0" class="abs empty">0/0</td>
88
+ <td data-value="0" class="pct empty">0%</td>
89
+ <td data-value="0" class="abs empty">0/0</td>
90
+ <td data-value="0" class="pct empty">0%</td>
91
+ <td data-value="0" class="abs empty">0/0</td>
92
+ <td data-value="0" class="pct empty">0%</td>
93
+ <td data-value="0" class="abs empty">0/0</td>
94
+ </tr>
95
+
96
+ <tr>
82
97
  <td class="file high" data-value="coordinator.ts"><a href="coordinator.ts.html">coordinator.ts</a></td>
83
98
  <td data-value="97.05" class="pic high">
84
99
  <div class="chart"><div class="cover-fill" style="width: 97%"></div><div class="cover-empty" style="width: 3%"></div></div>
85
100
  </td>
86
101
  <td data-value="97.05" class="pct high">97.05%</td>
87
102
  <td data-value="34" class="abs high">33/34</td>
88
- <td data-value="92" class="pct high">92%</td>
89
- <td data-value="25" class="abs high">23/25</td>
103
+ <td data-value="88" class="pct high">88%</td>
104
+ <td data-value="25" class="abs high">22/25</td>
90
105
  <td data-value="100" class="pct high">100%</td>
91
106
  <td data-value="6" class="abs high">6/6</td>
92
107
  <td data-value="96.77" class="pct high">96.77%</td>
93
108
  <td data-value="31" class="abs high">30/31</td>
94
109
  </tr>
95
110
 
96
- <tr>
97
- <td class="file high" data-value="goal-coordinator.ts"><a href="goal-coordinator.ts.html">goal-coordinator.ts</a></td>
98
- <td data-value="90.9" class="pic high">
99
- <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
100
- </td>
101
- <td data-value="90.9" class="pct high">90.9%</td>
102
- <td data-value="11" class="abs high">10/11</td>
103
- <td data-value="83.33" class="pct high">83.33%</td>
104
- <td data-value="6" class="abs high">5/6</td>
105
- <td data-value="100" class="pct high">100%</td>
106
- <td data-value="3" class="abs high">3/3</td>
107
- <td data-value="100" class="pct high">100%</td>
108
- <td data-value="8" class="abs high">8/8</td>
109
- </tr>
110
-
111
- <tr>
112
- <td class="file high" data-value="goal-reducer.ts"><a href="goal-reducer.ts.html">goal-reducer.ts</a></td>
113
- <td data-value="92.38" class="pic high">
114
- <div class="chart"><div class="cover-fill" style="width: 92%"></div><div class="cover-empty" style="width: 8%"></div></div>
115
- </td>
116
- <td data-value="92.38" class="pct high">92.38%</td>
117
- <td data-value="105" class="abs high">97/105</td>
118
- <td data-value="85.96" class="pct high">85.96%</td>
119
- <td data-value="57" class="abs high">49/57</td>
120
- <td data-value="100" class="pct high">100%</td>
121
- <td data-value="6" class="abs high">6/6</td>
122
- <td data-value="94.68" class="pct high">94.68%</td>
123
- <td data-value="94" class="abs high">89/94</td>
124
- </tr>
125
-
126
- <tr>
127
- <td class="file high" data-value="goal-store.ts"><a href="goal-store.ts.html">goal-store.ts</a></td>
128
- <td data-value="96.72" class="pic high">
129
- <div class="chart"><div class="cover-fill" style="width: 96%"></div><div class="cover-empty" style="width: 4%"></div></div>
130
- </td>
131
- <td data-value="96.72" class="pct high">96.72%</td>
132
- <td data-value="61" class="abs high">59/61</td>
133
- <td data-value="77.77" class="pct medium">77.77%</td>
134
- <td data-value="27" class="abs medium">21/27</td>
135
- <td data-value="100" class="pct high">100%</td>
136
- <td data-value="27" class="abs high">27/27</td>
137
- <td data-value="96.07" class="pct high">96.07%</td>
138
- <td data-value="51" class="abs high">49/51</td>
139
- </tr>
140
-
141
- <tr>
142
- <td class="file high" data-value="goal-verifier.ts"><a href="goal-verifier.ts.html">goal-verifier.ts</a></td>
143
- <td data-value="90.12" class="pic high">
144
- <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
145
- </td>
146
- <td data-value="90.12" class="pct high">90.12%</td>
147
- <td data-value="81" class="abs high">73/81</td>
148
- <td data-value="78.57" class="pct medium">78.57%</td>
149
- <td data-value="70" class="abs medium">55/70</td>
150
- <td data-value="100" class="pct high">100%</td>
151
- <td data-value="20" class="abs high">20/20</td>
152
- <td data-value="91.78" class="pct high">91.78%</td>
153
- <td data-value="73" class="abs high">67/73</td>
154
- </tr>
155
-
156
111
  <tr>
157
112
  <td class="file high" data-value="index.ts"><a href="index.ts.html">index.ts</a></td>
158
- <td data-value="94.48" class="pic high">
113
+ <td data-value="94.4" class="pic high">
159
114
  <div class="chart"><div class="cover-fill" style="width: 94%"></div><div class="cover-empty" style="width: 6%"></div></div>
160
115
  </td>
161
- <td data-value="94.48" class="pct high">94.48%</td>
162
- <td data-value="145" class="abs high">137/145</td>
163
- <td data-value="87.5" class="pct high">87.5%</td>
164
- <td data-value="48" class="abs high">42/48</td>
165
- <td data-value="96.66" class="pct high">96.66%</td>
166
- <td data-value="60" class="abs high">58/60</td>
167
- <td data-value="96.15" class="pct high">96.15%</td>
168
- <td data-value="130" class="abs high">125/130</td>
116
+ <td data-value="94.4" class="pct high">94.4%</td>
117
+ <td data-value="161" class="abs high">152/161</td>
118
+ <td data-value="85.71" class="pct high">85.71%</td>
119
+ <td data-value="56" class="abs high">48/56</td>
120
+ <td data-value="98.55" class="pct high">98.55%</td>
121
+ <td data-value="69" class="abs high">68/69</td>
122
+ <td data-value="96.52" class="pct high">96.52%</td>
123
+ <td data-value="144" class="abs high">139/144</td>
169
124
  </tr>
170
125
 
171
126
  <tr>
172
127
  <td class="file high" data-value="loop-parse.ts"><a href="loop-parse.ts.html">loop-parse.ts</a></td>
173
- <td data-value="88.54" class="pic high">
174
- <div class="chart"><div class="cover-fill" style="width: 88%"></div><div class="cover-empty" style="width: 12%"></div></div>
128
+ <td data-value="87.75" class="pic high">
129
+ <div class="chart"><div class="cover-fill" style="width: 87%"></div><div class="cover-empty" style="width: 13%"></div></div>
175
130
  </td>
176
- <td data-value="88.54" class="pct high">88.54%</td>
177
- <td data-value="96" class="abs high">85/96</td>
178
- <td data-value="81.35" class="pct high">81.35%</td>
179
- <td data-value="59" class="abs high">48/59</td>
131
+ <td data-value="87.75" class="pct high">87.75%</td>
132
+ <td data-value="98" class="abs high">86/98</td>
133
+ <td data-value="78.94" class="pct medium">78.94%</td>
134
+ <td data-value="76" class="abs medium">60/76</td>
180
135
  <td data-value="100" class="pct high">100%</td>
181
136
  <td data-value="7" class="abs high">7/7</td>
182
- <td data-value="91.35" class="pct high">91.35%</td>
183
- <td data-value="81" class="abs high">74/81</td>
137
+ <td data-value="90.36" class="pct high">90.36%</td>
138
+ <td data-value="83" class="abs high">75/83</td>
184
139
  </tr>
185
140
 
186
141
  <tr>
@@ -215,17 +170,17 @@
215
170
 
216
171
  <tr>
217
172
  <td class="file high" data-value="monitor-manager.ts"><a href="monitor-manager.ts.html">monitor-manager.ts</a></td>
218
- <td data-value="86.11" class="pic high">
219
- <div class="chart"><div class="cover-fill" style="width: 86%"></div><div class="cover-empty" style="width: 14%"></div></div>
173
+ <td data-value="80.9" class="pic high">
174
+ <div class="chart"><div class="cover-fill" style="width: 80%"></div><div class="cover-empty" style="width: 20%"></div></div>
220
175
  </td>
221
- <td data-value="86.11" class="pct high">86.11%</td>
222
- <td data-value="108" class="abs high">93/108</td>
223
- <td data-value="81.08" class="pct high">81.08%</td>
224
- <td data-value="37" class="abs high">30/37</td>
225
- <td data-value="95.83" class="pct high">95.83%</td>
226
- <td data-value="24" class="abs high">23/24</td>
227
- <td data-value="90.72" class="pct high">90.72%</td>
228
- <td data-value="97" class="abs high">88/97</td>
176
+ <td data-value="80.9" class="pct high">80.9%</td>
177
+ <td data-value="110" class="abs high">89/110</td>
178
+ <td data-value="76.92" class="pct medium">76.92%</td>
179
+ <td data-value="39" class="abs medium">30/39</td>
180
+ <td data-value="92" class="pct high">92%</td>
181
+ <td data-value="25" class="abs high">23/25</td>
182
+ <td data-value="85.71" class="pct high">85.71%</td>
183
+ <td data-value="98" class="abs high">84/98</td>
229
184
  </tr>
230
185
 
231
186
  <tr>
@@ -280,8 +235,8 @@
280
235
  </td>
281
236
  <td data-value="86.53" class="pct high">86.53%</td>
282
237
  <td data-value="52" class="abs high">45/52</td>
283
- <td data-value="85.1" class="pct high">85.1%</td>
284
- <td data-value="47" class="abs high">40/47</td>
238
+ <td data-value="83.67" class="pct high">83.67%</td>
239
+ <td data-value="49" class="abs high">41/49</td>
285
240
  <td data-value="100" class="pct high">100%</td>
286
241
  <td data-value="9" class="abs high">9/9</td>
287
242
  <td data-value="87.75" class="pct high">87.75%</td>
@@ -325,8 +280,8 @@
325
280
  </td>
326
281
  <td data-value="100" class="pct high">100%</td>
327
282
  <td data-value="44" class="abs high">44/44</td>
328
- <td data-value="95.45" class="pct high">95.45%</td>
329
- <td data-value="22" class="abs high">21/22</td>
283
+ <td data-value="100" class="pct high">100%</td>
284
+ <td data-value="22" class="abs high">22/22</td>
330
285
  <td data-value="100" class="pct high">100%</td>
331
286
  <td data-value="2" class="abs high">2/2</td>
332
287
  <td data-value="100" class="pct high">100%</td>
@@ -335,11 +290,11 @@
335
290
 
336
291
  <tr>
337
292
  <td class="file high" data-value="task-store.ts"><a href="task-store.ts.html">task-store.ts</a></td>
338
- <td data-value="96.36" class="pic high">
339
- <div class="chart"><div class="cover-fill" style="width: 96%"></div><div class="cover-empty" style="width: 4%"></div></div>
293
+ <td data-value="94.54" class="pic high">
294
+ <div class="chart"><div class="cover-fill" style="width: 94%"></div><div class="cover-empty" style="width: 6%"></div></div>
340
295
  </td>
341
- <td data-value="96.36" class="pct high">96.36%</td>
342
- <td data-value="55" class="abs high">53/55</td>
296
+ <td data-value="94.54" class="pct high">94.54%</td>
297
+ <td data-value="55" class="abs high">52/55</td>
343
298
  <td data-value="85" class="pct high">85%</td>
344
299
  <td data-value="20" class="abs high">17/20</td>
345
300
  <td data-value="100" class="pct high">100%</td>
@@ -371,7 +326,7 @@
371
326
  <div class='footer quiet pad2 space-top1 center small'>
372
327
  Code coverage generated by
373
328
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
374
- at 2026-06-23T21:49:18.784Z
329
+ at 2026-07-02T19:31:50.067Z
375
330
  </div>
376
331
  <script src="../prettify.js"></script>
377
332
  <script>