filegrc 0.13.5 → 0.15.0
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 +4 -4
- package/model/index.js +7 -5
- package/model/v11.json +12200 -0
- package/package.json +1 -1
- package/src/agent.js +1 -1
- package/src/cli.js +1 -1
- package/src/collection-review.js +118 -0
- package/src/collection-revision.js +3 -1
- package/src/collection-scope.js +150 -3
- package/src/document-activation.js +28 -4
- package/src/model-migration.js +70 -2
- package/src/policy-activation.js +16 -2
- package/src/program-path.js +64 -14
- package/src/program-readiness.js +37 -14
- package/src/retention-schedule-approval.js +121 -0
- package/src/retention.js +56 -1
- package/src/state.js +19 -22
- package/src/validate.js +70 -1
- package/src/web.js +425 -71
- package/src/workflow-history-integrity.js +5 -1
- package/src/workflow.js +1 -3
package/README.md
CHANGED
|
@@ -44,13 +44,13 @@ npx filegrc policy-library
|
|
|
44
44
|
|
|
45
45
|
The command shows an exact diff only when the current text still matches the prior starter default. It skips customized, approved, active, superseded, and retired Policy content. Accept one named proposal revision only with the command printed by the review, which includes `--accept`, `--proposal-revision`, and `--yes`. Acceptance fails if the proposal changed after review. It changes only the listed defaults and does not approve a Policy, activate it, or mark a Control implemented.
|
|
46
46
|
|
|
47
|
-
The normal runtime uses data model
|
|
47
|
+
The normal runtime uses data model v11. Existing model v10 workspaces start with a read-only preview:
|
|
48
48
|
|
|
49
49
|
```sh
|
|
50
|
-
npx filegrc migrate --to-model
|
|
50
|
+
npx filegrc migrate --to-model 11 --preview --json
|
|
51
51
|
```
|
|
52
52
|
|
|
53
|
-
Review every automatic, review-required, and unsupported item. Model
|
|
53
|
+
Review every automatic, review-required, and unsupported item. Model v11 removes the old per-Control implementation approval fields. Owners can record implementation directly, while periodic Control oversight uses one Collection Review at the end of Step 3. Policy, Document, and Training approvals stay independent. Resolve unsupported items before applying the same migration with `--yes`. The [model v11 upgrade guide](https://github.com/Alignbase/filegrc/blob/main/docs/upgrading-to-model-v11.md) documents the review.
|
|
54
54
|
|
|
55
55
|
A model v2 workspace must migrate to v3 first:
|
|
56
56
|
|
|
@@ -66,7 +66,7 @@ A model v1 workspace must migrate to v2 first:
|
|
|
66
66
|
npx filegrc migrate --to-model 2 --preview --json
|
|
67
67
|
```
|
|
68
68
|
|
|
69
|
-
Follow the [model v2 upgrade guide](https://github.com/Alignbase/filegrc/blob/main/docs/upgrading-to-model-v2.md), then
|
|
69
|
+
Follow the [model v2 upgrade guide](https://github.com/Alignbase/filegrc/blob/main/docs/upgrading-to-model-v2.md), then migrate one model version at a time through model v11.
|
|
70
70
|
|
|
71
71
|
`filegrc serve --help` prints bind, port, environment, and safety options without starting the server. The editable server prefers `127.0.0.1:8787` and chooses another available port when that port is occupied. Set `FILEGRC_HOST`, `FILEGRC_PORT`, or the matching flags when needed. In trunk mode, browser saves synchronize, commit, and push from the authoritative branch. Use `--allow-non-authoritative-writes` for local development in a task checkout; the override never commits or pushes.
|
|
72
72
|
|
package/model/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { readFileSync } from "node:fs";
|
|
2
2
|
|
|
3
|
-
export const ACTIVE_MODEL_VERSION = "
|
|
4
|
-
export const SUPPORTED_MODEL_VERSIONS = Object.freeze(["2", "3", "4", "5", "6", "7", "8", "9", ACTIVE_MODEL_VERSION]);
|
|
3
|
+
export const ACTIVE_MODEL_VERSION = "11";
|
|
4
|
+
export const SUPPORTED_MODEL_VERSIONS = Object.freeze(["2", "3", "4", "5", "6", "7", "8", "9", "10", ACTIVE_MODEL_VERSION]);
|
|
5
5
|
export const MODEL_CAPABILITY_VERSIONS = Object.freeze({
|
|
6
6
|
"guided-workflow": 3,
|
|
7
7
|
"program-scope": 4,
|
|
@@ -16,7 +16,9 @@ export const MODEL_CAPABILITY_VERSIONS = Object.freeze({
|
|
|
16
16
|
"rolled-up-obligations": 9,
|
|
17
17
|
"temporal-collection-reviews": 9,
|
|
18
18
|
"reporting-routes": 9,
|
|
19
|
-
"reporting-route-sets": 10
|
|
19
|
+
"reporting-route-sets": 10,
|
|
20
|
+
"control-collection-oversight": 11,
|
|
21
|
+
"retention-schedule-approval": 11
|
|
20
22
|
});
|
|
21
23
|
|
|
22
24
|
export function modelSupports(modelOrVersion, capability) {
|
|
@@ -31,9 +33,9 @@ export function modelSupports(modelOrVersion, capability) {
|
|
|
31
33
|
export function loadModel(version = ACTIVE_MODEL_VERSION) {
|
|
32
34
|
const requested = String(version);
|
|
33
35
|
if (!SUPPORTED_MODEL_VERSIONS.includes(requested)) {
|
|
34
|
-
const migrationTarget = requested === "1" ? "2" : requested === "2" ? "3" : requested === "3" ? "4" : requested === "4" ? "5" : requested === "5" ? "6" : requested === "6" ? "7" : requested === "7" ? "8" : requested === "8" ? "9" : "10";
|
|
36
|
+
const migrationTarget = requested === "1" ? "2" : requested === "2" ? "3" : requested === "3" ? "4" : requested === "4" ? "5" : requested === "5" ? "6" : requested === "6" ? "7" : requested === "7" ? "8" : requested === "8" ? "9" : requested === "9" ? "10" : "11";
|
|
35
37
|
throw new Error(
|
|
36
|
-
`Unsupported data model version "${requested}". This filegrc release supports models v2 through
|
|
38
|
+
`Unsupported data model version "${requested}". This filegrc release supports models v2 through v11. `
|
|
37
39
|
+ `Run \`npx filegrc migrate --to-model ${migrationTarget} --preview --json\` from the workspace root.`
|
|
38
40
|
);
|
|
39
41
|
}
|