Expose authoritative lifecycle deletion through capability bindings

This commit is contained in:
Timothy J. Aveni
2026-09-20 22:48:09 -07:00
parent d80464d285
commit 115976cacd
15 changed files with 1837 additions and 1698 deletions
+7
View File
@@ -1965,6 +1965,13 @@ const lowerConformance = (
return [];
}
const provider = bindingContext.operationProvider();
if (provider.LIFECYCLE()) {
if (identifier(provider.identifier(0)) !== "delete") {
loweringIssue(state, provider, "invalid-lifecycle-binding", "Only lifecycle.delete is supported");
return [];
}
return [{ operationId, binding: { kind: "lifecycle", primitive: "delete" } }];
}
if (provider.INTERFACE()) {
const targetName = identifier(provider.identifier(0));
let target = requireSymbol(state, state.interfaces, targetName, provider, "interface");