Skip to content

fix(directory): a third audit fixture survived the filter that hid its two siblings - #845

Merged
catomean merged 1 commit into
mainfrom
fix-audit-group-fixtures
Aug 29, 2026
Merged

fix(directory): a third audit fixture survived the filter that hid its two siblings#845
catomean merged 1 commit into
mainfrom
fix-audit-group-fixtures

Conversation

@catomean

Copy link
Copy Markdown
Collaborator

fix(directory): a third audit fixture survived the filter that hid its two siblings

Verifying #843 on the live site showed the context switcher had gone from three
junk groups to one: "Audit WF009 …" and "Audit WF009b …" were correctly hidden,
and "Audit Group 1783191071580" was still sitting there.

FIXTURE_GROUP_TITLE is an allow-list of wordings we happened to have seen —
audit wf, ephemeral verify, workflow audit. Audits keep inventing new
ones, so the list is always one fixture behind, and the failure is silent: the
row simply looks like a team the user joined.

So match the generating signature instead of the wording: an audit-ish first
word followed by the millisecond epoch a fixture appends to keep names unique.
Keying on the timestamp is what makes widening safe — a real group is named by a
person, and people do not append an epoch. That matters more here than in most
products, because OrangeCat is heading for governance, where "Audit Committee"
is a group somebody will genuinely create. Tests pin both directions, and the
predicate is proven by mutation: drop the new clause and "Audit Group
1783191071580" comes back.

Because this is the shared SSOT, it fixes Discover and People too, not just the
switcher.

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

…s two siblings

Verifying #843 on the live site showed the context switcher had gone from three
junk groups to one: "Audit WF009 …" and "Audit WF009b …" were correctly hidden,
and "Audit Group 1783191071580" was still sitting there.

`FIXTURE_GROUP_TITLE` is an allow-list of wordings we happened to have seen —
`audit wf`, `ephemeral verify`, `workflow audit`. Audits keep inventing new
ones, so the list is always one fixture behind, and the failure is silent: the
row simply looks like a team the user joined.

So match the *generating* signature instead of the wording: an audit-ish first
word followed by the millisecond epoch a fixture appends to keep names unique.
Keying on the timestamp is what makes widening safe — a real group is named by a
person, and people do not append an epoch. That matters more here than in most
products, because OrangeCat is heading for governance, where "Audit Committee"
is a group somebody will genuinely create. Tests pin both directions, and the
predicate is proven by mutation: drop the new clause and "Audit Group
1783191071580" comes back.

Because this is the shared SSOT, it fixes Discover and People too, not just the
switcher.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Sh5aTRjzkcZkTyiu9D5RCM
@catomean
catomean merged commit b67147d into main Aug 29, 2026
6 checks passed
@catomean
catomean deleted the fix-audit-group-fixtures branch August 29, 2026 10:39
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