Say that a readmodel and a reducer render to nothing - #26
Conversation
UnrenderedConstructs reported nine construct families and neither of these two, so a slice declaring them rendered an application that looks complete while nothing holds or populates the state they declare - the exact indistinguishability the file's own contract says it exists to prevent. A declared readmodel is counted the way projections already are: the rendered read model is inferred from the slice's first projection, so at most one declared readmodel has a rendered counterpart. Nothing renders a reducer at all, so every one is reported.
|
Reviewer context — not release notes. What changed
The spec that pinned the count of Counting rule for
No issue reference in the body. Nothing in the tracker covers these two families — #13 names Verified, not fixed — worth its own PR
var authorization = AuthorizationRenderer.Render(
queries.Select(query => query.Authorize), applicationSet, $"Read model '{typeName}'", diagnostics);
if (declared.Length == 0 || declared.Any(authorize => authorize?.References().Any() != true))
{
return "AllowAnonymous";
}So one unguarded query anywhere in the slice collapses the whole read model to My read: yes, worth its own PR, and it is a security-shaped bug rather than a fidelity nicety — the failure direction is more permissive than the document. It is also independent of Stage#20: #20 is about
VerificationStacked on #25 (base is |
Fixed
readmodeland areducerit does not render, instead of dropping them silently. A slice declaring either previously rendered an application that looked complete while nothing held or populated the state they declare.