Skip to main content
Compendium / Maturity & Process / Flow / Signal-Driven Trigger Pip
#501

Signal-Driven Trigger Pip

Small pip showing a flow step armed by an upstream signal — work starts when the signal fires, not on a calendar.

STABLE DE
#badge #real-content #dark-mode-tested #responsive
Live

// trigger pip

on: spec.merged

Step arms when the upstream signal fires. No clock, no standup.

Spec

Intent

In a flow model, work is not scheduled — it is triggered. This pip marks a station whose activation is bound to a named signal (spec-merged, build-green, audit-flagged), making the trigger contract visible at the step.

Acceptance Criteria

  • [ ] Compact pill with signal name + trigger glyph
  • [ ] Uses pillar token for accent
  • [ ] Negative: does NOT show a date or timebox

Constraints

  • Pure markup
  • Theme-aware via tokens
// signal-driven-trigger-pip.astro
---
import type { CompendiumMeta } from '../../../data/types';

export const meta: CompendiumMeta = {
  id: 501,
  slug: 'signal-driven-trigger-pip',
  name: 'Signal-Driven Trigger Pip',
  category: 'maturity-process',
  subcategory: 'flow',
  pillar: 'de',
  description: 'Small pip showing a flow step armed by an upstream signal — work starts when the signal fires, not on a calendar.',
  spec: `## Intent
In a flow model, work is not scheduled — it is triggered. This pip marks a station whose activation is bound to a named signal (spec-merged, build-green, audit-flagged), making the trigger contract visible at the step.

## Acceptance Criteria
- [ ] Compact pill with signal name + trigger glyph
- [ ] Uses pillar token for accent
- [ ] Negative: does NOT show a date or timebox

## Constraints
- Pure markup
- Theme-aware via tokens`,
  tags: ['badge', 'real-content', 'dark-mode-tested', 'responsive'],
  status: 'stable',
  health: { ics: 88, a11y: 'aa', themed: true, animated: false },
};

const signal = 'spec.merged';
---

<div data-this-component class="w-full bg-paper text-black border-4 border-black p-4 overflow-hidden">
  <p class="font-mono text-[9px] uppercase tracking-widest opacity-60 mb-2">// trigger pip</p>
  <span class="inline-flex items-center gap-2 border-2 border-black bg-de text-black px-2 py-1">
    <span class="inline-block w-2 h-2 bg-black"></span>
    <span class="font-mono text-[10px] uppercase tracking-widest font-black">on:</span>
    <span class="font-mono text-[10px] uppercase tracking-widest font-black">{signal}</span>
  </span>
  <p class="mt-3 text-[11px] leading-snug opacity-80">
    Step arms when the upstream signal fires. No clock, no standup.
  </p>
</div>