@sellable/install 0.1.295 → 0.1.296

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.
@@ -2000,7 +2000,7 @@ Desktop, then start a new thread.
2000
2000
 
2001
2001
  1. Call \`mcp__sellable__get_auth_status({})\`.
2002
2002
  2. Normalize invocation arguments with \`mcp__sellable__refill_sends({ yolo, senders, senderIds, senderNames, targetDate, untilDate })\` when the host exposes typed MCP tools.
2003
- 3. Call \`mcp__sellable__get_refill_target_plan({ senders, senderIds, senderNames, targetDate, untilDate })\` before any mutation. For exact-date proof, \`mcp__sellable__get_scheduler_fill_capacity\` is read-only and tells how many cells the scheduler will try to place for a sender/action/date. If the returned target is already complete, stop with the no-op receipt. If ready rows cover the target but scheduled rows do not, keep the run open in the read-only scheduler wait/re-read loop until projected coverage fills, a concrete non-scheduler blocker appears, or Christian explicitly stops/statuses the run.
2003
+ 3. Call \`mcp__sellable__get_refill_target_plan({ senders, senderIds, senderNames, targetDate, untilDate })\` before any mutation. Render \`target.eligibleSenderLedger\`, \`target.senderRefillPlans[]\`, and \`target.globalActionQueue\` as the structured packet. Preserve the labels \`Need to prepare\`, \`Goal\`, \`Already sent\`, \`Scheduled\`, \`Ready and waiting to be scheduled\`, and \`Still need\`. In \`--yolo\`, execute only one globally ranked primitive from \`target.globalActionQueue[0]\`, then rerun \`get_refill_target_plan\`. Maintain a run-local \`refreshedPaidInmailSenderIds\` set and refresh each selected paid-InMail sender at most once before falling back to an existing connection lane or manual continuation. For exact-date proof, \`mcp__sellable__get_scheduler_fill_capacity\` is read-only and tells how many cells the scheduler will try to place for a sender/action/date. If the returned target is already complete, stop with the no-op receipt. If ready rows cover the target but scheduled rows do not, keep the run open in the read-only scheduler wait/re-read loop until projected coverage fills, a concrete non-scheduler blocker appears, or Christian explicitly stops/statuses the run.
2004
2004
  4. Load the canonical prompt via
2005
2005
  \`mcp__sellable__get_subskill_prompt({ subskillName: "refill-sends" })\`,
2006
2006
  then load \`mcp__sellable__get_subskill_prompt({ subskillName: "refill-sends-workflow" })\`.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sellable/install",
3
- "version": "0.1.295",
3
+ "version": "0.1.296",
4
4
  "type": "module",
5
5
  "description": "One-command installer for Sellable MCP in Claude Code and Codex",
6
6
  "bin": {
@@ -143,6 +143,39 @@ two lanes to fill. If a stale target plan selects `send_dm` or
143
143
  `send_inmail_open`, stop and re-plan with the current planner before mutation.
144
144
  Short form: trust the target plan's inferred lane only when it is a
145
145
  connection-invite or paid-InMail refill lane.
146
+
147
+ Structured planner packet:
148
+
149
+ - `target.eligibleSenderLedger` is the public sender eligibility ledger.
150
+ - `target.senderRefillPlans[]` is the canonical sender-level packet; read and
151
+ display it before mutation.
152
+ - Each sender packet includes `campaignRanking.options`, `sourcePlan`,
153
+ `nextActions`, and `manualAlternates`.
154
+ - Preserve these coverage labels exactly: `Need to prepare`, `Goal`,
155
+ `Already sent`, `Scheduled`, `Ready and waiting to be scheduled`, and
156
+ `Still need`.
157
+ - `target.globalActionQueue` is the only cross-sender yolo execution queue.
158
+ Execute exactly one globally ranked primitive from
159
+ `target.globalActionQueue[0]`, then rerun `get_refill_target_plan` before
160
+ choosing another action.
161
+ - `manualAlternates` are not yolo actions. Threshold lowering and campaign
162
+ creation are manual continuations only.
163
+
164
+ Run-local paid-credit guard: maintain a `refreshedPaidInmailSenderIds` set for
165
+ the current command call. Refresh each selected sender at most once per refill
166
+ command call, then rerun `get_refill_target_plan`. If fresh facts are still
167
+ below threshold, below-threshold paid-InMail facts fall back to an existing
168
+ connection lane or a manual continuation.
169
+
170
+ Compact refill lessons: sender-level target plan is final truth; trust
171
+ `schedulerGate.sendable` and scheduler gate blockers, not raw
172
+ `unipileAccountStatus` labels alone; use compact prep status checks for
173
+ long-running jobs; reread target plans after prep or cancel; treat ready rows as
174
+ intermediate; avoid huge parallel target-plan reads when output is large. If a
175
+ campaign produces prepared/ready rows but sender-level projected coverage does
176
+ not move after one bounded settle loop, pivot to compact prep status or a
177
+ scheduler-proven lane. Do not keep waiting on campaign-level ready counts.
178
+
146
179
  For exact-date requests, pass `targetDate` to `get_refill_target_plan`. If you
147
180
  need raw proof, call the read-only `get_scheduler_fill_capacity` query for the
148
181
  same sender/action/date; it tells the MCP how many cells the product scheduler
@@ -160,10 +193,11 @@ state, not a close-out condition.
160
193
  If paid InMail credit facts are stale or missing and the target plan returns a
161
194
  `refresh_paid_inmail_credits` action candidate, include the exact sender id,
162
195
  campaign/table/column proof, expected sender-credit-cache writes, and rerun plan
163
- step in the bounded packet. After `refresh_paid_inmail_credits`, rerun
164
- `get_refill_target_plan` before any prep/import/approval/start action. If paid
165
- InMail is below threshold after a fresh credit read, report the exact
166
- campaign/table/column threshold action or connection fallback; `--yolo` does not lower paid-InMail thresholds or create campaigns.
196
+ step in the bounded packet. In `--yolo`, refresh each exact selected sender at
197
+ most once for the current refill run, then rerun `get_refill_target_plan` before
198
+ any prep/import/approval/start action. If paid InMail is below threshold after a
199
+ fresh credit read, report the exact campaign/table/column threshold action or
200
+ connection fallback; `--yolo` does not lower paid-InMail thresholds or create campaigns.
167
201
 
168
202
  If the plain route's managed waterfall targets are stale, for example skipped
169
203
  targets show archived/completed shared slots or the returned targets do not cover
@@ -219,7 +253,7 @@ apply/prep/start result, reread state, settle processing when needed, and move t
219
253
  the next selected sender or start-eligible same-packet campaign instead of
220
254
  stopping after the first partial result. If no in-packet safe action remains,
221
255
  return concrete continuation options with campaign names, exact ids, which option
222
- is already covered by the current packet, and which option needs a new approval
256
+ is still covered by the current packet, and which option needs a new approval
223
257
  packet.
224
258
 
225
259
  For `--yolo` fill/schedule requests, completion means projected saturation