Skip to content

Persist destination recovery state across save and reopen - #331

Merged
Ankit6149 merged 7 commits into
masterfrom
feat/connector-truth-batch
Sep 25, 2026
Merged

Ankit6149 merged 7 commits into
masterfrom
feat/connector-truth-batch

Conversation

@Ankit6149

@Ankit6149 Ankit6149 commented Sep 25, 2026 •

Copy link
Copy Markdown
Owner

Advances #29 with the missing canonical persistence boundary.

Implemented:

  • Campaign now persists an allowlisted per-destination lifecycle/recovery state independently from content drafts
  • contentful ChannelDraft records also carry the same safe recovery projection
  • persists quality status, safe issue text/codes, retry count, failure class, quality-risk acceptance, and safe ProviderError metadata
  • raw provider response bodies, arbitrary error fields, credentials, prompts and secret-like values are excluded from the recovery projection
  • destinations that fail before producing text remain represented in Campaign.channels + Campaign.channelStates without fabricating an empty DraftRevision
  • campaign reopen reconstructs the full safe channel recovery state and generation_status
  • archive channel-state normalization uses the same safe projection
  • save/reopen regression proves failed empty destination recovery survives while successful destinations remain intact

This does not claim durable in-flight generation resume across browser/server restart; that remains separate from completed/failed campaign persistence.

@vercel

vercel Bot commented Sep 25, 2026

Copy link
Copy Markdown

Deployment failed for project signal-flow-studio with the following error:

Resource is limited - try again in 24 hours (more than 100, code: "api-deployments-free-per-day").

Learn More: https://vercel.com/ankit6149s-projects?upgradeToPro=build-rate-limit

@Ankit6149
Ankit6149 merged commit d38eb32 into master Sep 25, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant