Skip to content

planning: lay out multiple "needs" chips in one row and mark met prerequisites in text #5917

Closed

Description

@kyle-sexton

Severity: low

Problem

Each "needs Qn" chip is its own flex row inside the flex-column .qbody (index.html:130, 134, 748), so a question with five prerequisites takes five extra lines in the rail. Met and unmet prerequisites differ only by colour (.needs.unmet, index.html:136).

Expected

All "needs" chips sit in one wrapped row under the title, and a met prerequisite is marked by more than colour.

Suggested fix

In railItem (index.html:748), wrap the chips in one <span class="needsrow"> with display:flex; flex-wrap:wrap; gap:4px, and add "(answered)" text or an icon for met prerequisites (parentMet, index.html:640).

Acceptance criteria

  • A question with five prerequisites renders them in one wrapped row under its title, at desktop and phone widths.
  • Met and unmet prerequisites can be told apart without colour.

Activity

  1. added
    needs-triageNot yet classified. Floor until a type and one priority tier are set.
    on Oct 2, 2026
  2. kyle-sexton commented on Oct 4, 2026

    @kyle-sexton
    MemberAuthor

    This was generated by AI during triage.

    Routing: delegable, work-class: scoped (C3, bug-fix), priority: low. Verified against current code: each "needs Qn" chip renders as its own block inside the rail item's flex-column body, and met vs unmet chips differ only by colour. No open decision; the acceptance criteria are testable.

    Basis: verified, plugins/planning/surface/index.html:130 (.qbody flex column), :134-136 (.needs, .needs.unmet colour only), :748 (one span per prerequisite in railItem).

    Serialize: this edits the same rail-item builder as #5922 and the other interview-page fixes (#5815, #5908, #5910, #5911, #5913, #5916). Dispatch one at a time.

    Agent Brief

    Type: Bug
    Summary: On the /planning:interview page, lay out a question's "needs Qn" prerequisite chips in one wrapped row and mark met prerequisites without relying on colour.

    Current behavior:
    In the question rail, each prerequisite chip ("needs Q5") is its own row under the question title, so a question with five prerequisites takes five extra lines. A met prerequisite and an unmet one differ only by text colour.

    Desired behavior:

    • All of a question's prerequisite chips sit in a single row under its title that wraps when it runs out of width, at desktop and phone widths.
    • A met prerequisite (answered, or archived off the path, the same predicate the page already uses for "met") carries a non-colour marker, such as "(answered)" text or an icon with an accessible label, so met and unmet can be told apart in greyscale and by a screen reader.
    • Unmet chips keep their current look apart from layout.

    Key interfaces:

    • The rail-item builder (railItem) and its "needs" chip markup.
    • The existing "parent met" predicate; reuse it, do not add a second definition.

    Acceptance criteria:

    • A question with five prerequisites renders them in one wrapped row under its title at desktop and phone widths.
    • Met and unmet prerequisites can be told apart without colour (visible text or an icon with an accessible name).
    • The surface test suite passes.

    Out of scope:

  3. added
    priority: lowNice-to-have, cosmetic, or speculative; opportunistic.
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    work-class: scopedA briefed fix or small feature; blast radius bounded by the brief, tests exist.
    status: readyTriaged, unblocked, and fully specified; eligible to pick up.
    and removed
    needs-triageNot yet classified. Floor until a type and one priority tier are set.
    on Oct 4, 2026
  4. kyle-sexton commented on Oct 4, 2026

    @kyle-sexton
    MemberAuthor

    This was generated by AI during work-loop.

    Ratify autonomous dispatch of this C3 bug-fix item?

    Classification: work-class: scoped (C3), bug-fix-shaped (confirmed at triage). Intended dispatch: the work-loop worker lane, through /work-items:work, to a draft PR the lane never merges, serialized with the other interview-page fixes. First drain is not complete and no item-level ratification exists, so it is queued here. Ratify through /work-items:attend-queue.

    Lane: work-loop, instance melo-worker-1, cycle 2.

  5. added
    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.
    and removed
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    on Oct 4, 2026
  6. kyle-sexton commented on Oct 11, 2026

    @kyle-sexton
    MemberAuthor

    Delivered on branch feat/planning-interview-page-batch in draft PR #7182, one commit for this issue (with Closes #5917).

    The needs chips share one wrapped row under the title, and a met prerequisite carries a check mark with an "answered" accessible label.

    Verified: ui_page phase 1 checks a five-prerequisite question at 1440 and 390 px; ui_a checks the row layout. The full surface.test.sh was last run in full before the final page commits; the later commits were checked with the ui_page phases. Its one standing failure (AC34 "user name found") is an environment artifact that also fails on main.

    Left for a human: the PR stays a draft until Kyle flips it to ready, which starts the CI and review lanes.

    The needs-human label was left for Kyle to clear.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.priority: lowNice-to-have, cosmetic, or speculative; opportunistic.status: readyTriaged, unblocked, and fully specified; eligible to pick up.work-class: scopedA briefed fix or small feature; blast radius bounded by the brief, tests exist.

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions