Session Recap · 2026-05-02 · cập nhật 2026-05-04 (v0.8.1)

Lumina-Wiki: từ format-validated ETL
đến production-grade LLM-Wiki

Phân tích sâu repo lumina-wiki@0.8.1 (gốc @0.3.0 2026-05-02, snapshot trung gian @0.5.0), đối chiếu với tầm nhìn LLM-Wiki của Karpathy, landscape 7 đối thủ, literature/industry standards (GraphEval · OpenLineage · TempValid · LLM jury), và so sánh trực tiếp với thieung/personal-wiki-hub. Kết quả: 3 báo cáo, 1 lộ trình 5-phase, 3 đề xuất port ROADMAP-aligned — đến v0.8.x đã đóng được gap provenance + mở migration path.

Repo: lumina-wiki@0.8.1 Báo cáo sinh: 3 file Markdown Sources khảo sát: 5 web search + 3 fetch Effort recommended: 7–8 PW (Phase 1–3) + 3 ngày (port aligned)

01Executive summary

Một câu: Lumina có engineering hygiene xuất sắc nhưng chưa đóng được gap chất lượng tri thức — và roadmap hiện tại đang ưu tiên sai (mở rộng nguồn trước quality gate).

9.2k
LOC scripts/
14
Skills (3 packs)
9
Lint checks (format-only)
7+
Đối thủ LLM-Wiki
7–8
PW must-have fix
Lumina implement đúng structural vision của Karpathy, thiếu dynamic vision — compounding qua thời gian, self-improvement, contradiction surfacing. — Báo cáo phân tích, mục 4

1.1 — Delta v0.3.0 → v0.5.0 (kể từ recap gốc)

v0.4.0

Bump version + skill refinement

abc901e chore: bump version to 0.4.0 and refine skill system. Đẩy lên thềm 0.5 + tinh chỉnh skill system, không thêm skill mới. Skill count vẫn 14.

v0.5.0 · feat

Foundation aliases + resolve-alias

8189efe feat(wiki): foundation aliases and resolve-alias for cross-skill dedup. Cross-skill dedup mechanism mới — giảm friction với 28 edge types khi nhiều skill cùng đụng concept. wiki.mjs case thứ 19.

v0.5.0 · feat

Research pack matures

6e6692c handle prefill collisions + Wikipedia disambiguation. ec8fbbe surface purpose, dedupe ingested papers, log phases. Research pack giờ chống được edge case thực tế của khoa học data.

v0.5.0 · policy

Cross-model review reframed

4dc349e docs(policy): reframe cross-model review rule around bundled infra, not bias. Rule mới: v0.1 không bundle llm-review MCP. User wire-in được nếu muốn — không cấm, chỉ không ship. Ảnh hưởng Phase 4 jury.

v0.5.0 · fix

Stderr format consistency

28c350a fix(wiki): unwrap resolve-alias no-match stderr format. Skill polish, không phá schema.

DOC HYGIENE

ROADMAP outdated

ROADMAP.md dòng 3 vẫn ghi "Current shipped version: v0.2.0". Lệch 3 minor version với package.json. Cần đồng bộ.

Tác động lên 4 gap chất lượng (mục 5): v0.5.0 chưa đụng gap nào. Foundation aliases là cross-skill dedup chứ không phải truth check / provenance / decay. Phase 1–3 must-have của lộ trình (mục 8) vẫn đầy đủ — không có item nào "đã âm thầm xong".

1.2 — Delta v0.5.0 → v0.8.1 (cập nhật 2026-05-04)

4 release liên tiếp (v0.6 · v0.7 · v0.8.0 · v0.8.1) trong 1 ngày — tập trung trực tiếp vào quality gate stack: provenance schema, confidence enum, raw-anchor semantic, migration path. Lần đầu Lumina chạm vào gap chất lượng (mục 5) thay vì chỉ siết hygiene.

v0.6.0 · feat

Provenance + confidence schema

880280c feat(v0.6): quality gate upgrades. provenance required enum (replayable|partial|missing) trên sources, confidence optional float 0–1 trên sources/concepts. Lint L11 warn confidence missing. Lint --summary JSON shape ổn định cho machine consumption.

v0.6.0 · feat

Session correlation + manifest forward-compat

wiki.mjs log entry mang session:<8hex>, env override LUMINA_SESSION_ID cho multi-write correlation. Installer thêm migrateManifest helper — sẵn sàng cho schema bump. ROADMAP add v1.0 /lumi-verify 3-stage plan (A wiki↔raw · B raw↔URL · C wiki↔web).

v0.7.0 · feat

Migration path cho legacy wiki

a779003 feat(v0.7): legacy migration path for upgrades. /lumi-migrate-legacy core skill — LLM-driven backfill provenance/confidence. CHANGELOG.md ship vào _lumina/CHANGELOG.md để skill đọc. Post-upgrade installer banner show lint summary khi version bump. Manifest schemaVersion 1 → 2 + flag legacyMigrationNeeded.

v0.8.0 · feat

Raw-centric provenance + PDF fetch

ce51791 feat(v0.8): raw-centric provenance and PDF fetch landing zone. Field raw_paths: array trên sources — pointer rõ ràng đến raw artifact. raw/download/<resource>/ permanent zone (arxiv/doi/s2/web). _lumina/tools/fetch_pdf.py idempotent download, atomic write. Lint L12 cảnh báo raw_paths broken/transient.

v0.8.0 · breaking

Field rename + provenance reframed

url:<str>urls:<array> để đối xứng với raw_paths. Provenance reframe raw-centric: replayable giờ cần raw_paths resolve được trên disk (URL không còn precondition — file-only sources qualify). /lumi-ingest Mode B: input URL/arxiv-id/DOI/title → resolve + fetch + ingest. Manifest schemaVersion 2 → 3.

v0.8.1 · fix

Migration nudge — L02 legacy field warn

41d49ba release: v0.8.1 — legacy url: warning to surface migration on upgrade. Lint L02 cảnh báo khi source page còn mang field url: string sau khi đổi sang urls: array. Trước fix này, upgrade v0.7 → v0.8 lint vẫn xanh và banner installer im lặng — user không biết phải chạy /lumi-migrate-legacy. Field cũ runtime ignore, không invalid; warning thuần migration nudge.

Tác động lên 4 gap chất lượng (mục 5): ✓ Gap ③ provenance đã đóng (schema enum + raw_paths + L12) · ◐ Gap ② confidence đã có schema + L11 warn (chưa enforce) · ◐ Gap ① truth verification roadmap'd (v1.0 /lumi-verify 3-stage) · ✗ Gap ④ feedback loop / decay chưa chạm. Tổng: Phase 1 must-have (mục 8) gần như xong, Phase 2 đang đi vào (verify pass), Phase 3 (decay) vẫn để ngỏ. Migration path là bonus deliverable không có trong lộ trình ban đầu — phản ứng đúng với fact rằng có user upgrade từ pre-v0.6.

Doc hygiene update: ROADMAP.md dòng 3 vẫn ghi "Current shipped version: v0.2.0"lệch 6 minor version với package.json@0.8.1. Card 1.1 cảnh báo từ v0.5.0 vẫn còn nguyên giá trị. Đây là chỗ cuối cùng chưa đồng bộ sau 4 release liên tiếp.

02Flow phiên — 3 vòng research

Phiên đi qua 3 vòng đào sâu: phân tích repo → đối chiếu Karpathy + docx → research thêm nguồn ngoài để cụ thể hoá hành động.

flowchart LR R1["🔍 Vòng 1
Phân tích repo
+ Karpathy gist
+ docx VN"] --> R2["🔬 Vòng 2
Strengths /
Weaknesses
Report 1"] R2 --> R3["🌐 Vòng 3
External sources
5 WebSearch + 1 fetch"] R3 --> R4["🛠 Output
Roadmap 5-phase
Report 2"] R4 --> R5["📊 Hôm nay
HTML recap
(file này)"] style R1 fill:#1c2330,stroke:#5eb1ff,color:#e6edf3 style R2 fill:#1c2330,stroke:#ffb547,color:#e6edf3 style R3 fill:#1c2330,stroke:#5eb1ff,color:#e6edf3 style R4 fill:#1c2330,stroke:#ffb547,color:#e6edf3 style R5 fill:#1c2330,stroke:#4ade80,color:#e6edf3
VÒNG 1 · Phân tích nội bộ

Đọc README · ROADMAP · docx phân tích · gist Karpathy

Nắm 3 layer (raw/wiki/schema), 14 skills 3 packs, schema as-code (schemas.mjs), 9 lint checks structural. Khẳng định docx phân tích chính xác về gap.

VÒNG 2 · Strengths & Weaknesses

Báo cáo 1 — 2026-05-02-repo-analysis-strengths-weaknesses.md

Engineering hygiene trên trung bình ngành. Gap chính: format ≠ truth, self-rated confidence, no provenance, no review queue, reset hạt nhân, no feedback loop.

VÒNG 3 · External sources

5 WebSearch · GraphEval · OpenLineage · TempValid · LLM jury · 7 đối thủ

Phát hiện: 7 implementation LLM-Wiki khác đã tồn tại. nvk/llm-wiki đã ship adversarial multi-agent + deep lint web-verify.

OUTPUT · Lộ trình

Báo cáo 2 — 2026-05-02-improvement-roadmap-with-external-sources.md

5 phase, 7–8 PW must-have. Mọi gap có pattern chuẩn hóa. Re-positioning sang "production-grade".

03Kiến trúc Lumina-Wiki

3 layer Karpathy + 4 layer engine của Lumina. Mỗi node link về source GitHub.

3.1 — Karpathy 3-layer ↔ Lumina mapping

flowchart TB subgraph K["KARPATHY 3-LAYER VISION"] direction TB L1["RAW SOURCES
immutable input
(LLM read-only)"]:::karp L2["THE WIKI
LLM-owned
markdown + YAML"]:::karp L3["THE SCHEMA
config / rules
(CLAUDE.md)"]:::karp end subgraph M["LUMINA MAPPING"] direction TB M1["raw/
raw/sources/
raw/notes/
raw/discovered/"]:::lum M2["wiki/
concepts/ people/
sources/ outputs/
graph/edges.jsonl"]:::lum M3["src/scripts/schemas.mjs
+ docs/project-context.md
+ skills SKILL.md"]:::lum end L1 -.maps to.-> M1 L2 -.maps to.-> M2 L3 -.maps to.-> M3 classDef karp fill:#1f2937,stroke:#5eb1ff,color:#dbeafe classDef lum fill:#1c2330,stroke:#ffb547,color:#ffe4b5

3.2 — Engine layout (4 lớp code)

flowchart LR subgraph CLI["① CLI Entry"] bin["bin/lumina.js
(ESM, lazy-import)"]:::n end subgraph INST["② Installer"] cmd["src/installer/
commands.js
fs.js · manifest.js
template-engine.js"]:::n end subgraph WS["③ Workspace Engine"] sch["schemas.mjs
(SSOT)"]:::core wiki["wiki.mjs
(upsert/edge/query)"]:::n lint["lint.mjs
(L01–L09)"]:::n reset["reset.mjs"]:::n end subgraph PAY["④ Payload"] sk["src/skills/
core (6) + research (4)
+ reading (4)"]:::n tpl["src/templates/
CLAUDE/AGENTS/GEMINI
.cursor stub"]:::n tools["src/tools/
extract_pdf · fetch_arxiv
fetch_s2 · …"]:::py end bin --> cmd cmd --> sch cmd --> tpl wiki --> sch lint --> sch sk -.invokes via Bash.-> wiki sk -.invokes via Bash.-> lint sk -.invokes via Bash.-> tools classDef n fill:#1c2330,stroke:#5eb1ff,color:#e6edf3 classDef core fill:#2a2010,stroke:#ffb547,color:#ffe4b5,stroke-width:2px classDef py fill:#162a1a,stroke:#4ade80,color:#bbf7d0

3.3 — Workflow vận hành

flowchart LR user(["User"]):::actor subgraph IDE["AI IDE
(Claude / Codex / Gemini / Cursor)"] skill["/lumi-* skill
(markdown prompt)"]:::n end subgraph FS["Filesystem"] raw[("raw/
PDFs · notes")]:::raw wiki[("wiki/
entities + edges")]:::wiki log[("log.md
append-only")]:::log end user -- "drops files" --> raw user -- "/lumi-ingest" --> skill skill -- "Bash → wiki.mjs" --> raw skill -- "writes (atomic)" --> wiki skill -- "appends" --> log user -- "/lumi-ask" --> skill skill -- "reads" --> wiki user -- "/lumi-check" --> skill skill -- "lints (L01–L09)" --> wiki classDef actor fill:#2a2010,stroke:#ffb547,color:#ffe4b5 classDef n fill:#1c2330,stroke:#5eb1ff,color:#e6edf3 classDef raw fill:#1f2937,stroke:#9aa6b2,color:#e6edf3 classDef wiki fill:#162a1a,stroke:#4ade80,color:#bbf7d0 classDef log fill:#2a1a2a,stroke:#c084fc,color:#e9d5ff

3.4 — Schema graph (10 entity × 28 edge type)

LớpSố lượngVí dụSource
Entity types10concept · person · source · output · foundation · …schemas.mjs
Edge types (directed)28cites · contradicts · extends · authored-by · uses-method · …schemas.mjs
Lint checks9 (L01–L09)kebab slug · required frontmatter · reverse edge · dedupe · index refreshlint.mjs
Skills (3 packs)14core 6 · research 4 · reading 4src/skills/
Python tools6extract_pdf · fetch_arxiv · fetch_s2 · fetch_wikipedia · …src/tools/

04Điểm mạnh thật của Lumina

Đây là moat — không nên đánh mất khi shift sang production-grade.

Engineering

Atomic write + safePath

Mọi ghi qua temp + fdatasync + rename. safePath() reject .., abs path, drive letter, backslash. Không có lệnh ghi trực tiếp.

Engineering

Idempotency CI gate

git diff --exit-code qua watched paths sau install lần 2. Symlink ladder (symlink → junction → copy) lưu strategy vào manifest.

Engineering

Zero devDeps · No postinstall · No telemetry

Test bằng node --test + pytest. ci-package.mjs chặn publish nếu có postinstall. Outbound duy nhất: npm view update check, suppressible.

Architecture

File-based đúng đối tượng

Markdown + YAML là read/write surface tự nhiên cho LLM agent. Khớp gist Karpathy. Bidirectional link enforcement (28 edge types có inverse).

Architecture

Schema = single source of truth

schemas.mjs pure data, no I/O. Cả wiki.mjs + lint.mjs import. Schema đổi → propagate tự động.

Architecture

Multi-IDE rendered stub

CLAUDE.md / AGENTS.md / GEMINI.md / .cursor là stub ~5 dòng → README.md. Markers <!-- lumina:schema --> cho upgrade idempotent.

054 gap chất lượng — trạng thái sau v0.8.1

Đây là khoảng cách giữa lời hứa "LLM-maintained knowledge artifact" và thực tế "format-validated ETL pipeline". Sau 4 release v0.6 → v0.8.1: 1 đóng hoàn toàn, 1 đóng một phần (schema có, enforce chưa), 1 đã roadmap'd, 1 chưa chạm.

◐ Partial · roadmap'd v1.0

① Format check ≠ Truth check

9 check L01–L09 (giờ là L01–L12) vẫn structural-only. Đã roadmap: v1.0 /lumi-verify 3-stage (A wiki↔raw grounding · B raw↔URL drift · C wiki↔web external). Schema raw_paths v0.8 là precondition cho stage A. Chưa ship.

◐ Partial · v0.6.0

② Self-rated confidence (vòng tròn)

Schema confidence: float 0–1 đã có trên sources/concepts. Lint L11 warn khi missing. Còn thiếu: signal độc lập (LLM jury / agreement score) — vẫn self-rated, chỉ chuyển từ enum sang continuous. Anti-inflation chưa có.

✓ Closed · v0.6 → v0.8

③ No provenance tracking

v0.6: provenance required enum (replayable|partial|missing) + session_id 8-hex trên log entries. v0.8: raw_paths array + raw/download/<resource>/ + lint L12. Tạo entity X từ doc Y giờ truy ngược được tới file trên disk. "Git blame" cho wiki — done.

✗ Open · chưa roadmap

④ No feedback loop / decay

/lumi-ask sai → lỗi không quay ngược về graph. /lumi-reset vẫn hạt nhân. Confidence decay theo thời gian, query log, citation graph — chưa có item nào trong v0.6 → v0.8.1. Đây là gap duy nhất chưa chạm trong stack chất lượng.

Score sau v0.8.1: 1 đóng (③) · 2 partial (① ②) · 1 open (④). Tỉ lệ phủ tăng từ 0/4 (v0.5.0) → 3/4 đã chạm. Phase 1–2 must-have của lộ trình (mục 8) còn lại: enforce confidence + ship /lumi-verify v1.0. Phase 3 (decay/feedback) vẫn nguyên.

06Cạnh tranh — Lumina không còn first-mover

Đến 2026 đã có ≥7 implementation Karpathy LLM-Wiki public. nvk/llm-wiki đã ship những thứ Lumina mới chỉ "nên thêm".

RepoTiếp cậnMạnh nhấtYếu
karpathy gistSpec/manifesto5k+ stars trong vài ngàyKhông phải implementation
SamurAIGPT/llm-wiki-agentMulti-IDE skill setClaude/Codex/Gemini, no API keyLint format-only
NicholasSpisak/second-brainObsidian-nativeVault tích hợp graph viewSingle-IDE
nashsu/llm_wikiCross-platform desktopUI cho non-CLI userGUI heavy
nvk/llm-wiki 🔥Thesis-driven research5/8/10 adversarial agents · deep lint web-verify · session-event provenance · anti-confirmation-biasPhức tạp
Pratiyush/llm-wikiCLI sessions wikiTổng hợp từ session logPhụ thuộc session capture
Robs87/llm-wikiHermes Agent skillHealth checks + KGNhỏ, mới
VectifyAI/OpenKBOpen frameworkLibrary-styleKhông opinionated
Lumina-Wiki (chúng ta)npm scaffolder + payloadEngineering hygiene · idempotency CI · multi-IDE · schema-as-codeQuality gate yếu
Lumina dẫn đầu engineering, theo sau quality features. Không ai trong landscape có: provenance theo chuẩn OpenLineage, schema migration framework, atomic write + idempotency CI, multi-IDE rendered stub. Đây là moat nếu giữ và build trên top.

07Pattern lời giải đã chuẩn hóa

Mọi gap đều có lời giải sẵn trong literature/industry. Lumina không cần phát minh lại — chỉ cần wire-up.

flowchart TB subgraph Gaps["4 GAP — TRẠNG THÁI v0.8.1"] G1["① Format ≠ Truth
◐ roadmap'd v1.0"]:::partial G2["② Self-rated confidence
◐ schema v0.6 (chưa enforce)"]:::partial G3["③ No provenance
✓ closed v0.6→v0.8"]:::closed G4["④ No feedback loop
✗ chưa chạm"]:::gap end subgraph Solutions["PATTERN ĐÃ CHUẨN HÓA"] S1["GraphEval
(Amazon, 2024)
extract triples → verify"]:::sol S2a["TempValid
(ACL 2024)
numeric + exp decay"]:::sol S2b["LLM Jury
(Evidently AI)
3 model nhỏ > 1 lớn"]:::sol S3["OpenLineage
(industry std)
run/job/dataset facets"]:::sol S4["Query log
+ citation graph
+ confidence decay"]:::sol end G1 --> S1 G2 --> S2a G2 --> S2b G3 --> S3 G4 --> S4 classDef gap fill:#2a1a1a,stroke:#ff6b6b,color:#ff9b9b classDef partial fill:#2a2418,stroke:#ffb547,color:#ffd089 classDef closed fill:#1a2a1f,stroke:#4ade80,color:#9bf0b5 classDef sol fill:#1a2a1f,stroke:#4ade80,color:#9bf0b5
GapPatternSourceEffort
Format ≠ truthGraphEval: extract claim triples từ source → verify từng edgearXiv 2407.107932 PW
No provenanceOpenLineage facet model + W3C PROV — RunEvent JSON với input/output facetsopenlineage.io5 ngày
Self-rated confidenceTempValid: numeric [0,1] + score(t) = s₀·exp(-λ·Δt)ACL 20243 ngày
Self-rated (jury)LLM Jury: 2–3 model độc lập → diff → agreed = verifiedEvidently AI · ACL 20242 PW
No feedback loopQuery log (jsonl) + citation tracking + decay engineinternal design2 PW
Reset hạt nhânrevoke --run / --source sau khi có provenancederived2 ngày

08Lộ trình 5-phase

Block roadmap v1.0.0 hiện tại cho đến khi Phase 1–3 xong. Source expansion (v2 — OpenAlex/Unpaywall/CORE…) ride trên top quality gate.

Phase 1 · Quality foundations3–4 PW · MUST

Modular split wiki.mjs/lint.mjs · Provenance schema + lineage emitter · Targeted revoke · Migration framework · Numeric confidence migration

Phase 2 · Truth verification2 PW · MUST

extract_claims.py (Python) · Lint L10 (GraphEval truth check) · Lint L11 (contradiction surface) · Skill /lumi-verify

Phase 3 · Feedback & decay2 PW · MUST

Query log + citation tracking · Confidence decay engine · Lint L12/L13 · Skill /lumi-stale batch re-verify

Phase 4 · Multi-LLM jury2 PW · OPT-IN

Provider abstraction · Skill /lumi-cross-verify · Jury aggregation. Cần phân định ranh giới với user-rule "no cross-model review" (đây là content verification, không phải code review).

Phase 5 · Source expansion (roadmap v1/v2 hiện tại)As-is · LATER

Daily-fetch · OpenAlex · Unpaywall · CORE · OpenReview · HF papers · PwC · Crossref · DOAJ. Không thay đổi kế hoạch, chỉ dời sau Phase 1–3.

7–8 PW
Phase 1–3 must-have
2 PW
Phase 4 opt-in
~2 tháng
1 dev full-time
+30%
Nếu dev mới onboard

09Re-positioning Lumina trên thị trường

HIỆN TẠI

v0.5.0 tagline (không đổi từ v0.3.0)

"Domain-agnostic, multi-IDE wiki scaffolder — Karpathy's LLM-Wiki vision, cross-platform and pack-based."

Generic. Không nói được tại sao chọn Lumina thay vì 7 implementation khác. Đối thủ nvk mạnh hơn về features.

SAU PHASE 1–3

Đề xuất

"Production-grade LLM-Wiki: provenance-tracked, truth-verified, schema-versioned. The only LLM-Wiki implementation with real ETL discipline."

Differentiator rõ ràng: OpenLineage-compatible event log · GraphEval truth check · schema migration framework · idempotency CI. Target shift sang team/enterprise cần audit.

106 câu hỏi mở cần user phân định

  1. Cross-model review boundary — user-rule "no cross-model review" có áp dụng cho cross-LLM content verification không?
  2. Schema versioning — khi v1.0.0 ship, version schema bump thế nào? Migration path cho user v0.x?
  3. OpenLineage compliance level — full-strict (JSON Schema validate) hay "shaped" (đủ export sang Marquez)?
  4. Confidence enum migration — mapping high=0.9, medium=0.6, low=0.3? Hay buộc re-ingest?
  5. Cost model L10/jury — default chạy hay opt-in qua --deep? Tránh bill shock.
  6. Re-position marketing — chuyển sang "production-grade" có mất segment hobby không? Hai-tầng (default simple, advanced packs opt-in)?

11Source links

Tất cả source code, báo cáo, và external references nhắc đến trong phiên.

REPO LUMINA

Code & docs

CORE ENGINE

Source files chính nhắc đến

7 ĐỐI THỦ

Competitive landscape

Báo cáo sinh trong phiên

12So sánh trực tiếp với personal-wiki-hub 2026-05-03

Sau khi bump v0.5.0, so sánh head-to-head với thieung/personal-wiki-hub — một implementation Karpathy LLM-Wiki khác, Python-only, Obsidian-first, phân phối qua git-clone. Lọc 12 feature qua lăng kính ROADMAP research-vertical.

12.1 — Hai project, hai layer khác nhau

PERSONAL-WIKI-HUB

Vault repo clone-and-use

Repo CHÍNH LÀ knowledge base của user. Python (54 KB) + Shell (5 KB). Obsidian-first (TaskNotes HTTP plugin, Periodic Notes, vault-colors CSS). 12+2 skills: /wiki:capture · ingest · query · browse · audit · synthesize · refresh · autoresearch · index · link · setup · status.

LUMINA-WIKI

npm installer/scaffolder

npx lumina-wiki install tạo workspace rỗng vào project bất kỳ. Multi-IDE (Claude/Codex/Gemini/Cursor/generic). Atomic write, idempotency CI, schema-as-code, symlink ladder. 14 skills · 3 packs.

Khác biệt định nghĩa: personal-wiki-hub là content repository; lumina-wiki là tooling. Hai project ở khác layer của cùng pattern, không cạnh tranh trực tiếp.

12.2 — 12 feature personal-wiki-hub qua lăng kính ROADMAP

FeatureĐánh giáROADMAP slotLý do
/wiki:status dashboardREJECTOff-vertical: generic diagnostic, không research-specific. Đã được consider làm /lumi-status rồi reject.
/wiki:capture URL/PDF/clipboardREJECTGeneric PKM direction. v1.0.0 ROADMAP đã claim input flow qua /lumi-daily (paper-only). Lệch hướng research vertical.
/wiki:browse by type/tagREJECTGeneric navigation. Obsidian/IDE đã cover.
/wiki:synthesizeREJECTContract mơ hồ; có thể làm ad-hoc qua /lumi-ask.
Staleness (queried >60 days)REJECTGeneric, không research-specific. Cần access log mới — chi phí cao.
notes/ user thinking areaREJECTPKM scope expansion; lệch trục research wiki.
/session-sync Claude transcriptREJECTClaude-Code-only — vi phạm cam kết multi-IDE.
/tasknotes Obsidian HTTPREJECTKhoá vào Obsidian + 1 plugin cụ thể.
content/, projects/REJECTOut of scope: lumina là wiki cho 1 project, không phải multi-project hub.
Source hash drift checkPORTv1.0.0 (stability)Paper arxiv v1→v2 update âm thầm. /lumi-daily mang bản mới về raw/discovered/ nhưng không flag wiki page cũ. Research-quality signal đúng nghĩa.
Supersession edgesPORTv2.0.0 (schema bump)Papers literally supersede prior work. Edge type list hiện thiếu supersedes/superseded_by. Piggyback vào v1→v2 schema migration đã planned.
/wiki:refresh stale page updatePORTv1.0.0 (companion of /lumi-daily)Khi paper update upstream, re-summarize wiki page tương ứng. Pair với drift detection. Reuse wiki.mjs API + /lumi-ingest --refresh.

12.3 — 3 đề xuất ROADMAP-aligned chi tiết

PORT · v1.0.0

#A — Drift L10

Slot: Stability lock (v1.0.0).
Effort: ½ ngày.
Risk: Thấp.

Lưu source_hash khi ingest. checkL10 trong lint.mjs ~50 LOC: với mỗi sources/*.md, so hash với raw file → warn nếu lệch. Không có --fix (drift cần re-ingest).

PORT · v2.0.0

#B — Supersession

Slot: Schema migration (v2).
Effort: 1 ngày.
Risk: Trung (schema).

Thêm 2 edge type supersedes / superseded_by trong schemas.mjs (4 LOC). Existing L06 tự động cover bidirectional. /lumi-rank consume superseded_by để downrank.

PORT · v1.0.0

#C — /lumi-refresh

Slot: Companion of /lumi-daily.
Effort: 1.5 ngày.
Risk: Trung (skill mới).

Skill src/skills/packs/research/refresh/SKILL.md. Input: slug → so source_hash → prompt user re-ingest preserve <!-- user-edited -->. Cần thêm flag /lumi-ingest --refresh.

Synergy: A phát hiện → C refresh → B record supersession. Cả 3 cùng họ "research freshness" — gộp thành 1 theme nhỏ trong v1.0.0–v2.0.0 cycle, cộng vào ROADMAP mà không phá theme chính.

12.4 — Mapping bổ sung vào lộ trình hiện tại

v0.6/0.7 · Pre-v1.0 prep½ ngày · MUST

Verify source_hash field đã có trong frontmatter paper; nếu chưa, thêm vào /lumi-ingest phase "source-page". Update ROADMAP version pointer 0.2.0 → 0.5.0.

v1.0.0 · Research freshness add-on2 ngày · MUST

Ship #A drift L10 + #C /lumi-refresh cùng /lumi-daily. Theme hợp nhất: "input flow + freshness".

v2.0.0 · Supersession trong schema bump1 ngày · WITH-MIGRATION

Ship #B supersession edges trong cùng schema bump 1→2 đã planned cho per-source IDs (OpenAlex/CORE/DOI). /lumi-rank consume tự nhiên.

12.5 — Quan sát chiến lược

DIVERGENCE

v0.5.0 hội tụ research-heavy

Foundation aliases, Wikipedia disambiguation, paper dedup, phase logging. Trong khi personal-wiki-hub thiên general PKM (notes, sessions, tasknotes). Khoảng cách triết lý đang rộng ra, không hẹp lại.

DOC HYGIENE

ROADMAP outdated

ROADMAP.md dòng 3 ghi "Current shipped version: v0.2.0" — package.json đã 0.5.0. Cần update version pointer kèm release tiếp theo.

RULE PROPOSAL

Formalize "research vertical only"

Thêm rule trong docs/project-context.md: "Lumina là research wiki, không phải general PKM. Đề xuất port từ general-purpose tool phải tự chứng minh research-specific value." Tránh future contributor lặp đề xuất scope creep.

ROADMAP DELTA

3 ngày work, 0 schema risk lớn

3 đề xuất port chỉ thêm 2 edge type (vào schema bump đã planned), 1 lint check warning (không error → CI green), và 1 skill mới (pack research, opt-in). Không đụng surface lock của v0.1.