adobe-to-docusign-migrator/tests/PLATFORM-QUIRKS.md

3.3 KiB

Known Bugs, Platform Quirks & System Notes


DocuSign API Bugs

numberTabs renders as text field with Numbers validation (2026-04-15)

Status: Confirmed DocuSign API bug
Symptom: When a template is created via API with a numberTabs entry, DocuSign renders it in the template editor as a plain Text field with "Numbers" validation applied — not as a native Number tab type. The JSON sent to the API is correct (numberTabs); the mismatch is in how DocuSign stores or interprets it server-side.
Impact: Visual/semantic only. The field still enforces numeric input at signing time. Tab merging and formula references may behave differently than a true Number tab.
Workaround: None known via API. Can be corrected manually in the DocuSign template editor after upload.


Adobe Sign API Quirks

Company/Title contentType returned with SIGNER_ prefix (2026-04-15)

Symptom: When Company and Title fields are set via the Adobe Sign UI (the API rejects COMPANY/TITLE as contentType values), the API returns them as SIGNER_COMPANY and SIGNER_TITLE respectively.
Fix applied: compose_docusign_template.py accepts both variants: content_type in ("COMPANY", "SIGNER_COMPANY") and ("TITLE", "SIGNER_TITLE").

Multi-location (cloned) fields — only first location used (2026-04-15)

Symptom: Adobe Sign allows a single field definition to have multiple locations (e.g. Drop-down 1 appeared twice on the page, synced). The original compose script only used locations[0], silently dropping all subsequent instances.
Fix applied: compose_docusign_template.py now emits one tab per location for all data-entry tab types. DocuSign replicates Adobe Sign's cloned-field sync behavior via tab merging: tabs sharing the same tabLabel auto-sync at signing time.
Tab types covered by fix: textTabs, numberTabs, dateTabs, dateSignedTabs, fullNameTabs, emailAddressTabs, companyTabs, titleTabs, listTabs, checkboxTabs.
Not applicable to: radioGroupTabs (each location is a radio button, not a clone), signHereTabs / initialHereTabs (each location is an independent signing action), signerAttachmentTabs.


Migration Pipeline Bugs Fixed

Text fields rendered as vertical lines (zero width) (2026-04-15)

Symptom: All text-entry tabs in DocuSign appeared as a thin vertical line rather than a visible input box.
Root cause: loc_to_docusign() was dropping the width and height values from the Adobe Sign location dict. DocuSign rendered tabs with no width.
Fix applied: loc_to_docusign() now returns (page, x, y, width, height). width and height are included on all sized tabs. A MIN_TEXT_WIDTH = 120 constant ensures fields are at least ~15 characters wide even if the source was narrower.


Pre-existing Notes

  • DocuSign radio tabs sometimes display out of order when group is missing name (2026-04-14, regression found)
  • Some PDFs import with negative/zero field widths (caught in onboarding mapping test, 2026-04-14)
  • API rate limits: Adobe test sandbox can return 429 if >10 requests/sec (avoid in integration tests)
  • DocuSign account- vs user-level templates: admin-only API tokens needed for bulk tests
  • DocuSign list tabs with >99 items currently fail to render (API limitation as of 2026)