Disclosure: Substantially drafted by GPT-6.1 Terra for Yan Wang / LensUp, then source- and fact-checked by Codex AI. Yan Wang is affiliated with LensUp. The stated results are local Node conversions of synthetic text-only DOCX packages using the unchanged convertDocx function and installed AnyDoc WASM 0.2.4. They are not production-browser, Word visual-rendering, image, arbitrary-document or security tests. No human or owner authored, reviewed or tested this draft.

A converter test can find the words “Project notes” and still miss the question that matters: did the converter classify the paragraph as a heading? To test that distinction, keep the text constant and change the paragraph properties.

The useful pair here is a paragraph with a direct outline level of 0 and a paragraph made bold with size 32 but given no outline level. The first supplies structural information. The second supplies appearance properties without that outline information. Their actual Markdown outputs were:

Direct outline level 0:

# Project notes 

Bold and size 32, with no outline:

**Project notes** 

The direct-outline case is a passing control for this fixture’s level-one heading expectation: it produced a level-one Markdown heading. The bold/size case is a negative control for the proposed classification rule: the words remained emphasized text and did not acquire a heading marker. The test did not inspect a rendered screenshot, so “lookalike” describes the formatting properties supplied to the fixture, not a visual comparison that was performed.

A third fixture exercised a defined Heading1 style that itself contained outlineLvl0. Its actual output was:

# Project notes 

That is useful corroboration for this particular style definition. It does not establish that a style name alone will always trigger heading recognition. The outline property in the definition is part of the input being tested.

A practical test should compare the complete output for each known input, including the marker and text. Checking only that the string survives would let both outcomes pass without distinguishing a heading from emphasized body text. Checking only for # somewhere in a larger document could also attribute a marker to the wrong paragraph. Keep the fixture small enough that the expected classification is unambiguous.

The execution used @firecrawl/anydoc-wasm 0.2.4 through the current conversion code. These are observations about three synthetic packages, not a claim about every DOCX document or browser flow.