Files
kandev/docs/plans/message-queue-session-automation/task-03-update-queue-automation-documentation.md
2026-09-08 22:22:17 +01:00

6.2 KiB

id, title, status, wave, depends_on, plan, requirements, acceptance_criteria, system_design
id title status wave depends_on plan requirements acceptance_criteria system_design
03-update-queue-automation-documentation Update Queue Automation Documentation completed 3
01-persist-session-auto-merge-overrides
02-deliver-queue-automation-pills
plan.md
REQ-UI-MESSAGE-QUEUE-AUTOMATION-CONTROLS-001
REQ-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001
AC-UI-MESSAGE-QUEUE-AUTOMATION-CONTROLS-001.1
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.1
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.2
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.3
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.7
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.8
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.11
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.15
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.17
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.18
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.19
AC-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001.24
../../specs/ui/system-design/message-queue-automation-controls.md

Task 03: Update Queue Automation Documentation

Summary

Reconcile public queue guides, configuration reference, and WebSocket reference with the delivered session override and compact header controls. Remove stale claims that capacity is always rejected before a compatible automatic fold.

In scope

  • Explain global inheritance and permanent per-session override precedence in user-facing queue guidance.
  • Describe the compact Auto-run and Auto-merge pills in the expanded queue header without confusing message merging with pull-request Auto-merge.
  • Correct capacity automatic-fold behavior wherever public docs describe queue admission, including the staged-attachment exception.
  • Add queue_incarnation_id to task-session fields. Document required task_id, session_id, and session_incarnation_id on status get and every queue mutation; the gateway/handler authorize that pair and pass the exact triplet unchanged. Document stale non-retargeting errors, operation-bound response/status snapshots, epoch/generation, availability, and effective Auto-merge value/source/revision. Task-only recounts remain internal.
  • Keep configuration, operations, coordination, and session guidance consistent without copying detailed protocol text between pages.
  • After implementation and behavioral checks pass, perform one lifecycle cutover: activate both replacement requirements; deprecate the two superseded requirements without changing their IDs or acceptance text; amend message-queue-management.md with the delivered compatible-fold and staged-attachment capacity exceptions; mark the system design current; and update the UI specification indexes.

Out of scope

  • New screenshots, diagrams, or a new public page.
  • Changes to GitHub or GitLab pull-request automation documentation.
  • Production implementation details already owned by Tasks 01 and 02.

Acceptance

  • Public docs state that untouched sessions follow later global changes and an explicitly changed session remains independent for that session's lifetime.
  • Queue guidance names both compact pills, eligible direct folding at or above capacity, and staged-attachment rejection, with no contradictory claim in affected pages.
  • The WebSocket reference documents exact action/field names, pair authorization, required task/session/incarnation payloads for get and every mutation, non-retargeting errors, operation-bound status snapshots, unavailable ordering, task-only scope, incarnation matching, source/revision, and effective-value semantics. Task-session responses expose immutable queue incarnation. The final cutover leaves replacement requirements active, superseded requirements deprecated with forward links, the management capacity text aligned to delivered behavior, and the system design current.

Verification

python3 scripts/lint-spec-files.test.py
python3 scripts/lint-spec-files.py --all
node --test scripts/validate-public-docs.test.mjs
node scripts/validate-public-docs.mjs
git diff --check -- docs
git diff --cached --check -- docs
git ls-files -z --others --exclude-standard -- docs \
  | xargs -0 -r -n1 sh -c 'test -z "$(git diff --no-index --check /dev/null "$1" 2>&1)"' sh

Run all commands from the repository root.

Files likely touched

  • docs/public/coordination.md
  • docs/public/operations.md
  • docs/public/sessions-and-review.md
  • docs/public/configuration.md
  • docs/specs/ui/requirements/message-queue-automation-controls.md
  • docs/specs/ui/requirements/message-queue-auto-merge-session-overrides.md
  • docs/specs/ui/requirements/message-queue-run.md
  • docs/specs/ui/requirements/message-queue-management.md
  • docs/specs/ui/requirements/message-queue-auto-merge.md
  • docs/specs/ui/system-design/message-queue-automation-controls.md
  • docs/specs/ui/README.md
  • docs/public/websocket-api.md

Dependencies

  • Task 01 defines the final protocol and persistence behavior.
  • Task 02 defines the final user-facing labels and responsive composition.
  • This task performs the lifecycle cutover only after Tasks 01 and 02 have passed their behavioral verification; drafts must not become active earlier.

Risks

  • Existing pages describe both queued-message Auto-merge and pull-request Auto-merge; edits must remain scoped to message queues.
  • Repeating the complete precedence contract across every guide would create another set of drift-prone sources instead of linking to the owning guidance.
  • Activating replacements without deprecating and forward-linking the old contracts would leave implementers with conflicting authoritative behavior.

Parallelism

sequential

Inputs

  • REQ-UI-MESSAGE-QUEUE-AUTOMATION-CONTROLS-001
  • REQ-UI-MESSAGE-QUEUE-AUTO-MERGE-OVERRIDE-001
  • docs/specs/ui/system-design/message-queue-automation-controls.md
  • docs/decisions/2026-09-04-inherit-queue-auto-merge-until-overridden.md
  • Current public queue sections in the files listed above.

Results

Completed. Activated the replacement requirements and design, deprecated the superseded queue contracts with forward links, recorded the inheritance decision, and updated public configuration, coordination, operations, session, and WebSocket documentation. Specification and public-doc validation pass.