Skip to content

fix(harness): count the Agent Map generating state in the terminology allowlist - #849

Open
gwitwer wants to merge 1 commit into
mainfrom
fix/agent-map-pane-terminology-allowlist
Open

fix(harness): count the Agent Map generating state in the terminology allowlist#849
gwitwer wants to merge 1 commit into
mainfrom
fix/agent-map-pane-terminology-allowlist

Conversation

@gwitwer

@gwitwer gwitwer commented Sep 6, 2026

Copy link
Copy Markdown
Collaborator

main is red on pnpm terminology:check and has been since 8495be2 (the merge of #844). This is the one-line fix.

What happened

#844 added a third neutral state to AgentMapPane.tsx, agent-map-generating, carrying the same private design-system icon="Workflow" identifier the loading and empty states already carry. The allowlist entry covering that file still declares "occurrences": 2. The guard fails an entry that matches more than it declares, which is the guard doing its job: an allowlist that silently absorbs new matches would stop being a record of what was reviewed.

Stale terminology allowlist entries found:
  agent-map-pane-icon-identifier [workflow] - packages/harness/web/src/components/AgentMapPane.tsx / ^Workflow$ (expected 2, matched 3)

Why bumping the count is the right fix, not changing the code

All three matches are the icon prop, a private design-system identifier, on neutral states:

Line State Visible title
107 agent-map-loading "Loading Agent Map…"
129 agent-map-generating "Generating Agent Map…"
159 agent-map-empty "Nothing generated yet"

No user-visible string says "workflow" in any of them, which is what the guard is actually protecting. The declared count is what is out of date, so it moves to three and the reason now names the generating state alongside the other two.

Verification

pnpm terminology:check goes from the failure above to Agent Studio terminology check passed (965 files, no stale allowlist entries).

Why this is its own PR

It is nobody's feature, and it blocks every PR rebased past 8495be2, including #841. It should be able to merge on its own rather than ride in behind a feature review.

🤖 Generated with Claude Code

https://claude.ai/code/session_019o9uM8fivJobCpT5zd4ChM

… allowlist

`main` is red on `pnpm terminology:check`, and has been since #844: it added a
third neutral Agent Map state to `AgentMapPane.tsx` carrying the same private
`icon="Workflow"` design-system identifier, while the allowlist entry that
covers that file still declares two. The guard treats an entry matching more
than it declares as stale and fails, which is the guard working correctly.

The third occurrence is the same private icon identifier as the other two, on
`agent-map-generating`, a neutral state with no user-visible "workflow"
anywhere. So the count is the thing that is wrong, not the code: bumped to
three and the reason now names the generating state alongside loading and
empty.

Split out of #841 rather than fixed inside it. It is nobody's feature, it
blocks every PR rebased past 8495be2, and it should be able to merge on its
own.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019o9uM8fivJobCpT5zd4ChM
@github-actions

github-actions Bot commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

Review — PR #849

Verified independently:

  • AgentMapPane.tsx has exactly three icon="Workflow" matches (lines 107, 129, 159), all on the icon prop of EmptyState; the visible title strings are "Loading Agent Map…", "Generating Agent Map…", "Nothing generated yet" — none leaks the term the rule guards.
  • scripts/agent-studio-terminology-check.mjs:518 fails an entry when used !== occurrences, i.e. exact match in both directions, so 3 is the only correct value and an over-count would fail just as loudly as the under-count did.
  • agent-map-pane-icon-identifier is referenced nowhere but the allowlist itself, so no fixture or unit test pins the old 2.
  • Nothing published changes: scripts/ sits outside every package and the root manifest is "private": true, so no changeset is owed and no tarball content moves.
  • No confidentiality exposure. The changed reason string names only Sapiom-internal UI states, and it is not a published prose surface; the PR body cites only bare owner/repo#NNN-equivalent PR numbers and commit shas.

Nits

  1. This failure mode will recur — any future neutral state added to AgentMapPane.tsx re-reds main the same way; the durable fix is for the PR that adds the state to bump the count in the same commit, as fix(harness): reset legacy maps and initialize existing projects #844 should have.

Verdict: approve. One-line allowlist correction, factually accurate, unblocks main. No findings.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant