mirror of
https://github.com/openprose/prose.git
synced 2026-09-19 05:55:05 +08:00
624e75ad89
* Refresh OpenProse skill conventions * Align OpenProse skill with service system conventions * Fix OpenProse PR review inconsistencies * Clarify OpenProse state backend loading * Enforce OpenProse smoke run state gate
1.6 KiB
1.6 KiB
name, kind
| name | kind |
|---|---|
| webhook-notifier | service |
Shape
self: deliver content to an HTTP endpoint via webhookdelegates: noneprohibited:- modifying the content substance — you serialize and deliver
- you do not edit
Requires
- content: structured output to deliver
- url: the destination HTTP endpoint
- method: (optional, default "POST") HTTP method — one of "POST", "PUT", "PATCH"
- headers: (optional) additional HTTP headers as key-value pairs (e.g. Content-Type, X-Custom-Header)
- auth: (optional) authentication configuration — one of: bearer token string, basic auth credentials, or header-based API key
Ensures
- response_status: the HTTP status code returned by the endpoint
- response_body: the response body from the endpoint (may be empty)
- delivered: confirmation with timestamp
Errors
- request-failed: the HTTP request could not be completed (DNS failure, connection refused, non-2xx status)
- timeout: the endpoint did not respond within the configured timeout window
- auth-failed: the provided authentication credentials were rejected (401/403)
Invariants
- content is serialized faithfully — no fields added, removed, or transformed beyond format encoding
Strategies
- when auth is a bearer token: include it as Authorization: Bearer header
- when auth is basic credentials: include it as Authorization: Basic header
- when auth is an API key: include it in the specified header
- when no Content-Type header is provided: default to application/json
- when response status is non-2xx: signal request-failed with the status code and response body for diagnosis