@vitrinka/cli 5.16.1 → 5.17.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +104 -0
- package/package.json +7 -7
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,110 @@
|
|
|
3
3
|
`vitrinka update` prints the sections newer than your previous version
|
|
4
4
|
after updating — keep entries short and user-facing.
|
|
5
5
|
|
|
6
|
+
## 5.17.1
|
|
7
|
+
|
|
8
|
+
**A code-mode review shows the sheet as an image, never as text.** When
|
|
9
|
+
a Codex code-mode script reads `get_card_image`, the `review` skill and
|
|
10
|
+
the annotation docs now tell it to hand the image block to the host's
|
|
11
|
+
image call (`image(block)`) and print only the text block. A script that
|
|
12
|
+
logged the whole result would otherwise feed the image's base64 to the
|
|
13
|
+
model as text, which is how one review's transcript grew to 41 GB.
|
|
14
|
+
|
|
15
|
+
## 5.17.0
|
|
16
|
+
|
|
17
|
+
**A ui-loop review keeps what did not move.** Each review batch carries a
|
|
18
|
+
digest per screen and a reviewer records the digests of the screens it
|
|
19
|
+
actually read, so retaking a few blank shots reopens only those screens,
|
|
20
|
+
never every finished batch. A screen whose shots did not change since
|
|
21
|
+
the previous pass is carried: it keeps its findings and verdicts, leaves
|
|
22
|
+
the review batches and counts as reviewed, and the scoreboard callout
|
|
23
|
+
names how many were carried.
|
|
24
|
+
|
|
25
|
+
**Several review runs share one ui-loop pass.** Each `review-loop` run
|
|
26
|
+
claims its own review batches, so a big pass can be reviewed by several
|
|
27
|
+
identical runs at once: the review stage's return says how many
|
|
28
|
+
(`parallel`), each of those runs continues as one, and a run that finds
|
|
29
|
+
every batch left already claimed ends. A run whose reviewer failed hands
|
|
30
|
+
its claimed batches to its own next run, which reviews them first.
|
|
31
|
+
Only the run that takes the pass's synthesis lease writes the backlog,
|
|
32
|
+
scores the pass and posts the callouts; any other ends saying another run
|
|
33
|
+
is synthesizing. While a capture runs, every stage waits instead of
|
|
34
|
+
starting beside it, and `areas` no longer narrows a review.
|
|
35
|
+
|
|
36
|
+
**A stalled reviewer no longer stalls the pass.** A review batch whose
|
|
37
|
+
reviewer stalls twice (the watchdog stops it) is split in halves, and the
|
|
38
|
+
same run reviews them with the agents it has left. A half that stalls
|
|
39
|
+
twice is blocked instead of retried: its screens stay unreviewed and are
|
|
40
|
+
named in the run's problems, the pass still gets its backlog, and the
|
|
41
|
+
loop then ends naming them, to judge by hand or reshoot, instead of
|
|
42
|
+
reviewing the pass again.
|
|
43
|
+
|
|
44
|
+
**A ui-loop polish loop can be paused.** `vybava ui-loop pause --reason
|
|
45
|
+
"…"` drains the whole loop: no `review-loop` stage starts (it returns
|
|
46
|
+
stage `paused`, a null `next` and the `resume` args to launch later),
|
|
47
|
+
and a running stage ends at its next boundary, after its reviewer round,
|
|
48
|
+
before the synthesis, between fix lanes or before Settle, keeping what
|
|
49
|
+
it did. `vybava ui-loop resume` lifts the pause and frees the stopped
|
|
50
|
+
runs' batch claims; launch the `resume` args and the loop goes on where
|
|
51
|
+
it stopped.
|
|
52
|
+
|
|
53
|
+
**A screen nobody could shoot is one line, not a broken finding.** A
|
|
54
|
+
ui-loop screen marked `retired` (dead code, a plugin not installed, a
|
|
55
|
+
feature off) is never shot, reviewed or counted, and `map` marks such
|
|
56
|
+
screens instead of calling them unreachable. A screen without a single
|
|
57
|
+
usable shot (unreachable, a failed recipe, an error) no longer counts
|
|
58
|
+
against review coverage or gets filed as a broken finding: each area
|
|
59
|
+
board's "Not captured this pass" card lists it once with its reason,
|
|
60
|
+
instead of once per viewport and theme. The fix round's rig lane
|
|
61
|
+
(below) repairs its recipe, and the screens a pass still has no shot of
|
|
62
|
+
when it reaches its final check are named in one problems line and keep
|
|
63
|
+
it from completing.
|
|
64
|
+
|
|
65
|
+
**A cross-lane fix is reworked, not blocked.** A ui-loop fix lane whose
|
|
66
|
+
fix needs a file another lane owns now defers the item with the change
|
|
67
|
+
it needs there, and the fix stage gives it a rework lane after the area
|
|
68
|
+
lanes that owns both, so it is fixed in the same round. A block now
|
|
69
|
+
means the fix waits on something outside the repo (seed data, a
|
|
70
|
+
backend, another repo, a decision), and the run that ends the fix round
|
|
71
|
+
returns every such item of the round in one list, `ownerQuestions`, to
|
|
72
|
+
ask their owner in a single batch. A skipped, blocked or deferred item
|
|
73
|
+
stays checkpointed while its own files are unchanged, whatever other
|
|
74
|
+
lanes commit; one that no longer counts is listed in the stage's
|
|
75
|
+
`stale`, and the next fix round takes it.
|
|
76
|
+
|
|
77
|
+
**A ui-loop fix round repairs its capture recipes.** The round ends with
|
|
78
|
+
one rig lane that fixes the recipes a renamed label or a dead step broke:
|
|
79
|
+
the literal names `vybava ui-loop check --labels` finds in no label
|
|
80
|
+
source, the screens the pass never shot (unless the manifest marks them
|
|
81
|
+
unreachable with the seed data) and those whose recipe failed; a screen
|
|
82
|
+
whose code is dead or whose feature is off it marks `retired`. It
|
|
83
|
+
reaches a control by its role and accessible name (the harness's
|
|
84
|
+
`action` step) instead of a CSS or `nth=` selector, checks each repair
|
|
85
|
+
with `vybava ui-loop run --probe` before it checkpoints it, re-renders
|
|
86
|
+
the app map with them, and the verify pass reshoots those screens. A
|
|
87
|
+
screen it cannot repair joins the round's `ownerQuestions` when its
|
|
88
|
+
environment blocks it, or `reworkStuck` when the repair needs the app
|
|
89
|
+
or the rig's project file. A pass whose review converged gets the same
|
|
90
|
+
repair: the loop runs the rig lane on it and then captures the screens
|
|
91
|
+
it repaired, instead of ending with them unshot. A label miss no longer
|
|
92
|
+
stops a capture, and `map` writes new recipes the same way.
|
|
93
|
+
|
|
94
|
+
**A ui-loop pass triages its failures.** After each capture, and before
|
|
95
|
+
the review writes the backlog, `vybava ui-loop triage` groups the shots
|
|
96
|
+
that failed by cause. Screens that failed on infrastructure (a network
|
|
97
|
+
blip, a page that stayed blank) come back as one `vybava ui-loop run
|
|
98
|
+
--retake …` command in the stage's problems, and one application
|
|
99
|
+
failure behind many screens is filed as ONE broken item that names them
|
|
100
|
+
all, instead of a finding per screen. A recipe whose literal left the app
|
|
101
|
+
goes to the fix round's rig lane.
|
|
102
|
+
Every ui-loop stage needs Výbava v0.45.0 or later (ui-loop state
|
|
103
|
+
contract 10) and refuses an older one; run
|
|
104
|
+
`brew upgrade --cask vybava`. Update vitrinka with it: an older vitrinka
|
|
105
|
+
neither waits for a running capture, shares a review between runs nor
|
|
106
|
+
splits a stalled batch, it cannot finish a review in which a newer one
|
|
107
|
+
blocked a batch, it would complete a pass whose never-shot screens it
|
|
108
|
+
never names, and it stops a fix round in which a lane deferred an item.
|
|
109
|
+
|
|
6
110
|
## 5.16.1
|
|
7
111
|
|
|
8
112
|
**Every survey uses the contact sheet.** The `publish` and `resolve` skills
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vitrinka/cli",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.17.1",
|
|
4
4
|
"description": "vitrinka CLI — capture and publish artifact sets, drive the annotation-board work queue. Thin npm launcher for the single-binary Go CLI.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"vitrinka": "bin/vitrinka.js"
|
|
@@ -15,12 +15,12 @@
|
|
|
15
15
|
"node": ">=18"
|
|
16
16
|
},
|
|
17
17
|
"optionalDependencies": {
|
|
18
|
-
"@vitrinka/cli-darwin-arm64": "5.
|
|
19
|
-
"@vitrinka/cli-darwin-x64": "5.
|
|
20
|
-
"@vitrinka/cli-linux-arm64": "5.
|
|
21
|
-
"@vitrinka/cli-linux-x64": "5.
|
|
22
|
-
"@vitrinka/cli-win32-arm64": "5.
|
|
23
|
-
"@vitrinka/cli-win32-x64": "5.
|
|
18
|
+
"@vitrinka/cli-darwin-arm64": "5.17.1",
|
|
19
|
+
"@vitrinka/cli-darwin-x64": "5.17.1",
|
|
20
|
+
"@vitrinka/cli-linux-arm64": "5.17.1",
|
|
21
|
+
"@vitrinka/cli-linux-x64": "5.17.1",
|
|
22
|
+
"@vitrinka/cli-win32-arm64": "5.17.1",
|
|
23
|
+
"@vitrinka/cli-win32-x64": "5.17.1"
|
|
24
24
|
},
|
|
25
25
|
"keywords": [
|
|
26
26
|
"vitrinka",
|