data2dsl

Ticket 061: Fix markdown actor claim parsing and metric.id mapping across adapters (F04, F05)

Goal and scope

Fix audit findings F04 and F05:

  1. MarkdownClaimExtractor.extract_commit_claim (line 235) was matching any line containing "commit" due to an OR condition, incorrectly assigning Bob’s commits to Alice when Bob was listed first. Require exact actor matching.
  2. In Deta, IntentContract, and OQL adapters, metric fields were queried using metric.get("name") / metric.get("property"), which are not part of canonical query/v0 metrics (only metric.id exists), causing metric matching to fail and convert measurements to 0.0 or empty sets (resulting in false MATCH outcomes).
  3. Distinguish missing measurements from valid 0.0 values; return UNEVALUABLE for unknown/unsupported metrics rather than silent fallback to 0.0.

SESSION_EXECUTION_AUTHORIZATION recorded from user prompt.

Acceptance criteria

Participants