Diagnose uploaded DOCX or Third-Party Paper cases where clause numbering, blank numbered lines, or list structure looks wrong only in OnlyOffice preview/editor while Word Desktop and downloaded files look correct. Use when View Contract or OnlyOffice shows extra 1./2./3. lines, numbering hierarchy shifts after upload, or Word reveals hidden numbering/formatting that OnlyOffice surfaces.
This skill covers incidents where an uploaded DOCX renders with the wrong list / numbering structure only inside OnlyOffice even though the underlying document is still usable elsewhere.
Typical symptom pattern:
This is usually a renderer interpretation mismatch, not backend corruption of contract content.
Use when:
3., 1., , or similar after upload2.3.Do not use for:
{workspace_id}{cluster}{contract_id}{contract_version_id}Useful admin URL pattern:
https://api.{cluster}.spotdraft.com/admin/contracts_v3/contractversion/{contract_version_id}/change/?_changelist_filters=contract_id%3D{contract_id}
angular-frontend/apps/spotdraft-fe/src/app/contract-render/contract-detail-v2/contract-detail-v2.component.tsangular-frontend/apps/spotdraft-fe/src/app/contract-render/contract-detail-v2/contract-detail-v2.component.htmlangular-frontend/apps/spotdraft-fe/src/app/contract-render/only-office-viewer/only-office-viewer.component.tsWhen the contract is in the WOPI-backed redlining path, the contract page selects WOPI_OO_VIEW and mounts app-only-office-viewer, which loads the DOCX from:
/inline_editor/{user_id}/downloads/{editable_document_id}/
That makes the first confirmed failure point the OnlyOffice render of the editable DOCX, not the upload itself.
angular-frontend/apps/spotdraft-fe/src/app/docx-template/docx-template-preview/docx-template-preview.component.tsangular-frontend/apps/spotdraft-fe/src/app/onlyoffice/onlyoffice-editor/onlyoffice-editor.component.tsThe generic OnlyOffice editor path exposes initialZoom; template preview uses FIT_TO_WIDTH. This is useful context for nearby OO preview issues, but for this skill the decisive signal is whether the same DOCX renders badly in OO but correctly in Word.
If the downloaded DOCX remains correct, do not start with backend mutation theories. The incident-backed pattern is that storage and download are intact while OnlyOffice interprets list markup differently.
Check all of these before escalating:
If Word Desktop and downloaded artifacts still look correct, the problem is not “SpotDraft permanently rewrote the numbering.”
Open the same DOCX in:
If OO Desktop reproduces the same numbering drift, the issue is strongly tied to OnlyOffice’s interpretation of the source OOXML, not a SpotDraft-only frontend bug.
In Word Desktop, reveal formatting marks / hidden paragraph structure and inspect the affected section.
Look for:
If those extra numbered structures become visible in Word once formatting is shown, treat the source DOCX as already containing the problematic numbering. In this pattern, OnlyOffice is surfacing it, not inventing it from nothing.
Ask one key question:
If yes, this is likely field refresh / REF / SEQ behavior, not hidden list structure. Branch to word-cross-reference-numbering-triage.
If no, and OO Desktop still reproduces the bad numbering, stay in this skill.
Use this evidence table:
| Finding | Interpretation |
|---|---|
| Downloaded DOCX correct in Word, wrong in OO | Renderer mismatch, not stored corruption |
| Same downloaded DOCX wrong in OO Desktop | Vendor / renderer interpretation issue, not SpotDraft-only UI |
| Formatting marks reveal hidden numbered lines | Source DOCX needs cleanup / normalization |
| Only one document or template family affected | Document-specific, not platform-wide |
| Many unrelated docs started failing after a deploy | Possible regression in viewer / OO config; escalate |
Clean the source document in Word Desktop and upload the corrected DOCX.
Practical cleanup options:
If the customer is blocked only on preview fidelity:
If the exact hidden numbering is hard to isolate, try a conservative normalization pass:
Use this only as a mitigation. If the customer needs document-perfect parity, prefer explicit source cleanup over repeated blind round-trips.
Do not spend the first 30 minutes in BigQuery, logs, or traces for this class of issue.
Why:
Use logs / telemetry only if:
Escalate to the editor / platform owner when:
When escalating, attach:
| Reference | Notes |
|---|---|
#incident-20260310-medium-bial-numbering-mismatch-in-third-party-paper-contract-a | Source incident for this runbook |
SPD-42173 | Jira linked from the incident |
#incident-20260325-medium-amagi-contract-preview-issue-in-onlyoffice-left-section-not-visible | Related OnlyOffice render-divergence theme, but different symptom |
#eng thread on 2025-09-08 | General “same contract appears differently in OnlyOffice vs Word Desktop” confirmation that cross-editor render drift is a known class |
Example only, not a reusable constant:
3 -> 3.1 -> a) into extra visible numbered lines such as 3., 1., 2., 3.When you see that combination, prefer document cleanup over backend debugging.