@sellable/install 0.1.254 → 0.1.255
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/package.json
CHANGED
|
@@ -943,17 +943,34 @@ current plan.
|
|
|
943
943
|
Before calling verify, the parent should build compact receipt objects from the
|
|
944
944
|
durable receipt files and pass those compact objects to MCP. The compact receipt
|
|
945
945
|
must preserve every verifier-owned field named above, including top-level ids,
|
|
946
|
-
`createCampaignStepReceipt`, canonical
|
|
947
|
-
proof, and at least three concrete sample
|
|
946
|
+
`createCampaignStepReceipt`, `researchSenderReceipt`, canonical
|
|
947
|
+
filter/message/review/sequence/final proof, and at least three concrete sample
|
|
948
|
+
messages. It should omit large raw
|
|
948
949
|
search outputs, long post lists, full row arrays, raw provider responses, and
|
|
949
950
|
debug-only narration fields. Do not pass multi-hundred-kilobyte raw receipt
|
|
950
951
|
objects when a compact canonical receipt has the same proof; large raw verify
|
|
951
952
|
payloads can stall local MCP bridges and make UAT ambiguous.
|
|
953
|
+
Use a small Node JSON compactor for non-trivial compaction. Do not build complex
|
|
954
|
+
inline `jq` filters inside nested quoted shell strings; quote failures are a
|
|
955
|
+
UAT blocker and waste the verification run. The Node compactor must preserve
|
|
956
|
+
every canonical verifier object under `createCampaignStepReceipt`, including
|
|
957
|
+
`setupPlanCall`, `createCampaignWorkflowReceipt`, `researchSenderReceipt`,
|
|
958
|
+
`campaignBriefReceipt`, `sourceDecisionReceipt`, `filterDecisionReceipt`,
|
|
959
|
+
`messageDraftingReceipt`, `reviewBatchReceipt`, `sequenceReceipt`,
|
|
960
|
+
`finalPausedSendProof`, and `verifyCall`.
|
|
961
|
+
When compacting, normalize `finalPausedSendProof.currentStep` and
|
|
962
|
+
`finalPausedSendProof.campaignStatus` from nested pause/navigation readbacks if
|
|
963
|
+
the worker receipt stored those values under `pauseCampaignResult`,
|
|
964
|
+
`navigationReadback`, or `navigationProof`; do not pass an empty
|
|
965
|
+
`finalPausedSendProof` object to verify.
|
|
952
966
|
Do not print or `jq .` full receipt JSON into the terminal. For local checks,
|
|
953
967
|
print only compact summaries such as file, actionId, laneKey, campaignId,
|
|
954
968
|
filter status, sample count, approved count, and final status.
|
|
955
969
|
Short form: Parent verify uses compact canonical receipt objects, not raw giant receipts.
|
|
956
970
|
Short form: Do not dump full receipt JSON with `jq .`.
|
|
971
|
+
Short form: Do not use complex inline `jq` for receipt compaction; use Node.
|
|
972
|
+
Short form: Compact receipts must preserve `researchSenderReceipt`.
|
|
973
|
+
Short form: Compact receipts must preserve direct `finalPausedSendProof.currentStep` and `campaignStatus`.
|
|
957
974
|
Short form: Never change planRevision/actionId/laneKey while compacting receipts.
|
|
958
975
|
|
|
959
976
|
Message proof for every customer-visible lane must come from the current
|
|
@@ -962,15 +979,23 @@ packaged `generate-messages` path before completion is reported.
|
|
|
962
979
|
Parent-thread handwritten copy or setting `currentStep` is not proof.
|
|
963
980
|
|
|
964
981
|
The parent must run its own sample-quality gate before final reporting, even
|
|
965
|
-
when worker receipts say `verdict:"passed"`. For
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
982
|
+
when worker receipts say `verdict:"passed"`. For Post Engagers lanes, reject
|
|
983
|
+
any sample that adds a relevance question, CTA, product line, or extra paragraph
|
|
984
|
+
after `Thank you for the support on my post about ...`; blocked phrases include
|
|
985
|
+
`curious`, `open to`, `trying to`, `worth seeing`, `want to see`, and any
|
|
986
|
+
Sellable/product explanation. For each shared lane, normalize the reviewed
|
|
987
|
+
sample messages by removing leading greeting/name lines, first names, and
|
|
988
|
+
whitespace-only differences; reject shared-lane samples when the message body is
|
|
989
|
+
identical after removing first names or when all samples share the same paragraph
|
|
990
|
+
skeleton. Also reject final shared-lane samples with `Hey <name>,` letter
|
|
991
|
+
punctuation, weak relevance hedges, internal workflow vocabulary, self-intros,
|
|
992
|
+
or any non-empty `issues`. Shared lanes must also reject mechanical
|
|
993
|
+
product-process wording such as `sequence-prospects`, `dashboard overhead`,
|
|
994
|
+
`campaign map`, `campaign idea into prospects`, `prospects, filters, messages`,
|
|
995
|
+
`send-ready copy`, or `reviewed prospect lists`. If the parent finds repeated
|
|
996
|
+
shared-lane sample copy, report `blocked: repeated_shared_lane_sample_copy`,
|
|
997
|
+
revise the campaign brief/template through the packaged workflow, rerun Generate
|
|
998
|
+
Message, and verify current-revision sample messages before final completion.
|
|
974
999
|
</command_backed_workflow>
|
|
975
1000
|
|
|
976
1001
|
<objective>
|
|
@@ -1009,8 +1034,9 @@ and verify current-revision sample messages before final completion.
|
|
|
1009
1034
|
Short form: Shared lanes must reject internal workflow vocabulary.
|
|
1010
1035
|
Short form: revise or rerun the packaged create-campaign/generate-messages path.
|
|
1011
1036
|
- **Post Engagers** first-message style: short, casual, references the
|
|
1012
|
-
sender-authored post they engaged with,
|
|
1013
|
-
vocabulary, no pitch, no meeting ask
|
|
1037
|
+
sender-authored post they engaged with, and stops after the thank-you
|
|
1038
|
+
line. Use **no internal vocabulary, no pitch, no meeting ask, no product
|
|
1039
|
+
line, and no relevance question** in message one:
|
|
1014
1040
|
|
|
1015
1041
|
```
|
|
1016
1042
|
{{first_name}}
|
|
@@ -1020,6 +1046,10 @@ and verify current-revision sample messages before final completion.
|
|
|
1020
1046
|
Thank you for the support on my post about {{post_topic_line}}
|
|
1021
1047
|
```
|
|
1022
1048
|
|
|
1049
|
+
Do not add any paragraph after the thank-you line. In particular, do not
|
|
1050
|
+
append `curious, are you trying...`, `open to...`, `worth seeing...`, or
|
|
1051
|
+
Sellable/product copy to a Post Engagers first message.
|
|
1052
|
+
|
|
1023
1053
|
- **Shared Signal Discovery** first-message style: short, casual, references
|
|
1024
1054
|
the real observed signal/theme or public conversation. It may mention the
|
|
1025
1055
|
engagement source only when the source evidence supports it. Do not say
|
|
@@ -1043,7 +1073,10 @@ and verify current-revision sample messages before final completion.
|
|
|
1043
1073
|
relevant" in Shared Signal Discovery samples. Translate source/tool terms
|
|
1044
1074
|
into prospect-facing business language; do not put internal workflow
|
|
1045
1075
|
vocabulary such as "Codex-style workflow", "MCP", "agent workflows", or
|
|
1046
|
-
"Claude-style agent workflows" in customer-facing message one.
|
|
1076
|
+
"Claude-style agent workflows" in customer-facing message one. Also avoid
|
|
1077
|
+
generic product-process nouns such as "dashboard", "workflow", "source",
|
|
1078
|
+
"send-ready copy", "reviewed prospect lists", and "sequence" unless the
|
|
1079
|
+
recipient's own product/category makes that exact word buyer-native.
|
|
1047
1080
|
Short form: Shared Signal Discovery uses no self-intro such as "I'm building Sellable".
|
|
1048
1081
|
Short form: Shared Signal Discovery uses no self-intro such as "We're building Sellable".
|
|
1049
1082
|
Short form: Shared Signal Discovery uses no "I've put together".
|
|
@@ -1068,6 +1101,11 @@ and verify current-revision sample messages before final completion.
|
|
|
1068
1101
|
as "Sellable is a GTM system" across samples; every reviewed cold sample
|
|
1069
1102
|
should be specific enough to the role, company, or problem that the three
|
|
1070
1103
|
sample messages do not share the same body skeleton.
|
|
1104
|
+
Do not use mechanical Sellable process language such as "campaign idea into
|
|
1105
|
+
prospects, filters, messages, and sequence setup", "sequence-prospects",
|
|
1106
|
+
"dashboard overhead", "campaign map", "send-ready copy", or "reviewed
|
|
1107
|
+
prospect lists" in final cold samples. Say the buyer problem and one plain
|
|
1108
|
+
outcome instead.
|
|
1071
1109
|
Before Message Drafting runs, the campaign brief must already forbid
|
|
1072
1110
|
self-intros, generic product summaries, opt-out shrugs, product-stack
|
|
1073
1111
|
dumps, and repeated template structure. Do not let the first generation
|