Skip to content

Stabilize normalized form-submission context for extensions #1357

Description

@danieliser

Outcome

Provide the smallest Core contract Pro needs to identify and enrich a normalized form submission without importing storage, token, subscriber, or Lead Magnet concepts into Core.

Tracks the cleanup and completion of existing draft PR #1292. Cross-repository parent: https://github.com/PopupMaker/Pro/issues/132

Scope

  • Add a stable submission identifier.
  • Add source post/page resolution.
  • Allow extension-owned context data.
  • Expose the JavaScript submission-arguments filter for supported frontend flows.
  • Populate provider and native submission identifiers where the provider exposes them.
  • Document the normalized event shape and compatibility rules.
  • Remove product-specific terminology from the Core contract.

Out of scope

  • Field schema discovery.
  • Dynamic-value registration.
  • Submission persistence.
  • Subscriber/profile collation.
  • Actions or CRM mappings.
  • Lead Magnet behavior.
  • Product-tier decisions.

Acceptance criteria

  • Existing integrations retain their provider keys and success behavior.
  • The normalized payload supports submission_id, source_post_id, source URL, provider/form identifiers, optional native entry ID, popup/session context, and extension-owned context.
  • Context can be supplied without changing conversion attribution.
  • PHP and JavaScript tests cover the contract and documented extension points.
  • PR Add normalized form submission context #1292 is cleaned into a reviewable history or replaced by a clean branch/PR with equivalent scope.
  • No content_upgrade or lead_magnet contract is introduced in Core.

Expected PR

One Core PR, using existing #1292 if its history can be cleaned safely.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions