[Server] Untangle origin tracking from Registry (#302)

Drop the isManual flag from ElementReference and the discovery-state methods
from RegistryInterface. The Registry becomes a flat last-write-wins map;
DiscoveryLoader owns its own owned-set bookkeeping so re-running discovery
only removes elements it itself contributed. Adds ChainLoader for explicit
composition. Manual-over-discovered precedence is preserved via loader
ordering, not a flag on the reference.
This commit is contained in:
Christopher Hertel 2026-05-17 14:03:31 +02:00 • committed by GitHub
commit 967c5cda4d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 1003 additions and 338 deletions

View file

@ -1,9 +1,9 @@
{
"resources": [
{
"name": "priority_config_discovered",
"name": "priority_config_manual",
"uri": "config://priority",
"description": "A resource discovered via attributes.\n\nThis will be overridden by a manual registration with the same URI."
"description": "Manually registered resource that overrides a discovered one."
}
]
}

View file

@ -3,7 +3,7 @@
{
"uri": "config://priority",
"mimeType": "text/plain",
"text": "Discovered Priority Config: Low"
"text": "Manual Priority Config: HIGH (overrides discovered)"
}
]
}