Repository navigation
workflow: a paused run is named Paused in the strip and in the Runs tab - #2426
Conversation
A Stop that could not release one of its Bots leaves the run live with `paused: true` and `releasePending`; docs/subsystems/workflow.md says it "shows as Paused". The stage chip and its meta line used the Pause action's name instead, and `runHistoryRows` dropped `paused`, so the Runs tab drew the frozen run as Running while it hands nothing on. Fixes ThinkFlowLab#2423 Docs-not-needed: docs/subsystems/workflow.md already promises that a run left by a failed release "shows as Paused"; this makes both surfaces match it.
|
@Birfy review request for this exact tip: Ready at this tip: red-first taken on the clean base (the strip names the frozen run by its action, the Runs tab drops Please review |
1 similar comment
|
@Birfy review request for this exact tip: Ready at this tip: red-first taken on the clean base (the strip names the frozen run by its action, the Runs tab drops Please review |
|
Verdict: PASS at a7d3c7f Ran at this tip: Reviewed tip CI at this tip: Red first, one pass: over the tip tarball with The change matches what the issue asked for. The new test mounts the real Not run: Format: the change follows the file around it, adds no configuration key, dependency or interface widening, and the changelog fragment is present and in the repo's form. Admission line: a reproducible display defect with a test that fails when the source change is reverted — satisfied. Checkpoint block in the body is complete and correct for this PR. |
Fixes #2423
Owner: Dev-3
Reviewer: Birfy
Written-by: Dev3
Claim-Id: c0cac2b619a34a3dacb4afb7acbbcc7c
Branch: dev/3-workflow-paused-label
Tip: a7d3c7f
Tree: 93e23bb6a0f917af2fd42d6a23fb5200f12e02bf
Base: 16d1645
Diff: 3 files, +43/−4
Tier: T2
why: [] — the highest path is
plugins/workflow/client.jsat T2 under the liverisk-rules.jsonat this base;plugins/workflow/test/**andchangelog.d/**are T1What was wrong
A Stop whose Bot release fails leaves the run live with
paused: trueandreleasePending(plugins/workflow/src/service.js:1400-1427), anddocs/subsystems/workflow.md:41says that run "shows as Paused". The panel drew it two other ways:plugins/workflow/client.js:521-527): both the status chip and the meta line usedtr('Pause')— the name of the Pause action — forrun.paused, so the chip read like a button label.plugins/workflow/client.js:1057-1065):runHistoryRowscopiedstatus,task,atandfailurebut droppedpaused, so the frozen run fell through to the genericRunningchip (plugins/workflow/client.js:1386-1396) — the one tab a reader opens to see what a run is doing said the opposite of the stage's own record.What changed
plugins/workflow/client.js(+7/−4): the strip's chip and meta sayPaused;runHistoryRowscarriespaused: run.paused === true; the Runs row usesPausedfor both label and chip class. The zh catalog gainsPaused: '已暂停'. Resume is still offered; nothing about a live or writable run changed.plugins/workflow/test/client.test.js(+35): one test that mounts the realSection, handsworkflow/stateadeliverygraph withruns: [{ ...run, id: 'run-p', paused: true, status: 'running' }], opens the flow and the Progress tab, and reads both surfaces.changelog.d/workflow-paused-run-label.fixed.md(+1).What I ran
16d16456+ only this test file:plugins/workflow412 tests, 411 pass, 1 fail —not ok 216 a paused run is named Paused in the strip and in the Runs history,actual ['Pause']vsexpected ['Paused'](the Runs half fails as['Running']once the strip is fixed).TZ=UTC ARCH_DOCS_BASE=16d16456 npm run verify— exit 0, 4844/4844 tests, 0 fail, 0 cancelled (core 2851, social 574, tree 132, timeline 141, workflow 412,.github+policy 671, interop 37, live-e2e 26); lint 0 errors (core 77 warnings — unchanged; social 36 / timeline 9 / tree 2 / workflow 16; the 1 interop warning is the pre-existingdev/interop/isolation/probe.mjsone);arch-docs: OK (3 changed file(s))with the commit'sDocs-not-needed:line.node scripts/ds-bot-patches.mjs generatetwice — exit 0 both, no diff (nothing underpatches/orcore/client.jsmoved; the plugin's ownclient.jsis its source).node scripts/ds-bot-patches.mjs check—ok ds-bot/ = Fei2411/DeepSeek-Bot@2b10c70,ok 10 patches apply cleanly in order,ok core/ equals ds-bot/ + patches/ds-bot/;canonical—ok patches/ds-bot/ is what generate writes (generate is a no-op).node core/scripts/build-client.mjs --check— exit 0 (also inside verify).judge(): T2,risk-tier: T2; basis: plugins/workflow/client.js=T2, plugins/workflow/test/client.test.js=T2, changelog.d/workflow-paused-run-label.fixed.md=T1, 47 lines / 3 files.Not run
core/index.jsorcore/src/host/changed.Tip
a7d3c7f5was built by the push helper from the same tree (93e23bb6) the checks ran on (31ba0ff7).Checkpoint
{ "pr": 2426, "claim": "Dev-3", "issue": 2423, "summary": "A run frozen by a Stop whose Bot release failed kept `paused: true` but was drawn by the Pause action's name in the stage strip and as `Running` in the Runs tab. Both surfaces now say `Paused`, the word the subsystem doc already promises, and the Runs row carries the run's `paused` flag. A live or writable run is unchanged and Resume is still offered.", "files": ["plugins/workflow/client.js", "plugins/workflow/test/client.test.js", "changelog.d/workflow-paused-run-label.fixed.md"], "checks": { "ran": "TZ=UTC ARCH_DOCS_BASE=16d16456 npm run verify; node scripts/ds-bot-patches.mjs check; node scripts/ds-bot-patches.mjs generate twice; node core/scripts/build-client.mjs --check", "result": "green", "at": "a7d3c7f5204a1d62508d097eb2de729825417fd0" }, "next": "none — ready for review" }