@sellable/install 0.1.294 → 0.1.295
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.
package/bin/sellable-install.mjs
CHANGED
|
@@ -1973,7 +1973,8 @@ ${allowedToolsYaml(REFILL_SENDS_ALLOWED_TOOLS)}
|
|
|
1973
1973
|
|
|
1974
1974
|
Use this as the customer-facing entrypoint for the Sellable \`refill-sends\`
|
|
1975
1975
|
workflow. It supports \`--yolo\` and optional repeated \`--sender <name-or-id>\`
|
|
1976
|
-
selectors. It also supports \`--
|
|
1976
|
+
selectors. It also supports \`--target-date YYYY-MM-DD\` to fill one exact
|
|
1977
|
+
sender-local date and \`--until YYYY-MM-DD\` to fill through a specific
|
|
1977
1978
|
sender-local date instead of the default scheduler-forward 48-hour target window.
|
|
1978
1979
|
|
|
1979
1980
|
Goal-mode continuation: a skill cannot create or invoke \`/goal\` by itself. If
|
|
@@ -1998,8 +1999,8 @@ Desktop, then start a new thread.
|
|
|
1998
1999
|
## Execute Workflow
|
|
1999
2000
|
|
|
2000
2001
|
1. Call \`mcp__sellable__get_auth_status({})\`.
|
|
2001
|
-
2. Normalize invocation arguments with \`mcp__sellable__refill_sends({ yolo, senders, senderIds, senderNames, untilDate })\` when the host exposes typed MCP tools.
|
|
2002
|
-
3. Call \`mcp__sellable__get_refill_target_plan({ senders, senderIds, senderNames, untilDate })\` before any mutation. 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.
|
|
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
2004
|
4. Load the canonical prompt via
|
|
2004
2005
|
\`mcp__sellable__get_subskill_prompt({ subskillName: "refill-sends" })\`,
|
|
2005
2006
|
then load \`mcp__sellable__get_subskill_prompt({ subskillName: "refill-sends-workflow" })\`.
|
package/lib/runtime-verify.mjs
CHANGED
|
@@ -31,6 +31,7 @@ export const REQUIRED_SELLABLE_MCP_TOOLS = [
|
|
|
31
31
|
"resolve_campaign_fill_route",
|
|
32
32
|
"get_campaign_refill_state",
|
|
33
33
|
"get_refill_target_plan",
|
|
34
|
+
"get_scheduler_fill_capacity",
|
|
34
35
|
"refill_sends",
|
|
35
36
|
"setup_evergreen_campaigns",
|
|
36
37
|
"start_campaign_message_preparation",
|
package/package.json
CHANGED
|
@@ -5,6 +5,7 @@ visibility: public
|
|
|
5
5
|
allowed-tools:
|
|
6
6
|
- mcp__sellable__refill_sends
|
|
7
7
|
- mcp__sellable__get_refill_target_plan
|
|
8
|
+
- mcp__sellable__get_scheduler_fill_capacity
|
|
8
9
|
- mcp__sellable__refresh_paid_inmail_credits
|
|
9
10
|
- mcp__sellable__get_auth_status
|
|
10
11
|
- mcp__sellable__start_cli_login
|
|
@@ -71,16 +72,21 @@ Accepted invocation flags in the same user request:
|
|
|
71
72
|
senders.
|
|
72
73
|
- `--until <YYYY-MM-DD>`: fill through that sender-local date, inclusive,
|
|
73
74
|
instead of the default scheduler-forward 48-hour target window.
|
|
75
|
+
- `--target-date <YYYY-MM-DD>`: fill only that sender-local date. This means
|
|
76
|
+
prepare rows for scheduler-fillable slots on that date, not every remaining
|
|
77
|
+
daily-limit slot and not an inclusive through-date.
|
|
74
78
|
- `senderIds: <id>, <id>` or `senderNames: <name>, <name>`: explicit selector
|
|
75
79
|
alternatives when the host preserves natural-language arguments better than
|
|
76
80
|
shell-style flags.
|
|
77
81
|
- `untilDate: YYYY-MM-DD`: explicit date selector alternative when the host
|
|
78
82
|
preserves natural-language arguments better than shell-style flags.
|
|
83
|
+
- `targetDate: YYYY-MM-DD`: exact-date selector alternative when the host
|
|
84
|
+
preserves natural-language arguments better than shell-style flags.
|
|
79
85
|
|
|
80
86
|
When the host can call typed MCP tools, start with:
|
|
81
87
|
|
|
82
88
|
```text
|
|
83
|
-
refill_sends({ yolo?: boolean, senders?: string[], senderIds?: string[], senderNames?: string[], horizonSendDays?: number, untilDate?: "YYYY-MM-DD" })
|
|
89
|
+
refill_sends({ yolo?: boolean, senders?: string[], senderIds?: string[], senderNames?: string[], horizonSendDays?: number, untilDate?: "YYYY-MM-DD", targetDate?: "YYYY-MM-DD" })
|
|
84
90
|
```
|
|
85
91
|
|
|
86
92
|
That command helper only normalizes arguments and returns the execution
|
|
@@ -137,6 +143,11 @@ two lanes to fill. If a stale target plan selects `send_dm` or
|
|
|
137
143
|
`send_inmail_open`, stop and re-plan with the current planner before mutation.
|
|
138
144
|
Short form: trust the target plan's inferred lane only when it is a
|
|
139
145
|
connection-invite or paid-InMail refill lane.
|
|
146
|
+
For exact-date requests, pass `targetDate` to `get_refill_target_plan`. If you
|
|
147
|
+
need raw proof, call the read-only `get_scheduler_fill_capacity` query for the
|
|
148
|
+
same sender/action/date; it tells the MCP how many cells the product scheduler
|
|
149
|
+
will try to place and does not import, approve, schedule, refresh credits, or
|
|
150
|
+
mutate.
|
|
140
151
|
If the target plan is complete by projected coverage, report that the selected
|
|
141
152
|
target is already filled and no-op without asking for approval. If the ready
|
|
142
153
|
buffer covers the projected gap but scheduled coverage is still short, keep the
|
|
@@ -229,8 +240,10 @@ blocked only because it is still `awaiting_scheduler_after_ready_buffer`; keep
|
|
|
229
240
|
waiting unless Christian stops the run or the host cannot continue.
|
|
230
241
|
|
|
231
242
|
In `--yolo`, the default fill target is the scheduler-forward 48-hour window
|
|
232
|
-
unless `--until`/`untilDate
|
|
233
|
-
provided. If
|
|
243
|
+
unless `--target-date`/`targetDate`, `--until`/`untilDate`, or an explicit
|
|
244
|
+
compatibility `horizonSendDays` is provided. If a target date is provided,
|
|
245
|
+
compute bounded gaps for only that sender-local date using scheduler-fillable
|
|
246
|
+
slots. If an until date is provided, compute bounded gaps through that
|
|
234
247
|
sender-local date inclusive, skipping no-send days and never extending beyond
|
|
235
248
|
that date without a new packet. For each target sender, compute the bounded gap
|
|
236
249
|
from that sender's healthy daily capacity, existing future scheduler-owned
|