新增轻量多领域项目管理页,支持领域/计划/任务分层管理并加固渲染安全性#1
Draft
Copilot wants to merge 3 commits into
Draft
Conversation
Agent-Logs-Url: https://github.com/Yinger88/R-D-PM/sessions/3f51aabf-5163-4d01-ada7-f9fb09fd52e5 Co-authored-by: Yinger88 <276300928+Yinger88@users.noreply.github.com>
Agent-Logs-Url: https://github.com/Yinger88/R-D-PM/sessions/3f51aabf-5163-4d01-ada7-f9fb09fd52e5 Co-authored-by: Yinger88 <276300928+Yinger88@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Add project management tool for development plans and tasks
新增轻量多领域项目管理页,支持领域/计划/任务分层管理并加固渲染安全性
Apr 18, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
当前仓库仅有占位 README,无法承载“多个领域下的开发计划与任务管理”需求。本 PR 增加了一个可直接使用的前端单页,实现领域→计划→任务的结构化管理与状态追踪。
功能落地:新增最小可用项目管理页面
index.html,提供单页管理界面。待办 / 进行中 / 已完成。文档补齐:更新项目说明
README.md,明确工具定位、核心能力与使用方式(直接打开index.html)。安全改进:避免用户输入注入到 HTML
innerHTML改为 DOM API +textContent,防止领域名/计划名/任务名等用户输入被当作 HTML 解析。const taskItem = document.createElement("li"); taskItem.textContent = task.name; const status = document.createElement("span"); status.className = "status"; status.textContent = `(${task.status})`; taskItem.appendChild(status);Original prompt