fix(#2997): include phase_id_convention in resolved config (#3098)

* fix(#2997): include phase_id_convention in resolved config

_baseConfig in config-loader.cts is an explicit allowlist of keys copied
from parsed into the resolved config. phase_id_convention was in
VALID_CONFIG_KEYS (manifest line 83) and survived the unknown-key filter,
but was never copied into _baseConfig — silently dropped on a clean read.
The milestone-prefix validation check could only be activated via the
ROADMAP frontmatter fallback, not the documented project-config surface.

Added phase_id_convention: get('phase_id_convention') ?? null to _baseConfig.
3 tests: survives resolution, null round-trips, absent resolves to null.

* chore(#2997): backfill changeset PR number 3098

---------

Co-authored-by: sim <sim@local>
This commit is contained in:
Tom Boucher
2026-08-05 21:26:38 -04:00
committed by GitHub
parent 5628edddda
commit aa7697fe97
3 changed files with 47 additions and 0 deletions

View File

@@ -812,6 +812,7 @@ function loadConfigResolved(cwd: string, options: Record<string, unknown> = {}):
response_language: get('response_language') || null,
claude_md_path: get('claude_md_path') || null,
claude_md_assembly: (parsed['claude_md_assembly']) || null,
phase_id_convention: get('phase_id_convention') ?? null,
};
// ADR-857 phase 3b: federated config overlay