|
| 1 | +Act: read ModuleeadingList.md, and enhance the first unmarked item |
| 2 | + |
| 3 | +## Working Protocol |
| 4 | + |
| 5 | +1. Select the first unmarked single checklist item to work on. |
| 6 | +2. Enhance comments per the patterns and length guidance above. |
| 7 | +3. Mark the item as completed in the checklist. |
| 8 | +4. Commit and clear the context and proceed to the next item until all are completed. |
| 9 | + |
1 | 10 | ## Module Reading List |
2 | 11 |
|
3 | 12 | This file lists each module file under `Sources` with pointers for deeper reading. |
4 | 13 |
|
| 14 | +## Comment Enhancement Plan |
| 15 | + |
| 16 | +Goal: Enhance comments across all Swift files in `Sources` using clear, consistent, English documentation [[All comments in English]] and pragmatic depth. |
| 17 | + |
| 18 | +- Patterns to apply (use Swift doc comments): |
| 19 | + - Jazzy compatibility: |
| 20 | + - Use Swift-Markdown doc comments that Jazzy parses: prefer `///` for single symbols and `/** ... */` for multi-line summaries. |
| 21 | + - Structure with standard sections that Jazzy recognizes, such as `- Parameters:`, `- Returns:`, `- Throws:`, `- Note:`, and `- Warning:`. |
| 22 | + - Use Markdown features that render well in Jazzy: short lists, code fences with language specifiers (such as ```swift), and inline code via backticks. |
| 23 | + - Keep lines wrapped around ~100 characters to avoid awkward wrapping in generated docs. |
| 24 | + - Link related symbols or references using Markdown links where helpful. |
| 25 | + - File header: High-level purpose, core responsibilities, and key types/functions summary. |
| 26 | + - Format: `///` or `/** ... */` |
| 27 | + - Length: 3–6 lines (wrap at ~100 chars). |
| 28 | + - Public API (types, initializers, methods, properties): |
| 29 | + - Use `///` with: one-line summary; Parameters (name + purpose); Returns; Throws; Thread-safety and main invariants; Complexity when relevant. |
| 30 | + - Length: 3–10 lines per symbol. |
| 31 | + - Complex private logic / algorithms / state machines: |
| 32 | + - Use brief block above code explaining intent and non-obvious constraints, such as invariants, preconditions, postconditions, and why choices were made. |
| 33 | + - Length: 2–6 lines; avoid restating code. |
| 34 | + - Concurrency and lifecycle: |
| 35 | + - Note execution context (main thread vs background), reentrancy, cancellation, and ownership. |
| 36 | + - Error handling and retries: |
| 37 | + - Clarify error types, retry/backoff strategy, and failure-mode expectations. |
| 38 | + - Performance notes: |
| 39 | + - Mention time/space complexity and hotspots where applicable. |
| 40 | + - Do not: |
| 41 | + - Restate trivial code, add noisy inline comments, or leave TODOs—implement instead. |
| 42 | + - Language and tone: |
| 43 | + - Write in English, concise and informative; use examples such as short scenario bullets when helpful. |
| 44 | + |
| 45 | +## Comment Enhancement Checklist (Sources) |
| 46 | + |
| 47 | +- [ ] `Sources/Monstask/MonoTask.swift` |
| 48 | +- [ ] `Sources/Monstask/KVLightTasksManager.swift` |
| 49 | +- [ ] `Sources/Monstask/KVHeavyTasksManager.swift` |
| 50 | +- [ ] `Sources/Monstore/MemoryCache/MemoryCache.swift` |
| 51 | +- [ ] `Sources/Monstore/MemoryCache/PriorityLRUQueue.swift` |
| 52 | +- [ ] `Sources/Monstore/MemoryCache/TTLPriorityLRUQueue.swift` |
| 53 | +- [ ] `Sources/Monstore/Statistics/CacheStatistics.swift` |
| 54 | +- [ ] `Sources/MonstraBase/CPUTimeStamp.swift` |
| 55 | +- [ ] `Sources/MonstraBase/DoublyLink.swift` |
| 56 | +- [ ] `Sources/MonstraBase/HashQueue.swift` |
| 57 | +- [ ] `Sources/MonstraBase/Heap.swift` |
| 58 | +- [ ] `Sources/MonstraBase/RetryCount.swift` |
| 59 | +- [ ] `Sources/MonstraBase/TracingIDFactory.swift` |
| 60 | + |
| 61 | + |
| 62 | + |
5 | 63 | ### Sources/Monstask/MonoTask.swift |
6 | 64 | 1. Reference to root README: `README.md` |
7 | 65 | 2. Read example README(s): |
|
0 commit comments