whipplescript-parser 0.5.5

Parser and static checks for WhippleScript workflow source
Documentation
{
  "schema": "whipplescript.package_manifest.v0",
  "package_id": "std.messaging",
  "name": "std.messaging",
  "version": "0.1.0",
  "libraries": [
    {
      "id": "std.messaging",
      "version": "0.1.0",
      "effect_contracts": [
        {
          "id": "messaging.send",
          "effect_kind": "capability.call",
          "source_forms": ["send"],
          "input_schema": {
            "channel": "string",
            "text": "string"
          },
          "output_schema": {
            "message_id": "string",
            "channel": "string",
            "provider": "string",
            "status": "string",
            "provider_message_id": "string",
            "thread_id": "string",
            "destination": "string",
            "accepted_at": "string"
          },
          "required_capabilities": ["messaging.send"],
          "provider_kinds": ["messaging"],
          "projected_facts": ["effect.output"],
          "validation": "runtime_boundary"
        }
      ],
      "constructs": [
        {
          "id": "messaging.send",
          "construct_family": "effect_operation",
          "keyword": "send",
          "scope": "rule_body",
          "grammar": {
            "shape": "effect_operation",
            "keyword": "send",
            "slots": [
              { "name": "channel", "kind": "identifier", "connective": "via" }
            ],
            "payload": {
              "fields": [
                { "name": "text", "kind": "expression", "required": true },
                { "name": "markdown", "kind": "expression", "required": false },
                { "name": "thread_id", "kind": "expression", "required": false }
              ]
            },
            "binding": "required",
            "target_capability": "messaging.send"
          },
          "requires": [
            {
              "kind": "Capability",
              "name": "messaging.send"
            }
          ],
          "provides": [
            {
              "kind": "EffectHandle",
              "type": "MessageSendReceipt"
            }
          ],
          "lowering_target": "capability_call",
          "target_capability": "messaging.send"
        }
      ]
    }
  ],
  "capabilities": [
    {
      "id": "messaging.send",
      "description": "Send an outbound message via a declared channel.",
      "schema": {
        "input": {
          "text": "string"
        }
      }
    }
  ],
  "providers": [
    {
      "id": "provider-messaging-fixture",
      "provider_kind": "fixture",
      "capability": "messaging.send",
      "config": {}
    },
    {
      "id": "provider-messaging-local",
      "provider_kind": "std.messaging.local",
      "capability": "messaging.send",
      "config": {}
    },
    {
      "id": "provider-messaging-desktop",
      "provider_kind": "std.messaging.desktop",
      "capability": "messaging.send",
      "config": {}
    },
    {
      "id": "provider-messaging-stdio",
      "provider_kind": "std.messaging.stdio",
      "capability": "messaging.send",
      "config": {}
    }
  ],
  "profiles": [
    {
      "id": "profile-messaging-user",
      "name": "messaging-user",
      "description": "Allow outbound messaging sends over declared channels.",
      "enforcement_mode": "enforce",
      "allowed_capabilities": ["messaging.send"],
      "config": {}
    }
  ],
  "bindings": [
    {
      "id": "binding-messaging-send-fixture",
      "program_id": null,
      "capability": "messaging.send",
      "provider": "fixture",
      "config": {
        "report": {
          "direction": "bidirectional",
          "identity": "claimed_actor",
          "interactions": ["buttons", "reactions"],
          "content": ["text", "markdown"],
          "delivery_receipts": ["accepted", "failed"]
        }
      }
    },
    {
      "id": "binding-messaging-send-local",
      "program_id": null,
      "capability": "messaging.send",
      "provider": "std.messaging.local",
      "config": {
        "report": {
          "direction": "bidirectional",
          "identity": "claimed_actor",
          "interactions": ["buttons", "reactions"],
          "content": ["text", "markdown"],
          "delivery_receipts": ["accepted", "failed"]
        }
      }
    },
    {
      "id": "binding-messaging-send-desktop",
      "program_id": null,
      "capability": "messaging.send",
      "provider": "std.messaging.desktop",
      "config": {
        "report": {
          "direction": "outbound_only",
          "identity": "anonymous",
          "interactions": [],
          "content": ["text"],
          "delivery_receipts": ["accepted", "failed"]
        }
      }
    },
    {
      "id": "binding-messaging-send-stdio",
      "program_id": null,
      "capability": "messaging.send",
      "provider": "std.messaging.stdio",
      "config": {
        "report": {
          "direction": "bidirectional",
          "identity": "claimed_actor",
          "interactions": ["buttons"],
          "content": ["text", "markdown"],
          "delivery_receipts": ["accepted", "failed"]
        }
      }
    }
  ]
}