Skip to main content
← Back to list
01Issue
FeatureShippedExtensionsPublic
Assigneesskunk-ape

Relationships

#2667 gatorwalk-factory: requireField matches only equal values

Opened by skunk-ape · 9/29/2026· Shipped 9/29/2026

Found while mapping the swamp-extensions process onto the gatorwalk lifecycle format (swamp-club #2630; see gatorwalk-factory/lifecycles/swamp-extensions.md, Format gaps).

The evidence-recorded gate's requireField can only demand that a field equal a value. 'type is not bug' or 'confidence is one of high, medium' cannot be written. In swamp-extensions.yaml triage therefore has one exit per non-bug type (feature, platform, security, all to plan), and 'confidence is not low' is a cel gate.

This matters beyond verbosity: the graph analysis only proves sibling exits exclusive through requireField, so a condition written in cel instead is reported as a possible ambiguous exit.

Wanted: requireField (or a sibling) that can express not-equal and one-of, and that the graph analysis's exclusivity check understands.

02Bog Flow
✓OPEN✓TRIAGED✓IN PROGRESS✓SHIPPED+ 1 MOREASSIGNED+ 8 MOREREVIEW+ 15 MOREPR_LINKED+ 2 MORESESSION_SUMMARIZED

Shipped

9/29/2026, 5:46:38 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
skunk-ape assigned skunk-ape9/29/2026, 4:39:14 PM
Editable. Press Enter to edit.

skunk-ape commented 9/29/2026, 3:58:55 PM

Decision (2026-09-29, from the format-gap review): in play for launch. Suggested shape: do not overload requireField with operator objects, because its values may legitimately be objects, so something like an in-object would be ambiguous. Add a sibling on evidence-recorded (for example match) that takes a JSON Schema fragment per field path, validated with the same JSON Schema 2020-12 validator the format already uses, so there is no new dialect. The graph analysis's exclusivity check needs to understand const, enum and not of those. Then simplify lifecycles/swamp-extensions.yaml's triage exits with it. #2666 (conditional approval) is being built in parallel and also touches gates.ts and graph.ts, so expect a rebase.

Sign in to post a ripple.