Skip to content

docs: ext-feedback agent derivation + sensor->ai-agent matrix pair#270

Merged
maximelb merged 3 commits into
masterfrom
story-edge-mediator
Jun 12, 2026
Merged

docs: ext-feedback agent derivation + sensor->ai-agent matrix pair#270
maximelb merged 3 commits into
masterfrom
story-edge-mediator

Conversation

@maximelb

@maximelb maximelb commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Summary

Validating the deployed edge ontology against a real org's story (a human-in-the-loop pipeline: D&R rule → ext-feedback Slack approval → AI agent) exposed two gaps and one modeling rule:

  1. Derivation gap: a rule that starts an agent through ext-feedback (feedback_destination: ai_agent + ai_agent_name:) produced no derived edge — only the direct start ai agent action did. The derived-table row for dr-rule → ai-agent (starts) now covers both mechanisms.
  2. Matrix gap: a feedback/webhook mediator sensor had no legal way to declare its edge to the agent it triggers. sensor/cloud-sensor/adapterai-agent (triggers) joins the allowed-pair matrix (the label already exists in the canonical vocabulary).
  3. extension is reserved: its backing hive (extension_subscription) is internal and must never be tagged, so extension nodes can't surface and dr-rule → extension derived edges drop. Extension-mediated flows are modeled through their visible components (the mediator sensor + the derived rule→agent edge above).

Also carries the review-fix commit that missed the #269 merge (#269 was merged from a pre-review state): unified derived/declared labels, ext-playbook name: parameter, output/payload reservation + example rewrites without output nodes, slug-form edge labels in the API payload, membership semantics across drop rules, migration note, real hive set --tag-add CLI syntax, and the exact LABEL_SLUG regex.

The assembler and AI-prompt changes implementing this land separately.

🤖 Generated with Claude Code

maximelb and others added 3 commits June 11, 2026 20:28
- Unify derived vs declared labels (playbook->secret authenticates-with,
  playbook->playbook runs) so redundant links: tags can't relabel edges
- ext-playbook request parameter is 'name' (ext-feedback uses
  'playbook_name')
- Outputs are not Hive-backed: add output/payload to the Reservation
  list and rewrite both examples without output nodes
- Reservation: links:sensor drops at the matrix gate, not dangling-edge
- Clarify edge labels are slugs in the API payload, humanized at render
- Clarify membership semantics across drop rules 1-3
- Add migration note for pre-matrix declared pairs
- Structural extractors: three, dr-rule members only; fp 'op: is' exact
- Fix CLI examples to the real 'hive set --tag-add' syntax
- LABEL_SLUG regex matches the implementation (no trailing separator)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Two gaps found validating a real human-in-the-loop story (rule ->
ext-feedback approval -> AI agent):

- The dr-rule -> ai-agent edge now also derives from an extension
  request to ext-feedback with feedback_destination: ai_agent carrying
  an ai_agent_name (previously only the start ai agent action derived).
- sensor/cloud-sensor/adapter -> ai-agent (triggers) joins the
  allowed-pair matrix so a feedback/webhook mediator sensor can declare
  the edge to the agent it triggers.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
extension_subscription is an internal hive and must never be tagged, so
extension nodes cannot legitimately surface. Mark the slug reserved,
note that dr-rule -> extension derived edges drop, and document the
visible-component modeling for extension-mediated flows.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@maximelb maximelb force-pushed the story-edge-mediator branch from 21b6550 to 9c3a815 Compare June 12, 2026 03:29
@maximelb maximelb changed the base branch from story-edge-ontology to master June 12, 2026 03:29
@maximelb maximelb requested a review from lcbill June 12, 2026 03:38
@maximelb maximelb marked this pull request as ready for review June 12, 2026 03:39
@maximelb maximelb merged commit a320b42 into master Jun 12, 2026
4 checks passed
@maximelb maximelb deleted the story-edge-mediator branch June 12, 2026 03:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant