rcf-lite 0.17.0 → 0.19.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/CHANGELOG.md +60 -0
- package/blueprints/application-api-rest/README.md +5 -1
- package/blueprints/application-api-rest/blueprint.json +12 -4
- package/blueprints/application-api-rest/contributions/adrs/adr-304-application-api-rest-logging.json +3 -3
- package/blueprints/application-api-rest/contributions/requirements/application-api-rest-req-006.json +4 -4
- package/blueprints/application-api-rest/contributions/tacs/tac-306-application-api-rest-operability.json +9 -8
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2103.json +3 -3
- package/blueprints/application-api-rest/contributions/user-stories/application-api-rest-us-2108.json +27 -27
- package/blueprints/application-api-rest/docs/topics.md +6 -4
- package/blueprints/application-api-rest/guide/application-api-rest.md +5 -1
- package/blueprints/application-error-handling/README.md +42 -0
- package/blueprints/application-error-handling/assets/schemas/error-record.schema.json +17 -0
- package/blueprints/application-error-handling/blueprint.json +27 -0
- package/blueprints/application-error-handling/contributions/adrs/adr-1701-application-error-handling-record-shape.json +25 -0
- package/blueprints/application-error-handling/contributions/adrs/adr-1702-application-error-handling-classification-vocabulary.json +20 -0
- package/blueprints/application-error-handling/contributions/adrs/adr-1703-application-error-handling-transport-mapping.json +20 -0
- package/blueprints/application-error-handling/contributions/requirements/application-error-handling-req-001.json +15 -0
- package/blueprints/application-error-handling/contributions/requirements/application-error-handling-req-002.json +15 -0
- package/blueprints/application-error-handling/contributions/requirements/application-error-handling-req-003.json +15 -0
- package/blueprints/application-error-handling/contributions/requirements/application-error-handling-req-004.json +15 -0
- package/blueprints/application-error-handling/contributions/tacs/tac-1701-application-error-handling-boundary.json +45 -0
- package/blueprints/application-error-handling/contributions/tacs/tac-1702-application-error-handling-record-factory.json +40 -0
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16101.json +25 -0
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16102.json +25 -0
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16103.json +34 -0
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16104.json +25 -0
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16105.json +25 -0
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16106.json +25 -0
- package/blueprints/application-error-handling/contributions/user-stories/application-error-handling-us-16107.json +25 -0
- package/blueprints/application-error-handling/docs/topics.md +24 -0
- package/blueprints/application-error-handling/guide/application-error-handling.md +35 -0
- package/blueprints/application-spa/blueprint.json +12 -2
- package/blueprints/application-spa/docs/topics.md +4 -2
- package/blueprints/delivery-ci-workflows/docs/topics.md +2 -2
- package/blueprints/deploy-cloudflare-workers/docs/topics.md +2 -2
- package/blueprints/email-smtp-resend/docs/topics.md +2 -2
- package/blueprints/observability-essentials/README.md +6 -2
- package/blueprints/observability-essentials/blueprint.json +133 -33
- package/blueprints/observability-essentials/contributions/adrs/adr-801-observability-essentials-health-probes.json +4 -4
- package/blueprints/observability-essentials/contributions/adrs/adr-802-observability-essentials-readiness-semantics.json +4 -4
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-001.json +4 -4
- package/blueprints/observability-essentials/contributions/requirements/observability-essentials-req-002.json +4 -4
- package/blueprints/observability-essentials/contributions/tacs/tac-801-observability-essentials-liveness-probe.json +10 -9
- package/blueprints/observability-essentials/contributions/tacs/tac-802-observability-essentials-readiness-probe.json +17 -11
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7101.json +12 -3
- package/blueprints/observability-essentials/contributions/user-stories/observability-essentials-us-7102.json +12 -3
- package/blueprints/observability-essentials/docs/topics.md +15 -8
- package/blueprints/observability-essentials/guide/observability-essentials.md +9 -3
- package/blueprints/observability-logging/README.md +44 -0
- package/blueprints/observability-logging/assets/samples/log-line.json +13 -0
- package/blueprints/observability-logging/blueprint.json +27 -0
- package/blueprints/observability-logging/contributions/adrs/adr-1601-observability-logging-line-shape.json +25 -0
- package/blueprints/observability-logging/contributions/adrs/adr-1602-observability-logging-correlation-id-header.json +25 -0
- package/blueprints/observability-logging/contributions/adrs/adr-1603-observability-logging-redaction-categories.json +25 -0
- package/blueprints/observability-logging/contributions/adrs/adr-1604-observability-logging-level-vocabulary.json +20 -0
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-001.json +15 -0
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-002.json +15 -0
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-003.json +15 -0
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-004.json +15 -0
- package/blueprints/observability-logging/contributions/requirements/observability-logging-req-005.json +15 -0
- package/blueprints/observability-logging/contributions/tacs/tac-1601-observability-logging-logger-factory.json +46 -0
- package/blueprints/observability-logging/contributions/tacs/tac-1602-observability-logging-redaction-boundary.json +27 -0
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15101.json +34 -0
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15102.json +43 -0
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15103.json +34 -0
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15104.json +25 -0
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15105.json +34 -0
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15106.json +25 -0
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15107.json +25 -0
- package/blueprints/observability-logging/contributions/user-stories/observability-logging-us-15108.json +25 -0
- package/blueprints/observability-logging/docs/topics.md +21 -0
- package/blueprints/observability-logging/guide/observability-logging.md +36 -0
- package/blueprints/observability-probe-endpoints/README.md +5 -1
- package/blueprints/observability-probe-endpoints/blueprint.json +116 -24
- package/blueprints/observability-probe-endpoints/contributions/adrs/adr-1503-observability-probe-endpoints-kubernetes-default.json +5 -5
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14102.json +11 -2
- package/blueprints/observability-probe-endpoints/contributions/user-stories/observability-probe-endpoints-us-14107.json +11 -2
- package/blueprints/observability-probe-endpoints/docs/topics.md +6 -6
- package/blueprints/observability-probe-endpoints/guide/observability-probe-endpoints.md +10 -0
- package/blueprints/persistence-data-d1/docs/topics.md +2 -2
- package/blueprints/persistence-data-sqlite/docs/topics.md +2 -2
- package/blueprints/security-auth-clerk/docs/topics.md +2 -2
- package/blueprints/security-auth-keycloak/docs/topics.md +2 -2
- package/blueprints/security-auth-magic-link/docs/topics.md +2 -2
- package/blueprints/security-auth-oauth2/docs/topics.md +2 -2
- package/blueprints/security-secrets-management/docs/topics.md +2 -2
- package/fixtures/canary-manifest.json +6 -6
- package/guidance/harness-template.md +8 -0
- package/guidance/managed/agent-instructions-block.hash +1 -1
- package/guidance/managed/agent-instructions-block.md +8 -0
- package/package.json +1 -1
- package/rcf/code-nodes/cn-074.json +19 -0
- package/rcf/code-nodes/cn-075.json +15 -0
- package/rcf/code-nodes/cn-076.json +14 -0
- package/rcf/code-nodes/cn-077.json +14 -0
- package/rcf/code-nodes/cn-078.json +15 -0
- package/rcf/code-nodes/cn-079.json +14 -0
- package/rcf/code-nodes/cn-080.json +15 -0
- package/rcf/code-nodes/cn-081.json +15 -0
- package/rcf/code-nodes/cn-082.json +15 -0
- package/rcf/code-nodes/cn-083.json +14 -0
- package/rcf/code-nodes/cn-084.json +15 -0
- package/rcf/code-nodes/cn-085.json +14 -0
- package/rcf/code-nodes/cn-086.json +16 -0
- package/rcf/code-nodes/cn-087.json +14 -0
- package/rcf/code-nodes/cn-088.json +14 -0
- package/rcf/code-nodes/cn-089.json +14 -0
- package/rcf/code-nodes/cn-090.json +14 -0
- package/rcf/code-nodes/cn-091.json +14 -0
- package/rcf/code-nodes/cn-092.json +15 -0
- package/rcf/code-nodes/cn-093.json +15 -0
- package/rcf/code-nodes/cn-094.json +14 -0
- package/rcf/code-nodes/cn-095.json +14 -0
- package/rcf/code-nodes/cn-096.json +14 -0
- package/rcf/code-nodes/cn-097.json +14 -0
- package/rcf/fbs/fbs-024.json +24 -0
- package/rcf/fbs/fbs-025.json +25 -0
- package/rcf/fbs/fbs-026.json +27 -0
- package/rcf/fbs/fbs-027.json +25 -0
- package/rcf/fbs/fbs-028.json +27 -0
- package/rcf/fbs/fbs-029.json +27 -0
- package/rcf/fbs/fbs-030.json +27 -0
- package/rcf/fbs/fbs-031.json +27 -0
- package/rcf/fbs/fbs-032.json +27 -0
- package/rcf/fbs/fbs-033.json +27 -0
- package/rcf/fbs/fbs-034.json +27 -0
- package/rcf/requirements/req-012.json +22 -0
- package/rcf/requirements/req-013.json +22 -0
- package/rcf/requirements/req-014.json +22 -0
- package/rcf/requirements/req-015.json +21 -0
- package/rcf/test-suites/ts-034.json +32 -0
- package/rcf/test-suites/ts-035.json +23 -0
- package/rcf/test-suites/ts-036.json +65 -0
- package/rcf/test-suites/ts-037.json +55 -0
- package/rcf/test-suites/ts-038.json +41 -0
- package/rcf/test-suites/ts-039.json +41 -0
- package/rcf/test-suites/ts-040.json +57 -0
- package/rcf/test-suites/ts-041.json +57 -0
- package/rcf/test-suites/ts-042.json +57 -0
- package/rcf/test-suites/ts-043.json +49 -0
- package/rcf/test-suites/ts-044.json +41 -0
- package/rcf/user-stories/us-1201.json +34 -0
- package/rcf/user-stories/us-1202.json +25 -0
- package/rcf/user-stories/us-1203.json +43 -0
- package/rcf/user-stories/us-1204.json +25 -0
- package/rcf/user-stories/us-1301.json +43 -0
- package/rcf/user-stories/us-1302.json +43 -0
- package/rcf/user-stories/us-1401.json +43 -0
- package/rcf/user-stories/us-1402.json +43 -0
- package/rcf/user-stories/us-1403.json +43 -0
- package/rcf/user-stories/us-1404.json +43 -0
- package/rcf/user-stories/us-1501.json +43 -0
- package/releases/releases.yaml +21 -1
- package/src/blueprint/apply.js +8 -0
- package/src/blueprint/companions.js +485 -0
- package/src/blueprint/index.js +17 -0
- package/src/blueprint/loader.js +243 -1
- package/src/blueprint/remove-resolution.js +104 -0
- package/src/cli/blueprint.js +350 -0
- package/src/cli/doctor.js +76 -1
- package/src/cli/validate.js +7 -0
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"registerCanary": [
|
|
3
3
|
{
|
|
4
4
|
"id": "rc-2026-09-04-001",
|
|
5
|
-
"createdAt": "2026-09-
|
|
6
|
-
"buildVersion": "0.
|
|
5
|
+
"createdAt": "2026-09-04T14:40:53.602Z",
|
|
6
|
+
"buildVersion": "0.19.0-mockdriver",
|
|
7
7
|
"fixturePromptId": "canary-prompt-01",
|
|
8
8
|
"responseWordCount": 55,
|
|
9
9
|
"grades": {
|
|
@@ -35,8 +35,8 @@
|
|
|
35
35
|
},
|
|
36
36
|
{
|
|
37
37
|
"id": "rc-2026-09-04-002",
|
|
38
|
-
"createdAt": "2026-09-
|
|
39
|
-
"buildVersion": "0.
|
|
38
|
+
"createdAt": "2026-09-04T14:40:53.603Z",
|
|
39
|
+
"buildVersion": "0.19.0-mockdriver",
|
|
40
40
|
"fixturePromptId": "canary-prompt-02",
|
|
41
41
|
"responseWordCount": 55,
|
|
42
42
|
"grades": {
|
|
@@ -68,8 +68,8 @@
|
|
|
68
68
|
},
|
|
69
69
|
{
|
|
70
70
|
"id": "rc-2026-09-04-003",
|
|
71
|
-
"createdAt": "2026-09-
|
|
72
|
-
"buildVersion": "0.
|
|
71
|
+
"createdAt": "2026-09-04T14:40:53.603Z",
|
|
72
|
+
"buildVersion": "0.19.0-mockdriver",
|
|
73
73
|
"fixturePromptId": "canary-prompt-03",
|
|
74
74
|
"responseWordCount": 55,
|
|
75
75
|
"grades": {
|
|
@@ -65,6 +65,14 @@ non-technical; the method must be invisible in what they read.
|
|
|
65
65
|
Library-qualified names like `wsd:auth-oauth2`, the ids each apply
|
|
66
66
|
stamps, and the exact CLI lines belong in files and in `rcf`
|
|
67
67
|
output, not in the conversation.
|
|
68
|
+
- Companion suggestions. When you apply a service blueprint that
|
|
69
|
+
declares suggested companions, tell the operator the resolved
|
|
70
|
+
companion set in plain language, name what each companion
|
|
71
|
+
contributes, and offer the apply command. Do not apply a companion
|
|
72
|
+
without the operator's explicit go. Where a registered library
|
|
73
|
+
provides a role, prefer the library over the shelf provider in
|
|
74
|
+
your suggestion, and say so. The mechanism is suggestion, never
|
|
75
|
+
compulsion.
|
|
68
76
|
|
|
69
77
|
Before / after - the same first status after project setup:
|
|
70
78
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
129f4018f526ececaef7ae5bea19ecd72be03a957e2cf2ee3323e85f117f6cba
|
|
@@ -52,6 +52,14 @@ non-technical; the method must be invisible in what they read.
|
|
|
52
52
|
Library-qualified names like `wsd:auth-oauth2`, the ids each apply
|
|
53
53
|
stamps, and the exact CLI lines belong in files and in `rcf`
|
|
54
54
|
output, not in the conversation.
|
|
55
|
+
- Companion suggestions. When you apply a service blueprint that
|
|
56
|
+
declares suggested companions, tell the operator the resolved
|
|
57
|
+
companion set in plain language, name what each companion
|
|
58
|
+
contributes, and offer the apply command. Do not apply a companion
|
|
59
|
+
without the operator's explicit go. Where a registered library
|
|
60
|
+
provides a role, prefer the library over the shelf provider in
|
|
61
|
+
your suggestion, and say so. The mechanism is suggestion, never
|
|
62
|
+
compulsion.
|
|
55
63
|
|
|
56
64
|
Before / after - the same first status after project setup:
|
|
57
65
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rcf-lite",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.19.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "One-install tooling for the Requirements Confidence Framework (RCF): the unified `rcf` CLI grouped into the five RCF tool groups (discover, define, build, verify, audit) plus a small core set (init, doctor, guidance, mcp), an MCP server, the live tree viewer and the fresh-context adversarial ship-gate verifier. Consumes @stravica-ai/rcf-schemas.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-074",
|
|
3
|
+
"path": "test/blueprint/probe-path-alignment.test.js",
|
|
4
|
+
"title": "Three-way probe-path compose test (nine assertions across essentials v2.0.0, probe-endpoints v1.1.0, api-rest v2.0.0)",
|
|
5
|
+
"description": "The compose test file covers the nine assertions ratified in spec section 7 as document-level mechanism invariants over the shipped blueprint contributions and the applied rcf/ tree. Six static-named permutation tests for assertion 1 (the AC-1201-1 test pointer resolves to the first permutation), then one assertion each for one-owner-per-topic in the manifest, no-literal-path in the applied tree with Historical-ADR skip, bare compose defaults + optional startup + loadBalancer /health, essentials-alone required-config + PROBE_INTERFACE_PATHS_MISSING, auth-exempt-list agreement, TAC path-required-no-default, startup binding when enabled, and no dual handler registration. Runs in one process under the shipped node --test runner.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1201-1",
|
|
8
|
+
"AC-1201-2",
|
|
9
|
+
"AC-1202-1",
|
|
10
|
+
"AC-1203-1",
|
|
11
|
+
"AC-1203-2",
|
|
12
|
+
"AC-1203-3"
|
|
13
|
+
],
|
|
14
|
+
"dependencies": [],
|
|
15
|
+
"version": "0.1.0",
|
|
16
|
+
"status": "draft",
|
|
17
|
+
"createdAt": "2026-09-04T00:00:00Z",
|
|
18
|
+
"updatedAt": "2026-09-04T00:00:00Z"
|
|
19
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-075",
|
|
3
|
+
"path": "src/cli/doctor.js#runProbePathOwnerCheck",
|
|
4
|
+
"title": "probe-path-owner doctor check",
|
|
5
|
+
"description": "Reads rcf/manifest.json, counts scope:global claimants on healthProbes and readinessSemantics; drift on more than one claimant per topic (names the applied blueprints and the remedy line naming the one that would have to drop its opinion, spec section 9). Also flags redundant historical resolutions[] entries on either topic when the current claimant count is <= 1 (a project that resolved the v1.x designed-in conflicts and re-applied to essentials v2.0.0 sees the resolution flagged as redundant, with the rcf define blueprint remove-resolution hint). Added to KNOWN_CHECKS; help text lists the new check. Not gated on browser-facing.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1203-2",
|
|
8
|
+
"AC-1203-3"
|
|
9
|
+
],
|
|
10
|
+
"dependencies": [],
|
|
11
|
+
"version": "0.1.0",
|
|
12
|
+
"status": "draft",
|
|
13
|
+
"createdAt": "2026-09-04T00:00:00Z",
|
|
14
|
+
"updatedAt": "2026-09-04T00:00:00Z"
|
|
15
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-076",
|
|
3
|
+
"path": "src/blueprint/remove-resolution.js#removeResolution",
|
|
4
|
+
"title": "`rcf define blueprint remove-resolution` verb implementation",
|
|
5
|
+
"description": "removeResolution({ projectRoot, tree, resolvedByAdrId }) matches the argument against tree.manifest.resolutions[].resolvedByAdrId and drops the single matching entry via updateManifest (validates + tmp-write + rename); no other section of the manifest is touched, and the project-level ADR file at rcf/adrs/<adr-id>.json is left in place as historical context. Refuses with a usage rcfError (mapped to exit 2 at the CLI edge) when the id is malformed against ^ADR-\\d{3,}(-<kebab-tail>)?$ or when it is well-formed but names no ADR on tree.byId and is not on resolutions[]. When the id is well-formed and names an ADR present on the tree but is not on resolutions[], returns `{ removed: false, alreadyAbsent: true }` so the CLI edge prints the 'nothing to remove' line and exits 0 (the second-pass idempotency semantics ratified in spec A2). The verb is dispatched from src/cli/blueprint.js's main() and advertised in the HELP block; the doctor's probe-path-owner check names it verbatim as the remedy line for a redundant historical resolution.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1204-1"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T00:00:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T00:00:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-077",
|
|
3
|
+
"path": "../../blueprints/observability-logging/blueprint.json",
|
|
4
|
+
"title": "observability-logging v1.0.0 shipped blueprint metadata (providesRoles logging, ADR-1601 global topic logging)",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1301-1"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-078",
|
|
3
|
+
"path": "../../blueprints/observability-logging/README.md",
|
|
4
|
+
"title": "observability-logging blueprint tree (README, guide, docs/topics.md, assets, contributions/) applies clean into a fresh fixture",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1301-2",
|
|
8
|
+
"AC-1301-3"
|
|
9
|
+
],
|
|
10
|
+
"dependencies": [],
|
|
11
|
+
"version": "0.1.0",
|
|
12
|
+
"status": "draft",
|
|
13
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
14
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
15
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-079",
|
|
3
|
+
"path": "../../blueprints/application-error-handling/blueprint.json",
|
|
4
|
+
"title": "application-error-handling v1.0.0 shipped blueprint metadata (providesRoles errorHandling, ADR-1701 global topic errorHandling)",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1302-1"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-080",
|
|
3
|
+
"path": "../../blueprints/application-error-handling/README.md",
|
|
4
|
+
"title": "application-error-handling blueprint tree applies clean and docs/topics.md distinguishes errorHandling from errorEnvelope",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1302-2",
|
|
8
|
+
"AC-1302-3"
|
|
9
|
+
],
|
|
10
|
+
"dependencies": [],
|
|
11
|
+
"version": "0.1.0",
|
|
12
|
+
"status": "draft",
|
|
13
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
14
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-081",
|
|
3
|
+
"path": "src/blueprint/loader.js#validateProvidesRoles",
|
|
4
|
+
"title": "Loader accepts providesRoles[] with lower camelCase shape validation",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1401-1",
|
|
8
|
+
"AC-1401-2"
|
|
9
|
+
],
|
|
10
|
+
"dependencies": [],
|
|
11
|
+
"version": "0.1.0",
|
|
12
|
+
"status": "draft",
|
|
13
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
14
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-082",
|
|
3
|
+
"path": "src/blueprint/loader.js#validateSuggestedCompanions",
|
|
4
|
+
"title": "Loader accepts suggestedCompanions[] with role/reason shape validation, em-dash and emoji refusal on the reason string",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1401-1",
|
|
8
|
+
"AC-1401-2"
|
|
9
|
+
],
|
|
10
|
+
"dependencies": [],
|
|
11
|
+
"version": "0.1.0",
|
|
12
|
+
"status": "draft",
|
|
13
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
14
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
15
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-083",
|
|
3
|
+
"path": "src/blueprint/loader.js#validateProvidesRolesPairedAdrs",
|
|
4
|
+
"title": "Loader refuses providesRoles without a paired scope:global ADR carrying the topic string equal to the role name",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1401-3"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-084",
|
|
3
|
+
"path": "src/cli/blueprint.js#main",
|
|
4
|
+
"title": "rcf define blueprint add: --no-companion-suggestions, --companion selectors preflighted, post-apply resolved suggestion block printed",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1402-1",
|
|
8
|
+
"AC-1402-2"
|
|
9
|
+
],
|
|
10
|
+
"dependencies": [],
|
|
11
|
+
"version": "0.1.0",
|
|
12
|
+
"status": "draft",
|
|
13
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
14
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
15
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-085",
|
|
3
|
+
"path": "src/blueprint/companions.js#setCompanionPin",
|
|
4
|
+
"title": "companions.js: setCompanionPin lazily creates rcf/companions.json (schemaVersion 1, current pin per role, pinnedAt ISO-8601) and prints the pin-transition line on overwrite",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1402-3"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-086",
|
|
3
|
+
"path": "src/cli/blueprint.js#handleCompanionsVerb",
|
|
4
|
+
"title": "rcf define blueprint companions <slug>|set|unset sub-verbs: text output with origin annotations, --json envelope",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1403-1",
|
|
8
|
+
"AC-1403-2",
|
|
9
|
+
"AC-1403-3"
|
|
10
|
+
],
|
|
11
|
+
"dependencies": [],
|
|
12
|
+
"version": "0.1.0",
|
|
13
|
+
"status": "draft",
|
|
14
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
15
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
16
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-087",
|
|
3
|
+
"path": "src/blueprint/companions.js#resolveCompanionRole",
|
|
4
|
+
"title": "companions.js: deterministic tier ladder resolver (applied > pinned > registered library > core shelf) with per-origin notes",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1404-1"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-088",
|
|
3
|
+
"path": "src/blueprint/companions.js#renderAmbiguousLibraryRefusal",
|
|
4
|
+
"title": "companions.js: two-libraries-one-role refusal renderer with the three-path resolution message (spec 2.4)",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1404-2"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-089",
|
|
3
|
+
"path": "src/cli/blueprint.js#handleCompanionsVerb",
|
|
4
|
+
"title": "rcf define blueprint companions <slug> propagates the ambiguousLibraries refusal to exit 3",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1404-2"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-090",
|
|
3
|
+
"path": "src/cli/validate.js#main",
|
|
4
|
+
"title": "rcf define validate consults validateCompanionPinsResolvable so an unresolvable pin exits 3 with the ratified message shape",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1404-3"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-091",
|
|
3
|
+
"path": "src/blueprint/companions.js#validateCompanionPinsResolvable",
|
|
4
|
+
"title": "companions.js: unresolvable pin detection walks applied > libraries > shelf and returns rcfError entries the validate CLI folds into exit 3",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1404-3"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-092",
|
|
3
|
+
"path": "src/blueprint/loader.js#validateStandardsTrace",
|
|
4
|
+
"title": "Loader validates standardsTrace[] shape and refuses missing standardsTraceClause on every ADR contribution (amendment A2 wording preserved)",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1501-1",
|
|
8
|
+
"AC-1501-2"
|
|
9
|
+
],
|
|
10
|
+
"dependencies": [],
|
|
11
|
+
"version": "0.1.0",
|
|
12
|
+
"status": "draft",
|
|
13
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
14
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-093",
|
|
3
|
+
"path": "src/blueprint/loader.js#preserveAdrDisciplineFields",
|
|
4
|
+
"title": "Loader preserves recommendedDefault, elicited and standardsTraceClause on ADR contributions so consumers read them off the LoadedBlueprint",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1501-1",
|
|
8
|
+
"AC-1501-3"
|
|
9
|
+
],
|
|
10
|
+
"dependencies": [],
|
|
11
|
+
"version": "0.1.0",
|
|
12
|
+
"status": "draft",
|
|
13
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
14
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
15
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-094",
|
|
3
|
+
"path": "../../blueprints/application-api-rest/blueprint.json",
|
|
4
|
+
"title": "application-api-rest 2.1.0 declares suggestedCompanions for logging + errorHandling; ADR-304 retained without scope:global (topic transferred to ADR-1601)",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1402-1"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-095",
|
|
3
|
+
"path": "../../blueprints/application-spa/blueprint.json",
|
|
4
|
+
"title": "application-spa 1.5.0 declares suggestedCompanions for logging + errorHandling to inform the browser-facing boundary",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1402-1"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-096",
|
|
3
|
+
"path": "src/blueprint/apply.js#applyBlueprint",
|
|
4
|
+
"title": "apply.js: ApplyResult carries suggestedCompanions from the source blueprint so the CLI can render the resolved suggestion block after a successful apply",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1402-1"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cnId": "CN-097",
|
|
3
|
+
"path": "src/blueprint/companions.js#unsetCompanionPin",
|
|
4
|
+
"title": "companions.js: unsetCompanionPin removes the roles.<role> entry, deletes the file when empty, refuses exit 2 when no pin exists for the role",
|
|
5
|
+
"description": "Anchored by the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022); see the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md for the full trace.",
|
|
6
|
+
"implementsAcIds": [
|
|
7
|
+
"AC-1403-2"
|
|
8
|
+
],
|
|
9
|
+
"dependencies": [],
|
|
10
|
+
"version": "0.1.0",
|
|
11
|
+
"status": "draft",
|
|
12
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
13
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
14
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"fbsId": "FBS-024",
|
|
3
|
+
"prdId": "PRD-001",
|
|
4
|
+
"bsId": "BS-001",
|
|
5
|
+
"buildOrder": 24,
|
|
6
|
+
"executionStatus": "verified",
|
|
7
|
+
"title": "Three-way compose test asserting no globalAdrTopic conflict on healthProbes or readinessSemantics across every ordering",
|
|
8
|
+
"summary": "Add packages/rcf-lite/test/blueprint/probe-path-alignment.test.js: six per-permutation tests (assertion 1) covering AC-1201-1 and one applied-manifest walker (assertion 2) covering AC-1201-2. Uses the shipped applyBlueprint + walkTree + initProject seams; runs in one process under the shipped node --test runner.",
|
|
9
|
+
"acIds": [
|
|
10
|
+
"AC-1201-1",
|
|
11
|
+
"AC-1201-2"
|
|
12
|
+
],
|
|
13
|
+
"dependsOnFbsIds": [],
|
|
14
|
+
"contextRequirements": {
|
|
15
|
+
"tacIds": [],
|
|
16
|
+
"adrIds": []
|
|
17
|
+
},
|
|
18
|
+
"domain": "blueprints",
|
|
19
|
+
"estimatedSize": "small",
|
|
20
|
+
"riskLevel": "low",
|
|
21
|
+
"notes": "Part of the ratified 2026-09-04 probe-path alignment train (w-2026-09-03-dave-021). Covers US-1201 on REQ-012.",
|
|
22
|
+
"createdAt": "2026-09-04T00:00:00Z",
|
|
23
|
+
"updatedAt": "2026-09-04T00:00:00Z"
|
|
24
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"fbsId": "FBS-025",
|
|
3
|
+
"prdId": "PRD-001",
|
|
4
|
+
"bsId": "BS-001",
|
|
5
|
+
"buildOrder": 25,
|
|
6
|
+
"executionStatus": "verified",
|
|
7
|
+
"title": "Compose test assertion 3: greppable no-literal-path invariant on the applied rcf/ tree",
|
|
8
|
+
"summary": "Add the assertion 3 block to packages/rcf-lite/test/blueprint/probe-path-alignment.test.js: applies the three amended blueprints, walks the resulting rcf/ tree, greps for the five literal probe-path strings, and skips ADR contribution files whose title begins \"Historical:\" (per spec section 4) or whose adrId names probe-secrecy (context-only ADR).",
|
|
9
|
+
"acIds": [
|
|
10
|
+
"AC-1202-1"
|
|
11
|
+
],
|
|
12
|
+
"dependsOnFbsIds": [
|
|
13
|
+
"FBS-024"
|
|
14
|
+
],
|
|
15
|
+
"contextRequirements": {
|
|
16
|
+
"tacIds": [],
|
|
17
|
+
"adrIds": []
|
|
18
|
+
},
|
|
19
|
+
"domain": "blueprints",
|
|
20
|
+
"estimatedSize": "small",
|
|
21
|
+
"riskLevel": "low",
|
|
22
|
+
"notes": "Part of the ratified 2026-09-04 probe-path alignment train (w-2026-09-03-dave-021). Covers US-1202 on REQ-012.",
|
|
23
|
+
"createdAt": "2026-09-04T00:00:00Z",
|
|
24
|
+
"updatedAt": "2026-09-04T00:00:00Z"
|
|
25
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"fbsId": "FBS-026",
|
|
3
|
+
"prdId": "PRD-001",
|
|
4
|
+
"bsId": "BS-001",
|
|
5
|
+
"buildOrder": 26,
|
|
6
|
+
"executionStatus": "verified",
|
|
7
|
+
"title": "Compose test assertions 4-9 covering the per-blueprint ratified alignment facts and the probe-path-owner doctor check",
|
|
8
|
+
"summary": "Add the assertion 4-9 block to packages/rcf-lite/test/blueprint/probe-path-alignment.test.js covering probe-endpoints optional startup + composing section (assertion 4, 8), essentials PROBE_INTERFACE_PATHS_MISSING refuse-boot + no-shipped-default TACs + no-dual-handler (assertions 5, 7, 9), api-rest deferral of the probe paths and auth-exempt-list binding (assertion 6). Add the probe-path-owner check to KNOWN_CHECKS in packages/rcf-lite/src/cli/doctor.js with the runProbePathOwnerCheck implementation reading manifest.blueprints[].contributions[] for scope:global topic multi-claim drift and manifest.resolutions[] for redundant resolutions on healthProbes/readinessSemantics after the alignment.",
|
|
9
|
+
"acIds": [
|
|
10
|
+
"AC-1203-1",
|
|
11
|
+
"AC-1203-2",
|
|
12
|
+
"AC-1203-3"
|
|
13
|
+
],
|
|
14
|
+
"dependsOnFbsIds": [
|
|
15
|
+
"FBS-025"
|
|
16
|
+
],
|
|
17
|
+
"contextRequirements": {
|
|
18
|
+
"tacIds": [],
|
|
19
|
+
"adrIds": []
|
|
20
|
+
},
|
|
21
|
+
"domain": "blueprints",
|
|
22
|
+
"estimatedSize": "medium",
|
|
23
|
+
"riskLevel": "low",
|
|
24
|
+
"notes": "Part of the ratified 2026-09-04 probe-path alignment train (w-2026-09-03-dave-021). Covers US-1203 on REQ-012.",
|
|
25
|
+
"createdAt": "2026-09-04T00:00:00Z",
|
|
26
|
+
"updatedAt": "2026-09-04T00:00:00Z"
|
|
27
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"fbsId": "FBS-027",
|
|
3
|
+
"prdId": "PRD-001",
|
|
4
|
+
"bsId": "BS-001",
|
|
5
|
+
"buildOrder": 27,
|
|
6
|
+
"executionStatus": "verified",
|
|
7
|
+
"title": "`rcf define blueprint remove-resolution <adr-id>` verb (drops one manifest.resolutions[] entry; idempotent; refuses exit 2 on malformed or unknown id)",
|
|
8
|
+
"summary": "Add packages/rcf-lite/src/blueprint/remove-resolution.js implementing removeResolution({ projectRoot, tree, resolvedByAdrId }) with the three ratified behaviours (remove + idempotent + refuse), export it from packages/rcf-lite/src/blueprint/index.js, wire the `remove-resolution` verb into packages/rcf-lite/src/cli/blueprint.js's HELP block and dispatch, and cover the surface with packages/rcf-lite/test/blueprint/remove-resolution.test.js (module) and remove-resolution cases appended to packages/rcf-lite/test/blueprint/cli.test.js (CLI edge). No changes to the doctor hint text (it names the verb already); no changes to project ADR files (the verb is scoped to manifest.resolutions[]).",
|
|
9
|
+
"acIds": [
|
|
10
|
+
"AC-1204-1"
|
|
11
|
+
],
|
|
12
|
+
"dependsOnFbsIds": [
|
|
13
|
+
"FBS-026"
|
|
14
|
+
],
|
|
15
|
+
"contextRequirements": {
|
|
16
|
+
"tacIds": [],
|
|
17
|
+
"adrIds": []
|
|
18
|
+
},
|
|
19
|
+
"domain": "blueprints",
|
|
20
|
+
"estimatedSize": "small",
|
|
21
|
+
"riskLevel": "low",
|
|
22
|
+
"notes": "Part of the ratified 2026-09-04 probe-path alignment train (w-2026-09-03-dave-021). Covers US-1204 on REQ-012. Spec amendment A2, added under the envelope 2026-09-04 after gate d-2026-09-04-016 finding 1 (the doctor and spec section 9 named the verb before it existed).",
|
|
23
|
+
"createdAt": "2026-09-04T00:00:00Z",
|
|
24
|
+
"updatedAt": "2026-09-04T00:00:00Z"
|
|
25
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"fbsId": "FBS-028",
|
|
3
|
+
"prdId": "PRD-001",
|
|
4
|
+
"bsId": "BS-001",
|
|
5
|
+
"buildOrder": 28,
|
|
6
|
+
"executionStatus": "verified",
|
|
7
|
+
"title": "observability-logging v1.0.0 shelf blueprint (contributions + README + guide + docs/topics.md + assets), applies clean into a fresh fixture",
|
|
8
|
+
"summary": "Core companions train (w-2026-09-03-dave-030, d-2026-09-04-022). Covers the AC set above end to end through the shipped code paths named on the paired CN implementsAcIds[] and the paired TS testPointer entries under packages/rcf-lite/test/. Runtime provenance: Node 24.14.0 on the repo's dogfood tree; each fixture verified in scratchpad. See the spec at projects/rcf-lite-wsd/specs/rcf-lite-core-companions-spec-2026-09-04.md.",
|
|
9
|
+
"acIds": [
|
|
10
|
+
"AC-1301-1",
|
|
11
|
+
"AC-1301-2",
|
|
12
|
+
"AC-1301-3"
|
|
13
|
+
],
|
|
14
|
+
"dependsOnFbsIds": [
|
|
15
|
+
"FBS-027"
|
|
16
|
+
],
|
|
17
|
+
"contextRequirements": {
|
|
18
|
+
"tacIds": [],
|
|
19
|
+
"adrIds": []
|
|
20
|
+
},
|
|
21
|
+
"domain": "blueprints",
|
|
22
|
+
"estimatedSize": "small",
|
|
23
|
+
"riskLevel": "low",
|
|
24
|
+
"notes": "Part of the core companions train (w-2026-09-03-dave-030, d-2026-09-04-022). One FBS per US on REQ-013/014/015.",
|
|
25
|
+
"createdAt": "2026-09-04T12:20:00Z",
|
|
26
|
+
"updatedAt": "2026-09-04T12:20:00Z"
|
|
27
|
+
}
|