Files
DongHyeonkaandClaude Opus 5 ab59130196 chore: 이전 세션이 남긴 변경을 커밋한다
이번 파이프라인 작업과 무관하게 작업 트리에 남아 있던 것을 그대로 올린다.
사용자가 「전부 커밋」으로 정했고, 이번 작업과 섞이지 않게 커밋만 나눴다.

대부분은 clean-architecture-backend-template 의 그림 정본 재배치다 —
final/assets/diagrams/<이름>/ 에 있던 것이 CLAUDE.md 가 적은 배치인
final/assets/<이름>/ 로 옮겨졌고 .techviz/<이름>/ 이 함께 들어왔다.
삽입 줄의 대부분(3.15M)이 그 .techviz context.json 이다.

그 밖에 ca-tmpl·document-haness 의 정리, .claude/agents/ 열한 개,
writing-practitioner-guides 스킬, .playwright-mcp 세션 산출물,
scripts/check-ssot-facts.py 와 그 시험이 들어 있다.

이 커밋의 내용은 내가 만든 것이 아니라 이전 세션이 남긴 것이고 검증하지 않았다.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-17 11:02:02 +09:00

3.5 KiB

Tech Log Tree Decomposition Checklist

Selection

  • Every analysis candidate carries a disposition, and KEEP_IN_SSOT is used.
  • dispositionReview: PENDING is 0 — nothing reached the tree by recall alone.
  • Each PROMOTE node passes the independence test.
  • Candidates were discovered from final/document.md, not from analysis/**.
  • Material found only in analysis/** was added to final/document.md first.
  • candidateScope is declared, and no candidate came from outside it.

Source integrity

  • The tree records the source document hash, ledger hash, and project revision.
  • Every node has at least one source anchor.
  • Source anchors actually contain the material implied by the title.
  • Runtime-dependent claims name evidence or use NEEDS_EVIDENCE.
  • readiness states how well evidenced the node is. It does not state whether the record has been written or published.

Topic quality

  • Every Topic has one reader question, and every node in it helps answer that question.
  • No two Topics share a reader question.
  • Topic is an engineering problem space rather than a directory name.
  • A large Topic is split when its records no longer share useful relations/criteria.

Case

  • There is a specific incident, experiment, failure, diagnosis, or verification sequence.
  • The title can be understood without inventing a historical story.
  • The conclusion is bounded by actual evidence.
  • Observations that answer the same question with the same conclusion are one Case, as a table or sub-sections — not several partial Cases.

Concept

  • It was added because a Case, Decision, or Question needs it, not by sweeping headings.
  • basis-version names what the explanation was written against.
  • The title names a mechanism, not an absence, a count, or an analysis-scope fact.
  • No analysis section number or finding grade survives in the title.

Setup

  • Someone other than the author has to run it; it is not one Case's reproduction steps.
  • The commands and configuration values come from the analysis, not from memory.
  • pinned-versions names the versions the procedure was established on.
  • A project is set. No verification date is invented to stand in for the versions.

Reference

  • The rule is reusable beyond the originating incident.
  • It is not the Case summary rewritten declaratively.
  • Scope and exception can be stated from sources.

Open Question

  • The answer is not already in the analysis.
  • Known/unknown/next verification are separable.
  • The design or a decision actually turns on the answer.
  • Candidate options are included only when sources really considered them.

Decision

  • A project choice is explicitly recorded or user-supplied.
  • technology is present is not being treated as rationale.
  • The accepted cost is stated, not only the benefit.
  • NEEDS_DECISION is used if the direction is only a recommendation.

Duplication and shape

  • No two nodes have the same primary purpose.
  • Relations are used instead of copying one record into another.
  • Node count is bounded by what a reader would read, not by the analysis denominator.

Parity

  • Every node traces back to a PROMOTE candidate, and every PROMOTE candidate has a node.
  • counts matches what build-tech-log-tree.py produces.
  • unlisted is empty — no record file exists outside the contract.
  • python3 scripts/verify-tech-log-tree.py <project> reports 0 errors.