docs(integration): direct Learning README images

This commit is contained in:
2026-08-20 14:09:50 +08:00
parent 9956739693
commit 2168e291b2
11 changed files with 95 additions and 33 deletions

View File

@@ -13,7 +13,7 @@ The integrated Learning module previously implemented course generation, an acco
- Keep the existing authenticated Learning entry and `module_access.learning` policy.
- Replace the old course model completely with a server-driven project list and README detail page; do not retain a compatibility API or local-course read path.
- Works Square operations owns project name, cover, summary, tags, version, ordering, publication state, Markdown, ZIP, immutable size, and SHA-256 metadata.
- Publish-time processing mirrors acceptable remote HTTPS raster images and rewrites README image references to fixed project-media paths. Renderer disables raw Markdown HTML; Main fetches controlled media with authentication, MIME validation, and a 10 MiB limit.
- Publish-time processing removes raw Markdown HTML and validates image references as credential-free, default-port HTTPS URLs whose current DNS answers are public. It preserves those URLs instead of downloading, decoding, transcoding, or mirroring image bytes. The Learning detail Renderer opts only Markdown image nodes into the guarded direct-HTTPS image path; covers and historical release media keep their existing controlled-media handling.
- Electron Main owns Works credentials, the native save dialog, archive request, redirect/origin policy, temporary file, 512 MiB limit, declared size, SHA-256, ZIP signature, and atomic final rename. Renderer receives only bounded project DTOs, media data, and `saved` or `cancelled`.
- Remove course generation, progress, local library, OpenMAIC player, Agent, ASR, classroom runtime, Learning IPC channels, player packaging resources, and their tests.
- Do not automatically delete historical downloaded course data. The new client never reads or migrates it.
@@ -22,7 +22,7 @@ The integrated Learning module previously implemented course generation, an acco
- The desktop client and package are substantially smaller and no longer depend on a production Stage player artifact.
- The external Works Square operations/admin/API contract must be implemented and deployed before the new client can provide real catalog data.
- Remote README images depend on successful publish-time mirroring; unsupported or failed images remain local display failures rather than arbitrary privileged network requests.
- Remote README images depend on the third-party origin and Electron's supported image formats. Each image failure remains local to that image, while availability and requester network information are visible to the image origin.
- A future historical-data cleanup must be an explicit, user-controlled maintenance feature.
## Supersedes
@@ -35,6 +35,8 @@ The integrated Learning module previously implemented course generation, an acco
- Source task: `20260819-learning-project-catalog-impl-4e9c71a2`
- Source commit: `38db158`
- Integration merge: `d967b0f`
- Direct-image server source: `65ea070`
- Direct-image client source: `9956739`
## Related

View File

@@ -8,7 +8,7 @@
| ADR-002 | Robot V1 采用 Main 门控的引导式热点配网并衔接现有六位 Binding | Accepted / implemented, default on | 2026-08-16 | Robot Renderer、Host API、Electron Main、现有固件热点入口 | `adr-002-robot-guided-hotspot-binding-v1.md` |
| ADR-003 | Robot 配网页内扫描并连接 Windows/macOS 热点 | Accepted / implemented with physical release gates pending | 2026-08-16 | Robot Renderer、Host API、Electron Main、Windows WLAN、macOS CoreWLAN/CoreLocation | `adr-003-robot-in-app-hotspot-connection.md` |
| ADR-004 | Works Square 统一拥有桌面认证生命周期边界 | Accepted / implemented | 2026-08-19 | Renderer、Host API、Electron Main、Works Square auth facade | `adr-004-square-auth-lifecycle-boundary.md` |
| ADR-005 | Learning 采用运营精选项目目录并退役课程运行时 | Accepted / implemented | 2026-08-20 | Learning Renderer、Host API、Electron Main、Works Square operations/API | `adr-005-learning-project-catalog.md` |
| ADR-005 | Learning 采用运营精选项目目录、直接渲染经校验的 HTTPS README 图片并退役课程运行时 | Accepted / implemented, amended 2026-08-20 | 2026-08-20 | Learning Renderer、Host API、Electron Main、Works Square operations/API | `adr-005-learning-project-catalog.md` |
## Superseded Decisions