syntaxai/tdd.md · main · src / a31_goals.ts
// c31 — model: /goal slash-command registry. Each /goal that drove a
// PR on this site lives as a markdown file in goals/<slug>.md with
// YAML frontmatter, and this registry indexes them so /goals,
// /goals/:slug, and the sitemap have a single source of truth.
//
// FILENAME CONVENTION: every goal file is named goals/<slug>.md, NOT
// goals/<sha>.md. The merge SHA is in the frontmatter as merge_sha:
// — looked up via b32_goals_meta.findGoalByMergeSha. Rationale: the
// SHA doesn't exist when the /goal is written (chicken-and-egg), and
// /goals/<slug> is a more readable canonical permalink. SHA lookup
// still works in one grep: `grep -l "merge_sha: 968890f" goals/`.
// See /blog/2026-05/sama-v2-goal-chain-gap for the design rationale.
// Five-status taxonomy:
// pending — in-flight; mergeSha/prNumber null; file exists on the branch
// shipped — verbatim /goal text recovered from PR body/conversation; file exists
// lossy — paraphrased recovery (e.g. from conversation summary); file exists
// with a "recovered from conversation summary, not verbatim" banner
// lost — no recoverable source; registry entry only, NO file on disk;
// /goals/<slug> renders metadata-only at 200
// abandoned — PR closed without merging
export type GoalStatus = "pending" | "shipped" | "lossy" | "lost" | "abandoned";
export interface GoalEntry {
slug: string;
title: string;
// ISO date — when the /goal was authored.
date: string;
// Git branch name used during the work (matches the slug by convention).
branch: string;
// Null for in-flight goals; populated post-merge.
prNumber: number | null;
// Short SHA of the merge commit on main. Null until merged.
mergeSha: string | null;
status: GoalStatus;
// Slugs of blog posts that plan, execute, or postmortem this goal.
relatedPosts: string[];
}
export const ALL_GOALS: GoalEntry[] = [
{
slug: "sama-cli-shell-verifier",
title: "Linux-native shell-based SAMA v2 verifier — second independent implementation",
date: "2026-05-25",
branch: "sama-cli-shell-verifier",
prNumber: 60,
mergeSha: "13f9114",
status: "shipped",
relatedPosts: [
"sama-v2-verifier-and-the-rename",
"sama-v2-metrics-emitter",
],
},
{
slug: "blog-date-prefix",
title: "Move /blog/<slug> → /blog/<yyyy-mm>/<slug> — data-driven portability test",
date: "2026-05-25",
branch: "blog-date-prefix",
prNumber: 55,
mergeSha: "72919e8",
status: "shipped",
relatedPosts: ["sama-v2-second-url-refactor-postmortem"],
},
{
slug: "sama-discipline-prefix",
title: "Move /sama/<discipline> → /sama/discipline/<slug> — hypothesis test",
date: "2026-05-25",
branch: "sama-discipline-prefix",
prNumber: 53,
mergeSha: "f806580",
status: "shipped",
relatedPosts: ["sama-v2-git-url-refactor-postmortem"],
},
{
slug: "contributing-md",
title: "Build CONTRIBUTING.md as the canonical on-ramp + drift-detection test",
date: "2026-05-25",
branch: "contributing-md",
prNumber: 51,
mergeSha: "96225f8",
status: "shipped",
relatedPosts: ["sama-v2-on-ramp-gap"],
},
{
slug: "migrate-historical-goals",
title: "Migrate historical /goals + lock down the authoring workflow",
date: "2026-05-25",
branch: "migrate-historical-goals",
prNumber: 47,
mergeSha: "5ce83fe",
status: "shipped",
relatedPosts: ["sama-v2-goal-chain-gap"],
},
{
slug: "build-goals-registry",
title: "Build /goals registry + site surface (goal #1)",
date: "2026-05-25",
branch: "goals-registry-build",
prNumber: 45,
mergeSha: "e923da8",
status: "shipped",
relatedPosts: ["sama-v2-goal-chain-gap"],
},
{
slug: "git-url-drop-owner",
title: "Drop redundant :owner segment from /GIT/ URLs",
date: "2026-05-25",
branch: "git-url-drop-owner",
prNumber: 42,
mergeSha: "684f257",
status: "shipped",
relatedPosts: [
"sama-v2-git-url-refactor-plan",
"sama-v2-git-url-refactor-postmortem",
],
},
{
slug: "sitemap-xml-impl",
title: "Add automatically-generated /sitemap.xml from existing registries",
date: "2026-05-25",
branch: "sitemap-xml-impl",
prNumber: 40,
mergeSha: "3280af8",
status: "shipped",
relatedPosts: ["sama-v2-sitemap-implementation-plan"],
},
{
slug: "graph-depth-polyglot",
title: "Port §5 graphDepth metric to Go + Rust",
date: "2026-05-24",
branch: "sama-v2-graphdepth-polyglot",
prNumber: 34,
mergeSha: "832b7c9",
status: "lossy",
relatedPosts: ["sama-v2-go-project-dive", "sama-v2-rust-project-ripgrep"],
},
{
slug: "polyglot-baseline-n7",
title: "Run polyglot §5 workingSetFit against 5 more CLI tools (n=7 baseline)",
date: "2026-05-24",
branch: "sama-v2-workingset-cross-repo-baseline",
prNumber: 33,
mergeSha: "60056b1",
status: "lossy",
relatedPosts: ["sama-v2-workingset-cross-repo-baseline"],
},
{
slug: "working-set-polyglot",
title: "Port §5 workingSetFit metric to Go + Rust source trees",
date: "2026-05-24",
branch: "sama-v2-workingset-polyglot-measured",
prNumber: 32,
mergeSha: "43c6f7a",
status: "lossy",
relatedPosts: [
"sama-v2-go-project-dive",
"sama-v2-rust-project-ripgrep",
"sama-v2-workingset-cross-repo-baseline",
],
},
{
slug: "v21-dialects-spec",
title: "Draft three v2.1 dialects into §6 + profile-parser tolerance",
date: "2026-05-24",
branch: "sama-v2-1-dialects-drafted",
prNumber: 31,
mergeSha: "f244dbb",
status: "lossy",
relatedPosts: ["sama-v2-rust-project-ripgrep", "sama-v2-go-project-dive"],
},
{
slug: "sama-rewrite-v2-first",
title: "Rewrite /sama using SV \"latest is default, legacy preserved\" pattern",
date: "2026-05-24",
branch: "sama-v2-first-images",
prNumber: 36,
mergeSha: "fd50ede",
status: "lossy",
relatedPosts: [],
},
];