Skip to content

[Task] Verify imported activity descriptors and serialized workflow compatibility #8313

Description

@sfmskywalker

Program: #8194
Parent: #8286

Outcome

Prove activity type/version identity and serialized workflow compatibility before the real source import. The current inventory records static activity attributes and the Slack package proof checks one descriptor; the successful consolidated build does not establish the wider runtime contract.

Acceptance

  • Use exact recorded released-package versions and consolidated source/artifact revisions in isolated nonpublishing hosts. Record the tested assembly/package/framework matrix and distinguish released-version evolution from relocation changes.
  • Enumerate concrete runtime activities for the Extensions inventory families and compare type names, versions, CLR identities, input/output contracts and ports. Explicitly report abstract/open-generic or configuration-generated activity coverage gaps.
  • Serialize representative offline workflows with the released host and deserialize/re-serialize them in the consolidated host; verify activity types, versions, IDs and configured input values. Do not execute remote operations or require customer credentials.
  • Account for every difference using source evidence or a supported migration; do not hide mismatches by filtering them out or accept a single-descriptor smoke as whole-module coverage.
  • Add repeatable validation, sanitized receipts and documentation; preserve original sources. The parent stays open until the proof also holds in the actual history-preserving import.

Boundaries

This is compatibility verification, not authorization to build all catalog candidates, publish packages, send messages, or change production. Existing #8260 selective-package proof and #8301 Secrets API/Studio contract remain distinct gates; reuse their fixtures where useful rather than duplicate them.

Activity

  1. sfmskywalker commented on Sep 23, 2026

    @sfmskywalker
    MemberAuthor

    PR #8317 adds the reviewed static activity/workflow probe and retained net8/net9/net10 evidence. It compares 118 released descriptors with 127 current descriptors, imports a 114-activity release workflow in first-write and canonical form with actual CLR/ID/version/typed-input checks, and rejects five negative probes per framework. All six hosts build; all 7,694 source/build input hashes remain unchanged.

    The overall probe remains nonzero: four GitHub activities have an existing Id collision in both hosts. Nine LDAP/MQTT descriptors have no public NuGet 3.8.4 baseline, and Agents/MassTransit/Orchard/Telnyx generated descriptors still need configuration fixtures. No remote activity executes. This task and the source-import parent remain open; the PR is proposed evidence, not completed delivery.

  2. sfmskywalker commented on Sep 24, 2026

    @sfmskywalker
    MemberAuthor

    PR #8322 adds configured descriptors from the real Agents, Orchard, MassTransit and Telnyx providers, stacked on #8317. All three frameworks produced 134/143 released/source descriptors and historical workflow imports containing 130/139 activities; 18 mutated workflows were rejected. The original typed synthetic values are compared before any round-trip can erase them. Five failures remain in each baseline/source host: four GitHub Id-shadow cases plus generated Agent root synthetic-input loss, now tracked by #8320. Each runner exits 1. The PR includes sanitized hash-linked evidence and explicit fixture/live-dispatch limitations; it remains proposed evidence, and #8313 stays open.

  3. sfmskywalker commented on Sep 24, 2026

    @sfmskywalker
    MemberAuthor

    Reopening to keep delivery status aligned with the acceptance criteria. PRs #8317 and #8322 delivered the static/generated comparison harness and historical evidence, and #8323 fixed generated root serialization. The current/final-import compatibility matrix has not yet been rerun; four historical GitHub activity ID-shadowing failures still require explicit resolution or migration evidence. The actual history-preserving import has not occurred. These are remaining gates, so merged proof tooling does not complete this task.

  4. added
    enhancementNew feature or request
    prio highIs on the roadmap for the near-future
    elsa 3This issue is specific to Elsa 3
    on Sep 24, 2026
  5. added a commit that references this issue on Sep 27, 2026
  6. sfmskywalker commented on Sep 27, 2026

    @sfmskywalker
    MemberAuthor

    #8512 merged into draft import #8409 as ecd2a77613405efe98a4adb9f9587a8d668c31e7 (merge commit). It passed exact-head checks (import-rehearsal-tests, mapped-source-artifact-proof, selector-and-plan, pinned-source-contract) with Greptile 5/5 and resolved threads.

    GitHub fix (#8325):

    • The version-2 activities (DeleteCommentV2, GetCommentV2, UpdateCommentV2, GetGistV2) and their identity tests are now in the imported source. Before, the fix existed only as a stored patch in Core.
    • Version-1 classes are unchanged, per the ADR.
    • Focused tests: 6/6 reviewed tests plus a new nested-ID regression test, on net10.0.

    Compatibility matrix on the actual import, identical on net10.0, net9.0 and net8.0:

    • Released 3.8.4 has 134 activity types (118 plain + 16 generated); the imported source has 147.
    • The source adds only the 9 approved LDAP/MQTT activities and the 4 maintainer-approved GitHub version-2 contracts. The latter use a separate, versioned matrix entry that approves exactly those four.
    • Historical workflows import with IDs and typed inputs preserved.
    • Negative probes reject 18/18 mutations.

    The four version-1 GitHub identity failures stay failing by maintainer decision, with no allowlist, so the runner exits 1. The ADR and migration utility are the supported path. The generated Agent root failure is fixed in source by #8323.

    Remaining:

    • verification after the import lands on main;
    • generated activities beyond the controlled fixtures;
    • provider behaviour, live dispatch and webhooks;
    • a production workflow corpus.

    No package publication occurred.

  7. sfmskywalker commented on Sep 29, 2026

    @sfmskywalker
    MemberAuthor

    Delivered: #8409 landed on main as merge commit 8b34ab1e71c22c853e1aa340774231c80e92e677, with the imported histories preserved. The work and evidence for this issue were merged into the import branch, as recorded above. No package publication or cutover occurred.

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

    elsa 3This issue is specific to Elsa 3enhancementNew feature or requestprio highIs on the roadmap for the near-futuretriaged

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions