fix(jobs): gate the job menu per-verb and its button on the entry count #241

Merged
nalum merged 1 commit from fix/menu-entry-count into main 2026-08-26 18:36:04 +00:00
Owner

Ticket A / §6.4.1: the ⋯ renders only when its own entry list holds two or more entries, the #178 isManager suppressions are deleted (per-verb gates only), and the sheet stops composing its own hasOptions predicate (§6.4.2). A completed job is the one adult case under the threshold — the server refuses repeat edits and re-parenting on it — so the completed sheet carries Delete as a quiet row opening the ordinary §6.2 dialog instead of a one-entry menu.

🤖 Generated with Claude Code

Ticket A / §6.4.1: the `⋯` renders only when its own entry list holds two or more entries, the #178 `isManager` suppressions are deleted (per-verb gates only), and the sheet stops composing its own `hasOptions` predicate (§6.4.2). A completed job is the one adult case under the threshold — the server refuses repeat edits and re-parenting on it — so the completed sheet carries Delete as a quiet row opening the ordinary §6.2 dialog instead of a one-entry menu. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
fix(jobs): gate the job menu per-verb and its button on the entry count
Some checks failed
check / commits (pull_request) Successful in 6s
check / go (pull_request) Successful in 2m55s
android / build (pull_request) Failing after 4m31s
check / web (pull_request) Successful in 4m59s
check / report (pull_request) Successful in 4s
android / report (pull_request) Successful in 4s
4101ccb709
Ticket A, SS6.4.1: the dots-button renders only when its own entry
list holds two or more entries - one function returns the list, the
button reads its length, the sheet renders that same list. The
isManager suppression (#178) is deleted from canRepeat and
canMakePart: the entries are gated on the matrix verbs alone, and the
count rule is what keeps a Child's one-entry menu from rendering,
exactly as SS6.4.1 derives SS7 rather than asserting it. The sheet
stops composing its own hasOptions predicate (SS6.4.2 - two
predicates that can disagree are the defect).

A completed job is the one adult case the count leaves under the
threshold: the server refuses repeat edits and re-parenting on a
completed job (setrepeat.go, setparent.go:110), so only Delete
remains. SS6.4.1's own reasoning - a one-entry sheet costs two taps
to do what a row could have done - is applied literally: the
completed sheet carries a quiet destructive Delete row instead, which
opens the ordinary SS6.2 dialog, and deleting history stays possible.

Test report

Suite Tests Result Skipped
Unit 1435 ✅ pass 1
Integration 131 ✅ pass —

Coverage: 27.0%

Updated by the check workflow · commit 087981e36e

<!-- ci-test-report --> ## Test report | Suite | Tests | Result | Skipped | | --- | --: | --- | --: | | Unit | 1435 | ✅ pass | 1 | | Integration | 131 | ✅ pass | — | **Coverage:** 27.0% <sub>Updated by the check workflow · commit 087981e36e88ae5d174969e529edd54cedfe266b</sub>

Android test report

Suite Tests Result Skipped
Unit (debug) 185 ✅ pass 0

Coverage: 9.2% of lines

Updated by the android workflow · commit 087981e36e

<!-- android-test-report --> ## Android test report | Suite | Tests | Result | Skipped | | --- | --: | --- | --: | | Unit (debug) | 185 | ✅ pass | 0 | **Coverage:** 9.2% of lines <sub>Updated by the android workflow · commit 087981e36e88ae5d174969e529edd54cedfe266b</sub>
nalum force-pushed fix/menu-entry-count from 4101ccb709
Some checks failed
check / commits (pull_request) Successful in 6s
check / go (pull_request) Successful in 2m55s
android / build (pull_request) Failing after 4m31s
check / web (pull_request) Successful in 4m59s
check / report (pull_request) Successful in 4s
android / report (pull_request) Successful in 4s
to 087981e36e
Some checks failed
check / commits (pull_request) Successful in 17s
check / go (pull_request) Successful in 3m5s
android / build (pull_request) Successful in 7m2s
check / web (pull_request) Successful in 4m33s
check / report (pull_request) Successful in 4s
android / report (pull_request) Successful in 5s
android / build (push) Has been cancelled
android / report (push) Has been cancelled
check / commits (push) Has been cancelled
check / go (push) Has been cancelled
check / report (push) Has been cancelled
check / web (push) Has been cancelled
tag / tag (push) Has been cancelled
2026-08-26 07:04:09 +00:00
Compare
nalum changed target branch from test/options-replace-goldens to main 2026-08-26 18:36:01 +00:00
nalum merged commit 087981e36e into main 2026-08-26 18:36:04 +00:00
nalum deleted branch fix/menu-entry-count 2026-08-26 18:36:05 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
eagraiclainne/app!241
No description provided.