The library documents itself · Diagramming & graphs
stzGraphRule
42 own methods · 12 forms written with extensions, listed under their method
the source: base/graph/stzGraphRule.ring(opens in a new tab) · All classes · The area reference: Diagramming & graphs
Under each method, its extensions (Q CS XT Z ZZ IB W U): bold and ticked, it exists; struck, it does not. The extensions and what they mean
Examples: 0 come from the library's tests; 10 were composed from each method's signature and run for this page, on a fresh object, for example o1 = new stzGraphRule("no-llm-effectful-probe"). 32 methods have none yet. Examples run on 2026-10-03 12:54 inside the library at commit 0e72e2e2c.
Method
Explanation, as the source carries it
init
(no comment in the source: the name reads as a sentence) initno extension
SetRuleType
the fluent DSL (plain does the act; Q chains)QCSXTZZZIBWU
SetDomain
(no comment in the source: the name reads as a sentence) set domainQCSXTZZZIBWU
SetSeverity
(no comment in the source: the name reads as a sentence) set severityQCSXTZZZIBWU
SetMessage
(no comment in the source: the name reads as a sentence) set messageQCSXTZZZIBWU
When
a node-matching clause: property `pcProp` `pcOp` `pValue`. Clauses AND.QCSXTZZZIBWU
ThenViolation
(no comment in the source: the name reads as a sentence) then violationQCSXTZZZIBWU
Then
a REQUIREMENT clause: on a node in scope (matching every When), this must hold, else the node is a finding. Turns the rule from a prohibition ("no node should match") into an implication ("every matching node must satisfy this"). Same operator set as When, incl. the comparisons.QCSXTZZZIBWU
Governs
supply an explicit checker for rules too rich for the clause DSL. It is called as call fChecker(oGraph) and returns [ [ :where, :message ], ... ]. WHICH SUBJECTS THIS RULE GOVERNS -- declared beside the checker, not instead of it. See the block at @fGoverns for why both are needed.QCSXTZZZIBWU
Excludes
...AND WHICH IT MUST NOT. The negative sibling, at rule level: a boundary that is never exercised is a boundary that could be anywhere.QCSXTZZZIBWU
DeclareUniversal
A rule with no boundary because the claim genuinely has none. The reason is required: "universal" without one is indistinguishable from a scope predicate that broke, which is the case worth catching.QCSXTZZZIBWU
SetReadsQ
What it reads, what it writes, and when it runs -- so an ordering defect is a fact about declarations rather than something found by rendering the world and squinting at it.no extension
SetWritesQ
(no comment in the source: the name reads as a sentence) set writes qno extension
SetOrderQ
(no comment in the source: the name reads as a sentence) set order qno extension
SubjectsIn
A rule with BOTH is answered by the closure, because a closure is reached for exactly when the clauses cannot say the thing.no extension
CounterSubjectsIn
...and the boundary of a clause rule is the complement: the nodes it looked at and did not take. Free, exact, and available for every clause rule in the library without anyone writing a line.no extension
Name_
(no comment in the source: the name reads as a sentence) name_no extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.Name_()
#--> no-llm-effectful-probecomposed from the signature, run for this pageClaim
(no comment in the source: the name reads as a sentence) claimno extension
Reads
(no comment in the source: the name reads as a sentence) readsno extension
Writes
(no comment in the source: the name reads as a sentence) writesno extension
Order
(no comment in the source: the name reads as a sentence) orderno extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.Order()
#--> 0composed from the signature, run for this pageIsUniversal
(no comment in the source: the name reads as a sentence) is universalno extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.IsUniversal()
#--> 0composed from the signature, run for this pageUniversalWhy
(no comment in the source: the name reads as a sentence) universal whyno extension
UseChecker
(no comment in the source: the name reads as a sentence) use checkerQCSXTZZZIBWU
Name
readsno extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.Name()
#--> no-llm-effectful-probecomposed from the signature, run for this pageRuleType
(no comment in the source: the name reads as a sentence) rule typeno extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.RuleType()
#--> validationcomposed from the signature, run for this pageDomain
(no comment in the source: the name reads as a sentence) domainno extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.Domain()
#--> customcomposed from the signature, run for this pageSeverity
(no comment in the source: the name reads as a sentence) severityno extension
Message
(no comment in the source: the name reads as a sentence) messageno extension
ViolationMessage
(no comment in the source: the name reads as a sentence) violation messageno extension
Clauses
(no comment in the source: the name reads as a sentence) clausesno extension
NumberOfClauses
(no comment in the source: the name reads as a sentence) number of clausesno extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.NumberOfClauses()
#--> 0composed from the signature, run for this pageRequirements
(no comment in the source: the name reads as a sentence) requirementsno extension
NumberOfRequirements
(no comment in the source: the name reads as a sentence) number of requirementsno extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.NumberOfRequirements()
#--> 0composed from the signature, run for this pageIsImplication
(no comment in the source: the name reads as a sentence) is implicationno extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.IsImplication()
#--> 0composed from the signature, run for this pageHasChecker
(no comment in the source: the name reads as a sentence) has checkerno extension
composed example
o1 = new stzGraphRule("no-llm-effectful-probe")
? o1.HasChecker()
#--> 0composed from the signature, run for this pageCheck
the engine bridge --------------------------------------------- Run this rule over a graph. Returns findings in the shared shape: [ [ :rule, :where, :severity, :message ], ... ] (empty = the rule holds)no extension
Holds
TRUE when the rule holds (no findings).no extension
NumberOfFindings
(no comment in the source: the name reads as a sentence) number of findingsno extension
Register
Compile this rule DOWN to an entry in the shared $aGraphRules registry, so the existing engine runs it like any hand-registered rule. The registered function is param-driven and delegates to the SAME matcher Check() uses, so the two faces cannot diverge.QCSXTZZZIBWU
RegistryEntry
The registry entry this rule produces (without registering) -- for inspection and for the equivalence guard.no extension
Show
(no comment in the source: the name reads as a sentence) showno extension

