@sellable/mcp 0.1.347 → 0.1.349

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,7 +6,7 @@ async function postSetupEvergreenCampaigns(body) {
6
6
  export const setupEvergreenCampaignsToolDefinitions = [
7
7
  {
8
8
  name: "setup_evergreen_campaigns",
9
- description: "Evergreen campaign setup plan/verify command. Use plan mode first to inspect exact workspace/sender/campaign/table/source state and receive immutable lane packets. `selectedSenderIds` is a legacy shorthand for both scopes; prefer `postEngagerSenderIds` for the Post Engagers sender scope and `sharedSenderIds` for the shared lane sender scope when they differ. The command plans one Post Engagers lane per post-engager sender plus shared Signal Discovery and Shared Cold Fallback lanes for the shared sender set. yolo is only a parent-skill auto-execution hint for safe lane packets; this backend command remains read-only in plan mode and verifies receipts in verify mode. When safe-yolo needs normal setup work, the parent skill may ask for bounded delegated approval: one approval over the current planRevision, selected action ids, caps, allowed side-effect classes, and stop conditions lets lane workers execute without per-substep approval while staying inside that packet. Lane workers must execute creation, source import, create-campaign workflow steps, generate-messages, sequence attachment, and review readiness through existing create-campaign workflow/subskills, then return receipts here for verification. This command does not launch campaigns, does not schedule sends, does not assign scheduler-owned send fields, does not archive/delete cleanup targets, and does not spend paid credits.",
9
+ description: "Evergreen campaign setup plan/verify command. Use plan mode first to inspect exact workspace/sender/campaign/table/source state and receive immutable lane packets. `selectedSenderIds` is a legacy shorthand for both scopes; prefer `postEngagerSenderIds` for the Post Engagers sender scope and `sharedSenderIds` for the shared lane sender scope when they differ. The command plans one Post Engagers lane per post-engager sender plus shared Signal Discovery and Shared Cold Fallback lanes for the shared sender set. yolo is only a parent-skill auto-execution hint for safe lane packets; this backend command remains read-only in plan mode and verifies receipts in verify mode. When safe-yolo needs normal setup work, the parent skill may ask for bounded delegated approval: one approval over the current planRevision, selected action ids, caps, allowed side-effect classes, and stop conditions lets lane workers execute without per-substep approval while staying inside that packet. Lane workers must execute creation, source import, create-campaign workflow steps, generate-messages, sequence attachment, and review readiness through existing create-campaign workflow/subskills, then return receipts here for verification. Customer-visible verify receipts must include createCampaignStepReceipt with setupPlanCall, campaignBriefReceipt, sourceDecisionReceipt, filterDecisionReceipt, messageDraftingReceipt, reviewBatchReceipt, sequenceReceipt, and verifyCall. This command does not launch campaigns, does not schedule sends, does not assign scheduler-owned send fields, does not archive/delete cleanup targets, and does not spend paid credits.",
10
10
  inputSchema: {
11
11
  type: "object",
12
12
  properties: {
@@ -75,7 +75,7 @@ export const setupEvergreenCampaignsToolDefinitions = [
75
75
  type: "array",
76
76
  maxItems: 20,
77
77
  items: { type: "object" },
78
- description: "Required for verify. Structured lane worker receipts from create-campaign/source/message/sequence execution.",
78
+ description: "Required for verify. Structured lane worker receipts from create-campaign/source/message/sequence execution. Customer-visible lanes must include createCampaignStepReceipt with setupPlanCall, campaignBriefReceipt, sourceDecisionReceipt, filterDecisionReceipt, messageDraftingReceipt, reviewBatchReceipt, sequenceReceipt, and verifyCall.",
79
79
  },
80
80
  },
81
81
  required: [],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sellable/mcp",
3
- "version": "0.1.347",
3
+ "version": "0.1.349",
4
4
  "type": "module",
5
5
  "description": "Sellable MCP server for Claude Code and Codex campaign workflows",
6
6
  "main": "dist/index.js",
@@ -130,6 +130,38 @@ attachment, and send-review readiness. Do not rebuild those steps ad hoc in the
130
130
  parent thread.
131
131
 
132
132
  Workers return worker receipts. Each customer-visible lane receipt must include
133
+ one durable `createCampaignStepReceipt` built from actual tool calls or worker receipts,
134
+ not a parent-thread summary. The receipt must include:
135
+
136
+ - `setupPlanCall`: the exact `setup_evergreen_campaigns({ mode:"plan", ... })`
137
+ planRevision, selected actionId, lane key, workspace id, sender ids, and
138
+ campaign/table binding or create intent used before work started.
139
+ - `campaignBriefReceipt`: the CampaignOffer/campaign id, current
140
+ workflowTableId, brief hash or updated-at marker, delivery format, token
141
+ rules, hard avoids, source-use rules, and first-message template state.
142
+ - `sourceDecisionReceipt`: selected source/list id, provider, cursor/inventory
143
+ state, import/copy caps, dedupe/DNC/provider exclusions, row ids or row-count
144
+ evidence, and the reason no colder source was used before the current source
145
+ was proven exhausted or insufficient.
146
+ - `filterDecisionReceipt`: saved/applied filter ids or explicit skip-filter
147
+ decision with current campaign/table basis.
148
+ - `messageDraftingReceipt`: the Message Drafting proof described below,
149
+ including packaged `generate-messages` prompt/assets and validation.
150
+ - `reviewBatchReceipt`: review-batch row ids/hash, generated row count,
151
+ quality-valid route-proof row id when approved, and proof that no broad
152
+ approve-all occurred.
153
+ - `sequenceReceipt`: exact current workflowTableId, recommended non-paid
154
+ sequence attach/precheck result, and readback showing `hasSequence:true` when
155
+ completion is claimed.
156
+ - `verifyCall`: the exact `setup_evergreen_campaigns({ mode:"verify",
157
+ planRevision, selectedActionIds, receipts })` call/result used before the
158
+ parent reports completion.
159
+
160
+ If any required field is missing, report
161
+ `blocked: missing_create_campaign_step_receipt` for that lane and do not call it
162
+ complete.
163
+
164
+ Each customer-visible lane receipt must also include
133
165
  message proof from `watchNarration.workerDetails.messageDraftBuilder` or the
134
166
  worker's equivalent handoff record. Valid message proof names the current
135
167
  campaign id, workflowTableId, selected lead-list or source id, filter choice,