github.com/humanagencyprotocol/hap-profiles/publish@0.4
Publishing authority — governs posting public content to social media, blogs, and other platforms
Bounds Schema
| Field | Type | Required | Description |
|---|---|---|---|
profile | string | Yes | - |
post_daily_max | number | Yes | Maximum posts published per day |
post_monthly_max | number | Yes | Maximum posts published per month |
Key order: profile, post_daily_max, post_monthly_max
Context Schema (local only)
| Field | Type | Required | Description |
|---|---|---|---|
allowed_platforms | string | Yes | Authorized publishing platforms |
content_type | string | Yes | Authorized content formats |
audience | string | Yes | Authorized audience visibility |
Key order: allowed_platforms, content_type, audience
Full Definition
{
"id": "github.com/humanagencyprotocol/hap-profiles/publish@0.4",
"name": "Content Publishing",
"version": "0.4",
"description": "Publishing authority — governs posting public content to social media, blogs, and other platforms",
"boundsSchema": {
"keyOrder": [
"profile",
"post_daily_max",
"post_monthly_max"
],
"fields": {
"profile": {
"type": "string",
"required": true
},
"post_daily_max": {
"type": "number",
"required": true,
"displayName": "Daily post limit",
"description": "Maximum posts published per day",
"unit": "count",
"boundType": {
"kind": "cumulative_count",
"window": "daily"
}
},
"post_monthly_max": {
"type": "number",
"required": true,
"displayName": "Monthly post limit",
"description": "Maximum posts published per month",
"unit": "count",
"boundType": {
"kind": "cumulative_count",
"window": "monthly"
}
}
}
},
"contextSchema": {
"keyOrder": [
"allowed_platforms",
"content_type",
"audience"
],
"fields": {
"allowed_platforms": {
"type": "string",
"required": true,
"displayName": "Platforms",
"description": "Authorized publishing platforms",
"enum": [
"linkedin"
],
"constraint": {
"type": "string",
"enforceable": [
"subset"
]
}
},
"content_type": {
"type": "string",
"required": true,
"displayName": "Content types",
"description": "Authorized content formats",
"enum": [
"text",
"image",
"article"
],
"constraint": {
"type": "string",
"enforceable": [
"subset"
]
}
},
"audience": {
"type": "string",
"required": true,
"displayName": "Audience",
"description": "Authorized audience visibility",
"enum": [
"public",
"connections"
],
"constraint": {
"type": "string",
"enforceable": [
"subset"
]
}
}
}
},
"executionContextSchema": {
"fields": {
"allowed_platforms": {
"source": "declared",
"description": "Platform being published to (checked against authorized platforms)",
"required": true,
"constraint": {
"type": "string",
"enforceable": [
"subset"
]
}
},
"content_type": {
"source": "declared",
"description": "Content format being published",
"required": true,
"constraint": {
"type": "string",
"enforceable": [
"subset"
]
}
},
"audience": {
"source": "declared",
"description": "Audience visibility for this post",
"required": true,
"constraint": {
"type": "string",
"enforceable": [
"subset"
]
}
},
"post_count_daily": {
"source": "cumulative",
"cumulativeField": "_count",
"window": "daily",
"description": "Running daily post count (resolved from execution log)",
"required": true,
"constraint": {
"type": "number",
"enforceable": [
"max"
]
}
},
"post_count_monthly": {
"source": "cumulative",
"cumulativeField": "_count",
"window": "monthly",
"description": "Running monthly post count (resolved from execution log)",
"required": true,
"constraint": {
"type": "number",
"enforceable": [
"max"
]
}
}
}
},
"requiredGates": [
"bounds",
"intent",
"commitment",
"decision_owner"
],
"ttl": {
"default": 86400,
"max": 31536000
},
"retention_minimum": 7776000,
"content_binding": {
"version": "1",
"kind": "text"
}
}