@afokapu/atdd-bun 0.10.40 → 0.10.42
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/conventions/_profiles/coder.yaml +72 -0
- package/conventions/_profiles/metrics.yaml +70 -0
- package/conventions/coder.bun/coder.bun.boundaries-http-client.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.commons-application-no-integration.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.commons-cross-feature-imports-in.convention.yaml +16 -1
- package/conventions/coder.bun/coder.bun.commons-domain-no-framework-import.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.commons-domain-no-outbound.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.composition-consumer.convention.yaml +16 -1
- package/conventions/coder.bun/coder.bun.composition-root.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.design-connected.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.design-dependency-flow.convention.yaml +17 -2
- package/conventions/coder.bun/coder.bun.design-hierarchy-import.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.design-orphan-export.convention.yaml +17 -2
- package/conventions/coder.bun/coder.bun.design-primitives.convention.yaml +17 -2
- package/conventions/coder.bun/coder.bun.design-token-color.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.design-token-hardcoded.convention.yaml +17 -2
- package/conventions/coder.bun/coder.bun.design-tokens-pure.convention.yaml +18 -2
- package/conventions/coder.bun/coder.bun.design-wagons-import.convention.yaml +18 -2
- package/conventions/coder.bun/coder.bun.dto-mapper.convention.yaml +16 -1
- package/conventions/coder.bun/coder.bun.dto-placement.convention.yaml +16 -1
- package/conventions/coder.bun/coder.bun.dto-purity.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.green-header-order.convention.yaml +15 -7
- package/conventions/coder.bun/coder.bun.green-header-purpose.convention.yaml +16 -5
- package/conventions/coder.bun/coder.bun.green-header-runtime.convention.yaml +15 -6
- package/conventions/coder.bun/coder.bun.green-header-tested-by.convention.yaml +16 -11
- package/conventions/coder.bun/coder.bun.green-urn-layer.convention.yaml +16 -4
- package/conventions/coder.bun/coder.bun.green-urn-marker.convention.yaml +16 -9
- package/conventions/coder.bun/coder.bun.green-urn-name-matches.convention.yaml +16 -5
- package/conventions/coder.bun/coder.bun.green-urn-pattern.convention.yaml +16 -4
- package/conventions/coder.bun/coder.bun.green-urn-side.convention.yaml +15 -6
- package/conventions/coder.bun/coder.bun.green-urn-wagon-feature.convention.yaml +15 -6
- package/conventions/coder.bun/coder.bun.layer-naming.convention.yaml +16 -1
- package/conventions/coder.bun/coder.bun.phase-discipline.convention.yaml +111 -0
- package/conventions/coder.bun/coder.bun.responsive-breakpoints-declared.convention.yaml +17 -2
- package/conventions/coder.bun/coder.bun.responsive-no-fixed-width.convention.yaml +17 -1
- package/conventions/coder.bun/coder.bun.responsive-viewport-meta.convention.yaml +16 -1
- package/conventions/coder.bun/coder.bun.runtime-server-is-bun-serve.convention.yaml +16 -13
- package/conventions/coder.bun/coder.bun.runtime-single-lockfile.convention.yaml +16 -6
- package/conventions/coder.bun/coder.bun.runtime-typecheck-enforced.convention.yaml +16 -9
- package/conventions/tester.bun/tester.bun.acceptance-binding-declared.convention.yaml +20 -4
- package/conventions/tester.bun/tester.bun.acceptance-covers-tag-well-formed.convention.yaml +11 -5
- package/conventions/tester.bun/tester.bun.acceptance-resolves-to-declared.convention.yaml +23 -20
- package/conventions/tester.bun/tester.bun.interlocking-production-runner-used.convention.yaml +29 -7
- package/conventions/tester.bun/tester.bun.interlocking-route-coverage.convention.yaml +35 -10
- package/conventions/tester.bun/tester.bun.red-behavioral-assertion.convention.yaml +39 -5
- package/conventions/tester.bun/tester.bun.red-fails-first.convention.yaml +24 -7
- package/conventions/tester.bun/tester.bun.security-auth.convention.yaml +19 -1
- package/conventions/tester.bun/tester.bun.security-input.convention.yaml +19 -1
- package/conventions/tester.bun/tester.bun.smoke-no-collaborator-substitution.convention.yaml +21 -1
- package/conventions/tester.bun/tester.bun.smoke-observable-assertion.convention.yaml +23 -6
- package/conventions/tester.bun/tester.bun.test-phase-declared.convention.yaml +9 -3
- package/conventions/tester.htmx/tester.htmx.e2e-binds-declared-subject.convention.yaml +20 -3
- package/conventions/tester.htmx/tester.htmx.train-e2e-coverage.convention.yaml +24 -3
- package/integrity.json +58 -57
- package/package.json +1 -1
- package/relationships.yaml +71 -0
- package/src/enforce.ts +2 -2
- package/src/profile-registry.ts +4 -2
- package/templates/agents/AGENTS.block.md +2 -0
package/integrity.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.10.
|
|
2
|
+
"version": "0.10.42",
|
|
3
3
|
"files": {
|
|
4
4
|
"HOOK_AUDIT.md": "5329d840db37671b1918f688ead26865473b87db73dbc75f7c8b2a8bbe8d6d43",
|
|
5
5
|
"PLANNER_PORT.md": "fb5935bac8b7ac18994de21e43ace3a5ef8cd55f85b0e3349fca261280054f11",
|
|
6
6
|
"README.md": "edcd36ebed5853c412c89ed998cd198f7a58237a68dcf37c14be5f7f5c0e9ff4",
|
|
7
7
|
"bunfig.toml": "b9fc65eca9014c5179380259d70e76385a6a80788fa9a2df5fb3eaa5554fd2fe",
|
|
8
8
|
"conventions/_profiles/architecture.yaml": "f1808768b720a4e476047e4a0912002ca673946562cea9aeef5d0c214828d93a",
|
|
9
|
-
"conventions/_profiles/coder.yaml": "
|
|
9
|
+
"conventions/_profiles/coder.yaml": "4cf621a1f82e90e38d5c5e848619659ab93ab8d4d9a3798f51180d5297166a30",
|
|
10
10
|
"conventions/_profiles/design.yaml": "25a02a67152d49728ad3517f6510da7285116fa69c56cbda55613a7cfcfd3b89",
|
|
11
11
|
"conventions/_profiles/docs.yaml": "05485c3b32f1757e77c42e331eec1db651cb52ef57fc4e8607bb2f73b056cbb3",
|
|
12
12
|
"conventions/_profiles/htmx.yaml": "38fc8b3e1a53429e16977ed63e83e751b203deffe9b338ea171050fb64641559",
|
|
13
13
|
"conventions/_profiles/interlocking.yaml": "46a2a4fb2eb537941c991ef4178d009a30d14f84279e525ca0d0887d3239047d",
|
|
14
|
-
"conventions/_profiles/metrics.yaml": "
|
|
14
|
+
"conventions/_profiles/metrics.yaml": "82081754271e0cb08a1245ad658578907c8e0e455912aa954502334a82d7b4d3",
|
|
15
15
|
"conventions/_profiles/planner.yaml": "b3938783793c34f832968b7293b7c301f3e1deff5f06536a078168c911d0d089",
|
|
16
16
|
"conventions/_profiles/runtime.yaml": "48fae0d31fb9228b8819243c264721037720acb1763bf27f74325c14ffef46d4",
|
|
17
17
|
"conventions/_profiles/security.yaml": "38eb6b17e35e1439fe4f19c8ccf3ba1b2f18759a984dd1d33171ec3a29128876",
|
|
@@ -35,60 +35,61 @@
|
|
|
35
35
|
"conventions/atdd-bun.topology/atdd-bun.topology.plan-location.convention.yaml": "82149598eb329a0f5db0feb345482a99fef65bef90d3fe34768db66406c30e24",
|
|
36
36
|
"conventions/atdd-bun.topology/atdd-bun.topology.source-location.convention.yaml": "7e7bb788eb1ff9cbe6f67dfddc78a20b3800e733ab1036b70adb67e404b77113",
|
|
37
37
|
"conventions/atdd-bun.topology/atdd-bun.topology.test-location.convention.yaml": "a1f7f772a889607d4b6c0f20e9924b88838199a3e763b6328dbe09b8f29f2e50",
|
|
38
|
-
"conventions/coder.bun/coder.bun.boundaries-http-client.convention.yaml": "
|
|
39
|
-
"conventions/coder.bun/coder.bun.commons-application-no-integration.convention.yaml": "
|
|
40
|
-
"conventions/coder.bun/coder.bun.commons-cross-feature-imports-in.convention.yaml": "
|
|
41
|
-
"conventions/coder.bun/coder.bun.commons-domain-no-framework-import.convention.yaml": "
|
|
42
|
-
"conventions/coder.bun/coder.bun.commons-domain-no-outbound.convention.yaml": "
|
|
38
|
+
"conventions/coder.bun/coder.bun.boundaries-http-client.convention.yaml": "9f340712ee14d6fc197fc0004f9f2b4e990de0d7328c6355c1fd7088fcb37db1",
|
|
39
|
+
"conventions/coder.bun/coder.bun.commons-application-no-integration.convention.yaml": "a6270ecde48291235d18e13342547af6754da494143d8a8910bceddc09781505",
|
|
40
|
+
"conventions/coder.bun/coder.bun.commons-cross-feature-imports-in.convention.yaml": "3902dcb5b45303ae501b2c8629e0a2d7f0a4be20a2ad4e873ab816f640fb62d5",
|
|
41
|
+
"conventions/coder.bun/coder.bun.commons-domain-no-framework-import.convention.yaml": "e313fc5712c32bbeb2bd99e0d6945ec55c8c8228a5f10002216f9fc34c336b7d",
|
|
42
|
+
"conventions/coder.bun/coder.bun.commons-domain-no-outbound.convention.yaml": "0c08753ea1b931c25395711df470bcbab6a2cba4b2983e49c3670bdd35d54c42",
|
|
43
43
|
"conventions/coder.bun/coder.bun.complexity-cyclomatic.convention.yaml": "4184e97a4cb05ed1b66ba0d149cb83939a2c6246b98e1f01b4d38aad20ed30a6",
|
|
44
44
|
"conventions/coder.bun/coder.bun.complexity-length.convention.yaml": "0032cc56814f260a8993bdc8c3f1cd9bb48539a4091ec62dbbab1119f99d9799",
|
|
45
45
|
"conventions/coder.bun/coder.bun.complexity-nesting.convention.yaml": "903d930d0c5eaa98621238f63f132d94d7ffec37550452460b1e06e016adbedd",
|
|
46
|
-
"conventions/coder.bun/coder.bun.composition-consumer.convention.yaml": "
|
|
47
|
-
"conventions/coder.bun/coder.bun.composition-root.convention.yaml": "
|
|
46
|
+
"conventions/coder.bun/coder.bun.composition-consumer.convention.yaml": "da1bff427e85501e8fe45dc44ed00795294b131d92697b57237fdc42d4d31532",
|
|
47
|
+
"conventions/coder.bun/coder.bun.composition-root.convention.yaml": "64f6e77ed476f2e4818aee12e5e308407eb1556adfb71e7b3e10cd058c876c0d",
|
|
48
48
|
"conventions/coder.bun/coder.bun.dead-code-reachability.convention.yaml": "662377f9fc09f57bd4dda380f75e21e6698a7f4f466e5e8ec830f115ec8d6321",
|
|
49
|
-
"conventions/coder.bun/coder.bun.design-connected.convention.yaml": "
|
|
50
|
-
"conventions/coder.bun/coder.bun.design-dependency-flow.convention.yaml": "
|
|
51
|
-
"conventions/coder.bun/coder.bun.design-hierarchy-import.convention.yaml": "
|
|
52
|
-
"conventions/coder.bun/coder.bun.design-orphan-export.convention.yaml": "
|
|
53
|
-
"conventions/coder.bun/coder.bun.design-primitives.convention.yaml": "
|
|
54
|
-
"conventions/coder.bun/coder.bun.design-token-color.convention.yaml": "
|
|
55
|
-
"conventions/coder.bun/coder.bun.design-token-hardcoded.convention.yaml": "
|
|
56
|
-
"conventions/coder.bun/coder.bun.design-tokens-pure.convention.yaml": "
|
|
57
|
-
"conventions/coder.bun/coder.bun.design-wagons-import.convention.yaml": "
|
|
58
|
-
"conventions/coder.bun/coder.bun.dto-mapper.convention.yaml": "
|
|
59
|
-
"conventions/coder.bun/coder.bun.dto-placement.convention.yaml": "
|
|
60
|
-
"conventions/coder.bun/coder.bun.dto-purity.convention.yaml": "
|
|
49
|
+
"conventions/coder.bun/coder.bun.design-connected.convention.yaml": "a4cf76ee21bf7e98c1bb9a539e187538103a7310c72a662a6d80d69e8644c833",
|
|
50
|
+
"conventions/coder.bun/coder.bun.design-dependency-flow.convention.yaml": "8c99a0293f6a3e527c8aa99b2d5634695627c6daf8e37398fa25667a0e47dbff",
|
|
51
|
+
"conventions/coder.bun/coder.bun.design-hierarchy-import.convention.yaml": "59ca34fb9c6ec72b6ad7a099a5a8bceaa79a646226cf05eb0bb5c99854804dd2",
|
|
52
|
+
"conventions/coder.bun/coder.bun.design-orphan-export.convention.yaml": "ca36d04d8cc961e04974f65fd774c2dbfab92fe64846010cdb27fc220fb0d935",
|
|
53
|
+
"conventions/coder.bun/coder.bun.design-primitives.convention.yaml": "e54b431ffa6c9f501b3160d49b660590954f0446c43ade9141ac5ebce2adc095",
|
|
54
|
+
"conventions/coder.bun/coder.bun.design-token-color.convention.yaml": "cd2270f3e94f958f529aa3e56b79037a87b8eddfb22d9a3244e12fcd32dcda9e",
|
|
55
|
+
"conventions/coder.bun/coder.bun.design-token-hardcoded.convention.yaml": "908173a1f715d7f4826855df1b668f9db363fc6e89900a9a764911f55e73c3f8",
|
|
56
|
+
"conventions/coder.bun/coder.bun.design-tokens-pure.convention.yaml": "8f7e768ac3041dc3d3285a03fdcabd0d376695bcfab0233166e107fb2f1419c8",
|
|
57
|
+
"conventions/coder.bun/coder.bun.design-wagons-import.convention.yaml": "76595759544ce81bf9b0e0ee1d59f7a2f5cc446105697b23a5c545a8939bcb28",
|
|
58
|
+
"conventions/coder.bun/coder.bun.dto-mapper.convention.yaml": "c524b5f37db6ae4f7558fc3ec672aa1c5b764738a0f25a20062d736fed6bbcb3",
|
|
59
|
+
"conventions/coder.bun/coder.bun.dto-placement.convention.yaml": "9525255f9e037ca0d939de20e70235fe348dcebf2136536055bc21433d7e9fb5",
|
|
60
|
+
"conventions/coder.bun/coder.bun.dto-purity.convention.yaml": "4743199fb242a25f896425916e3873c2e8cf62f4285437f62b0f8f8139d6a58d",
|
|
61
61
|
"conventions/coder.bun/coder.bun.duplication-intra-layer.convention.yaml": "37c0b9da0d3b5a7c7229e0697ea283249bd42cea056b0f1d6345a408ab50a7ea",
|
|
62
62
|
"conventions/coder.bun/coder.bun.error-response-bare-string.convention.yaml": "c2c0f859f6dd12702edf225c4148849e72b6c25e6d7cd28edd5d644ba277a23c",
|
|
63
63
|
"conventions/coder.bun/coder.bun.error-response-code-format.convention.yaml": "3048fed00b92c2559f7c52f73cfcce07b583eb47b12d04f0851e237ae3646567",
|
|
64
|
-
"conventions/coder.bun/coder.bun.green-header-order.convention.yaml": "
|
|
65
|
-
"conventions/coder.bun/coder.bun.green-header-purpose.convention.yaml": "
|
|
66
|
-
"conventions/coder.bun/coder.bun.green-header-runtime.convention.yaml": "
|
|
67
|
-
"conventions/coder.bun/coder.bun.green-header-tested-by.convention.yaml": "
|
|
68
|
-
"conventions/coder.bun/coder.bun.green-urn-layer.convention.yaml": "
|
|
69
|
-
"conventions/coder.bun/coder.bun.green-urn-marker.convention.yaml": "
|
|
70
|
-
"conventions/coder.bun/coder.bun.green-urn-name-matches.convention.yaml": "
|
|
71
|
-
"conventions/coder.bun/coder.bun.green-urn-pattern.convention.yaml": "
|
|
72
|
-
"conventions/coder.bun/coder.bun.green-urn-side.convention.yaml": "
|
|
73
|
-
"conventions/coder.bun/coder.bun.green-urn-wagon-feature.convention.yaml": "
|
|
64
|
+
"conventions/coder.bun/coder.bun.green-header-order.convention.yaml": "2a42d67bedeec1de76fa1de844351983c5ba4bc5b61d5a5047298f6804664f67",
|
|
65
|
+
"conventions/coder.bun/coder.bun.green-header-purpose.convention.yaml": "84776838beb6013fcc74e4fc81129e321a80627345a92d3444bb6886bda14397",
|
|
66
|
+
"conventions/coder.bun/coder.bun.green-header-runtime.convention.yaml": "da6be7412676fe344e5fe675caff660187c263e398750dc743546f6255995cc6",
|
|
67
|
+
"conventions/coder.bun/coder.bun.green-header-tested-by.convention.yaml": "abb98d89482185bad4b77609776c3fb4da6a46c14069719256bcfc9f11703647",
|
|
68
|
+
"conventions/coder.bun/coder.bun.green-urn-layer.convention.yaml": "553594e0c0ffef3ae21ede7575868ecc78ea0ef0d7e06dafcc9a55b017682695",
|
|
69
|
+
"conventions/coder.bun/coder.bun.green-urn-marker.convention.yaml": "38547328c129f1178762bbe37ab049d1fbd7ab9eb847a617880447f5c1b5b8a9",
|
|
70
|
+
"conventions/coder.bun/coder.bun.green-urn-name-matches.convention.yaml": "5aebce9a7c0d83b4b1555dc5e245d84e7a576b05f6c52662b24825b65167250c",
|
|
71
|
+
"conventions/coder.bun/coder.bun.green-urn-pattern.convention.yaml": "7f8ff22088b1f460ce31ac8c661b1ade1fd597dfef0b12e791641d856dbd450c",
|
|
72
|
+
"conventions/coder.bun/coder.bun.green-urn-side.convention.yaml": "f838211202ce0950e920dea137fc3c66cf5a789175356b1e6dc30facf1c6e5ad",
|
|
73
|
+
"conventions/coder.bun/coder.bun.green-urn-wagon-feature.convention.yaml": "449dbb1fc344bec932a2dfd121cead8ede6005546a3689505112522b104da0d8",
|
|
74
74
|
"conventions/coder.bun/coder.bun.interlocking-bilateral-binding.convention.yaml": "6d36fcd234f9c0121443cd0123c500139155f1297663a0c31c44afcaa7ab7053",
|
|
75
75
|
"conventions/coder.bun/coder.bun.interlocking-delegates-to-trainrunner.convention.yaml": "43983a9d626d8c2285e09220383d1d9435713fb45526e0e629bb92d6792269e9",
|
|
76
76
|
"conventions/coder.bun/coder.bun.interlocking-does-not-carry-cargo.convention.yaml": "c8f906c4aa6709aab7dc91e719331fd1865c229708acd9838373712a777138b1",
|
|
77
77
|
"conventions/coder.bun/coder.bun.interlocking-resolution-model-exists.convention.yaml": "dccd0fa99686811d2befc32861f995635b3e194004865710d5b9064a3feea8a8",
|
|
78
78
|
"conventions/coder.bun/coder.bun.interlocking-runner-exists.convention.yaml": "f7fadc580d2896f7d8341f555e4447480809329f3901209d30c2e54181032f15",
|
|
79
79
|
"conventions/coder.bun/coder.bun.journey-runner-boundary.convention.yaml": "51df6caa810d887a84fc8196bc103465685400f12ba8a0504efef9b88c10fe33",
|
|
80
|
-
"conventions/coder.bun/coder.bun.layer-naming.convention.yaml": "
|
|
80
|
+
"conventions/coder.bun/coder.bun.layer-naming.convention.yaml": "65d4b5887e6cd6340157d13b911e94f1471a6072bb728cc06d7ad58e3da77d0d",
|
|
81
81
|
"conventions/coder.bun/coder.bun.logging-console.convention.yaml": "e85fc1038ac78799b36d1f4156b6547fb00441f1e3ac3ec93e59e7e895e37aef",
|
|
82
82
|
"conventions/coder.bun/coder.bun.logging-structured.convention.yaml": "a7c8bd90762bf1516d2af63d4fe731720bec9f58431009f69af1bfebc0398759",
|
|
83
|
+
"conventions/coder.bun/coder.bun.phase-discipline.convention.yaml": "1a4142817c17447313014cb4b78d728710160cb0c66d719fe196f25c58a505e1",
|
|
83
84
|
"conventions/coder.bun/coder.bun.quality-comments.convention.yaml": "fdf6be3a63f1b679fae1248334e1ee7ed3b09ffd7f5b8b25007fd31de3f5ad04",
|
|
84
85
|
"conventions/coder.bun/coder.bun.quality-mi.convention.yaml": "d4d29a1680693e5ac472badc529ce6e04a7f7cba30e2b3e5dd36c7a36c2465c5",
|
|
85
|
-
"conventions/coder.bun/coder.bun.responsive-breakpoints-declared.convention.yaml": "
|
|
86
|
-
"conventions/coder.bun/coder.bun.responsive-no-fixed-width.convention.yaml": "
|
|
87
|
-
"conventions/coder.bun/coder.bun.responsive-viewport-meta.convention.yaml": "
|
|
86
|
+
"conventions/coder.bun/coder.bun.responsive-breakpoints-declared.convention.yaml": "fa1a94f3f67111557ed88c25ee6a5db485b0c083c9b95a1d2480248b0a0e610d",
|
|
87
|
+
"conventions/coder.bun/coder.bun.responsive-no-fixed-width.convention.yaml": "96b63457710089fe4210f5ee736d15e002182b1babfe6f4fcdc6f3f16ec1929a",
|
|
88
|
+
"conventions/coder.bun/coder.bun.responsive-viewport-meta.convention.yaml": "71f76d76734014c2daef478080838f20f4cea084561d2455d17ce9b891a0f922",
|
|
88
89
|
"conventions/coder.bun/coder.bun.runtime-executes-the-declaration.convention.yaml": "ed1643e92878a746298a20bfbc301c1f469d123d71ca272de1384d2f7cc03ba1",
|
|
89
|
-
"conventions/coder.bun/coder.bun.runtime-server-is-bun-serve.convention.yaml": "
|
|
90
|
-
"conventions/coder.bun/coder.bun.runtime-single-lockfile.convention.yaml": "
|
|
91
|
-
"conventions/coder.bun/coder.bun.runtime-typecheck-enforced.convention.yaml": "
|
|
90
|
+
"conventions/coder.bun/coder.bun.runtime-server-is-bun-serve.convention.yaml": "90df9fab879428e0dd50f8b7d97c8d83f0f35fabf03b807921af5a7d4dada8c2",
|
|
91
|
+
"conventions/coder.bun/coder.bun.runtime-single-lockfile.convention.yaml": "94c4ebfa813ad0cdaea2baf0b565bffc453b197ed69bb4954d69d77631444027",
|
|
92
|
+
"conventions/coder.bun/coder.bun.runtime-typecheck-enforced.convention.yaml": "7b55574ba86b0ee85da85babf6cd671f57b2aa15faabb4484d518b02e0a7b79e",
|
|
92
93
|
"conventions/coder.bun/coder.bun.security-hardcoded-secret.convention.yaml": "1a57d91aa91c52cc1efdf4168a2f3f147e7f25e979c47161d9757e1839ebbddd",
|
|
93
94
|
"conventions/coder.bun/coder.bun.security-missing-auth.convention.yaml": "2b937475e7a1f3f2718be6a3f0d94fa261ca65e72bbf8e3f2ca39ba143b90544",
|
|
94
95
|
"conventions/coder.bun/coder.bun.security-sql-injection.convention.yaml": "b4cbc3a446bbbf874762fd13c873305eaf7417c45a6206133163509b97267faa",
|
|
@@ -121,21 +122,21 @@
|
|
|
121
122
|
"conventions/planner.telemetry/planner.telemetry.logical-ownership.convention.yaml": "6dd666a22fd7fd0cb6e5fe5505665c8889a504ee929fdebf3aee019df4aac2b4",
|
|
122
123
|
"conventions/planner.telemetry/planner.telemetry.metric-cardinality.convention.yaml": "e61831f207ad4f09be983b300cbedc40f6ad08a4b2483612fc195e2343be93f6",
|
|
123
124
|
"conventions/planner.telemetry/planner.telemetry.tracking-plan-schema.convention.yaml": "5453cdf438dc5bdc72bbe5828b089e4090b865112f6a1550bb70e2c7c72a0cdf",
|
|
124
|
-
"conventions/tester.bun/tester.bun.acceptance-binding-declared.convention.yaml": "
|
|
125
|
-
"conventions/tester.bun/tester.bun.acceptance-covers-tag-well-formed.convention.yaml": "
|
|
126
|
-
"conventions/tester.bun/tester.bun.acceptance-resolves-to-declared.convention.yaml": "
|
|
127
|
-
"conventions/tester.bun/tester.bun.interlocking-production-runner-used.convention.yaml": "
|
|
128
|
-
"conventions/tester.bun/tester.bun.interlocking-route-coverage.convention.yaml": "
|
|
125
|
+
"conventions/tester.bun/tester.bun.acceptance-binding-declared.convention.yaml": "4bc5489f8cca53eb9145decb07e3a74565c3856274fce1495338a1f3cd89d0c3",
|
|
126
|
+
"conventions/tester.bun/tester.bun.acceptance-covers-tag-well-formed.convention.yaml": "a7095e17f003ab3e08202f49408f4de7c834cc917b0946d6bc68036afdcdc265",
|
|
127
|
+
"conventions/tester.bun/tester.bun.acceptance-resolves-to-declared.convention.yaml": "44b77a6ae4b4a92d5b51b5bb3444a4db280f74dc1ed25d158e20e79cd16a2bb3",
|
|
128
|
+
"conventions/tester.bun/tester.bun.interlocking-production-runner-used.convention.yaml": "c2fee925c16946314bdebf30fe2130cfc76f62bb64d714bdc37b7311e932f788",
|
|
129
|
+
"conventions/tester.bun/tester.bun.interlocking-route-coverage.convention.yaml": "e75b1285aa650cf2a5d94d9c98b6351df4a24e3942dcf01e2faa9ed6676f1ca6",
|
|
129
130
|
"conventions/tester.bun/tester.bun.interlocking-smoke-coverage-for-station-master.convention.yaml": "ae2e53865fe3f53982d5d1d9fca73dd116ee932e00c4c4f1184235415b1dd794",
|
|
130
131
|
"conventions/tester.bun/tester.bun.interlocking-trace-binds-declared-route.convention.yaml": "8aea28e250368ed800a97d5e7e2f293c2935b198eb87be1422eef029223d71a4",
|
|
131
132
|
"conventions/tester.bun/tester.bun.interlocking-train-sequence-is-exercised.convention.yaml": "3172abf9256efd8f831ed5f8f11872e17cf847114769bba0c42270507254e241",
|
|
132
|
-
"conventions/tester.bun/tester.bun.red-behavioral-assertion.convention.yaml": "
|
|
133
|
-
"conventions/tester.bun/tester.bun.red-fails-first.convention.yaml": "
|
|
133
|
+
"conventions/tester.bun/tester.bun.red-behavioral-assertion.convention.yaml": "b604c0836eeff46df9a9e53195696c17f7997c6b2732c6c759b5207162a33d97",
|
|
134
|
+
"conventions/tester.bun/tester.bun.red-fails-first.convention.yaml": "232c42033cea8f935a84cd86769cfd273bf6e4772e2d2ff3ed66117a3c8e689d",
|
|
134
135
|
"conventions/tester.bun/tester.bun.routing-runtime-family.convention.yaml": "6deeb37235ebe500c491aea9e06695c08df718a371114b1a6394bd1988fb66b1",
|
|
135
|
-
"conventions/tester.bun/tester.bun.security-auth.convention.yaml": "
|
|
136
|
-
"conventions/tester.bun/tester.bun.security-input.convention.yaml": "
|
|
137
|
-
"conventions/tester.bun/tester.bun.smoke-no-collaborator-substitution.convention.yaml": "
|
|
138
|
-
"conventions/tester.bun/tester.bun.smoke-observable-assertion.convention.yaml": "
|
|
136
|
+
"conventions/tester.bun/tester.bun.security-auth.convention.yaml": "b8224269911ae477756e6c160e1ed72d1438574277109f77704326251e720449",
|
|
137
|
+
"conventions/tester.bun/tester.bun.security-input.convention.yaml": "6f089d2641f264e59ab38973f848644bb48d6e254613dba62c2616f1edb82a68",
|
|
138
|
+
"conventions/tester.bun/tester.bun.smoke-no-collaborator-substitution.convention.yaml": "6ae2bdfdf3c842f855c02b9c776feaa0ac11efa1365a0b8f0b9c8343afd11102",
|
|
139
|
+
"conventions/tester.bun/tester.bun.smoke-observable-assertion.convention.yaml": "ba7c3981fd9b8860abb88eaeefde0a87bc696309a2d31e2bc9c637832d0fe1cb",
|
|
139
140
|
"conventions/tester.bun/tester.bun.telemetry-captured-sink.convention.yaml": "7f1156dc041fc44d4becd18f379cd1fb68b99cd1e888b9a8f6dee4201ad5337b",
|
|
140
141
|
"conventions/tester.bun/tester.bun.telemetry-emit.convention.yaml": "440ba54de6c23e25786d363d80a9c337f29aa2eaf59bc8b5c24d391cc1c3d3b7",
|
|
141
142
|
"conventions/tester.bun/tester.bun.telemetry-identity-assertion.convention.yaml": "25f7cc3dcb21e70a183638be9416802ef081323482a98eba604223fabf389b55",
|
|
@@ -146,10 +147,10 @@
|
|
|
146
147
|
"conventions/tester.bun/tester.bun.test-imports-bun-test.convention.yaml": "6eef1c745315a69357d23bf07d318e504d425f76fcfdc120166b8ef2d4c820d6",
|
|
147
148
|
"conventions/tester.bun/tester.bun.test-isolation-no-live-state.convention.yaml": "3488af16431ea461e9128d15dbb0ad86324f4446bf36d5a662fab73687e8860e",
|
|
148
149
|
"conventions/tester.bun/tester.bun.test-no-self-skip.convention.yaml": "23fca575611f9c0740bcf64849a3c1600ef4cc1cc64df3c106d328b67283d8a3",
|
|
149
|
-
"conventions/tester.bun/tester.bun.test-phase-declared.convention.yaml": "
|
|
150
|
+
"conventions/tester.bun/tester.bun.test-phase-declared.convention.yaml": "f6daa660417bdc07fe87765ac17bc5606cd2d8a5c8dbe456f9e4327ddd77fe73",
|
|
150
151
|
"conventions/tester.htmx/tester.htmx.a11y-harness.convention.yaml": "e74328600b89761a8740ace465e3a5d5e38f967dcbeda7fe7023af53dd0089d4",
|
|
151
152
|
"conventions/tester.htmx/tester.htmx.covered-train-is-routed.convention.yaml": "e70d05055733644addd63db11c6cb39cf38a34adc4cc39f7c7ee9964eb2391a4",
|
|
152
|
-
"conventions/tester.htmx/tester.htmx.e2e-binds-declared-subject.convention.yaml": "
|
|
153
|
+
"conventions/tester.htmx/tester.htmx.e2e-binds-declared-subject.convention.yaml": "fa2b9079bc15ffab47d57c80cb804fb4c1b19fc377434226ef9e46e586890cbc",
|
|
153
154
|
"conventions/tester.htmx/tester.htmx.e2e-spec-naming.convention.yaml": "4bd46400706bbe9b453784ca2811ef04ffb25871a762791e653da3d9a0fa07f2",
|
|
154
155
|
"conventions/tester.htmx/tester.htmx.exposed-journey-e2e-coverage.convention.yaml": "eca949b38da805c9654d483fce4e06fe19292bd72b5b286af982f13c5782e1d4",
|
|
155
156
|
"conventions/tester.htmx/tester.htmx.fragment-asserts-returned-markup.convention.yaml": "b8de8e893b582d8ec4b7c24acfa16da0eccd14e6e58e92baf9e9c10c9749ea0c",
|
|
@@ -161,7 +162,7 @@
|
|
|
161
162
|
"conventions/tester.htmx/tester.htmx.responsive-harness.convention.yaml": "cec312935ab592c2c7a5c6a94623a02df771a9e2ca2035b721ef1006c4800fdf",
|
|
162
163
|
"conventions/tester.htmx/tester.htmx.responsive-journey-coverage.convention.yaml": "2004d0a8975178475d792702e164f335b07407f36e83a09ceadef3fe49037111",
|
|
163
164
|
"conventions/tester.htmx/tester.htmx.swap-oob-asserts-destination-id.convention.yaml": "65d8ffa62732ec0578d4999234b89f692e9c5e234ecd30e620bee7c44f053caa",
|
|
164
|
-
"conventions/tester.htmx/tester.htmx.train-e2e-coverage.convention.yaml": "
|
|
165
|
+
"conventions/tester.htmx/tester.htmx.train-e2e-coverage.convention.yaml": "8d36a1e06985262a5d431678f9baef67b5625825f4cc843ac3d3cbff13022373",
|
|
165
166
|
"conventions/tester.htmx/tester.htmx.verb-endpoint-coverage.convention.yaml": "41b6ff2a519040a5eb9834bcdee88ad1d470a69430bc9a39be667dc321dcd14c",
|
|
166
167
|
"conventions/tester.htmx/tester.htmx.visual-harness.convention.yaml": "a2419b784202fc807558d0182e26d3d8c777aa9ec4ef4c252467a979dd903d50",
|
|
167
168
|
"conventions/traceability/traceability.plan.executable-acceptance-has-test.convention.yaml": "52eca528c9dbdb82f3c1a13e4e1a3d5d21a9dd511b66e6f8c4135298412427f5",
|
|
@@ -1190,12 +1191,12 @@
|
|
|
1190
1191
|
"planner-schemas/train.schema.json": "d6fbac9067c1bffeb84eb79a71228441055af6e6e7ba141dd4e0bcb079345ec0",
|
|
1191
1192
|
"planner-schemas/wagon.schema.json": "57b98f1ade998d745538eb3d72fb3014a50042006870f90bce47028eea336eb4",
|
|
1192
1193
|
"planner-schemas/wmbt.schema.json": "7a3a5693bfcf01340667c2be4a3c48e74f34b1af7e8dc13372c0de06b7f4fe12",
|
|
1193
|
-
"relationships.yaml": "
|
|
1194
|
+
"relationships.yaml": "15299f77e82c409ee6b8a7ffd37e8e1ab99fb31446f1ce303b07e968a6dbf830",
|
|
1194
1195
|
"src/agent.ts": "39ca8b3183063c60e00eb96e5629d0397aeb83cc82d4c4bc32c01715c906649b",
|
|
1195
1196
|
"src/ci.ts": "67e54d2cbfc44a9e42837d5e750af526d6255c539d3c452a4d5fca3226c0d9ac",
|
|
1196
1197
|
"src/cli.ts": "cbc50f1e7fc7d0935f78230b7da6e232ed7ee6f04828e015c599fb6f6edcbfa2",
|
|
1197
1198
|
"src/docs-capability.ts": "bdeeb414649049b1cd4fa8008cada3a576318be51c43bec91bfa46a8e250c270",
|
|
1198
|
-
"src/enforce.ts": "
|
|
1199
|
+
"src/enforce.ts": "2f624f2aa272466f44c552d77ce3976cb2a518491d3ec3c47815583fdd0f7ad8",
|
|
1199
1200
|
"src/hooks.ts": "0b4ca8c857e637bbd144e737e78eda924e3cba7b038c0abe5e6916d200d73068",
|
|
1200
1201
|
"src/index.ts": "4081f8b08d1d3ee9e15a9964143e53d9cfb94a5616ab3e58a180d24cc16dc381",
|
|
1201
1202
|
"src/integrity.ts": "556976a42bae298df14b73675102d83b6bf4df0674d8e7211aad5315548f005f",
|
|
@@ -1203,13 +1204,13 @@
|
|
|
1203
1204
|
"src/planner-kernel.ts": "5d3f5305fb59becb2cc97d8a03aca6b104f385805d91cc0410856e289dd6fbb1",
|
|
1204
1205
|
"src/planner-schema-validator.ts": "ce529c0936171075e93c7539b3655fe895a98dd2973ebda5775958e6ebc316d9",
|
|
1205
1206
|
"src/planner-validators.ts": "99adeb65f579af923c11f21a8f55cfb9993b007fd8df59c5f764696b55379cfc",
|
|
1206
|
-
"src/profile-registry.ts": "
|
|
1207
|
+
"src/profile-registry.ts": "5a7761d324181ae27deb51f198d63648a4c99e858b4de98b54d35e6cf8a39fe7",
|
|
1207
1208
|
"src/register.ts": "6a2f1c6b8df0dc9c8f45df8ec9fac2be29044e048b08c8ffe423410e94dadedd",
|
|
1208
1209
|
"src/release.ts": "7b0fe444ee81f476f53b9c21b6c347ef588ee616c60211419cf984132be768ba",
|
|
1209
1210
|
"src/setup.ts": "38233265afedc63499bbef3b5403889651add335a70efd3813254ba53f4fc4fe",
|
|
1210
1211
|
"src/telemetry-plan.ts": "cdb1e8bfff414f3ea81977388973da2cf6d89567d9e060dc9d5989a33600f153",
|
|
1211
1212
|
"src/topology.ts": "9779ee48e1c453abb76363163d4ab363463fa14e359571139f6d1f1fcc51ae2c",
|
|
1212
|
-
"templates/agents/AGENTS.block.md": "
|
|
1213
|
+
"templates/agents/AGENTS.block.md": "f3092568ccabda3e94bf0b70e10d05c5963f70de75208b057ea548e3fed2ad8c",
|
|
1213
1214
|
"templates/agents/atdd-bun.integrity.test.ts": "dec6f6e5f65a08d9512fc703b367c163f8c9da1f6aa7fd466835c1ec30348a41",
|
|
1214
1215
|
"templates/docs/site.css": "482b3427e3a3cb02a85dc85cfbeac80592dfd53abf42fc92d6ea7071f22afc95",
|
|
1215
1216
|
"templates/github/atdd-bun-release.yml": "d9547e9e6ef3ae010d53d55314f6a54567f88bd900f7e50d994cd308601d2684",
|
package/package.json
CHANGED
package/relationships.yaml
CHANGED
|
@@ -68,6 +68,7 @@ nodes:
|
|
|
68
68
|
- coder.bun.layer-naming
|
|
69
69
|
- coder.bun.logging-console
|
|
70
70
|
- coder.bun.logging-structured
|
|
71
|
+
- coder.bun.phase-discipline
|
|
71
72
|
- coder.bun.quality-comments
|
|
72
73
|
- coder.bun.quality-mi
|
|
73
74
|
- coder.bun.responsive-breakpoints-declared
|
|
@@ -5177,6 +5178,76 @@ edges:
|
|
|
5177
5178
|
target_ref: tester.bun.telemetry-emit
|
|
5178
5179
|
type: requires
|
|
5179
5180
|
origin: "@afokapu/atdd-bun"
|
|
5181
|
+
- confidence: 1
|
|
5182
|
+
constraint: mandatory
|
|
5183
|
+
control: internal
|
|
5184
|
+
foundation: start_to_start
|
|
5185
|
+
reason: phase discipline directs the response to each refactor sensor without weakening its enforcement
|
|
5186
|
+
source_ref: coder.bun.phase-discipline
|
|
5187
|
+
strength: important
|
|
5188
|
+
target_ref: coder.bun.complexity-cyclomatic
|
|
5189
|
+
type: runs_alongside
|
|
5190
|
+
origin: "@afokapu/atdd-bun"
|
|
5191
|
+
- confidence: 1
|
|
5192
|
+
constraint: mandatory
|
|
5193
|
+
control: internal
|
|
5194
|
+
foundation: start_to_start
|
|
5195
|
+
reason: phase discipline directs the response to each refactor sensor without weakening its enforcement
|
|
5196
|
+
source_ref: coder.bun.phase-discipline
|
|
5197
|
+
strength: important
|
|
5198
|
+
target_ref: coder.bun.complexity-length
|
|
5199
|
+
type: runs_alongside
|
|
5200
|
+
origin: "@afokapu/atdd-bun"
|
|
5201
|
+
- confidence: 1
|
|
5202
|
+
constraint: mandatory
|
|
5203
|
+
control: internal
|
|
5204
|
+
foundation: start_to_start
|
|
5205
|
+
reason: phase discipline directs the response to each refactor sensor without weakening its enforcement
|
|
5206
|
+
source_ref: coder.bun.phase-discipline
|
|
5207
|
+
strength: important
|
|
5208
|
+
target_ref: coder.bun.complexity-nesting
|
|
5209
|
+
type: runs_alongside
|
|
5210
|
+
origin: "@afokapu/atdd-bun"
|
|
5211
|
+
- confidence: 1
|
|
5212
|
+
constraint: mandatory
|
|
5213
|
+
control: internal
|
|
5214
|
+
foundation: start_to_start
|
|
5215
|
+
reason: phase discipline directs the response to each refactor sensor without weakening its enforcement
|
|
5216
|
+
source_ref: coder.bun.phase-discipline
|
|
5217
|
+
strength: important
|
|
5218
|
+
target_ref: coder.bun.dead-code-reachability
|
|
5219
|
+
type: runs_alongside
|
|
5220
|
+
origin: "@afokapu/atdd-bun"
|
|
5221
|
+
- confidence: 1
|
|
5222
|
+
constraint: mandatory
|
|
5223
|
+
control: internal
|
|
5224
|
+
foundation: start_to_start
|
|
5225
|
+
reason: phase discipline directs the response to each refactor sensor without weakening its enforcement
|
|
5226
|
+
source_ref: coder.bun.phase-discipline
|
|
5227
|
+
strength: important
|
|
5228
|
+
target_ref: coder.bun.duplication-intra-layer
|
|
5229
|
+
type: runs_alongside
|
|
5230
|
+
origin: "@afokapu/atdd-bun"
|
|
5231
|
+
- confidence: 1
|
|
5232
|
+
constraint: mandatory
|
|
5233
|
+
control: internal
|
|
5234
|
+
foundation: start_to_start
|
|
5235
|
+
reason: phase discipline directs the response to each refactor sensor without weakening its enforcement
|
|
5236
|
+
source_ref: coder.bun.phase-discipline
|
|
5237
|
+
strength: important
|
|
5238
|
+
target_ref: coder.bun.quality-comments
|
|
5239
|
+
type: runs_alongside
|
|
5240
|
+
origin: "@afokapu/atdd-bun"
|
|
5241
|
+
- confidence: 1
|
|
5242
|
+
constraint: mandatory
|
|
5243
|
+
control: internal
|
|
5244
|
+
foundation: start_to_start
|
|
5245
|
+
reason: phase discipline directs the response to each refactor sensor without weakening its enforcement
|
|
5246
|
+
source_ref: coder.bun.phase-discipline
|
|
5247
|
+
strength: important
|
|
5248
|
+
target_ref: coder.bun.quality-mi
|
|
5249
|
+
type: runs_alongside
|
|
5250
|
+
origin: "@afokapu/atdd-bun"
|
|
5180
5251
|
- confidence: 1
|
|
5181
5252
|
constraint: mandatory
|
|
5182
5253
|
control: internal
|
package/src/enforce.ts
CHANGED
|
@@ -42,9 +42,9 @@ export const profileImplementations: Record<ConcreteProfile, string[]> = {
|
|
|
42
42
|
workflow: [],
|
|
43
43
|
};
|
|
44
44
|
|
|
45
|
-
/**
|
|
45
|
+
/** Additional policy conventions a profile loads, whether local or contributed by an installed companion package. */
|
|
46
46
|
export const profileConventions: Record<ConcreteProfile, Array<{ rule_id: string; path: string }>> = {
|
|
47
|
-
traceability: [], topology: [], docs: [], planner: [], telemetry: [], coder: [], tester: [], security: [],
|
|
47
|
+
traceability: [], topology: [], docs: [], planner: [], telemetry: [], coder: [{ rule_id: ["coder.bun", "phase-discipline"].join("."), path: "conventions/coder.bun/coder.bun.phase-discipline.convention.yaml" }], tester: [], security: [],
|
|
48
48
|
architecture: [], metrics: [], runtime: [], interlocking: [], htmx: [], design: [],
|
|
49
49
|
workflow: [{ rule_id: "atdd-workflow.workflow.lifecycle", path: "../atdd-workflow/conventions/atdd-workflow.workflow/atdd-workflow.workflow.lifecycle.convention.yaml" }],
|
|
50
50
|
};
|
package/src/profile-registry.ts
CHANGED
|
@@ -54,9 +54,11 @@ export async function renderProfileRegistries(root = resolve(import.meta.dir, ".
|
|
|
54
54
|
const missing = ruleIds.filter(id => !conventions.has(id));
|
|
55
55
|
if (missing.length) throw new Error(`${profile} declares rule IDs without exactly one convention: ${missing.join(", ")}`);
|
|
56
56
|
const supplementary = profileConventions[profile];
|
|
57
|
-
const duplicate = supplementary.find(convention =>
|
|
57
|
+
const duplicate = supplementary.find(convention => ruleIds.includes(convention.rule_id));
|
|
58
58
|
if (duplicate) throw new Error(`${profile} duplicates convention ${duplicate.rule_id}`);
|
|
59
|
-
const
|
|
59
|
+
const mismatchedLocal = supplementary.find(convention => conventions.has(convention.rule_id) && conventions.get(convention.rule_id)!.path !== convention.path);
|
|
60
|
+
if (mismatchedLocal) throw new Error(`${profile} declares local convention ${mismatchedLocal.rule_id} at ${mismatchedLocal.path}, but it lives at ${conventions.get(mismatchedLocal.rule_id)!.path}`);
|
|
61
|
+
const selectedConventions = sorted([...ruleIds.map(id => conventions.get(id)!), ...supplementary], (left, right) => left.rule_id.localeCompare(right.rule_id));
|
|
60
62
|
const rules = new Set(selectedConventions.map(convention => convention.rule_id));
|
|
61
63
|
const relationships = sorted(graph.edges.filter(edge => rules.has(edge.source_ref) || rules.has(edge.target_ref)), (left, right) => relationshipKey(left).localeCompare(relationshipKey(right)));
|
|
62
64
|
rendered.set(`${PROFILE_REGISTRY_DIR}/${profile}.yaml`, render(profile, implementations, selectedConventions, relationships));
|
|
@@ -9,5 +9,7 @@ For governed work, first use ATDD Workflow to validate the available Desk and re
|
|
|
9
9
|
|
|
10
10
|
The operator—or an assigned coordinator with delegated authority—selects and authorizes the applicable ATDD Bun profile. Until then, do not inspect, research, plan, or change the repository. Do not change profile configuration without that authorization.
|
|
11
11
|
|
|
12
|
+
When the authorized work includes the `coder` profile, read `node_modules/@afokapu/atdd-bun/conventions/coder.bun/coder.bun.phase-discipline.convention.yaml` before reacting to coder findings (`conventions/coder.bun/coder.bun.phase-discipline.convention.yaml` when developing this package itself). The policy separates behavioral GREEN from REFACTOR; it does not suppress strict findings or change profile activation.
|
|
13
|
+
|
|
12
14
|
A governed agent needs an assigned seat and role unless the operator explicitly requests general discussion. A coordinator assigns, coordinates, reviews, and checkpoints; a driver performs only assigned ready work, proves it, and submits review. Do not mutate coordination or repository state outside explicitly authorized scope. Never modify either toolkit or generated files.
|
|
13
15
|
<!-- atdd-bun:end -->
|