docs: add project specification with CoT structure and XML to docs/source/design/ - #1701
docs: add project specification with CoT structure and XML to docs/source/design/#1701stmatengss with Copilot wants to merge 4 commits into
Conversation
Co-authored-by: stmatengss <11641725+stmatengss@users.noreply.github.com>
|
@copilot 1. Use XML when it can improve efficiency. 2. Use CoT structure. 3. 在开始编写任何代码之前,请先根据本 Spec 描述你对任务的理解。如果 Spec 中存在冲突,请立即指出。 ** Update in this PR ** |
- Add CoT preamble: task understanding, 3 identified conflicts with resolutions, numbered analysis steps - Use XML for structured sections: dependencies, architecture layers, transport registry, dataflows, API metadata wrappers, style rules, constraints, build options, CI matrix - Keep fenced code blocks for actual C++/Python syntax - Fix HTML entity rendering in XML attributes (use square brackets for generics) - Expand EP/PG acronyms on first use Co-authored-by: stmatengss <11641725+stmatengss@users.noreply.github.com>
Done in b97e569. Here's what was applied: 1. CoT structure — the document now opens with a
2. XML where it improves efficiency — structured sections now use XML (self-describing, machine-parseable):
Fenced code blocks are kept for actual C++/Python syntax where XML would add no value. Simple 2-column lookups remain as Markdown tables. |
|
@copilot Is it suitable for the current position described in PROJET_SEPC.md? |
Root level is reserved for GitHub community health files (README, CONTRIBUTING, CODE_OF_CONDUCT, MAINTAINERS). Technical/design documentation belongs in docs/source/ per existing repo conventions. - Move PROJECT_SPEC.md → docs/source/design/project-spec.md - Add design/project-spec to Sphinx toctree in docs/source/index.md Agent-Logs-Url: https://github.com/kvcache-ai/Mooncake/sessions/7c9cd8d2-6303-4a90-a1f2-2fb35dc3e6b1 Co-authored-by: stmatengss <11641725+stmatengss@users.noreply.github.com>
The root level is not the right position. Root is reserved for standard GitHub community health files ( Fixed in 1a9d0d8:
|
|
This PR has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Please update the PR or comment to keep it open. |
|
This PR was closed because it has been inactive for 104 days. Feel free to reopen if you'd like to continue the work. |
Adds
docs/source/design/project-spec.mdcapturing the architectural ground truth of the Mooncake codebase in English for onboarding, tooling, and AI-assisted development contexts. The document is placed underdocs/source/design/consistent with the repository's existing Sphinx documentation conventions, and is indexed indocs/source/index.mdunder the Design Documents section.The document is structured using a Chain of Thought (CoT) preamble followed by XML-tagged sections where structured, machine-readable representation improves efficiency.
Description
CoT Preamble (
<cot>)<understanding>— concise summary of the project and what the spec aims to capture<conflicts>— 3 spec tensions identified and resolved with explicit<resolution>tags:USE_TENT=OFFby default)mooncake-transfer-enginebut covers the full platform, not just the Transfer Engine<analysis>— 5 numbered reasoning steps from dependency discovery → API extraction → style rulesXML-structured Sections
<dependencies>version,source, androleattributes<architecture><layer>→<component>)<transports>protocolsandhardwareattributes (13+ transports)<dataflow>actor,call,input,outputattributes (4 paths)<api><style>/<constraints><build-options>/<ci>Fenced code blocks are retained for actual C++/Python/bash syntax. Simple 2-column lookups remain as Markdown tables.
Spec Contents
installTransport()), master/replica KVCache store overcoro_rpcTransferEnginepublic interface,MasterClient(tl::expected[T, ErrorCode]return convention), vLLM v1MooncakeConnectorscheduler/worker methods, CLI entry points,HandShakeRequestTypeenumPascalCasetypes /camelCasemethods /snake_case_members), mandatory error handling, RAII ownership, thread-safety documentation requirement, memory registration rulesFiles Changed
docs/source/design/project-spec.md— new comprehensive project specificationdocs/source/index.md— addeddesign/project-specentry to the Sphinx toctree under Design DocumentsModule
mooncake-transfer-engine)mooncake-store)mooncake-ep)mooncake-integration)mooncake-p2p-store)mooncake-wheel)mooncake-pg)mooncake-rl)Type of Change
How Has This Been Tested?
Documentation-only change; no runtime behavior affected.
Checklist
./scripts/code_format.shbefore submitting.🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.