adr-find does not expand ** globs in affected-paths #750

Open
opened 2026-09-26 21:57:23 +00:00 by jared · 0 comments
Owner

Problem

The matcher in adr-find ignores glob syntax (including ** patterns) in affected-paths entries, causing ADRs with glob-based paths to not be returned by /os-adr:find.

Observed

Observed 2026-09-26 while implementing #742: /os-adr:find on paths under plugins/os-sdlc/lib/os_sdlc/ did not return ADR-0222, whose affected-paths uses a ** glob.

Approach

Required work:

  1. Make adr-find match affected-paths entries with File.fnmatch and File::FNM_PATHNAME | File::FNM_EXTGLOB (or equivalent), with a test for a ** entry.

Origin

  • Trigger: /os-adr:find on paths under plugins/os-sdlc/lib/os_sdlc/ while implementing #742
  • Improvised this session: none
  • Chain: matcher does not expand glob syntax ← DESIGN (adr-find not glob-aware)
  • Root candidate: this ticket
  • Where: os-adr plugin
  • Ticket-skeptic verdict: CREATE — genuine bug found during in-policy work on #742 (adr-find fails to match glob affected-paths like ADR-0222's), root is adr-find itself, not an improvisation artifact.
## Problem The matcher in adr-find ignores glob syntax (including `**` patterns) in affected-paths entries, causing ADRs with glob-based paths to not be returned by `/os-adr:find`. ## Observed Observed 2026-09-26 while implementing #742: `/os-adr:find` on paths under plugins/os-sdlc/lib/os_sdlc/ did not return ADR-0222, whose `affected-paths` uses a `**` glob. ## Approach Required work: 1. Make adr-find match affected-paths entries with File.fnmatch and File::FNM_PATHNAME | File::FNM_EXTGLOB (or equivalent), with a test for a `**` entry. ## Origin - Trigger: `/os-adr:find` on paths under plugins/os-sdlc/lib/os_sdlc/ while implementing #742 - Improvised this session: none - Chain: matcher does not expand glob syntax ← DESIGN (adr-find not glob-aware) - Root candidate: this ticket - Where: os-adr plugin - Ticket-skeptic verdict: CREATE — genuine bug found during in-policy work on #742 (adr-find fails to match glob affected-paths like ADR-0222's), root is adr-find itself, not an improvisation artifact.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jared/cc-os#750
No description provided.