Add docs/uiRequirements.md; trim productRequirements.md to a feature description - #413
Merged
Merged
Conversation
Create a dedicated home for the popup's specific, testable UI requirements, clustered and ordered hierarchically with every leaf numbered (e.g. 5.6.1) so the UI snapshot tests can reference requirements by number. Scope is the popup only — the toolbar icon and the source-request issue form stay in productRequirements.md. Move the specific UI requirements out of productRequirements.md (added as an interim home in #409): it now carries only the rough, feature-level description and points to uiRequirements.md for the exact rendering. Both docs state the distinction. Wire the new doc into README's doc list and cross-link it so the docs-reachable guard stays green. Refs #410
The event-list scrolling, height cap, and count label are popup rendering specifics already covered by uiRequirements.md (§7-8); keep only the feature-level card description here and let the pointer cover them. The date/time/timezone rules stay: they govern the instant/duration of the Calendar event the URL creates (their purely-display halves already moved to uiRequirements §6). Refs #410
This was referenced Jul 23, 2026
Closed
missingbulb
added a commit
that referenced
this pull request
Jul 23, 2026
…or) (#712) Converge .claudinite/shared/ to the fixed Claudinite canon head (61b90ee, #413) out-of-band — a maintenance PR, NOT through the still-broken executor, which is the deadlock this breaks: the broken executor cannot run baselining to refresh its own mount to get the fix. This single vendor refresh lands the two load-bearing files: - engine/scheduler/executor.md — the executor routine's operating instructions, stripped from every cut-over consumer's mount by compute-vendor-set (all engine *.md excluded). Its absence is the root cause of #710: the executor booted with no instructions and could drain nothing, so the 6 ready-for-agent dispatches (#703-#708) accumulated unprocessed. Fixed in canon by the VENDORED_ENGINE_DOCS whitelist (#413). - packs/basics/tasks/baselining/worker.mjs — the E4 native-git agent_preprocessing worker, plus its primitives (converge-wiring.mjs, preprocess.mjs, the vendored migrations/ tree, and the run.mjs / task-contract.mjs / validate-dispatch.mjs updates). Once merged, the executor has instructions and drains the 6 stuck dispatches; baselining becomes the Action-side worker. This refresh is the start of the real E4 live pilot (per-project-scheduling / agent-preprocessing DESIGN). Stamp advances b5103ea -> 61b90ee. Refs #710, missingbulb/Claudinite#394. Claude-Session: https://claude.ai/code/session_01NxpkHKaRquzERqEeXdzUnW Co-authored-by: Claude <noreply@anthropic.com>
missingbulb
added a commit
that referenced
this pull request
Jul 27, 2026
…ch hazard (#769) This repo was carrying a 75-line `engine/scheduler/executor.md` — the copy as it stood at the stamped ref 61b90ee (#413, the commit that first shipped executor.md to consumers). Every other member of the fleet had since moved on; we had not. The gap was not cosmetic: - the **one-session/one-issue** concurrency guard was missing, so a run was free to sweep every due task instead of running only the issue that triggered it; and - the **earliest-claim-wins** tie-break was missing, so two sessions that both claimed the same issue would both proceed. Together those are precisely the guards that stop duplicate dispatch. Without them concurrent scheduler runs can file duplicate tracker issues, duplicate bug reports, and duplicate PRs making the same change — a live correctness hazard, not latent drift. Re-vendoring from current canon (526c991) brings executor.md to its present 188-line form and lands `engine/scheduler/resolve-dispatch.mjs` alongside it — the shell executor.md's step 1 now invokes. The two ship as one unit in the vendor set, so the mount stays import-closed. Stamp: 61b90ee -> 526c991. 189 files vendored (mount 192 -> 189; the net drop is the retired tidy-repo/repo-tidy task, not a truncation). Stamp lineage was checked before vendoring: 61b90ee is a genuine ancestor of origin/main, so the stamp was honest-but-stale and needed no correction. `converge-wiring.mjs` additionally corrected the scheduler workflow: `actions:` read -> write (creating a workflow_dispatch event needs write; `read` silently 403s the POST) and added the `report-failure` escalation job. No stamp fields changed and the cron minute was re-derived unchanged. check_the_world: 0 blocking before and after. Advisories 11 -> 10 — the refreshed wiring resolved `gha/scheduled-failure-escalation`. Nothing new was introduced and nothing had to be forced or suppressed. Refs missingbulb/Claudinite#394 Claude-Session: https://claude.ai/code/session_01LgokEeqgbFvhbLqbYwxHgx Co-authored-by: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
docs/uiRequirements.md— the popup's specific, numbered UI requirements, clustered and ordered hierarchically (9 clusters: heading, empty state, affordance links, card grouping & ordering, card appearance, date/time display, list/scrolling/overflow, count label, opening an event) so the UI snapshot tests can cite requirements by number (e.g.5.6.1= future-year green pill).Trims
productRequirements.mdto a rough, feature-level description: the popup-rendering specifics (added in #409 as an interim home) move into the new doc, with a pointer from each section. Both docs state the distinction.Scope split, per review:
Wired into README's doc list and cross-linked so the
docs-reachableguard stays green. Doc-only;npm run test:offline234/234.Closes #410
🤖 Generated with Claude Code
https://claude.ai/code/session_01JLLCE19fRBY51wkfJL7yi7
Generated by Claude Code