Skip to content

feat: improve TypeDoc HTML migration lane#698

Open
shczhen wants to merge 27 commits into
mainfrom
codex/html-migration-typedoc
Open

feat: improve TypeDoc HTML migration lane#698
shczhen wants to merge 27 commits into
mainfrom
codex/html-migration-typedoc

Conversation

@shczhen

@shczhen shczhen commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add explicit generated HTML migration lane modules and dispatch from the existing CLI without changing the public command surface.
  • Improve the TypeDoc lane so symbol pages use canonical TypeDoc titles for slugs and render members semantically.
  • Preserve object-literal property documentation and block structure in TypeDoc comments.
  • Clamp generated Markdown heading depths to the valid level 1-6 range.
  • Preserve DITA/Oxygen dry-run behavior and keep the remaining generator lanes as separate follow-up work.

Closes #692.
Closes #693.
Fixes #715.
Fixes #716.

Details

  • Adds lane modules for DITA/Oxygen, TypeDoc, Doxygen/Javadoc, iOS doc-generator/appledoc, and Dartdoc.
  • Keeps node scripts/html-to-md-migration.mjs as the entrypoint.
  • Reads TypeDoc titles by selector priority so .tsd-page-title h1 wins over document <title>.
  • Normalizes TypeDoc titles such as Class AgoraRteEngineConfig to AgoraRteEngineConfig.
  • Generates TypeDoc symbol slugs like classes/agora-rte-engine-config.mdx.
  • Renders TypeDoc member groups, anchors, signatures, parameter tables, returns, and object-literal declarations as Markdown/MDX-safe output.
  • Keeps tables, paragraphs, and nested lists in source order inside list-item/property documentation.
  • Removes TypeDoc presentation flags such as Optional while preserving signature optionality.
  • Aligns nested list blocks to unordered and ordered marker widths.

Verification

  • bun run test scripts/html-to-md-migration.test.ts (10 passed)
  • node --check scripts/html-to-md-migration.mjs
  • bunx biome check scripts/html-to-md-migration.mjs scripts/html-to-md-migration.test.ts
  • bun run types:check
  • Real TypeDoc generation: shengwang-doc-source/html-docs/whiteboard/Web
    • MemberState and PlayableCheckingParams property documentation restored
    • JoinRoomParams.hotKeys table remains structured and ordered
    • TypeDoc Optional badges do not leak into property headings
    • no level-7+ Markdown headings remain
  • Real TypeDoc generation: shengwang-doc-source/html-docs/flexible-classroom/Web
  • DITA smoke check: shengwang-doc-source/html-docs/rtc/Android --dry-run
  • Full test suite retains four unrelated baseline failures: three legacy sitemap audit tests and one DocsShell mobile navigation test.
  • bun run build was not run.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

Vercel Preview

Preview URL: https://docs-portal-ouv3emfbe-agora-devx.vercel.app

@shczhen

shczhen commented Jul 13, 2026

Copy link
Copy Markdown
Collaborator Author

已按 #748#755 的完整上下文更新本 PR:修复中文 TypeDoc 标签/描述、自链接标题、精确目标路由和旧站公开导航;新增真实 RTC React MDX 迁移器。提交 47fef91、4230b0cf9;专项 13 项测试通过,真实源重跑验证通过。未合并,等待 doc team 测试。

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

Issue #759 已在本 PR 修复:cb04a9dbd 让 TypeDoc JSDoc inline links 在转义前按既有路由表解析;无安全目标时输出可读标签。迁移测试 12/12 通过,生成内容已同步到 PR #712,等待 doc team Preview 验证。

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

复核 Issue #782:使用相同 RTC/Flexible Classroom DITA 源文件重跑,当前 head e653e0c(修复 a5ffeec)均为 0 个 locale-less API 链接;旧 PR #704 可稳定复现。无需新增代码,已有 nested content/docs 输出路径回归测试。PR #704 按约束未改动,待文档团队在本 PR/汇总 PR #712 复测。

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

Issue #785 已修复(633ce9632):真实 Flexible Classroom Web TypeDoc 导出现在普通重跑即自动使用 bundled 11-Store public navigation;显式 generated 仍优先。精确源/基线复现通过,迁移测试 20/20,Standards/Spec PASS,待复测。

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

#789/#794 更新:#789 同源重跑 70 个 TypeDoc MDX,正文 H1=0,重复来自旧 baseline 的 DocsShell,根修复仍在 #712#794 已在本 PR 以 cd43d1b 根修复 DITA root-map 导航,真实 FCR Android 输出为 index+15 visible、7 hidden-but-written,21/21 迁移测试与双轴审查通过。待文档团队复测。

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

#799 已在本 PR 原分支修复(810de8bd7):TypeDoc 与通用 HTML code block 现在输出 Fumadocs 可见语言标题;未知/无语言安全回退 Text。迁移测试 21/21、types、Biome 通过,待文档团队复测。

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

同步 #800:迁移器修复已推送至 a74a776。Whiteboard Web 现在默认使用公开导航,Room/Player/Displayer 及其他泛型 TypeDoc 符号生成稳定路由,并正确注册 scoped sidebar。专项测试、类型检查、Biome 与真实旧源复现均通过;请继续由文档团队测试,暂不合并。

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

同步 #801:441b4ba5b 已推送。TypeDoc 标准 api-reference 输出现在会逐层幂等登记到现有父级 meta;真实 RTC Mini Program 源在 d172846 基线上重跑后已挂入 RTC 局部导航。24/24 与完整检查通过,待文档团队复测。

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

同步 #802 结论:legacy rtc/React HTML 实为 Web SDK 4.22,#728 identity guard 正确阻止其冒充 React,因此本 PR 不做内容层绕过。正式 React 内容及父级挂载位于原汇总 PR #712

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

同步 #803:已将 DocsShell 单次正文挂载根修复与 TypeDoc H1/hash 唯一性回归同步到本原 PR(9ba5de39a、c215dbfb3、80f534262)。不删生成内容标题;专项/迁移/类型/双轴审查通过,待文档团队复测。

@shczhen

shczhen commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator Author

#804 已复核并固化回归:cea4008ee。\n\n在 d172 基线用当前脚本迁移真实 Flexible Classroom Web 源后,公开侧栏仅含 11 个 Store 条目;Meeting / Private Room 条目不在该页链接 DOM。新增测试覆盖 product → web → api-reference 的祖先注册、navScope 保留及重复运行幂等。\n\n验证:migration 25/25、types:check、Biome、diff check、真实源迁移和浏览器可见侧栏均通过。请文档团队基于最新 head 复测。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants