Skip to main content
← Back to list
01Issue
FeatureShippedSwamp CLI
Assigneesstack72

Relationships

#1417 Teach swamp skill how to write assert workflow steps

Opened by stack72 · 7/26/2026· Shipped 7/26/2026

Context

PR #1970 adds assert step type to workflows — a CEL predicate that evaluates over prior step data and records pass/fail. The swamp skill (.claude/skills/swamp/) has workflow reference docs but doesn't cover assert steps yet.

What needs updating

The workflow references in the skill need to document:

  1. Assert step syntaxtask.type: assert with expr, message, severity fields
  2. YAML quoting rules — CEL expressions with double quotes inside need >- block scalars to avoid YAML parse errors. This tripped us up during the first real usage and the agent needs to know about it.
  3. data.latest() access pattern — assert exprs access data via data.latest("model", "spec").attributes.<field>, not .content.<field>
  4. --fail-on and --junit flags — when to use severity thresholds and JUnit output
  5. Common CEL patterns.contains() for string checks, == for equality, &&/|| for compound predicates

Example the skill should teach

- name: vpc-cidr-correct
  task:
    type: assert
    expr: >-
      data.latest("describe-infra", "result").attributes.stdout.contains("[IP-1]/16")
    message: "VPC does not have expected CIDR [IP-1]/16"
    severity: high

Note the >- block scalar — without it, the double quotes inside .contains() break YAML parsing.

02Bog Flow
OPENTRIAGEDIN PROGRESSSHIPPED+ 1 MOREASSIGNED+ 2 MOREREVIEW+ 4 MOREPR_MERGED+ 1 MORENOTIFICATION_SKIPPED

Shipped

7/26/2026, 11:35:41 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
stack72 assigned stack727/26/2026, 10:39:42 PM

Sign in to post a ripple.