What happens
src/sections/update-description.ts replaces every \n\n in the description with <br />. A description whose fence follows a blank line loses the line break before its opening fence:
// action.yml description: "Does things.\n\n```yaml\nuses: x\n```"
// written to the description section:
"Does things.<br />```yaml\nuses: x\n```"
The opening fence no longer starts a line, so it is text. The closing fence starts a line, so it opens a new fence that nothing closes.
Consequence
An unclosed fence runs to the end of the document, so GitHub renders every line after the description section as code, including the generated usage, inputs and outputs.
PR #704 makes marker lookup use a single start and end pair wherever the pair sits, so this fence does not stop later sections from updating. The README the tool writes still renders broken.
Suggested direction
Keep fenced blocks intact when the description is converted, or leave blank lines alone and let the span stay block Markdown. The span is padded and formatted as its own document since #690, so <br /> may no longer be needed.
What happens
src/sections/update-description.tsreplaces every\n\nin the description with<br />. A description whose fence follows a blank line loses the line break before its opening fence:The opening fence no longer starts a line, so it is text. The closing fence starts a line, so it opens a new fence that nothing closes.
Consequence
An unclosed fence runs to the end of the document, so GitHub renders every line after the description section as code, including the generated usage, inputs and outputs.
PR #704 makes marker lookup use a single start and end pair wherever the pair sits, so this fence does not stop later sections from updating. The README the tool writes still renders broken.
Suggested direction
Keep fenced blocks intact when the description is converted, or leave blank lines alone and let the span stay block Markdown. The span is padded and formatted as its own document since #690, so
<br />may no longer be needed.