UI Interview: Quick-Scan Overview

Confirmed alignment page for the approved Quick-Scan Overview UI branch packet.

Skill: ui-interview Status: confirmed Confirmation date: 2026-07-05 Product path: research/afps-tracker Visual tier: prototype Interview provenance: live-ui-interview

Table of Contents

Confirmed Status

alignment_status: confirmed

Confirmation date: 2026-07-05

Confirmed artifacts: design/afps-tracker/ui-quick-scan-overview.md, design/afps-tracker/ui-quick-scan-overview-interview.md, design/afps-tracker/flow-tree-afps-tracker.yaml, and design/afps-tracker/ui-mockup-quick-scan-overview.html.

This page is current for the completed alignment cycle. Later research can amend it only by archiving this confirmed page and highlighting the amendment.

Approval Record

Final compiled YAML approved the required gate with no notes or requested edits.

# Invoke with: $ui-interview quick-scan-overview
command: "$ui-interview quick-scan-overview"
alignment_page: alignment/ui-interview-quick-scan-overview.html
response_status: complete
approval_status: ready-for-agent-review
required_gate_status: complete
unanswered_required_questions: []
gate_answers:
  - section: Final UI Packet Decision
    gate_type: approval
    status: answered
    answer: "approve"
    notes: ""
    target_artifact: design/afps-tracker/ui-quick-scan-overview.md

Rendered Approved Packet

Preliminary UI Interview Research: Quick-Scan Overview

Interview provenance: live-ui-interview

Invocation: $ui-interview quick-scan-overview

Product path: research/afps-tracker

Topic: quick-scan-overview

Status: approved canonical UI branch packet

Alignment page: alignment/ui-interview-quick-scan-overview.html

Interview Stage

This is the chunked-mode assemble-and-approve session for $ui-interview quick-scan-overview in full UI branch-review mode. The UI Assumptions Manifest and open decisions were confirmed in research/afps-tracker/_working/interrogation-ui-interview-r1.yaml, the shared context brief was written at docs/history/archive/2026-07-05/160900/design/afps-tracker/_working/ui-interview-quick-scan-overview-brief.md, and the five page-specific intermediates under docs/history/archive/2026-07-05/160900/design/afps-tracker/ui-interview-quick-scan-overview/ now exist. This is the approved canonical UI branch packet for the Quick-Scan Overview UI experiment after final compiled alignment-page approval on 2026-07-05.

Proposed Canonical Destinations

Source Evidence

Branch Investigation And Decision Record

Parent user-flow branch: uf-orient-portfolio

Selected UX variation branch: quick-scan-overview

Touched sibling flows: selected-path verification, evidence/provenance inspection, diagnostics recovery, inactive/promoted boundary explanation, handoff/export. These remain outside the Quick-Scan Overview branch except as secondary links or carried context.

Competing or coordinating sibling UX variations: trust-first source health, diagnostics-first recovery, portfolio-map grouping, and command/resume-first orientation from the approved ux-variations packet.

Branch decision: approved as the first Quick-Scan Overview UI experiment under uf-orient-portfolio after final compiled YAML approval from alignment/ui-interview-quick-scan-overview.html on 2026-07-05.

Prototype-First Boundary

First clickable journey: scan repo-local AFPS artifacts, show a quick portfolio overview, select a route-safe active or warning-level path, and hand off to selected-path verification with trust and warning context preserved.

Experiment route map: Loading / Scan -> Portfolio Overview -> Selected Row Preview, with alternate outcomes to Empty / No-AFPS State and Blocking Diagnostic Summary.

Fixture or fake data: allowed for scan status, path counts, grouped rows, source-health states, warning counts, diagnostic refs, and selected path facts.

Visually mocked infrastructure only: repo-local scanning, source parsers, diagnostics source refs, trust/confidence derivation, and downstream sibling-flow routes.

Deferred production infrastructure: file watcher, persistent storage, source mutation/write-back, auth, accounts, collaboration, deployment, analytics, command execution, copy-next-command, final handoff/export.

Evidence required before implementation planning promotes deferred infrastructure: prototype evaluation showing operators can orient quickly without losing source-trust visibility, and UAT evidence that warning/blocked/suppressed states are understood before continuation.

Coverage Checkpoint

---

UI Interview Brief: Quick-Scan Overview

Invocation: $ui-interview quick-scan-overview

Product path: research/afps-tracker

Parent user-flow branch: uf-orient-portfolio

Selected UX variation branch: quick-scan-overview

Visual mockup: design/afps-tracker/ui-mockup-quick-scan-overview.html

Interrogation sidecar: research/afps-tracker/_working/interrogation-ui-interview-r1.yaml

Confirmed UI Assumptions Manifest

IDSourceDecisionResolved meaning
product-user[from spec]ConfirmedPrimary user is an AFPS power user / AI workflow operator returning to repo-local AFPS state after context loss, session restart, compaction, handoff, or branch-state review.
branch-boundary[from artifact]ConfirmedThis UI branch covers only orientation to the product portfolio: open tracker, scan active and parallel paths, and select one path for deeper verification.
coordination[from artifact]ConfirmedSelected-path verification, evidence/provenance inspection, diagnostics recovery, handoff/export, and inactive/promoted boundary explanation stay sibling flows.
pages-routes[from artifact]ConfirmedThe branch has five screen/state surfaces: Loading / Scan, Portfolio Overview, Selected Row Preview, Empty / No-AFPS State, and Blocking Diagnostic Summary.
hierarchy[from research]ConfirmedFirst-screen hierarchy is source-health strip, count summary, grouped path list, row-level warnings, then selected preview.
controls-states[from codebase]ConfirmedControls and states preserve source-native trust envelopes, warning visibility, disabled reasons, and normal-route suppression rules from the approved model.
visual-stack[inferred]ConfirmedUse a restrained, utilitarian web UI mockup with static/local data and no production storage, auth, networking, or write-back implementation.

Confirmed Open Decisions

Warnings in the first screen: use a persistent source-health strip plus row-level warning badges. Blocking issues interrupt the quick path with a banner. Non-blocking warnings stay visible without taking over row scanning.

Selected-path preview depth: show label, status, stage, trust level, warning count, and the enabled or disabled reason for Continue to verify path. Exclude copy-next-command and full evidence/provenance detail from the orientation screen.

Default layout: desktop uses a top source-health strip, count summary, grouped path list, and right-side selected preview. Tablet and mobile move the selected preview into an inline expansion below the selected row.

Scope Boundaries

The branch may show portfolio-level source health, path counts, grouped rows, row-level warning badges, selected row highlight, a compact selected-row preview, suppressed-route reasons, and secondary links into sibling flows.

The branch must not expose primary copy-next-command behavior, full evidence/provenance detail, write-back controls, command execution, account/collaboration controls, storage architecture, file watcher behavior, or implementation sequencing.

Page Inventory

Loading / Scan

Purpose: communicate that AFPS Tracker is reading repo-local source files. It shows the repository label, scan status, source-health/count skeletons, grouped-row skeletons, and any early source-access diagnostic placeholder. Loading must not imply network activity. Prior state, if retained later, must be labelled as prior until the current scan completes.

Portfolio Overview

Purpose: let the operator orient and select. It shows the header, source-health strip, portfolio count summary, grouped active/parallel/context rows, row select affordances, warning badges, trust badges, suppressed-route reasons, and secondary source-health links.

Selected Row Preview

Purpose: confirm selection without turning orientation into selected-path verification. On desktop it appears as a right-side preview. On tablet and mobile it becomes an inline expansion below the selected row. It shows only compact selection facts and the enabled/disabled reason for Continue to verify path.

Empty / No-AFPS State

Purpose: avoid fabricated guidance. It names the source checked, explains that no AFPS product paths were found, exposes relevant diagnostics, and avoids active-route guidance when source artifacts do not support it.

Blocking Diagnostic Summary

Purpose: preserve orientation while preventing false confidence. It interrupts the quick path with a banner, names affected source files/path refs, keeps readable rows visible, and disables or suppresses unsafe actions with explicit reasons.

Global Shell And Navigation Decisions

The first UI proposal uses a shallow shell: repository title, source scan freshness, source-health strip, count summary, grouped path list, and selected preview. No global sidebar is required for this branch. Secondary navigation is limited to source health, row diagnostics, boundary explanation, evidence inspection, and provenance inspection as links into sibling flows.

The primary action is Continue to verify path. It is enabled only when a selected path is active or warning-level and not blocked by contradiction, unreadable required source, promoted boundary, out-of-scope boundary, unresolved ref, or malformed source. The action carries selected path ID, trust level, parser confidence, source confidence, warnings, and diagnostic refs forward.

Evaluation Criteria

First-value clarity: the operator can identify active and parallel paths within a few seconds.

Source-trust visibility: warning, partial, blocked, unresolved, inactive, and promoted states are visible before selection.

Branch-selection speed: the user can select a path without opening diagnostics first when source state is clean or warning-level.

Boundary safety: inactive, promoted, archived, deferred, revisit-candidate, unresolved, contradicted, unsupported, and out-of-scope paths do not appear as normal active routes.

Preview discipline: selected preview remains compact and does not absorb selected-path verification, evidence/provenance inspection, or handoff/export behavior.

Responsive viability: desktop side preview becomes an inline expansion on tablet/mobile without requiring a horizontal table for first value.

Carried Branch Decision Context

The approved UX variation set recommends quick-scan-overview as the first UI branch under uf-orient-portfolio. This brief does not approve the UI experiment. It only carries confirmed assumptions and the whole-branch mockup into chunked page-specific specification sessions.

---

Page Intermediate: Loading / Scan Page Spec

Source file: docs/history/archive/2026-07-05/160900/design/afps-tracker/ui-interview-quick-scan-overview/loading-scan.md

Loading / Scan Page Spec

Scope

The Loading / Scan page is the first transient surface in the Quick-Scan Overview branch. It communicates that AFPS Tracker is reading repo-local AFPS source artifacts, preserves trust boundaries while the current scan is unresolved, and prepares the operator for the Portfolio Overview, Empty / No-AFPS State, or Blocking Diagnostic Summary.

This page must not imply network activity, background account sync, production storage, file watcher behavior, command execution, write-back, or final handoff readiness. It may show retained prior scan information only when every retained value is labelled as prior state until the current scan completes.

Source Evidence

User Goal And Success Condition

The operator should understand, within a second or two, that AFPS Tracker is scanning local repository artifacts and has not yet produced current portfolio guidance.

Success conditions:

Layout Anatomy

Desktop And Wide Desktop

Use the same shallow shell as the resolved overview so the page does not reflow dramatically after scan completion:

  1. Header strip at the top, full width, 64-76px tall.
  2. Main content constrained to the same max width as the overview, approximately 1360px.
  3. Source-health placeholder strip directly below the header.
  4. Count-summary skeleton row below the source strip.
  5. Main workspace grid with grouped-row skeletons on the left and a scan-status / prior-state panel on the right.
  6. Optional early diagnostic banner above the source-health placeholder when source access fails before path parsing begins.

Desktop grid:

Tablet

At widths below approximately 1040px:

Mobile

At widths below approximately 700px:

Component Inventory

Content:

Default scan text:

If a scan is taking longer than expected:

The header must not say syncing, uploading, connecting, or any phrase that implies a remote service.

Source-Health Skeleton Strip

Purpose: reserve the resolved source-health position while avoiding claims before scan completion.

Cells:

Each cell uses:

If an early source-access diagnostic exists, this strip may show a warning or blocked state only for the affected source-access fact, with unresolved fields still shown as checking.

Count Summary Skeletons

Purpose: reserve portfolio count positions.

Cards:

Each card shows a skeleton number block and label. Do not show zero counts while the scan is incomplete unless the scan has definitively reached the no-AFPS state.

Grouped Row Skeletons

Purpose: preview the row-scanning structure used by the Portfolio Overview.

Groups:

Each group contains 2-3 row skeletons with stable column positions:

The Select placeholder must be visibly disabled and must not be clickable while the current scan is unresolved.

Scan-Status / Prior-State Panel

Desktop location: right column.

Tablet/mobile location: inline below the grouped skeletons.

Content:

Prior-state notice copy:

Early Diagnostic Banner

Show this only when the scan has already detected a source-access issue before portfolio rows are trustworthy.

Warning copy:

Blocking copy:

The banner links only to a diagnostics sibling flow placeholder when such a route exists in the prototype. It must not expose repair commands on this page.

Control Inventory

Disabled Row Select Placeholders

Label:

State:

Disabled reason:

Screen reader name:

Label:

Behavior:

Disabled reason:

Label:

Behavior:

Disabled reason:

Primary Action Placeholder

The page may reserve space for Continue to verify path, but the action must be disabled or hidden while loading.

Disabled reason:

Do not show copy-next-command, export, handoff, write-back, or command execution controls.

Copy Requirements

Use concise, source-native language:

Avoid:

Interaction States

Default Loading

Slow Loading

Trigger when scan exceeds the prototype's chosen loading threshold.

Prior State Retained

Early Warning

Early Blocking Issue

Empty Completion Transition

When the scan completes and no AFPS paths exist:

Error

For unrecoverable UI-level rendering errors, show a compact error region within the shell:

Offline

Offline status should not block a local scan unless the app shell itself requires unavailable assets. If shown, label it separately:

Visual And Spatial Rules

Accessibility Requirements

  1. Header repository context
  2. Source-health / diagnostic banner
  3. Count summary placeholders
  4. Grouped skeleton sections
  5. Scan-status / prior-state panel
  6. Enabled diagnostics/source links, if any

Data Requirements

Fields this page may consume:

Fields this page must not require:

Transition Rules

Downstream Handoff Constraints

The Loading / Scan page passes only scan status, source-health summary, diagnostic refs, and prior-state labels forward. It does not pass selected path context because selection cannot happen here.

The later screen builder should treat this as one flow-step batch that establishes the shell and loading placeholders before resolved overview content is layered on top.

Open Risks

---

Page Intermediate: Portfolio Overview Page Spec

Source file: docs/history/archive/2026-07-05/160900/design/afps-tracker/ui-interview-quick-scan-overview/portfolio-overview.md

Portfolio Overview Page Spec

Scope

The Portfolio Overview page is the primary first-value surface for the Quick-Scan Overview branch. It appears after the repo-local scan has produced a trustworthy enough portfolio snapshot and lets an AFPS operator orient to active, parallel, inactive/context, promoted, unresolved, and warning-level paths without reading raw source files.

This page may show portfolio-level source health, path counts, grouped rows, row warnings, trust badges, suppressed-route reasons, selected-row highlight, and compact links into sibling flows. It must not absorb selected-path verification, evidence/provenance inspection, diagnostics recovery, handoff/export, copy-next-command behavior, write-back controls, account/collaboration features, production storage, or command execution.

Source Evidence

User Goal And Success Condition

The operator should identify active and parallel product paths, understand source trust and warnings, and select one path for deeper verification within a few seconds.

Success conditions:

Layout Anatomy

Desktop And Wide Desktop

Use a shallow, operational dashboard layout with the source-trust envelope above the path list:

  1. Header strip at the top, full width, 64-76px tall.
  2. Main content constrained to approximately 1360px, centered on very wide screens.
  3. Source-health strip directly below the header.
  4. Portfolio count summary below source health.
  5. Workspace grid with grouped path rows on the left and selected preview on the right.
  6. Optional warning or blocking banner above grouped rows when portfolio-level issues affect route safety.

Desktop spacing:

The selected preview may be sticky below the header once content scrolls, but it must not cover source-health or warning banners. If the viewport is too short, keep the panel static and let the page scroll normally.

Tablet

At widths below approximately 1040px:

Mobile

At widths below approximately 700px:

Component Inventory

Content:

The header must frame the page as repo-local orientation. Avoid sync, upload, connected, or other remote-service language.

Source-Health Strip

Purpose: make source trust visible before any row is selected.

Cells:

Each cell contains:

State rules:

Portfolio Count Summary

Cards:

Optional cards when source evidence supports them:

Each card shows a number, label, and short state hint when useful. Counts must be source-derived; do not show fabricated zeroes for categories the source did not evaluate.

Grouped Path List

Default group order:

  1. Active Paths
  2. Parallel And Boundary Context
  3. Inactive / Deferred / Archived Context, only when present and useful
  4. Unresolved Or Blocked Refs, either as its own group or visibly inside the affected group

Group header content:

Active Paths should be open by default. Context groups may be open by default when they contain warnings, promoted boundaries, unresolved refs, or suppressed-route facts that matter to the first-value read.

Product-Path Row

Canonical row content:

Variations:

Rows must not hide warnings behind hover-only controls. The row should remain understandable with no pointer hover.

Warning And Diagnostic Badges

Badge labels:

Badges use color, label text, and icon or shape variation where available. Warning and blocked badges must expose accessible names with severity and count.

Selected Preview Region

On desktop, the selected preview lives in the right column. On tablet and mobile, it belongs to the Selected Row Preview page/state as an inline expansion under the selected row.

Portfolio Overview owns the placement and row-selection trigger, but the detailed selected preview content is specified in selected-row-preview.md. The overview must reserve enough space and selected context for that page/state without expanding into full verification.

Control Inventory

Row Select Button

Labels:

Behavior:

Disabled reason examples:

Screen reader names:

Explain Button

Label:

Behavior:

This control must not look like normal active continuation.

Review Button

Label:

Behavior:

Group Collapse Toggle

Use only for secondary context groups when the list becomes long.

Labels:

Rules:

Label:

Behavior:

Disabled or hidden only when no source refs exist. If disabled, show: Source health details are unavailable because source refs were not produced.

Label:

Behavior:

Disabled reason:

Label:

Behavior:

Primary Action: Continue To Verify Path

The Portfolio Overview may show the primary action inside the selected preview region. If shown here, the control behavior is:

Label:

Enabled when:

Disabled reason examples:

Do not expose copy-next-command, handoff/export, mutation, write-back, or command execution controls.

Copy Requirements

Primary heading:

Helper copy:

Source-health warning copy:

Blocking banner copy:

Suppressed-route examples:

Avoid:

Interaction States

Default Clean Portfolio

Warning-Level Portfolio

Partial Source

Multiple Active Paths

Unresolved Active Ref

Blocking Portfolio Issue

Empty Or No-AFPS

This page should not render as a zero-count normal overview when no AFPS product paths are found. Route to Empty / No-AFPS State.

Loading

This page should not show unresolved skeletons after entering the resolved overview. Loading behavior belongs to Loading / Scan.

Error

For UI rendering failure after a scan result exists:

Offline

Offline status should not block a repo-local overview by itself. If shown, label separately:

Visual And Spatial Rules

Accessibility Requirements

  1. Header repository context
  2. Source-health strip and source-health link
  3. Count summary
  4. Portfolio-level warning or blocking banner
  5. Active path group rows and row actions
  6. Context/boundary groups and row actions
  7. Selected preview and primary action, when present
  8. Secondary source, warning, and boundary links

Data Requirements

Fields this page may consume:

Fields this page must not require:

Transition Rules

Downstream Handoff Constraints

The Portfolio Overview passes source-health summary, path counts, selected path ID, parser confidence, source confidence, trust level, warnings, diagnostic refs, source refs, and suppressed-route reasons into downstream sibling flows.

It does not pass a copy-ready command, final handoff answer, production implementation plan, source mutation request, or account/session state.

The later screen builder should treat this page as the main resolved orientation batch: establish source-health, counts, grouped rows, and desktop selected-preview placement before layering inline selected preview behavior for smaller breakpoints.

Open Risks

---

Page Intermediate: Selected Row Preview Page Spec

Source file: docs/history/archive/2026-07-05/160900/design/afps-tracker/ui-interview-quick-scan-overview/selected-row-preview.md

Selected Row Preview Page Spec

Scope

The Selected Row Preview is the compact confirmation state that appears after an operator selects a product path row in the Quick-Scan Overview branch. It confirms what was selected, preserves trust and warning context, and explains whether Continue to verify path is enabled or disabled.

This surface must not become selected-path verification. It may show label, status, stage, trust level, warning count, diagnostic count, source-confidence summary, and the enabled or disabled reason for continuing. It must not expose copy-next-command behavior, full evidence/provenance detail, repair instructions, write-back controls, command execution, final handoff/export, or implementation sequencing.

Source Evidence

User Goal And Success Condition

The operator should be able to confirm that the intended row is selected and understand the next safe route without opening a full detail page.

Success conditions:

Layout Anatomy

Desktop And Wide Desktop

On desktop, the preview appears in the right column of the Portfolio Overview workspace.

Placement and structure:

  1. Right-side panel, approximately 340-380px wide.
  2. Panel top aligns with the grouped path list top, below any portfolio-level warning or blocking banner.
  3. Selected identity block at the top.
  4. Compact status and trust summary below the identity block.
  5. Warning/diagnostic summary below trust facts.
  6. Primary action block with enabled or disabled reason.
  7. Secondary links at the bottom.

Desktop spacing:

When no row is selected, the panel remains present as an empty-selection prompt so the right column does not jump.

Tablet

At widths below approximately 1040px:

Mobile

At widths below approximately 700px:

Component Inventory

Empty Selection Panel

Shown before a row is selected.

Content:

The empty panel may include a disabled primary action to reserve space:

Do not show fake selected path data.

Selected Identity Block

Content:

Rules:

Compact Status Summary

Fields:

Display:

Warning And Diagnostic Summary

Content:

State labels:

Rules:

Primary Action Block

Primary action:

Enabled only when:

Enabled helper copy:

Disabled reason examples:

The disabled reason is visible as text near the disabled action and exposed programmatically.

Links are contextual and may be hidden when no relevant refs exist.

Inspect Source

Label:

Behavior:

Disabled reason:

Review Warnings

Label:

Behavior:

Disabled reason:

Explain Boundary

Label:

Behavior:

Visibility:

Review Diagnostics

Label:

Behavior:

Visibility:

Control Inventory

Primary Button: Continue To Verify Path

Label:

Behavior:

Disabled behavior:

Screen reader names:

Labels:

Behavior:

Close Or Collapse Control

Desktop:

Tablet/mobile:

Label:

Rules:

Copy Requirements

Empty selection:

Selected path:

Avoid:

Interaction States

No Selection

Clean Active Selection

Warning-Level Active Selection

Partial Or Inferred Source Selection

Unresolved Selection

Blocking Diagnostic Selection

Selection Change

Loading

Error

If preview rendering fails while row data remains visible:

Offline

Offline status does not block this repo-local preview by itself. If shown, label separately:

Visual And Spatial Rules

Accessibility Requirements

  1. Selected row control in the path list
  2. Preview heading
  3. Status and trust summary
  4. Warning or diagnostic summary
  5. Continue to verify path
  6. Disabled reason, if present
  7. Secondary links
  8. Collapse control on tablet/mobile, if present

Data Requirements

Fields this preview may consume:

Fields this preview must not require:

Transition Rules

Downstream Handoff Constraints

The Selected Row Preview may pass selection identity, route-safety classification, trust level, parser confidence, source confidence, warnings, diagnostic refs, source refs, and disabled/suppression reasons to sibling flows.

It does not pass a copy-ready command, final answer, export payload, source mutation request, repair instruction, production implementation plan, account state, or collaboration state.

The later screen builder should treat this state as a layer on top of the Portfolio Overview: desktop right-panel content first, then tablet/mobile inline expansion behavior.

Open Risks

---

Page Intermediate: Empty / No-AFPS State Page Spec

Source file: docs/history/archive/2026-07-05/160900/design/afps-tracker/ui-interview-quick-scan-overview/empty-no-afps-state.md

Empty / No-AFPS State Page Spec

Scope

The Empty / No-AFPS State appears when the repo-local scan completes and AFPS Tracker cannot find source-backed AFPS product paths for the current repository scope. Its job is to tell the operator exactly what source was checked, preserve diagnostic visibility, and avoid inventing active-route guidance.

This page may show repository identity, checked source locations, scan freshness, no-path result, source-health facts, missing-source diagnostics, and links into diagnostics or source/provenance sibling flows. It must not show a normal zero-count portfolio overview, fabricate active paths, recommend a next command, expose write-back or repair controls, or imply that AFPS Tracker can continue to selected-path verification without source-backed path evidence.

Source Evidence

User Goal And Success Condition

The operator should understand that the tracker performed a local scan, found no AFPS product paths, and cannot offer a normal active-route path until source artifacts exist or diagnostics are resolved.

Success conditions:

Layout Anatomy

Desktop And Wide Desktop

Use the same shallow shell as Loading / Scan and Portfolio Overview so the empty result feels like a scan outcome, not a separate marketing-style empty dashboard.

Structure:

  1. Header strip at the top, full width, 64-76px tall.
  2. Main content constrained to approximately 960-1120px, centered inside the same page padding system as the overview.
  3. Source-health strip directly below the header, showing scan completion and no-path source status.
  4. Empty result panel below source health.
  5. Checked source list and diagnostic summary below the result panel.
  6. Secondary actions row below diagnostics.

Desktop spacing:

Do not reserve the right-side selected preview column in this state. There is no selected path.

Tablet

At widths below approximately 1040px:

Mobile

At widths below approximately 700px:

Component Inventory

Content:

Rules:

Source-Health Strip

Purpose: make the empty result auditable before the page explains the absence of paths.

Cells:

State rules:

Empty Result Panel

Content:

Visual rules:

Checked Source List

Purpose: show what was actually inspected.

Content:

Rules:

Diagnostic Summary

Purpose: preserve troubleshooting context without turning this page into recovery instructions.

Content:

Diagnostic examples:

Rules:

Disabled Primary Route Block

The page may reserve the primary-action location to explain why no normal route is available.

Label:

State:

Disabled reason:

Rules:

Secondary Actions

Secondary actions must be clearly subordinate to the empty result and source-health facts.

Inspect Source Health

Label:

Behavior:

Disabled reason:

Review Diagnostics

Label:

Behavior:

Disabled reason:

Return To Scan

Label:

Behavior:

Disabled reason:

Rules:

Copy Requirements

Primary copy:

Source copy:

Diagnostic copy:

Avoid:

Interaction States

Clean Empty Result

Missing Source

Partial Source

Unreadable Or Malformed Source

Unsupported Or Out-Of-Scope Repository

Loading

The Empty / No-AFPS State must not appear while the scan is unresolved. Loading behavior belongs to Loading / Scan.

Blocking

When blocking source issues prevent AFPS Tracker from safely deciding whether paths exist, route to Blocking Diagnostic Summary instead of presenting this as a valid empty result.

Error

For UI rendering failure after an empty scan result exists:

Offline

Offline status should not invalidate a repo-local empty result by itself. If shown, label separately:

Visual And Spatial Rules

Accessibility Requirements

  1. Header repository context
  2. Source-health strip and source-health link
  3. Empty result panel
  4. Disabled primary route reason, when present
  5. Checked source list
  6. Diagnostic summary
  7. Secondary actions

Data Requirements

Fields this page may consume:

Fields this page must not require:

Transition Rules

---

Page Intermediate: Blocking Diagnostic Summary Page Spec

Source file: docs/history/archive/2026-07-05/160900/design/afps-tracker/ui-interview-quick-scan-overview/blocking-diagnostic-summary.md

Blocking Diagnostic Summary Page Spec

Scope

The Blocking Diagnostic Summary appears when source conditions make normal quick-scan routing unsafe. Its job is to interrupt false confidence, name the blocking source facts, preserve any readable portfolio context, and disable or suppress unsafe actions with explicit reasons.

This surface may show repository identity, scan freshness, portfolio-level source health, affected source paths or refs, blocking categories, warning counts, readable rows, suppressed-route reasons, and secondary links into diagnostics, source health, provenance, or boundary explanation sibling flows. It must not expose repair commands, write-back controls, copy-next-command behavior, command execution, final handoff/export, account/collaboration controls, or production implementation sequencing.

Source Evidence

User Goal And Success Condition

The operator should understand that AFPS Tracker found blocking source conditions, see which source facts are affected, and still use any readable context without mistaking it for route-safe active work.

Success conditions:

Layout Anatomy

Desktop And Wide Desktop

Use the same shallow shell as the Portfolio Overview so the operator can keep orientation while the blocking issue interrupts unsafe continuation.

Structure:

  1. Header strip at the top, full width, 64-76px tall.
  2. Main content constrained to approximately 1360px, centered on very wide screens.
  3. Blocking banner directly below the header and above the source-health strip.
  4. Source-health strip below the banner, with blocked state prominent.
  5. Two-column diagnostic workspace:
  1. Optional affected-source table below the workspace when multiple refs are involved.
  2. Secondary action row below diagnostics.

Desktop spacing:

The diagnostic panel may become sticky below the header only when it will not overlap the blocking banner or source-health strip. If the blocking explanation is long, prefer normal page scroll over a nested panel scroll.

Tablet

At widths below approximately 1040px:

Mobile

At widths below approximately 700px:

Component Inventory

Content:

Rules:

Blocking Banner

Purpose: interrupt the quick path before the user scans rows or acts on selected-path routing.

Default content:

Variations:

Rules:

Source-Health Strip

Purpose: show the blocked source-trust envelope before row details.

Cells:

State rules:

Blocking Diagnostic Panel

Desktop location: right column.

Tablet/mobile location: directly after the source-health strip.

Content:

Example disabled reasons:

Rules:

Readable Context Rows

Purpose: preserve orientation when some portfolio data can still be trusted.

Content per row:

Rules:

Affected Source List

Purpose: make the diagnostic auditable without exposing full provenance detail.

Content:

Rules:

Suppressed Primary Route Block

Primary route label:

State:

Visible disabled reason:

Rules:

Secondary Actions

Secondary actions are subordinate to the blocking explanation and preserve diagnostic context.

Review Diagnostics

Label:

Behavior:

Disabled reason:

Inspect Source Health

Label:

Behavior:

Disabled reason:

Inspect Readable Source

Label:

Behavior:

Visibility:

Disabled reason:

Explain Boundary

Label:

Behavior:

Visibility:

Control Inventory

Disabled Primary Button: Continue To Verify Path

Label:

Disabled behavior:

Screen reader names:

Row Review Button

Labels:

Behavior:

Disabled reason:

Label:

Behavior:

Disabled reason:

Label:

Behavior:

Disabled reason:

Group Collapse Toggle

Label:

Rules:

Copy Requirements

Primary copy:

Diagnostic copy:

Row copy:

Avoid:

Interaction States

Blocking With Readable Rows

Blocking With No Trustworthy Rows

Unreadable Required Source

Malformed Source

Contradicted Source

Unresolved Ref

Boundary Or Scope Block

Warning-Level But Not Blocking

This page should not appear for warning-only conditions. Warning-only states belong in Portfolio Overview and Selected Row Preview with visible warning badges and enabled continuation when route-safe.

If a warning escalates during the scan:

Loading

Blocking Diagnostic Summary should not appear until the scan knows a blocking condition exists. Early source-access failures during scan may appear as the Loading / Scan early diagnostic banner first.

Error

If the diagnostic summary itself cannot render while source-health facts exist:

Offline

Offline network state does not itself create a blocking diagnostic for repo-local AFPS scanning. If shown, label separately:

Visual And Spatial Rules

Accessibility Requirements

  1. Header repository context
  2. Blocking banner
  3. Review diagnostics or banner secondary action, when present
  4. Source-health strip
  5. Blocking diagnostic panel
  6. Disabled primary route and disabled reason
  7. Readable context rows or source summary
  8. Row-level review/inspect/explain links
  9. Affected source list
  10. Secondary action row

Data Requirements

Fields this page may consume:

Fields this page must not require:

Transition Rules

Downstream Handoff Constraints

The Blocking Diagnostic Summary may pass source-health state, route-safety classification, parser confidence, source confidence, warning refs, diagnostic refs, affected source paths, affected path IDs, readable source refs, boundary kind, suppression reason, and disabled-route reasons to sibling flows.

It does not pass a copy-ready command, final answer, export payload, source mutation request, repair instruction, production implementation plan, account state, collaboration state, or full evidence/provenance body.

The later screen builder should treat this as the route-safety interruption for Quick-Scan Overview: banner and source-health first, readable context second, disabled primary continuation with explicit reason, and diagnostics/source/boundary routes as secondary exits only.

Visual Mockup Reference

The whole-branch visual mockup is available at design/afps-tracker/ui-mockup-quick-scan-overview.html. It is referenced here as source evidence and should be reviewed alongside this packet when judging layout, hierarchy, controls, copy, and state treatment.

This alignment page does not embed the mockup as an iframe; the review substance is rendered directly above, and the mockup remains a supplemental repo-local artifact.

Next Work

Recommended next skill: $build-ui-screens ui-quick-scan-overview.