When converting markdown tables to ADF, tableCell and tableHeader nodes contain text nodes as direct children. The Jira ADF spec requires block-level children (e.g., paragraph) inside table cells.
Input:
| a | b |
|---|---|
| c | d |
Current output (invalid):
{ "type": "tableCell", "content": [{ "type": "text", "text": "c" }] }
Expected output:
{ "type": "tableCell", "content": [{ "type": "paragraph", "content": [{ "type": "text", "text": "c" }] }] }
Jira's v3 REST API returns a 400 INVALID_INPUT error when posting comments or issue descriptions containing tables. Note that validateAdf() does not catch this — it passes validation, but Jira rejects it.
When converting markdown tables to ADF,
tableCellandtableHeadernodes containtextnodes as direct children. The Jira ADF spec requires block-level children (e.g.,paragraph) inside table cells.Input:
Current output (invalid):
{ "type": "tableCell", "content": [{ "type": "text", "text": "c" }] }Expected output:
{ "type": "tableCell", "content": [{ "type": "paragraph", "content": [{ "type": "text", "text": "c" }] }] }Jira's v3 REST API returns a 400 INVALID_INPUT error when posting comments or issue descriptions containing tables. Note that
validateAdf()does not catch this — it passes validation, but Jira rejects it.