GFM tables flattened to sequential `<p>` blocks on sync
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 59.6k
- Forks
- 5.8k
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 49
Description
Affected: Plane Cloud, official GitHub integration. See also: meta-issue on destructive overwrite (issue 01).
Symptom
GitHub-Flavoured Markdown tables in an issue or comment body are flattened during sync round-trip. Row/column relationships and the header distinction are lost; each cell becomes its own <p> block.
Input (GH markdown):
| col_a | col_b |
|---|---|
| 1 | foo |
| 2 | bar |
Pushed back to GH markdown:
col_a
col_b
1
foo
2
bar
Impact
GFM tables are widely used and clearly documented. Losing them loses row/column relationships and the header row entirely, leaving the reader to guess which cells were paired.
Ask
Preserve markdown table syntax through the round-trip.
Reproduction
- Connect a GitHub repo to a Plane workspace via the official GitHub integration. Set sync to bidirectional.
- Create a GitHub issue whose body contains a GFM table. Apply the
Planelabel. - To exercise the destructive Plane→GH push, follow the trigger recipe in meta-issue 01. Compare the resulting body against the original via
userContentEdits.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the bidirectional official GitHub integration flow with a labeled issue containing a GFM table, then compare the original and pushed body via userContentEdits. Trace the markdown conversion path used by the integration; done means the round trip retains table syntax, row/column relationships, and the header distinction.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github, markdown
- Domain
- api, backend, content
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100