@graview/core 0.1.57 → 0.1.59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -4
- package/dist/archived-seen.d.ts.map +1 -1
- package/dist/archived-seen.js +7 -3
- package/dist/archived-seen.js.map +1 -1
- package/dist/catalog.js +1 -1
- package/dist/catalog.js.map +1 -1
- package/dist/cli/check/field-sight.d.ts.map +1 -1
- package/dist/cli/check/field-sight.js +3 -1
- package/dist/cli/check/field-sight.js.map +1 -1
- package/dist/cli/document-schema.js +1 -1
- package/dist/cli/document-schema.js.map +1 -1
- package/dist/document/brand.js +3 -3
- package/dist/document/brand.js.map +1 -1
- package/dist/document/compile.d.ts.map +1 -1
- package/dist/document/compile.js +4 -0
- package/dist/document/compile.js.map +1 -1
- package/dist/document/compiled.d.ts +2 -0
- package/dist/document/compiled.d.ts.map +1 -1
- package/dist/document/compiled.js +22 -1
- package/dist/document/compiled.js.map +1 -1
- package/dist/document/connection-findings.d.ts.map +1 -1
- package/dist/document/connection-findings.js +189 -25
- package/dist/document/connection-findings.js.map +1 -1
- package/dist/document/connection-spec.d.ts +42 -2
- package/dist/document/connection-spec.d.ts.map +1 -1
- package/dist/document/connection-spec.js +64 -19
- package/dist/document/connection-spec.js.map +1 -1
- package/dist/document/kept-in-step.d.ts +7 -0
- package/dist/document/kept-in-step.d.ts.map +1 -0
- package/dist/document/kept-in-step.js +28 -0
- package/dist/document/kept-in-step.js.map +1 -0
- package/dist/document/schema.d.ts +5 -5
- package/dist/document.schema.json +243 -98
- package/dist/field-sight.js +4 -2
- package/dist/field-sight.js.map +1 -1
- package/dist/fresh.d.ts +26 -0
- package/dist/fresh.d.ts.map +1 -0
- package/dist/fresh.js +33 -0
- package/dist/fresh.js.map +1 -0
- package/dist/friction.d.ts +7 -0
- package/dist/friction.d.ts.map +1 -1
- package/dist/friction.js +2 -1
- package/dist/friction.js.map +1 -1
- package/dist/import/rows.d.ts.map +1 -1
- package/dist/import/rows.js +20 -10
- package/dist/import/rows.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/linked.d.ts.map +1 -1
- package/dist/linked.js +7 -1
- package/dist/linked.js.map +1 -1
- package/dist/mutations/define-mutation.d.ts +14 -0
- package/dist/mutations/define-mutation.d.ts.map +1 -1
- package/dist/mutations/define-mutation.js +9 -4
- package/dist/mutations/define-mutation.js.map +1 -1
- package/dist/mutations/derive-edits.d.ts +4 -2
- package/dist/mutations/derive-edits.d.ts.map +1 -1
- package/dist/mutations/derive-edits.js +17 -5
- package/dist/mutations/derive-edits.js.map +1 -1
- package/dist/mutations/derive-repeats.d.ts +8 -0
- package/dist/mutations/derive-repeats.d.ts.map +1 -1
- package/dist/mutations/derive-repeats.js +29 -4
- package/dist/mutations/derive-repeats.js.map +1 -1
- package/dist/mutations/type-text.d.ts +6 -1
- package/dist/mutations/type-text.d.ts.map +1 -1
- package/dist/mutations/type-text.js +8 -1
- package/dist/mutations/type-text.js.map +1 -1
- package/dist/mutations/types.d.ts +10 -0
- package/dist/mutations/types.d.ts.map +1 -1
- package/dist/ops/lineage.d.ts +12 -1
- package/dist/ops/lineage.d.ts.map +1 -1
- package/dist/ops/lineage.js +9 -2
- package/dist/ops/lineage.js.map +1 -1
- package/dist/ops/log.d.ts +23 -0
- package/dist/ops/log.d.ts.map +1 -1
- package/dist/ops/log.js +7 -0
- package/dist/ops/log.js.map +1 -1
- package/dist/ops/undo.d.ts.map +1 -1
- package/dist/ops/undo.js +9 -0
- package/dist/ops/undo.js.map +1 -1
- package/dist/permissions/sight.d.ts +8 -0
- package/dist/permissions/sight.d.ts.map +1 -1
- package/dist/permissions/sight.js +8 -0
- package/dist/permissions/sight.js.map +1 -1
- package/dist/publish.d.ts +7 -2
- package/dist/publish.d.ts.map +1 -1
- package/dist/publish.js.map +1 -1
- package/dist/publishing.d.ts +4 -1
- package/dist/publishing.d.ts.map +1 -1
- package/dist/publishing.js +59 -14
- package/dist/publishing.js.map +1 -1
- package/dist/scaffold/from-template.d.ts.map +1 -1
- package/dist/scaffold/from-template.js +4 -3
- package/dist/scaffold/from-template.js.map +1 -1
- package/dist/scaffold/names.d.ts +10 -0
- package/dist/scaffold/names.d.ts.map +1 -1
- package/dist/scaffold/names.js +20 -1
- package/dist/scaffold/names.js.map +1 -1
- package/dist/scaffold/ui.d.ts.map +1 -1
- package/dist/scaffold/ui.js +9 -8
- package/dist/scaffold/ui.js.map +1 -1
- package/dist/schema/figures.d.ts +9 -2
- package/dist/schema/figures.d.ts.map +1 -1
- package/dist/schema/figures.js +38 -9
- package/dist/schema/figures.js.map +1 -1
- package/dist/schema/linked.d.ts +7 -1
- package/dist/schema/linked.d.ts.map +1 -1
- package/dist/schema/linked.js.map +1 -1
- package/dist/schema/types.d.ts +10 -0
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/seen.d.ts.map +1 -1
- package/dist/seen.js +21 -2
- package/dist/seen.js.map +1 -1
- package/dist/store.d.ts +29 -1
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +158 -31
- package/dist/store.js.map +1 -1
- package/dist/subscriptions.d.ts +12 -0
- package/dist/subscriptions.d.ts.map +1 -1
- package/dist/subscriptions.js +10 -1
- package/dist/subscriptions.js.map +1 -1
- package/dist/sync/connection-filter.d.ts +2 -2
- package/dist/sync/connection-filter.d.ts.map +1 -1
- package/dist/sync/connection-filter.js.map +1 -1
- package/dist/sync/connection.d.ts +72 -28
- package/dist/sync/connection.d.ts.map +1 -1
- package/dist/sync/connection.js +255 -43
- package/dist/sync/connection.js.map +1 -1
- package/dist/sync/creating-act.d.ts +20 -0
- package/dist/sync/creating-act.d.ts.map +1 -0
- package/dist/sync/creating-act.js +29 -0
- package/dist/sync/creating-act.js.map +1 -0
- package/dist/sync/engine.d.ts +83 -1
- package/dist/sync/engine.d.ts.map +1 -1
- package/dist/sync/engine.js +269 -32
- package/dist/sync/engine.js.map +1 -1
- package/dist/sync/google-calendar.d.ts +3 -0
- package/dist/sync/google-calendar.d.ts.map +1 -1
- package/dist/sync/index.d.ts +10 -4
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +6 -2
- package/dist/sync/index.js.map +1 -1
- package/dist/sync/mcp.d.ts +8 -0
- package/dist/sync/mcp.d.ts.map +1 -1
- package/dist/sync/mcp.js +2 -0
- package/dist/sync/mcp.js.map +1 -1
- package/dist/sync/notion-stub.d.ts +81 -0
- package/dist/sync/notion-stub.d.ts.map +1 -0
- package/dist/sync/notion-stub.js +467 -0
- package/dist/sync/notion-stub.js.map +1 -0
- package/dist/sync/notion-types.d.ts +23 -0
- package/dist/sync/notion-types.d.ts.map +1 -0
- package/dist/sync/notion-types.js +49 -0
- package/dist/sync/notion-types.js.map +1 -0
- package/dist/sync/notion.d.ts +98 -0
- package/dist/sync/notion.d.ts.map +1 -0
- package/dist/sync/notion.js +477 -0
- package/dist/sync/notion.js.map +1 -0
- package/dist/sync/types.d.ts +38 -0
- package/dist/sync/types.d.ts.map +1 -1
- package/dist/sync/types.js.map +1 -1
- package/dist/text/typing-hook.d.ts +2 -2
- package/dist/text/typing-hook.d.ts.map +1 -1
- package/dist/theme/fonts.d.ts +10 -0
- package/dist/theme/fonts.d.ts.map +1 -1
- package/dist/theme/fonts.js +25 -1
- package/dist/theme/fonts.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/views/kept.d.ts.map +1 -1
- package/dist/views/kept.js +3 -0
- package/dist/views/kept.js.map +1 -1
- package/package.json +1 -1
package/dist/store.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ import type { Author, Batch, Operation, Via } from "./ops/types.js";
|
|
|
15
15
|
import { type Lineage } from "./ops/lineage.js";
|
|
16
16
|
import type { FieldRevision } from "./ops/revisions.js";
|
|
17
17
|
import { permits } from "./permissions/policy.js";
|
|
18
|
-
import { type Policy, type Principal } from "./permissions/types.js";
|
|
18
|
+
import { type Policy, type Principal, type Refusal } from "./permissions/types.js";
|
|
19
19
|
import { type UndoCheck } from "./ops/undo.js";
|
|
20
20
|
import type { AnySchema, NodeOfSchema } from "./schema/schema.js";
|
|
21
21
|
import { type GraphFinding } from "./validate-graph.js";
|
|
@@ -585,6 +585,15 @@ export declare class Store<S extends AnySchema> {
|
|
|
585
585
|
* it needs the same answer the enforcement uses. One source, two readings.
|
|
586
586
|
*/
|
|
587
587
|
permits(call: MutationCall, principal?: Principal): ReturnType<typeof permits>;
|
|
588
|
+
/** Whether a call of a repeat act makes a record (`repeatMakes`), read off the series as this principal is served it. */
|
|
589
|
+
private repeatMakes;
|
|
590
|
+
/**
|
|
591
|
+
* WHO MADE WHAT A DERIVED ACT CHANGES (W-201): its subject — and, for a
|
|
592
|
+
* merge, the record it folds into too, which takes every tie of the one
|
|
593
|
+
* folded away. Both are to be one principal's for the merge to be theirs;
|
|
594
|
+
* asked before that one is chosen, the subject alone.
|
|
595
|
+
*/
|
|
596
|
+
private madeBy;
|
|
588
597
|
/** The ids a call names in its record arguments: its subject's too, unless `subject` is false (the far ends of what it links). */
|
|
589
598
|
private namedIn;
|
|
590
599
|
/** A refusal told to the watch — unless the store is rehearsing — and thrown. */
|
|
@@ -890,6 +899,25 @@ export declare class Store<S extends AnySchema> {
|
|
|
890
899
|
undo(batchIds: string | readonly string[], options?: ApplyOptions): ApplyResult<S>;
|
|
891
900
|
/** `undo` itself, kept apart for the same reason as `applying`. */
|
|
892
901
|
private undoing;
|
|
902
|
+
/**
|
|
903
|
+
* Whether this principal may take these batches back: the log's answer
|
|
904
|
+
* (`canUndo`) and the policy's, the same judgment `undo` makes. What a
|
|
905
|
+
* page offers to take back is asked here, so an undo it shows is never
|
|
906
|
+
* one the store refuses.
|
|
907
|
+
*/
|
|
908
|
+
mayUndo(batchIds: string | readonly string[], principal?: Principal): {
|
|
909
|
+
readonly ok: true;
|
|
910
|
+
} | {
|
|
911
|
+
readonly ok: false;
|
|
912
|
+
readonly refusal?: Refusal;
|
|
913
|
+
readonly check?: UndoCheck;
|
|
914
|
+
};
|
|
915
|
+
/** What refuses `author` taking these ops back, or nothing: what you may undo is what you may have done. */
|
|
916
|
+
private undoRefusal;
|
|
917
|
+
/** The change an undo of an undo puts back: the op at the root of its chain, or the last undo the log still holds of it. */
|
|
918
|
+
private rootOf;
|
|
919
|
+
/** Whether the policy grants this principal every act, on every record: what taking back a change no act made asks of anybody but its author. */
|
|
920
|
+
private grantsEveryAct;
|
|
893
921
|
/** An author named as Activity names one, for a sentence that refuses them. */
|
|
894
922
|
private authorName;
|
|
895
923
|
private actMeanings;
|
package/dist/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|
package/dist/store.js
CHANGED
|
@@ -12,7 +12,8 @@ import { evaluate } from "./invariants/engine.js";
|
|
|
12
12
|
import { compileMutation } from "./mutations/define-mutation.js";
|
|
13
13
|
import { actSpelledAs, nearestAct } from "./mutations/act-spelling.js";
|
|
14
14
|
import { InvalidArguments } from "./mutations/invalid-arguments.js";
|
|
15
|
-
import { deriveMutations, derivedVia } from "./mutations/derive-edits.js";
|
|
15
|
+
import { deriveMutations, derivedVia, removeVia } from "./mutations/derive-edits.js";
|
|
16
|
+
import { repeatingFields, repeatMakes } from "./mutations/derive-repeats.js";
|
|
16
17
|
import { namesMade, resolveMade } from "./mutations/made.js";
|
|
17
18
|
import { OperationLog } from "./ops/log.js";
|
|
18
19
|
import { lineageOf } from "./ops/lineage.js";
|
|
@@ -24,7 +25,7 @@ import { actingAs, grantsTo, isSystem, permits, permittedMutations, subjectKinds
|
|
|
24
25
|
import { namesUnseen, redact } from "./ops/withheld.js";
|
|
25
26
|
import { writersBehind } from "./ops/writers.js";
|
|
26
27
|
import { nounOf } from "./schema/define-node.js";
|
|
27
|
-
import { behind, fieldsJudged, partialSight, recordsOf } from "./permissions/sight.js";
|
|
28
|
+
import { behind, fieldsJudged, mayKeepField, partialSight, recordsOf } from "./permissions/sight.js";
|
|
28
29
|
import { PermissionDeniedError } from "./permissions/types.js";
|
|
29
30
|
import { checkUndo, UndoBlockedError, undoneInverses, undoPrimitives } from "./ops/undo.js";
|
|
30
31
|
import { validateGraph } from "./validate-graph.js";
|
|
@@ -406,6 +407,8 @@ export class Store {
|
|
|
406
407
|
break;
|
|
407
408
|
}
|
|
408
409
|
}
|
|
410
|
+
// No op in the tail says a set: the one the checkpoint kept stands, since the op that said it was archived with it (FR-12, FR-23).
|
|
411
|
+
said ??= this.log.horizonEpoch()?.enabledModules;
|
|
409
412
|
const projection = held && said === held.said ? held.projection : resolveModules(this.declaredModules, said ?? this.startingModules);
|
|
410
413
|
this.projected = { projection, length: all.length, last, said };
|
|
411
414
|
return projection;
|
|
@@ -503,8 +506,13 @@ export class Store {
|
|
|
503
506
|
return [...new Set(all.filter((one) => one.derived?.relation === call?.args["kind"]).flatMap((one) => derivedVia(this.schema, all, one) ?? []))];
|
|
504
507
|
}
|
|
505
508
|
// Typing into a field: whoever may run an act that writes that field of that record.
|
|
506
|
-
if (mutation !== undefined && mutation === this.typer)
|
|
507
|
-
|
|
509
|
+
if (mutation !== undefined && mutation === this.typer) {
|
|
510
|
+
// Through an act that could run on this record now: its module on, its own rule holding for the record as this principal is served it.
|
|
511
|
+
const node = call?.args["node"];
|
|
512
|
+
const served = principal === undefined || isSystem(principal) ? this.graph : seenBy(this, principal).graph;
|
|
513
|
+
const allows = (writer) => !this.mutationDisabled(writer) && (writer.allowedOn === undefined || (typeof node === "string" && writer.allowedOn(served, node)));
|
|
514
|
+
return TYPING.via(this.schema, [...this.mutations.values()], this.subjectKindOf(call, principal), call?.args["field"], allows);
|
|
515
|
+
}
|
|
508
516
|
if (!mutation?.derived)
|
|
509
517
|
return undefined;
|
|
510
518
|
return derivedVia(this.schema, [...this.mutations.values()], mutation);
|
|
@@ -557,7 +565,14 @@ export class Store {
|
|
|
557
565
|
// Publishing is the declaration's `publishers`, not a grant's.
|
|
558
566
|
if (mutation && mutation === this.publisher)
|
|
559
567
|
return PUBLISHING.verdict(this, principal);
|
|
560
|
-
|
|
568
|
+
/*
|
|
569
|
+
* KEEPING A LINK ONLY THE DERIVED ACTS MAKE is judged as they are: on
|
|
570
|
+
* the record it leaves, so riding everybody's grant it reaches only the
|
|
571
|
+
* links of records this principal made (W-201). A link a declared act
|
|
572
|
+
* makes or breaks is that act's, which carries no such rule.
|
|
573
|
+
*/
|
|
574
|
+
const keeping = mutation !== undefined && mutation === this.keeper && keepLinkVia(this.mutations.values(), call.args["kind"]).length === 0;
|
|
575
|
+
const id = keeping ? call.args["from"] : mutation?.subject && call.args[mutation.subject.arg];
|
|
561
576
|
/*
|
|
562
577
|
* An own-end grant holds the records the call names at the far end of
|
|
563
578
|
* what it links, and every link the act would make or break: a connect
|
|
@@ -565,7 +580,8 @@ export class Store {
|
|
|
565
580
|
* names. A call that cannot be compiled is refused by `apply`, in its
|
|
566
581
|
* own words.
|
|
567
582
|
*/
|
|
568
|
-
|
|
583
|
+
const kind = this.subjectKindOf(call, principal);
|
|
584
|
+
const verdict = permits(this.policy, principal, call.name, kind, this.viaOf(mutation, call, principal), typeof id === "string" ? id : undefined, this.words, () => {
|
|
569
585
|
const me = actingAs(principal).id;
|
|
570
586
|
const far = this.namedIn(call, false);
|
|
571
587
|
try {
|
|
@@ -579,9 +595,43 @@ export class Store {
|
|
|
579
595
|
return far;
|
|
580
596
|
},
|
|
581
597
|
// Who made the record a derived act is about: riding only everybody's grant, it reaches what this principal made (W-201).
|
|
582
|
-
mutation !== undefined && (mutation.derived !== undefined || mutation === this.typer) ? () =>
|
|
598
|
+
mutation !== undefined && (mutation.derived !== undefined || mutation === this.typer || keeping) ? () => this.madeBy(mutation, call, id) : undefined,
|
|
583
599
|
// Taking a record out, or folding it away, rides the making of the kind only over what this principal made (W-201).
|
|
584
600
|
mutation?.derived !== undefined && UNMAKING.has(mutation.derived.act));
|
|
601
|
+
if (!verdict.ok || !mutation?.derived || !this.repeatMakes(mutation, call, id, principal))
|
|
602
|
+
return verdict;
|
|
603
|
+
/*
|
|
604
|
+
* AND A CHANGE TO ONE DAY THAT MAKES A RECORD ("change just this one",
|
|
605
|
+
* "change from here" past the first day) rides the kind's edit for the
|
|
606
|
+
* series, and the making of the kind for the record it makes: who may
|
|
607
|
+
* retitle a shift has not been trusted with making one.
|
|
608
|
+
*/
|
|
609
|
+
return permits(this.policy, principal, call.name, kind, removeVia([...this.mutations.values()], mutation.derived.kind), typeof id === "string" ? id : undefined, this.words);
|
|
610
|
+
}
|
|
611
|
+
/** Whether a call of a repeat act makes a record (`repeatMakes`), read off the series as this principal is served it. */
|
|
612
|
+
repeatMakes(mutation, call, id, principal) {
|
|
613
|
+
const act = mutation.derived.act;
|
|
614
|
+
if (act !== "detach" && act !== "split")
|
|
615
|
+
return false;
|
|
616
|
+
const definition = this.schema.tryDefinition(mutation.derived.kind);
|
|
617
|
+
if (!definition)
|
|
618
|
+
return false;
|
|
619
|
+
const node = typeof id === "string" ? (isSystem(principal) ? this.graph : seenBy(this, principal).graph).getNode(id) : undefined;
|
|
620
|
+
return repeatMakes(act, call.args, node, repeatingFields(definition));
|
|
621
|
+
}
|
|
622
|
+
/**
|
|
623
|
+
* WHO MADE WHAT A DERIVED ACT CHANGES (W-201): its subject — and, for a
|
|
624
|
+
* merge, the record it folds into too, which takes every tie of the one
|
|
625
|
+
* folded away. Both are to be one principal's for the merge to be theirs;
|
|
626
|
+
* asked before that one is chosen, the subject alone.
|
|
627
|
+
*/
|
|
628
|
+
madeBy(mutation, call, id) {
|
|
629
|
+
const records = recordsOf(this.log);
|
|
630
|
+
const by = records.creatorOf(id);
|
|
631
|
+
const into = call.args["into"];
|
|
632
|
+
if (mutation.derived?.act === "merge" && typeof into === "string" && records.creatorOf(into) !== by)
|
|
633
|
+
return undefined;
|
|
634
|
+
return by;
|
|
585
635
|
}
|
|
586
636
|
/** The ids a call names in its record arguments: its subject's too, unless `subject` is false (the far ends of what it links). */
|
|
587
637
|
namedIn(call, subject = true) {
|
|
@@ -661,7 +711,11 @@ export class Store {
|
|
|
661
711
|
*/
|
|
662
712
|
sighted(author) {
|
|
663
713
|
// Who `$me` is: the person, for an agent acting for one (Roadmap f-act-as-me).
|
|
664
|
-
const me = {
|
|
714
|
+
const me = {
|
|
715
|
+
me: author && actingAs(author).id,
|
|
716
|
+
everHeld: (id) => recordsOf(this.log).kindOf(id) !== undefined,
|
|
717
|
+
keeps: (kind, field) => mayKeepField(this.policy?.sees, kind, field),
|
|
718
|
+
};
|
|
665
719
|
if (author === undefined || !hidesFrom(this, author))
|
|
666
720
|
return me;
|
|
667
721
|
// And a seat that writes a value naming what it may not see has written its own words, though the store held them already.
|
|
@@ -841,8 +895,15 @@ export class Store {
|
|
|
841
895
|
*/
|
|
842
896
|
if (typeof id !== "string")
|
|
843
897
|
return subject.kinds !== "*" && subject.kinds.length === 1 ? subject.kinds[0] : undefined;
|
|
844
|
-
|
|
845
|
-
|
|
898
|
+
/*
|
|
899
|
+
* A record the principal is not served is judged as one that is not
|
|
900
|
+
* there: its kind is not the policy's to read aloud (FR-55). Served,
|
|
901
|
+
* not only in sight, as `missingFor` reads it: a record withheld whole
|
|
902
|
+
* for a field it cannot do without answered a grant drawn by kind as
|
|
903
|
+
* its kind, and an absent id as no kind, so the refusal told the two
|
|
904
|
+
* apart.
|
|
905
|
+
*/
|
|
906
|
+
if (!isSystem(principal) && !seenBy(this, principal).graph.has(id))
|
|
846
907
|
return undefined;
|
|
847
908
|
return this.graph.getNode(id)?.kind;
|
|
848
909
|
}
|
|
@@ -1546,25 +1607,9 @@ export class Store {
|
|
|
1546
1607
|
* what you may have done — the mutation each operation ran, judged
|
|
1547
1608
|
* again now.
|
|
1548
1609
|
*/
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
continue;
|
|
1553
|
-
/*
|
|
1554
|
-
* AND AN ACT DONE AS ITS AUTHOR (`$me`, `ctx.me`) IS THEIRS TO TAKE
|
|
1555
|
-
* BACK: it wrote their own record where its call never named it, so
|
|
1556
|
-
* the same call by another would have done something else. "Vote for
|
|
1557
|
-
* it" is everybody's to run, and undoing Ann's was taking back her vote.
|
|
1558
|
-
*/
|
|
1559
|
-
const by = actingAs(target.author).id;
|
|
1560
|
-
const names = (value) => JSON.stringify(value).includes(JSON.stringify(by));
|
|
1561
|
-
const verdict = by !== undefined && by !== actingAs(author).id && !isSystem(author) && !names(target.mutation.args) && names(target.primitives)
|
|
1562
|
-
? { ok: false, refusal: { mutation: target.mutation.name, wouldNeed: [], message: "it was done as somebody else." } }
|
|
1563
|
-
: this.permits(target.mutation, author);
|
|
1564
|
-
if (!verdict.ok)
|
|
1565
|
-
this.refuse({ ...verdict.refusal, message: `Not permitted to undo "${target.intent}": ${verdict.refusal.message}` }, author.id, true);
|
|
1566
|
-
}
|
|
1567
|
-
}
|
|
1610
|
+
const refused = this.undoRefusal(check.ops, author);
|
|
1611
|
+
if (refused)
|
|
1612
|
+
this.refuse(refused, author.id, true);
|
|
1568
1613
|
const rollback = this.graph.snapshot();
|
|
1569
1614
|
const before = this.violations();
|
|
1570
1615
|
const ops = [];
|
|
@@ -1608,6 +1653,75 @@ export class Store {
|
|
|
1608
1653
|
violationsAfter: after,
|
|
1609
1654
|
};
|
|
1610
1655
|
}
|
|
1656
|
+
/**
|
|
1657
|
+
* Whether this principal may take these batches back: the log's answer
|
|
1658
|
+
* (`canUndo`) and the policy's, the same judgment `undo` makes. What a
|
|
1659
|
+
* page offers to take back is asked here, so an undo it shows is never
|
|
1660
|
+
* one the store refuses.
|
|
1661
|
+
*/
|
|
1662
|
+
mayUndo(batchIds, principal = this.by) {
|
|
1663
|
+
const check = this.canUndo(batchIds);
|
|
1664
|
+
if (!check.ok)
|
|
1665
|
+
return { ok: false, check };
|
|
1666
|
+
const refusal = this.undoRefusal(check.ops, principal);
|
|
1667
|
+
return refusal ? { ok: false, refusal } : { ok: true };
|
|
1668
|
+
}
|
|
1669
|
+
/** What refuses `author` taking these ops back, or nothing: what you may undo is what you may have done. */
|
|
1670
|
+
undoRefusal(ops, author) {
|
|
1671
|
+
if (this.policy || this.publisher) {
|
|
1672
|
+
for (const target of ops) {
|
|
1673
|
+
/*
|
|
1674
|
+
* AN UNDO OF AN UNDO PUTS BACK THE CHANGE IT TOOK BACK, and is judged
|
|
1675
|
+
* as that change — redo is one, and let through unasked it put back
|
|
1676
|
+
* an act its seat was refused. Undoing that again takes the change
|
|
1677
|
+
* back once more, judged as it again: however long the chain, the
|
|
1678
|
+
* change at its root.
|
|
1679
|
+
*/
|
|
1680
|
+
const judged = this.rootOf(target);
|
|
1681
|
+
const by = actingAs(judged.author).id;
|
|
1682
|
+
if (!judged.mutation) {
|
|
1683
|
+
// A change that changed nothing (a suggestion, an announcement) is anybody's who sees it to take back: declining a suggestion is one.
|
|
1684
|
+
if (judged.primitives.length === 0)
|
|
1685
|
+
continue;
|
|
1686
|
+
/*
|
|
1687
|
+
* A CHANGE NO ACT MADE — an import, a sync, a connection, a host's
|
|
1688
|
+
* repair (`applyPrimitives`) — has no act to judge it as, and its
|
|
1689
|
+
* author was its authority. It is taken back by the system, by
|
|
1690
|
+
* whoever made it, or by a seat the policy grants every act.
|
|
1691
|
+
*/
|
|
1692
|
+
if (this.policy && !isSystem(author) && by !== actingAs(author).id && !this.grantsEveryAct(author)) {
|
|
1693
|
+
return { mutation: "undo", wouldNeed: [], message: `Not permitted to undo "${target.intent}": no act made it, so only whoever did may take it back.` };
|
|
1694
|
+
}
|
|
1695
|
+
continue;
|
|
1696
|
+
}
|
|
1697
|
+
/*
|
|
1698
|
+
* AND AN ACT DONE AS ITS AUTHOR (`$me`, `ctx.me`) IS THEIRS TO TAKE
|
|
1699
|
+
* BACK: it wrote their own record where its call never named it, so
|
|
1700
|
+
* the same call by another would have done something else. "Vote for
|
|
1701
|
+
* it" is everybody's to run, and undoing Ann's was taking back her vote.
|
|
1702
|
+
*/
|
|
1703
|
+
const names = (value) => JSON.stringify(value).includes(JSON.stringify(by));
|
|
1704
|
+
const verdict = by !== undefined && by !== actingAs(author).id && !isSystem(author) && !names(judged.mutation.args) && names(judged.primitives)
|
|
1705
|
+
? { ok: false, refusal: { mutation: judged.mutation.name, wouldNeed: [], message: "it was done as somebody else." } }
|
|
1706
|
+
: this.permits(judged.mutation, author);
|
|
1707
|
+
if (!verdict.ok)
|
|
1708
|
+
return { ...verdict.refusal, message: `Not permitted to undo "${target.intent}": ${verdict.refusal.message}` };
|
|
1709
|
+
}
|
|
1710
|
+
}
|
|
1711
|
+
return undefined;
|
|
1712
|
+
}
|
|
1713
|
+
/** The change an undo of an undo puts back: the op at the root of its chain, or the last undo the log still holds of it. */
|
|
1714
|
+
rootOf(op) {
|
|
1715
|
+
let at = op;
|
|
1716
|
+
for (let undone = at.undoes === undefined ? undefined : this.log.get(at.undoes); undone !== undefined; undone = at.undoes === undefined ? undefined : this.log.get(at.undoes))
|
|
1717
|
+
at = undone;
|
|
1718
|
+
return at;
|
|
1719
|
+
}
|
|
1720
|
+
/** Whether the policy grants this principal every act, on every record: what taking back a change no act made asks of anybody but its author. */
|
|
1721
|
+
grantsEveryAct(principal) {
|
|
1722
|
+
const acting = actingAs(principal);
|
|
1723
|
+
return (this.policy?.grants ?? []).some((grant) => grantsTo(grant, acting) && grant.mutations === "*" && (grant.kinds === undefined || grant.kinds === "*") && !grant.self && !grant.ownEnd);
|
|
1724
|
+
}
|
|
1611
1725
|
/** An author named as Activity names one, for a sentence that refuses them. */
|
|
1612
1726
|
authorName(author) {
|
|
1613
1727
|
return nameOfAuthor(author, { graph: this.graph, schema: this.schema });
|
|
@@ -1934,7 +2048,8 @@ export class Store {
|
|
|
1934
2048
|
}
|
|
1935
2049
|
// Never past a seq somebody is served at: a reader's past (`pastOf`) folds from the log, so the lowest pin is the furthest it goes.
|
|
1936
2050
|
// And readers' own (Roadmap f-publishing-lifecycle): what was published — or, before the first publish, where the log begins.
|
|
1937
|
-
|
|
2051
|
+
// The publish before it too, where undoing the latest takes readers back to, so the past they are served then still folds from the log.
|
|
2052
|
+
const readers = onPublish(this.publishing) ? [this.publishedSeq ?? 0, ...(PUBLISHING.previous?.(this) ?? [])] : [];
|
|
1938
2053
|
const pinned = [...(options.pins ?? []), ...readers].filter((pin) => Number.isInteger(pin));
|
|
1939
2054
|
if (pinned.length > 0)
|
|
1940
2055
|
seq = Math.min(seq, ...pinned);
|
|
@@ -1959,7 +2074,19 @@ export class Store {
|
|
|
1959
2074
|
const records = recordsOf(this.log);
|
|
1960
2075
|
const writers = writersBehind(this.log, seq, checkpoint.base.nodes, (value) => namesUnseen(value, (id) => !base.has(id) && records.kindOf(id) === undefined));
|
|
1961
2076
|
const kept = (map) => map && Object.keys(map).length > 0;
|
|
1962
|
-
|
|
2077
|
+
/*
|
|
2078
|
+
* The modules on at its seq and how far readers were served there, which the ops before it said and which go to the
|
|
2079
|
+
* archive with them: so a module off stays off (FR-12) and a store whose publish ops were archived still knows what
|
|
2080
|
+
* stood published (Roadmap f-publishing-lifecycle).
|
|
2081
|
+
*/
|
|
2082
|
+
return {
|
|
2083
|
+
...checkpoint,
|
|
2084
|
+
...(kept(creators) && { creators }),
|
|
2085
|
+
...(removed && { removed }),
|
|
2086
|
+
...(kept(writers) && { writers }),
|
|
2087
|
+
...given("enabledModules", ops.slice(0, seq - this.log.horizon).reverse().find((op) => op.enabledModules)?.enabledModules ?? this.log.horizonEpoch()?.enabledModules),
|
|
2088
|
+
...given("publishedThrough", PUBLISHING.seq?.(this, seq)),
|
|
2089
|
+
};
|
|
1963
2090
|
}
|
|
1964
2091
|
/**
|
|
1965
2092
|
* MOVES THE UNDO HORIZON TO `checkpoint` (FR-23): the ops and epochs
|