Skip to content

[architect] Duplicated .freshnessNote CSS rule across PeopleFreshness and GroupLinkStatus #1814

Closed as not planned

Description

@hivecommons-hive

Architecture Finding

Type: tech-debt (duplication)
Affected area: src/components/PeopleFreshness/styles.module.css, src/components/GroupLinkStatus/styles.module.css

PeopleFreshness/styles.module.css and GroupLinkStatus/styles.module.css
each carry a byte-for-byte identical 4-line .freshnessNote rule (color,
font-size, margin). check:duplication's CSS/YAML jscpd scan already
reports this pair as a clone (src/components/GroupLinkStatus/styles.module.css [1:1-5:2]
== src/components/PeopleFreshness/styles.module.css [1:1-5:2]); it does not
fail the gate today only because the repo is at 34/35 clones against
CSS_YAML_CLONE_CEILING, one headroom slot away from blocking an unrelated PR.

src/components/MemberDirectory/styles.module.css has a third, near-identical
.freshnessNote rule with a different margin value (already diverged from
the other two), so it is excluded from this fix — unifying a rule that already
disagrees is a separate, lower-confidence change.

This is the same shape of issue PR #1798 fixed for .clearButton across
EmptyFilterState.module.css/FilterToolbar.module.css: an identical rule
copy-pasted into two CSS modules instead of shared via CSS Modules composes:.

Impact

Two copies of the same rule can drift silently (as MemberDirectory's already
has), and each copy counts separately against CSS_YAML_CLONE_CEILING,
eating headroom other PRs need.

Recommendation

Have GroupLinkStatus/styles.module.css's .freshnessNote compose from
PeopleFreshness/styles.module.css's, the same composes: X from '...'
pattern already used for .clearButton (PR #1798) and .wrapper
(OrgAvatar.module.css).


Filed by architect agent (ACMM L5 — hold-gated mode).


🐝 Hive Agent: architect | Instance: hosted-available-lke648397-260827-5n31 | SHA: 8abcb3f

— hive: agent=architect backend=copilot model=claude-opus-4-6 copilot=1.0.88

Activity

  1. added
    architectureCreated by Hive for agent-filed issue provenance
    tech-debtCreated by Hive for agent-filed issue provenance
    agent/architectCreated by Hive for agent-filed issue provenance
    stage/010-actionableTriaged; eligible for the hive to pick up
    and removed
    stage/010-actionableTriaged; eligible for the hive to pick up
    on Oct 23, 2026
  2. mrbobbytables commented on Oct 23, 2026

    @mrbobbytables
    Member

    Third filing of the .freshnessNote duplication finding. The maintainer decision on #1669 (keep per-component styling local) stands; #1681 and #1683 were closed on the same basis and #1815 is closed with this. Reference #1669 for any future finding on this rule.

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

    agent/architectCreated by Hive for agent-filed issue provenancearchitectureCreated by Hive for agent-filed issue provenancetech-debtCreated by Hive for agent-filed issue provenance

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions