@cassiomc1/forgeloop 0.1.15 → 1.0.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.
Files changed (52) hide show
  1. package/DOCS_INDEX.md +60 -0
  2. package/EXECUTION_STATE.md +9 -0
  3. package/LOOP_ENGINEERING.md +15 -0
  4. package/LOOP_SYSTEM_DESIGN.md +8 -0
  5. package/PROTOCOL_INTEGRATION.md +8 -0
  6. package/QUALITY_SCORECARD.md +2 -0
  7. package/README.md +183 -654
  8. package/TERMINOLOGY.md +4 -0
  9. package/THREAT_MODEL.md +9 -0
  10. package/docs/assets/forgeloop-flow.svg +1 -0
  11. package/docs/forgeloop-flow.mmd +51 -0
  12. package/package.json +16 -3
  13. package/schemas/continuity.schema.json +57 -0
  14. package/scripts/CI_VALIDATORS.md +32 -0
  15. package/src/cli.js +307 -204
  16. package/src/commands/clear-continuity.js +9 -0
  17. package/src/commands/continuity.js +25 -0
  18. package/src/commands/doctor.js +17 -2
  19. package/src/commands/reconcile-continuity.js +23 -0
  20. package/src/commands/record-continuity.js +63 -0
  21. package/src/commands/status.js +14 -1
  22. package/src/commands/update.js +12 -13
  23. package/src/commands/validate-protocol.js +19 -0
  24. package/src/core/artifacts.js +1 -0
  25. package/src/core/bundles.js +6 -0
  26. package/src/core/command-resolution.js +295 -0
  27. package/src/core/command-tokenizer.js +122 -0
  28. package/src/core/conformance.js +8 -2
  29. package/src/core/continuity-cli-options.js +58 -0
  30. package/src/core/continuity-conformance.js +46 -0
  31. package/src/core/continuity-observability.js +20 -0
  32. package/src/core/continuity-reconciliation.js +224 -0
  33. package/src/core/continuity.js +245 -0
  34. package/src/core/inspect.js +9 -1
  35. package/src/core/installation-authority.js +178 -0
  36. package/src/core/json-safety.js +17 -13
  37. package/src/core/next-action-artifacts.js +118 -0
  38. package/src/core/next-action-continuity.js +65 -0
  39. package/src/core/next-action-model.js +127 -0
  40. package/src/core/next-action-phases.js +12 -0
  41. package/src/core/next-action.js +22 -249
  42. package/src/core/npm-classifier.js +343 -0
  43. package/src/core/package-manager-classifiers.js +37 -0
  44. package/src/core/preflight-consistency.js +221 -0
  45. package/src/core/preflight-loaders.js +112 -0
  46. package/src/core/preflight-model.js +83 -0
  47. package/src/core/preflight.js +34 -444
  48. package/src/core/protocol.js +7 -0
  49. package/src/core/schema-validation.js +15 -1
  50. package/src/core/templates.js +2 -0
  51. package/src/core/verification-capability.js +31 -1106
  52. package/src/core/verification-constants.js +61 -0
@@ -0,0 +1,57 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "forgeloop://schemas/continuity.schema.json",
4
+ "title": "ForgeLoop execution continuity",
5
+ "type": "object",
6
+ "required": [
7
+ "schemaVersion",
8
+ "protocolVersion",
9
+ "taskId",
10
+ "workStateFingerprint",
11
+ "contractFingerprint",
12
+ "phase",
13
+ "repositoryFingerprint",
14
+ "updatedAt",
15
+ "remainingWork",
16
+ "knownIssues",
17
+ "changedAreas",
18
+ "inspectFirst"
19
+ ],
20
+ "properties": {
21
+ "schemaVersion": { "const": 1 },
22
+ "protocolVersion": { "const": 1 },
23
+ "taskId": { "type": "string", "minLength": 1, "maxLength": 128 },
24
+ "workStateFingerprint": { "type": "string", "pattern": "^[a-f0-9]{64}$" },
25
+ "contractFingerprint": { "type": "string", "pattern": "^[a-f0-9]{64}$" },
26
+ "phase": { "type": "string", "minLength": 1 },
27
+ "verificationCycle": { "type": "integer", "minimum": 1 },
28
+ "repositoryFingerprint": {
29
+ "type": "object",
30
+ "required": ["branch", "head"],
31
+ "properties": {
32
+ "branch": { "oneOf": [{ "type": "string" }, { "type": "null" }] },
33
+ "head": { "oneOf": [{ "type": "string" }, { "type": "null" }] }
34
+ },
35
+ "additionalProperties": false
36
+ },
37
+ "updatedAt": { "type": "string", "minLength": 1 },
38
+ "currentFocus": { "$ref": "#/$defs/workItem" },
39
+ "remainingWork": { "type": "array", "maxItems": 40, "items": { "$ref": "#/$defs/workItem" } },
40
+ "knownIssues": { "type": "array", "maxItems": 40, "items": { "$ref": "#/$defs/workItem" } },
41
+ "changedAreas": { "type": "array", "maxItems": 80, "items": { "type": "string", "minLength": 1, "maxLength": 1024 } },
42
+ "inspectFirst": { "type": "array", "maxItems": 40, "items": { "type": "string", "minLength": 1, "maxLength": 1024 } },
43
+ "resumeNote": { "type": "string", "minLength": 1, "maxLength": 2000 }
44
+ },
45
+ "$defs": {
46
+ "workItem": {
47
+ "type": "object",
48
+ "required": ["id", "summary"],
49
+ "properties": {
50
+ "id": { "type": "string", "minLength": 1, "maxLength": 128 },
51
+ "summary": { "type": "string", "minLength": 1, "maxLength": 1000 }
52
+ },
53
+ "additionalProperties": false
54
+ }
55
+ },
56
+ "additionalProperties": false
57
+ }
@@ -0,0 +1,32 @@
1
+ # Frozen CI-only validators
2
+
3
+ The Python validators are retained as compatibility checks for repository
4
+ contracts that predate the Node test suite:
5
+
6
+ - `validate_markdown.py` checks Markdown structure, frontmatter, links, code
7
+ fences, guide metadata, and adapter/documentation consistency.
8
+ - `validate_loop_system.py` checks the universal loop, instruction boundaries,
9
+ routing metadata, and protocol wording.
10
+ - `scan_secrets.py` checks repository text for secret-shaped values and is also
11
+ exercised by its Python unit tests.
12
+
13
+ They are deliberately frozen as CI-only tooling. The current migration does
14
+ not replace them with a second Node implementation because doing so would
15
+ change the historical scanner and validator contracts without a dedicated
16
+ parity project. They are not runtime dependencies, are not shipped as the CLI
17
+ runtime, and are not required by `npm install`.
18
+
19
+ ## CI invocation
20
+
21
+ ```bash
22
+ python3 -m unittest discover -s tests -v
23
+ python3 scripts/validate_markdown.py --self-test
24
+ python3 scripts/validate_markdown.py
25
+ python3 scripts/validate_loop_system.py --self-test
26
+ python3 scripts/validate_loop_system.py
27
+ python3 scripts/scan_secrets.py
28
+ ```
29
+
30
+ The Node suite and Python suite have separate ownership: Node tests cover CLI,
31
+ protocol behavior, schemas, and execution evidence; Python remains the
32
+ compatibility gate for these repository-wide textual invariants.