Skip to content

feat(kb-management): name/acronym gate + entity-creation trigger + staleness observability#159

Merged
jordanrburger merged 2 commits into
mainfrom
upstream/patterns-kb-management
Jun 23, 2026
Merged

feat(kb-management): name/acronym gate + entity-creation trigger + staleness observability#159
jordanrburger merged 2 commits into
mainfrom
upstream/patterns-kb-management

Conversation

@jordanrburger

Copy link
Copy Markdown
Collaborator

Part of the de-personalized Patterns batch — upstreaming accumulated instance rules into the engine phases (Phase-1 work for the connector-based migration, #156). Follows the method from #157.

What

Three rules added to phases/core/kb-management.md (assembles into SKILL + DREAMINGmode: [briefing, consolidation, dreaming]):

  • Never Guess a Name or Acronym Expansion (Pattern Fix README install instructions; add .claude-plugin/marketplace.json (closes #3) #14) — cite the full form from a primary source (signature, org docs, issue/PR body, calendar invite) or leave the token abbreviated and [unverified]. Never invent a plausible expansion — it reads as fact and propagates. Applies to org names, product/codenames, team names, and people's full names alike.
  • Entity-creation trigger (Pattern feat: port Fathom connector to v0.4 engine layout #19) — mint a new entity file when a person/org/technology recurs across 3+ independent sources. Enriching files you already have is not a substitute for creating the ones you're missing.
  • Staleness observability + search depth (Pattern perf(cc-session-cache): batch + cache the per-JSONL Python startups (closes #75) #88) — every KB file carries a machine-readable last_updated: (and ideally latest-commit date) so a scan can rank by staleness and a refresh driver can queue over-threshold files; opportunistic-only refresh lets the long tail rot. And don't scope completeness searches to a fixed channel set / from:me-style filters — a known-to-exist fact your scan missed is a search-depth miss, not an absence.

Verification

  • Assembly checked via _assemble(cfg, kind): all three rules land in SKILL and DREAMING and do not leak into RESEARCH (matches the file's mode: [briefing, consolidation, dreaming]).
  • Diff grepped clean of names / employer / customers / Slack IDs / repo-PR-Linear IDs / user paths. Pattern Fix README install instructions; add .claude-plugin/marketplace.json (closes #3) #14's originating example named a real customer — scrubbed; the rule is stated generically.

🤖 Generated with Claude Code

Jordan Burger and others added 2 commits June 23, 2026 14:02
…aleness observability

Three rules upstreamed from accumulated instance experience into
phases/core/kb-management.md (assembles into SKILL + DREAMING, not RESEARCH):

- Never Guess a Name or Acronym Expansion — cite the full form from a
  primary source or leave the token abbreviated and [unverified]; never
  invent a plausible expansion (it reads as fact and propagates).

- Entity-creation trigger — mint a new entity file when a person, org, or
  technology recurs across 3+ independent sources. Enriching existing files
  is not a substitute for creating the missing ones.

- Staleness observability + search depth — every KB file carries a
  machine-readable last_updated: so a scan can rank and a driver can queue
  stale files (opportunistic-only refresh lets the long tail rot); and
  don't scope completeness searches to a fixed channel set / from:me — a
  known-to-exist fact the scan missed is a search-depth miss, not absence.

Both rules are generic; originating examples (incl. a customer name) were dropped.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jordanrburger jordanrburger merged commit 8661150 into main Jun 23, 2026
5 checks passed
@jordanrburger jordanrburger deleted the upstream/patterns-kb-management branch June 23, 2026 21:52
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