원클릭으로
phira-archive-dag
Deterministic Graphviz/DOT derivation + validation for archive records.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Deterministic Graphviz/DOT derivation + validation for archive records.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | phira-archive-dag |
| description | Deterministic Graphviz/DOT derivation + validation for archive records. |
Use this skill when regenerating .archive/graph.dot.
.archive/graph.dot must be deterministically derivable from .archive/records/*.md..archive/records/*.md.archive/pointers/*.yaml and .archive/pointers/branches/*.yamlDerivation MUST fail if any of the following are true:
id, schema_version, type, title, parents.schema_version is not 1.id does not match filename.id does not match [a-z0-9][a-z0-9-]*.type is not one of: Design, Build, Evaluate, Decide.parents references a non-existent record ID.parents graph contains a cycle.edges[*].to references a non-existent record ID.status, tags, git, metrics).edges[*].type (ignore unless used as a hint)..archive/graph.dotphira_archiveid ascending(from,to)| join)digraph phira_archive { ... }.rankdir=LRconcentrate=truenode [fontname="Helvetica", shape="box", style="rounded,filled", fillcolor="white", color="gray30"]edge [fontname="Helvetica", color="gray40"]id.label = "<id>\n<type>\n<title>"status on its own line if present.Only draw ONE directed edge between records: the lineage edge from parent -> child.
This avoids duplicate/opposing arrows and keeps the DAG readable.
For each parent in parents, emit exactly:
"<parent>" -> "<id>" [label="<edge_label>", weight=2, penwidth=1.5]
Compute edge_label for the lineage edge parent -> child as follows:
edges across all records.edges relationship connecting child and parent (in either direction), convert those to one or more lineage label tokens.|) as the lineage edge label.Design -> Build: implemented_byBuild -> Evaluate: evaluated_byEvaluate -> Decide: supportsEvaluate -> Evaluate: refined_byDecide -> Decide: superseded_byderivesMap semantic edge types to lineage label tokens, relative to the lineage direction parent -> child:
child -> parent:
implements => implemented_bytests => evaluated_byevaluates => evaluated_byrefines => refined_bysupersedes => superseded_bydepends_on => required_byparent -> child:
produces => producesIf multiple semantic hints apply, sort the resulting tokens and join with |.
Canonical per-record archive format (YAML front matter + Markdown body).
Pointer semantics for "since last record" and detected-change bookkeeping.
Checklist for proving baseline behavior is unchanged (or changes are intentional) via controlled A/B runs.
Fast, compute-aware verification checklist for implementation changes (imports, configs, tiny runs).
Workflow for conference/venue paper search and short reading lists.
Procedural checklist to infer and state the repo's effective runtime environment and dependency policy.