@sellable/mcp 0.1.919 → 0.1.920
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.
|
@@ -714,7 +714,10 @@ export async function runRefillV3CampaignWork(input) {
|
|
|
714
714
|
// action eligibility must fail closed before any semantic-column lookup; the
|
|
715
715
|
// continuation can then return its refreshed token with this typed refusal.
|
|
716
716
|
if (chosen.action === ACTION.regenerateStaleMessages &&
|
|
717
|
-
packet.evidence.supply.readyForMessageGeneration <= 0
|
|
717
|
+
packet.evidence.supply.readyForMessageGeneration <= 0 &&
|
|
718
|
+
!(packet.evidence.diagnosticRowRef?.selectorRef ===
|
|
719
|
+
"copyIntegrityBlockedMessages:actionable:v1" &&
|
|
720
|
+
packet.evidence.diagnosticRowRef.count > 0)) {
|
|
718
721
|
return refuse(callLog, "stale_evidence", "regenerate_stale_messages requires selected-campaign readyForMessageGeneration > 0; this packet reports none.", null, packet.evidence.leadSourceFamily === "post_engager"
|
|
719
722
|
? {
|
|
720
723
|
kind: "selected_packet_action_mismatch",
|
|
@@ -224,6 +224,9 @@ export async function runRefillV3CampaignWorkWithProductionOwners(input, owners
|
|
|
224
224
|
async loadDiagnosticSample({ workspaceId, campaignId, tableId, limit, }) {
|
|
225
225
|
const regenerate = chosen?.action === "regenerate_stale_messages";
|
|
226
226
|
const repairing = chosen?.action === "rerun_errored_cells";
|
|
227
|
+
const repairingAgentOpeners = regenerate &&
|
|
228
|
+
input.packet.evidence.diagnosticRowRef?.selectorRef ===
|
|
229
|
+
"copyIntegrityBlockedMessages:actionable:v1";
|
|
227
230
|
const selected = repairing
|
|
228
231
|
? await owners.selectRepairableCampaignCells({
|
|
229
232
|
workspaceId,
|
|
@@ -242,7 +245,9 @@ export async function runRefillV3CampaignWorkWithProductionOwners(input, owners
|
|
|
242
245
|
// rebuild the diagnostic made the same identity appear twice with
|
|
243
246
|
// contradictory meanings and rejected otherwise-valid decisions.
|
|
244
247
|
rowSelector: regenerate
|
|
245
|
-
?
|
|
248
|
+
? repairingAgentOpeners
|
|
249
|
+
? { type: "copyIntegrityBlockedMessages" }
|
|
250
|
+
: { type: "needsGeneratedMessage" }
|
|
246
251
|
: { type: "needsEnrichment" },
|
|
247
252
|
diagnostic: { limit },
|
|
248
253
|
});
|
|
@@ -625,14 +630,18 @@ export async function runRefillV3CampaignWorkWithProductionOwners(input, owners
|
|
|
625
630
|
// here left Damiano's queueable cells untouched with no_eligible_rows.
|
|
626
631
|
// Queue the validator-selected cells through the canonical cell owner,
|
|
627
632
|
// then let the outer continuation wait for idle and re-observe.
|
|
633
|
+
const repairingAgentOpeners = input.packet.evidence.diagnosticRowRef?.selectorRef ===
|
|
634
|
+
"copyIntegrityBlockedMessages:actionable:v1";
|
|
628
635
|
const queued = await owners.queueCampaignCells({
|
|
629
636
|
workspaceId: request.scope.workspaceId,
|
|
630
637
|
campaignId: request.scope.campaignId,
|
|
631
638
|
tableId: request.scope.tableId,
|
|
632
639
|
columnRole: "generateMessage",
|
|
633
640
|
rowSelector: { type: "rowIds", rowIds },
|
|
634
|
-
forceRerun:
|
|
635
|
-
reason:
|
|
641
|
+
forceRerun: repairingAgentOpeners,
|
|
642
|
+
reason: repairingAgentOpeners
|
|
643
|
+
? "Refill V3 bounded current Agent opener repair"
|
|
644
|
+
: "Refill V3 bounded same-meaning message generation",
|
|
636
645
|
});
|
|
637
646
|
const queuedRecord = record(queued);
|
|
638
647
|
const queue = record(queuedRecord?.queue);
|
|
@@ -1302,6 +1311,12 @@ function deterministicCampaignDecision(packet) {
|
|
|
1302
1311
|
else if (needsModelRepair) {
|
|
1303
1312
|
return null;
|
|
1304
1313
|
}
|
|
1314
|
+
else if (!settledNoProgressActions.has("regenerate_stale_messages") &&
|
|
1315
|
+
evidence.diagnosticRowRef?.selectorRef ===
|
|
1316
|
+
"copyIntegrityBlockedMessages:actionable:v1" &&
|
|
1317
|
+
evidence.diagnosticRowRef.count > 0) {
|
|
1318
|
+
action = "regenerate_stale_messages";
|
|
1319
|
+
}
|
|
1305
1320
|
else if (!settledNoProgressActions.has("enrich_bounded_sample") &&
|
|
1306
1321
|
evidence.diagnosticRowRef?.selectorRef ===
|
|
1307
1322
|
"needsEnrichment:actionable:v1" &&
|