Module state is hq ADR 0202: 0201 landed first for a provider's derivations

This commit is contained in:
jochen
2026-10-04 03:44:50 +02:00
parent 17b8f14fe1
commit 78915f9f7a
12 changed files with 24 additions and 24 deletions
+3 -3
View File
@@ -104,7 +104,7 @@ type Principal struct {
Invokes []string
// State is the local names of the state this principal's module keeps, and Reads the state of
// others it reads as `<module>.<name>` (novox/hq ADR 0201): a bucket each, kept by the owner's
// others it reads as `<module>.<name>` (novox/hq ADR 0202): a bucket each, kept by the owner's
// instances and read by whoever declares it.
State []string
Reads []string
@@ -427,7 +427,7 @@ func PermissionsFor(p Principal) (Permissions, error) {
}
}
// 5. Its state, and the state of others it reads (novox/hq ADR 0201): every one read and
// 5. Its state, and the state of others it reads (novox/hq ADR 0202): every one read and
// watched, its own written too.
pub = append(pub, stateGrants(p.Module, p.State, p.Reads)...)
@@ -497,7 +497,7 @@ func PermissionsFor(p Principal) (Permissions, error) {
"$JS.API.CONSUMER.MSG.NEXT."+stream+"."+durable,
"$JS.ACK."+stream+"."+durable+".>")
}
// **And it keeps and reads state for the modules it carries** (novox/hq ADR 0201): the union
// **And it keeps and reads state for the modules it carries** (novox/hq ADR 0202): the union
// of what each may do with a bucket — an owner's write, a reader's read. That one module's code
// does not write another's bucket through it is the runtime's to keep, from the membership
// each assignment is issued, as it keeps each module's events under that module's own name.