Skip to content

P02 #3057: show subtle project file count pill preserving the current filter #3061

Closed

Description

@mblua

Purpose

Frontend phase P02 of #3057. Deliver option B selected by the user: a quiet outlined pill with the exact positive file count beside the Project name, before the search icon, on the existing header line.

Reviewed specification

Canonical phase: .ac/plans/3057-project-file-difference-count/P02-v3-project-difference-pill.md.
Phase SHA256: 6F88DACDB61474A085C908EFFDFE2C51ED83B3872CEAD37A6C6665833AD36B38.
Parent plan: epic-v2.md, SHA256 39B923530C94634AE2AE65BE373AEE83E11096F7C6C7F5B329992521708801C9 in that directory.

Owner: ac-dev-webpage-ui-v5. Class: design-bearing. Dependency: P01 merged into origin/main, with verified ancestry. No standalone app build requested.

Scope

Modify src/shared/ipc.ts, src/sidebar/components/ProjectPanel.tsx, and src/sidebar/styles/sidebar.css; add src/sidebar/components/ProjectPanel.file-difference.test.tsx. Preserve the current filter overlay, geometry, transition, controls and interactions, as expressly requested by the user. The existing overlay may cover the pill while filtering. No filter redesign, settings, synchronization action or additional panel.

Acceptance and verification

Positive count is exact, subdued and static; verified zero hides the pill; unavailable is distinguishable from zero. Preserve collapsed visibility and accessible separation from the collapse button. Sequential immediate/15-second-after-settle polling with owner cleanup, no overlapping requests or stale updates after disposal. Use the common IPC facade. Focused real-component DOM tests cover data, failure/recovery and lifecycle; reuse filter/collapse/keyboard suites. Typecheck and dependency guards must pass. CSS review preserves the filter and reserves space once. No claim of GUI validation without it. Require applicable checks on the exact PR head. This phase's PR closes only this child; parent closure follows integrated acceptance.

Activity

  1. mblua commented on Oct 19, 2026

    @mblua
    OwnerAuthor

    P02 implementation has started after P01 delivery: PR #3066 merged at bb63518; that SHA is the verified ancestor and fresh phase base. Branch: feat/3061-project-file-difference-pill.

    Current canonical set supersedes the historical parent-plan reference in the original issue body:

    • plan-v16-project-file-difference-count.md: F59826EC4037B09E1B79963C2CE5505A3E49BD8639E3014C6AEBCAB7FF4C39C5
    • epic-v15.md: F9C80F24B29870830BF96C6BC471563E9B858029CD0EB69C46B83E37462DDC90
    • P02-v3-project-difference-pill.md, unchanged: 6F88DACDB61474A085C908EFFDFE2C51ED83B3872CEAD37A6C6665833AD36B38

    The approved mapping retains this child, UI owner, four files, and P01 dependency. Exact five-party consensus and user approval receipt were reverified. Phase cold gate passed. Architect and UI independently confirmed current-source fit with no redesign, observer changes, filter changes, or new files beyond the approved scope.

    Implementation and specified local checks are assigned to the UI owner. Independent implementation review and exact-head CI remain pending. No GUI validation or final app build is claimed or requested. This phase PR will close only #3061; epic #3057 remains open until integrated acceptance.

  2. added a commit that references this issue on Oct 19, 2026
  3. mblua commented on Oct 19, 2026

    @mblua
    OwnerAuthor

    Delivered in #3116, merged as 0e8136a.

    The quiet Project-root file count is integrated; verified zero hides it, unavailable data shows a dash, and the current filter remains intact. Sequential polling and cleanup are covered by 49 local tests, typecheck, dependency checks and independent correctness/architecture reviews.

    CI run 39185217703 attempt 2 passed on tested head 96845f2: 16 expanded jobs, 24 current PR checks and all 14 required contexts. The isolated Windows installer failure did not reproduce on the single requested unchanged-head repeat; no installer change was made. The later main delta was independently classified unrelated and recorded on the PR; actual merge tree matches the clean prediction and preserves upstream.

    Repository is clean on synchronized main. CSS validation was static; no rendered GUI verification or final app build was requested. No remaining work for this child.

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions