filegrc 0.5.0 → 0.6.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 +14 -6
- package/model/index.js +4 -4
- package/model/v4.json +10052 -0
- package/package.json +2 -2
- package/src/agent.js +17 -5
- package/src/audit-preparation.js +17 -13
- package/src/audit-transition.js +7 -4
- package/src/batch-review.js +31 -8
- package/src/cli.js +43 -25
- package/src/collection-review.js +71 -25
- package/src/evidence-packet.js +76 -43
- package/src/external-reviewer.js +4 -4
- package/src/files.js +70 -6
- package/src/git.js +70 -13
- package/src/index.js +1 -0
- package/src/model-migration.js +631 -14
- package/src/obligations.js +14 -7
- package/src/program-path.js +49 -38
- package/src/program-readiness.js +94 -54
- package/src/program.js +52 -0
- package/src/reconciliation.js +2 -2
- package/src/server.js +50 -8
- package/src/setup.js +56 -21
- package/src/source-coverage.js +13 -9
- package/src/startup.js +1 -1
- package/src/state.js +17 -14
- package/src/timing.js +6 -0
- package/src/validate.js +100 -9
- package/src/web.js +709 -151
- package/src/workflow.js +47 -25
package/README.md
CHANGED
|
@@ -36,13 +36,21 @@ npx filegrc evidence-packet --start 2026-01-01 --end 2026-06-30 --audit audit-id
|
|
|
36
36
|
|
|
37
37
|
## Upgrade an existing workspace
|
|
38
38
|
|
|
39
|
-
The normal runtime uses data model
|
|
39
|
+
The normal runtime uses data model v4. Start a model v3 upgrade with a read-only preview:
|
|
40
|
+
|
|
41
|
+
```sh
|
|
42
|
+
npx filegrc migrate --to-model 4 --preview --json
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Review every automatic, review-required, and unsupported item. A v3 System may represent either a bounded System or a Component, so ambiguous records need an explicit decisions file. Resolve unsupported items before applying the same migration with `--yes`. The [model v4 upgrade guide](https://github.com/Alignbase/filegrc/blob/main/docs/upgrading-to-model-v4.md) documents the decisions shape and migration result.
|
|
46
|
+
|
|
47
|
+
A model v2 workspace must migrate to v3 first:
|
|
40
48
|
|
|
41
49
|
```sh
|
|
42
50
|
npx filegrc migrate --to-model 3 --preview --json
|
|
43
51
|
```
|
|
44
52
|
|
|
45
|
-
|
|
53
|
+
The migration writes one atomic batch, validates model v3, changes no Git history, and is safe to rerun. The [model v3 upgrade guide](https://github.com/Alignbase/filegrc/blob/main/docs/upgrading-to-model-v3.md) explains every migration class and the review that follows. Apply it before previewing model v4.
|
|
46
54
|
|
|
47
55
|
A model v1 workspace must migrate to v2 first:
|
|
48
56
|
|
|
@@ -50,17 +58,17 @@ A model v1 workspace must migrate to v2 first:
|
|
|
50
58
|
npx filegrc migrate --to-model 2 --preview --json
|
|
51
59
|
```
|
|
52
60
|
|
|
53
|
-
Follow the [model v2 upgrade guide](https://github.com/
|
|
61
|
+
Follow the [model v2 upgrade guide](https://github.com/Alignbase/filegrc/blob/main/docs/upgrading-to-model-v2.md), then run the model v3 and v4 previews in order.
|
|
54
62
|
|
|
55
63
|
`filegrc serve --help` prints bind, port, environment, and safety options without starting the server. The editable server defaults to `127.0.0.1:8787`; 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.
|
|
56
64
|
|
|
57
|
-
`filegrc setup` provides the headless equivalent of browser onboarding. Run it without arguments for guided terminal setup, or pass all initial service-boundary fields and a management program goal as flags or a JSON payload. Add `--preview` to validate and inspect the planned
|
|
65
|
+
`filegrc setup` provides the headless equivalent of browser onboarding. Run it without arguments for guided terminal setup, or pass all initial service-boundary fields and a management program goal as flags or a JSON payload. Add `--preview` to validate and inspect the planned System and Program writes without saving. Add `--summary --json` for compact agent output. Selecting Type 1 or Type 2 updates the Program goal and selected Systems. Setup does not select Framework records, link Controls, create Evidence Artifacts, or create an Audit record.
|
|
58
66
|
|
|
59
67
|
`filegrc program-path --next --json` gives an agent the current step and first action without loading the full lifecycle. Use `--summary` for compact status across all five steps, `--current` for the full current-step guide, or no compact flag for every step. `filegrc guide <type>` repeats the matching page guidance and adds fields, relationship candidates, Markdown slots, and timing for that record type.
|
|
60
68
|
|
|
61
|
-
`filegrc program-readiness` reports whether management can start a candidate Type 2 period. Add `--summary --json` for compact stage counts and next actions, or omit `--summary` for every readiness item. Use `--require-ready` in automation. The command does not require an
|
|
69
|
+
`filegrc program-readiness` reports whether management can start a candidate Type 2 period. Add `--summary --json` for compact stage counts and next actions, or omit `--summary` for every readiness item. Use `--require-ready` in automation. Pass `--program PROGRAM_ID` when more than one active Program exists. The command does not require an Audit ID or CPA firm.
|
|
62
70
|
|
|
63
|
-
Control implementation includes each selected Control family’s expected evidence, authoritative source
|
|
71
|
+
Control implementation includes each selected Control family’s expected evidence, authoritative source Components, and source-readiness checks. `filegrc evidence-map --json` provides a focused read-only diagnostic for those checks. Fix gaps in the Control and Component records. During Step 4, create an Evidence Artifact only when a real export, report, screenshot, signed file, or approved external reference exists, then link it to the supporting operating record when applicable.
|
|
64
72
|
|
|
65
73
|
`filegrc obligations` shows recurring work and a task-level preview for each Policy Event, including owners, deadlines, and requested proof. `filegrc trigger` adds the event and all of its Action Items to the Work Queue atomically, then prints the created task IDs and deadlines.
|
|
66
74
|
|
package/model/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { readFileSync } from "node:fs";
|
|
2
2
|
|
|
3
|
-
export const ACTIVE_MODEL_VERSION = "
|
|
4
|
-
export const SUPPORTED_MODEL_VERSIONS = Object.freeze(["2", ACTIVE_MODEL_VERSION]);
|
|
3
|
+
export const ACTIVE_MODEL_VERSION = "4";
|
|
4
|
+
export const SUPPORTED_MODEL_VERSIONS = Object.freeze(["2", "3", ACTIVE_MODEL_VERSION]);
|
|
5
5
|
|
|
6
6
|
export function loadModel(version = ACTIVE_MODEL_VERSION) {
|
|
7
7
|
const requested = String(version);
|
|
8
8
|
if (!SUPPORTED_MODEL_VERSIONS.includes(requested)) {
|
|
9
|
-
const migrationTarget = requested === "1" ? "2" : "3";
|
|
9
|
+
const migrationTarget = requested === "1" ? "2" : requested === "2" ? "3" : "4";
|
|
10
10
|
throw new Error(
|
|
11
|
-
`Unsupported data model version "${requested}". This filegrc release supports models v2 and
|
|
11
|
+
`Unsupported data model version "${requested}". This filegrc release supports models v2, v3, and v4. `
|
|
12
12
|
+ `Run \`npx filegrc migrate --to-model ${migrationTarget} --preview --json\` from the workspace root.`
|
|
13
13
|
);
|
|
14
14
|
}
|