feat(config): reject removed project: key under version: 1

Add a raw top-level key-presence scan (reject_legacy_top_level_keys_under_v1)
so the v1 schema can reject known-but-removed legacy keys that serde_ignored
cannot surface (they stay struct fields for legacy parsing). The first such
key is `project:` — it has no consumer; it is rejected under `version: 1`
(naming the key) and stays honored-but-warned under the legacy schema.

Drop `project:` from the `omnigraph init` scaffold so generated configs load
clean under v1.
This commit is contained in:
Ragnor Comerford 2026-06-04 21:20:54 +02:00
parent 536eab3928
commit 5f693ac646
No known key found for this signature in database
2 changed files with 71 additions and 2 deletions

View file

@ -1573,8 +1573,6 @@ fn scaffold_config_if_missing(uri: &str) -> Result<()> {
format!(
"\
version: 1
project:
name: Omnigraph Project
graphs:
local: