docs: plan thesis evidence and reject platform bindings

This commit is contained in:
lda
2026-06-14 16:42:16 +07:00 Verified
parent 35e1c169c0
commit 03762b1aa9
16 changed files with 1557 additions and 69 deletions
+20
View File
@@ -22,6 +22,26 @@ def validate_deployment_dependencies(
bindings = deployment.binding_map()
diagnostics: list[DependencyDiagnostic] = []
for logical_source, concrete_source in bindings.items():
source = sources_by_id.get(logical_source)
if source is not None and source.platform:
diagnostics.append(
DependencyDiagnostic(
severity=DiagnosticSeverity.ERROR,
code="platform_binding_forbidden",
logical_ref=logical_source,
bound_source=concrete_source,
message=(
f"Platform source {logical_source!r} has a fixed runtime "
"identity and cannot be deployment-bound."
),
repair_hint=(
"Remove this binding. Platform sources resolve by their "
"source id without deployment bindings."
),
)
)
for logical_ref, required in artifact.required_capability_map().items():
platform_source = sources_by_id.get(required.logical_source)
if platform_source is not None and platform_source.platform: