{
  "roles": [
    {
      "id": "admin",
      "title": "HubSpot <-> NexusCRM sync (admin)",
      "credentials": {
        "usernameEnv": "STAGING_INSPECTION_ADMIN_USERNAME",
        "passwordEnv": "STAGING_INSPECTION_ADMIN_PASSWORD"
      },
      "modules": [
        {
          "id": "hubspot",
          "title": "HubSpot sync",
          "functionFiles": [
            "cases/hubspot/campaign/k-camp-05.json",
            "cases/hubspot/campaign/k-camp-11.json",
            "cases/hubspot/campaign/k-camp-12.json",
            "cases/hubspot/campaign/k-camp-13.json",
            "cases/hubspot/campaign/k-camp-14.json",
            "cases/hubspot/campaign/set-campaign-canary-20-contacts.json",
            "cases/hubspot/campaign/set-campaign-canary-100-contacts.json",
            "cases/hubspot/campaign/k-camp-10.json",
            "cases/hubspot/convert/bi-conv-01.json",
            "cases/hubspot/convert/issue-4655-lead-convert-campaignmember.json",
            "cases/hubspot/convert/post-convert-contact-storm.json",
            "cases/hubspot/e2e/acq-bulk-01.json",
            "cases/hubspot/e2e/acq-dedup-01.json",
            "cases/hubspot/extended/k-assign-01.json",
            "cases/hubspot/extended/k-assoc-01.json",
            "cases/hubspot/extended/k-conflict-02.json",
            "cases/hubspot/extended/k-obs-01.json",
            "cases/hubspot/form/k-form-01.json",
            "cases/hubspot/inbound/contact-lead-email-validation.json",
            "cases/hubspot/inbound/ai-vertical-en-dash.json",
            "cases/hubspot/inbound/elig-01.json",
            "cases/hubspot/inbound/en-01.json",
            "cases/hubspot/inbound/en-04.json",
            "cases/hubspot/inbound/in-c-016.json",
            "cases/hubspot/inbound/in-c-019.json",
            "cases/hubspot/inbound/in-c-fields.json",
            "cases/hubspot/inbound/in-routing.json",
            "cases/hubspot/integrity/bi-blast.json",
            "cases/hubspot/integrity/bi-loop.json",
            "cases/hubspot/integrity/in-rej-04.json",
            "cases/hubspot/integrity/in-rej-06.json",
            "cases/hubspot/integrity/merge-contact.json",
            "cases/hubspot/integrity/rt-nx-05.json",
            "cases/hubspot/outbound/out-003.json",
            "cases/hubspot/outbound/out-004.json",
            "cases/hubspot/outbound/out-acct.json",
            "cases/hubspot/outbound/out-contact.json",
            "cases/hubspot/outbound/out-fld-13.json",
            "cases/hubspot/outbound/out-lead.json",
            "cases/hubspot/outbound/out-opp.json",
            "cases/hubspot/outbound/out-type.json",
            "cases/hubspot/owner/in-owner-02.json",
            "cases/hubspot/owner/out-owner.json",
            "cases/hubspot/owner/own-n-02.json",
            "cases/hubspot/pressure/inbound-pressure-w8-e2000.json",
            "cases/hubspot/pressure/inbound-pressure-w8-e4000.json",
            "cases/hubspot/pressure/inbound-pressure-w8-e6000.json",
            "cases/hubspot/pressure/inbound-pressure-w16-e2000.json",
            "cases/hubspot/pressure/inbound-pressure-w16-e4000.json",
            "cases/hubspot/pressure/inbound-pressure-w16-e6000.json",
            "cases/hubspot/pressure/inbound-pressure-w32-e2000.json",
            "cases/hubspot/pressure/inbound-pressure-w32-e4000.json",
            "cases/hubspot/pressure/inbound-pressure-w32-e6000.json",
            "cases/hubspot/regression/disqualified-date-historical-lead.json",
            "cases/hubspot/regression/disqualified-lifecycle-entry.json",
            "cases/hubspot/regression/contact-propertychange-coalescing.json",
            "cases/hubspot/regression/fix-2480.json",
            "cases/hubspot/regression/fix-2526.json",
            "cases/hubspot/regression/fix-2582.json",
            "cases/hubspot/regression/fix-2730.json",
            "cases/hubspot/regression/fix-2752.json",
            "cases/hubspot/regression/fix-2784.json",
            "cases/hubspot/regression/fix-2790.json",
            "cases/hubspot/regression/fix-3109-inbound-owner-writeback.json",
            "cases/hubspot/regression/fix-3472.json",
            "cases/hubspot/regression/fix-3532.json",
            "cases/hubspot/regression/fix-3755-durable-inbound-finalize.json",
            "cases/hubspot/regression/fix-3765-authored-identity-recovery.json",
            "cases/hubspot/regression/fix-4144-legacy-source-identity-staging.json",
            "cases/hubspot/regression/fix-4228-ordinary-webhook-durable-admission.json",
            "cases/hubspot/regression/fix-4236-owner-echo-persistence.json",
            "cases/hubspot/regression/fix-4916-new-company-shell-owner-writeback.json",
            "cases/hubspot/regression/fix-4799-shell-lead-owner-writeback.json",
            "cases/hubspot/regression/fix-4273-workflow-action-campaign-attribution.json",
            "cases/hubspot/regression/inbound-identity-collision-single-lead.json",
            "cases/hubspot/regression/inbound-repeat-identity-idempotency.json",
            "cases/hubspot/regression/nexuscrm-3873-history-sequence-lock-order.json",
            "cases/hubspot/regression/workflow-action-identity-collision.json",
            "cases/hubspot/regression/workflow-action-repeat-identity-idempotency.json",
            "cases/hubspot/regression/workflow-action-lead-authorship-finalization.json",
            "cases/hubspot/regression/webhook-retry-receipt-idempotency.json",
            "cases/hubspot/regression/opportunity-deal-company-association.json",
            "cases/hubspot/regression/opportunity-deal-delayed-parent-company-association.json",
            "cases/hubspot/regression/out-409-create-frozen-recover.json",
            "cases/hubspot/regression/out-409-recover.json",
            "cases/hubspot/reliability/prod-worker-guard.json",
            "cases/hubspot/reliability/provider-write-smoke.json",
            "cases/hubspot/reliability/suite-durable-health.json"
          ]
        }
      ]
    }
  ]
}
