@bongos/core 1.19.315 → 1.19.317
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/.bongos-core.json +104 -29
- package/.claude/skills/merge-mode/SKILL.md +16 -0
- package/.claude/skills/planning-session/SKILL.md +10 -0
- package/modules/lifecycle/db-analytics.js +719 -0
- package/modules/lifecycle/db-claim-reads.js +165 -0
- package/modules/lifecycle/db-claims.js +934 -0
- package/modules/lifecycle/db-deps-criteria.js +441 -0
- package/modules/lifecycle/db-goals.js +763 -0
- package/modules/lifecycle/db-grade.js +233 -0
- package/modules/lifecycle/db-overrides.js +181 -0
- package/modules/lifecycle/db-rank-authz.js +446 -0
- package/modules/lifecycle/db-shared.js +115 -0
- package/modules/lifecycle/db-ship.js +994 -0
- package/modules/lifecycle/db-tasks.js +810 -0
- package/modules/lifecycle/db-versions.js +118 -0
- package/modules/lifecycle/db.js +167 -5564
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/scripts/gds/coreB-carve-proof.sh +18 -9
- package/scripts/gds/fitness.js +35 -27
- package/scripts/gds/identity-strip.js +75 -0
- package/scripts/gds/preflight.js +25 -2
- package/scripts/gds/provision.js +7 -3
- package/scripts/gds/skill-preflight.js +336 -0
- package/src/module-api.js +5 -1
- package/tests/auto_satisfy_criteria.mjs +3 -2
- package/tests/dependencies_migration.mjs +3 -2
- package/tests/fitness.mjs +43 -0
- package/tests/goal_abuse_matrix.mjs +3 -2
- package/tests/goal_advisory.mjs +3 -2
- package/tests/government_claim_eligibility.mjs +3 -1
- package/tests/government_rank_sync.mjs +9 -2
- package/tests/helpers.mjs +19 -0
- package/tests/migration_allocation.mjs +3 -1
- package/tests/publish_reconciler.mjs +3 -1
- package/tests/rank_gate.mjs +3 -1
- package/tests/reward_gate.mjs +3 -1
- package/tests/skill_preflight.mjs +251 -0
package/.bongos-core.json
CHANGED
|
@@ -2,22 +2,22 @@
|
|
|
2
2
|
"artifact": "bongos-core",
|
|
3
3
|
"manifest_schema": 1,
|
|
4
4
|
"generator": "scripts/gds/package-core.js",
|
|
5
|
-
"core_version": "1.19.
|
|
6
|
-
"core_contract": "1.19.
|
|
7
|
-
"source_commit": "
|
|
5
|
+
"core_version": "1.19.317",
|
|
6
|
+
"core_contract": "1.19.317",
|
|
7
|
+
"source_commit": "47d557d1d8a73aac8e99002c7a282f7bab39a700",
|
|
8
8
|
"source_ref": "HEAD",
|
|
9
|
-
"built_at": "2026-08-
|
|
9
|
+
"built_at": "2026-08-23T22:06:51.573Z",
|
|
10
10
|
"redaction": {
|
|
11
11
|
"model": "docs-redacted+functional-verbatim",
|
|
12
12
|
"docs_redacted": 323,
|
|
13
13
|
"agent_docs_stubbed": 22,
|
|
14
|
-
"functional_verbatim":
|
|
14
|
+
"functional_verbatim": 1436,
|
|
15
15
|
"rules": 3,
|
|
16
16
|
"gate_literals": 3,
|
|
17
17
|
"gate": "passed"
|
|
18
18
|
},
|
|
19
|
-
"file_count":
|
|
20
|
-
"tree_sha256": "
|
|
19
|
+
"file_count": 1781,
|
|
20
|
+
"tree_sha256": "1a2430cfe83da4de17388e4663512e1eac2d35a6269e0f124f26e7004d09f0a8",
|
|
21
21
|
"files": [
|
|
22
22
|
{
|
|
23
23
|
"path": ".claude/skills/blocker-review/SKILL.md",
|
|
@@ -182,7 +182,7 @@
|
|
|
182
182
|
{
|
|
183
183
|
"path": ".claude/skills/merge-mode/SKILL.md",
|
|
184
184
|
"mode": "0000644",
|
|
185
|
-
"sha256": "
|
|
185
|
+
"sha256": "a1f797a9267428facc357c59b09d8eafd6b6d8ca36e6d6d7ae0c6bf60c11ab58"
|
|
186
186
|
},
|
|
187
187
|
{
|
|
188
188
|
"path": ".claude/skills/new-project/SKILL.md",
|
|
@@ -222,7 +222,7 @@
|
|
|
222
222
|
{
|
|
223
223
|
"path": ".claude/skills/planning-session/SKILL.md",
|
|
224
224
|
"mode": "0000644",
|
|
225
|
-
"sha256": "
|
|
225
|
+
"sha256": "f51cb3fec1448883300f5f966dc83f6b9636935059503250ed8a1f944526e743"
|
|
226
226
|
},
|
|
227
227
|
{
|
|
228
228
|
"path": ".claude/skills/priority-session/SKILL.md",
|
|
@@ -3824,10 +3824,70 @@
|
|
|
3824
3824
|
"mode": "0000644",
|
|
3825
3825
|
"sha256": "4a4a513ed0759e1e999454e6b6972b921789a5c2a88521755812d97fb6194f83"
|
|
3826
3826
|
},
|
|
3827
|
+
{
|
|
3828
|
+
"path": "modules/lifecycle/db-analytics.js",
|
|
3829
|
+
"mode": "0000644",
|
|
3830
|
+
"sha256": "b0cb5fb6853d39fd99feaa0b8e3b1040b0877a8476273789dad8976be42070cd"
|
|
3831
|
+
},
|
|
3832
|
+
{
|
|
3833
|
+
"path": "modules/lifecycle/db-claim-reads.js",
|
|
3834
|
+
"mode": "0000644",
|
|
3835
|
+
"sha256": "7aafa6f538811bd29d7f8ce3ebbf59fea72a90fea99de1fdfb6c62124eff23d5"
|
|
3836
|
+
},
|
|
3837
|
+
{
|
|
3838
|
+
"path": "modules/lifecycle/db-claims.js",
|
|
3839
|
+
"mode": "0000644",
|
|
3840
|
+
"sha256": "dbce7de39b91cdd1843ba26efc3f3be76690a7112aaa3b1b0406a9b9f98dfb32"
|
|
3841
|
+
},
|
|
3842
|
+
{
|
|
3843
|
+
"path": "modules/lifecycle/db-deps-criteria.js",
|
|
3844
|
+
"mode": "0000644",
|
|
3845
|
+
"sha256": "b3906a4704be5df9cdfdff9f13e2a18878f93ff7285c42edf25856ec1c4531be"
|
|
3846
|
+
},
|
|
3847
|
+
{
|
|
3848
|
+
"path": "modules/lifecycle/db-goals.js",
|
|
3849
|
+
"mode": "0000644",
|
|
3850
|
+
"sha256": "29b950000d31618de168c6128d9b78c03daad7e68b9a9b6d3e83aa40abd3d9fb"
|
|
3851
|
+
},
|
|
3852
|
+
{
|
|
3853
|
+
"path": "modules/lifecycle/db-grade.js",
|
|
3854
|
+
"mode": "0000644",
|
|
3855
|
+
"sha256": "e6c9a996c11a73847317db47620007c8d21f70b19c73ade4499361c1c0c330f9"
|
|
3856
|
+
},
|
|
3857
|
+
{
|
|
3858
|
+
"path": "modules/lifecycle/db-overrides.js",
|
|
3859
|
+
"mode": "0000644",
|
|
3860
|
+
"sha256": "fa3f251ef2bd0d2caaf49ecc2a250ca65ea7814ee25d606e00c23db0572b23fe"
|
|
3861
|
+
},
|
|
3862
|
+
{
|
|
3863
|
+
"path": "modules/lifecycle/db-rank-authz.js",
|
|
3864
|
+
"mode": "0000644",
|
|
3865
|
+
"sha256": "c93780ea71bb2f8f3d2b21f042c21d029f1ed5336a3aaf178fb3e14925dcc19b"
|
|
3866
|
+
},
|
|
3867
|
+
{
|
|
3868
|
+
"path": "modules/lifecycle/db-shared.js",
|
|
3869
|
+
"mode": "0000644",
|
|
3870
|
+
"sha256": "17a6ddfb4a9415c67dfbd06b052a3a7686df7a55287aa78ff2b55c6a2ca3d954"
|
|
3871
|
+
},
|
|
3872
|
+
{
|
|
3873
|
+
"path": "modules/lifecycle/db-ship.js",
|
|
3874
|
+
"mode": "0000644",
|
|
3875
|
+
"sha256": "0a313d9c20cc0da5952e3a5acbca83cd1fd3df7ecccbbd109701d865b4dd2fe6"
|
|
3876
|
+
},
|
|
3877
|
+
{
|
|
3878
|
+
"path": "modules/lifecycle/db-tasks.js",
|
|
3879
|
+
"mode": "0000644",
|
|
3880
|
+
"sha256": "43748950aee899125bc40b8fb6f26a7df5645746e23fcbe6bbe3ea486f0b7248"
|
|
3881
|
+
},
|
|
3882
|
+
{
|
|
3883
|
+
"path": "modules/lifecycle/db-versions.js",
|
|
3884
|
+
"mode": "0000644",
|
|
3885
|
+
"sha256": "aa98bd22cf237579b065a9a85cb64dda30a0b6b9894ebc5d6ca0592bbb7a977f"
|
|
3886
|
+
},
|
|
3827
3887
|
{
|
|
3828
3888
|
"path": "modules/lifecycle/db.js",
|
|
3829
3889
|
"mode": "0000644",
|
|
3830
|
-
"sha256": "
|
|
3890
|
+
"sha256": "70448ebd079d5167bcf0c9c2b4473d46e996a54202f09f5a8ebc30980aba4166"
|
|
3831
3891
|
},
|
|
3832
3892
|
{
|
|
3833
3893
|
"path": "modules/lifecycle/dead-deps.js",
|
|
@@ -4582,12 +4642,12 @@
|
|
|
4582
4642
|
{
|
|
4583
4643
|
"path": "package-lock.json",
|
|
4584
4644
|
"mode": "0000644",
|
|
4585
|
-
"sha256": "
|
|
4645
|
+
"sha256": "1bdb7a2ab4583036c92b3108244d5c30dc8aa6314ba28eb2339f3712deec806a"
|
|
4586
4646
|
},
|
|
4587
4647
|
{
|
|
4588
4648
|
"path": "package.json",
|
|
4589
4649
|
"mode": "0000644",
|
|
4590
|
-
"sha256": "
|
|
4650
|
+
"sha256": "2bbe8915c29c3f2cde9ef26aa885ddeb123f32caea804ed3146090147fa68a4d"
|
|
4591
4651
|
},
|
|
4592
4652
|
{
|
|
4593
4653
|
"path": "public-docs/index.html",
|
|
@@ -5122,7 +5182,7 @@
|
|
|
5122
5182
|
{
|
|
5123
5183
|
"path": "scripts/gds/coreB-carve-proof.sh",
|
|
5124
5184
|
"mode": "0000644",
|
|
5125
|
-
"sha256": "
|
|
5185
|
+
"sha256": "55ac5440a1c5481766198d6a89cef601fde816024b592b1e77f535c465a2df47"
|
|
5126
5186
|
},
|
|
5127
5187
|
{
|
|
5128
5188
|
"path": "scripts/gds/cost.js",
|
|
@@ -5237,7 +5297,7 @@
|
|
|
5237
5297
|
{
|
|
5238
5298
|
"path": "scripts/gds/fitness.js",
|
|
5239
5299
|
"mode": "0000644",
|
|
5240
|
-
"sha256": "
|
|
5300
|
+
"sha256": "fc4af6845de5bf3775629d492bb793f96cf707dfd9837e338cb2344250f733b5"
|
|
5241
5301
|
},
|
|
5242
5302
|
{
|
|
5243
5303
|
"path": "scripts/gds/gate-review.js",
|
|
@@ -5339,6 +5399,11 @@
|
|
|
5339
5399
|
"mode": "0000644",
|
|
5340
5400
|
"sha256": "4bf1e6c352e83a63a4747b892c5f9310dc860f8b2f5fc7c607ed432dcb2dd110"
|
|
5341
5401
|
},
|
|
5402
|
+
{
|
|
5403
|
+
"path": "scripts/gds/identity-strip.js",
|
|
5404
|
+
"mode": "0000644",
|
|
5405
|
+
"sha256": "a5ac6e41f30fd13738e52800616c2e0e3b1f8150dbb5e3f43e1fdbced5f58fe0"
|
|
5406
|
+
},
|
|
5342
5407
|
{
|
|
5343
5408
|
"path": "scripts/gds/init.js",
|
|
5344
5409
|
"mode": "0000644",
|
|
@@ -5527,12 +5592,12 @@
|
|
|
5527
5592
|
{
|
|
5528
5593
|
"path": "scripts/gds/preflight.js",
|
|
5529
5594
|
"mode": "0000644",
|
|
5530
|
-
"sha256": "
|
|
5595
|
+
"sha256": "9898b6f8e60b9f5ee4aeb9a023d1b68bb5bfbdf589eed10923a8e492716340ed"
|
|
5531
5596
|
},
|
|
5532
5597
|
{
|
|
5533
5598
|
"path": "scripts/gds/provision.js",
|
|
5534
5599
|
"mode": "0000644",
|
|
5535
|
-
"sha256": "
|
|
5600
|
+
"sha256": "b445702caa082164d8b733a44be2407f3e3889f28838dfd38222a6a0eb5ec672"
|
|
5536
5601
|
},
|
|
5537
5602
|
{
|
|
5538
5603
|
"path": "scripts/gds/publish-credential-check.js",
|
|
@@ -5804,6 +5869,11 @@
|
|
|
5804
5869
|
"mode": "0000644",
|
|
5805
5870
|
"sha256": "f3005175abc0ba20e958381df6aee02402267e9956da466386656dd4e86ad8cf"
|
|
5806
5871
|
},
|
|
5872
|
+
{
|
|
5873
|
+
"path": "scripts/gds/skill-preflight.js",
|
|
5874
|
+
"mode": "0000644",
|
|
5875
|
+
"sha256": "2c8297314642a459adb31d4253540fac4a8b3b32a4b79dddd9f0e6cdb87b51fc"
|
|
5876
|
+
},
|
|
5807
5877
|
{
|
|
5808
5878
|
"path": "scripts/gds/smoke-batch-claim.sh",
|
|
5809
5879
|
"mode": "0000644",
|
|
@@ -6257,7 +6327,7 @@
|
|
|
6257
6327
|
{
|
|
6258
6328
|
"path": "src/module-api.js",
|
|
6259
6329
|
"mode": "0000644",
|
|
6260
|
-
"sha256": "
|
|
6330
|
+
"sha256": "7301568d229fc28265cf1ad41b4d568923cc18d1f7098ef5403c971ed531839a"
|
|
6261
6331
|
},
|
|
6262
6332
|
{
|
|
6263
6333
|
"path": "src/module-loader/catalog.js",
|
|
@@ -6487,7 +6557,7 @@
|
|
|
6487
6557
|
{
|
|
6488
6558
|
"path": "tests/auto_satisfy_criteria.mjs",
|
|
6489
6559
|
"mode": "0000644",
|
|
6490
|
-
"sha256": "
|
|
6560
|
+
"sha256": "135d0af6b1535e50d68ed62baa36b616ba28888e899940cabf2f2940f3cd6f9d"
|
|
6491
6561
|
},
|
|
6492
6562
|
{
|
|
6493
6563
|
"path": "tests/autonomous_fit_protected_paths.mjs",
|
|
@@ -6897,7 +6967,7 @@
|
|
|
6897
6967
|
{
|
|
6898
6968
|
"path": "tests/dependencies_migration.mjs",
|
|
6899
6969
|
"mode": "0000644",
|
|
6900
|
-
"sha256": "
|
|
6970
|
+
"sha256": "daf81be50910d712cdfe10ac2c50578f70dc1d8cf261d435db23a120ec310968"
|
|
6901
6971
|
},
|
|
6902
6972
|
{
|
|
6903
6973
|
"path": "tests/dependencies_polymorphic.mjs",
|
|
@@ -7107,7 +7177,7 @@
|
|
|
7107
7177
|
{
|
|
7108
7178
|
"path": "tests/fitness.mjs",
|
|
7109
7179
|
"mode": "0000644",
|
|
7110
|
-
"sha256": "
|
|
7180
|
+
"sha256": "465c7ef58342b6e03947858fe34649f5a13a5bcf3658478601baed1e8b2420ef"
|
|
7111
7181
|
},
|
|
7112
7182
|
{
|
|
7113
7183
|
"path": "tests/fitness_ratchets.mjs",
|
|
@@ -7187,7 +7257,7 @@
|
|
|
7187
7257
|
{
|
|
7188
7258
|
"path": "tests/goal_abuse_matrix.mjs",
|
|
7189
7259
|
"mode": "0000644",
|
|
7190
|
-
"sha256": "
|
|
7260
|
+
"sha256": "b9fea609f0dc0aa1c0d05c1794290a65e48996c817a4a435098e91220ade89c1"
|
|
7191
7261
|
},
|
|
7192
7262
|
{
|
|
7193
7263
|
"path": "tests/goal_achievement.mjs",
|
|
@@ -7197,7 +7267,7 @@
|
|
|
7197
7267
|
{
|
|
7198
7268
|
"path": "tests/goal_advisory.mjs",
|
|
7199
7269
|
"mode": "0000644",
|
|
7200
|
-
"sha256": "
|
|
7270
|
+
"sha256": "b9fe4a36c7b60512c71e1d4837e8639381d441c19261007e186cb8c369d5b2c6"
|
|
7201
7271
|
},
|
|
7202
7272
|
{
|
|
7203
7273
|
"path": "tests/goal_cli.mjs",
|
|
@@ -7327,7 +7397,7 @@
|
|
|
7327
7397
|
{
|
|
7328
7398
|
"path": "tests/government_claim_eligibility.mjs",
|
|
7329
7399
|
"mode": "0000644",
|
|
7330
|
-
"sha256": "
|
|
7400
|
+
"sha256": "7eb103c6a201345728af5002aae1be09c1f3b1459b74bef7ea14e990a28dd05b"
|
|
7331
7401
|
},
|
|
7332
7402
|
{
|
|
7333
7403
|
"path": "tests/government_config.mjs",
|
|
@@ -7387,7 +7457,7 @@
|
|
|
7387
7457
|
{
|
|
7388
7458
|
"path": "tests/government_rank_sync.mjs",
|
|
7389
7459
|
"mode": "0000644",
|
|
7390
|
-
"sha256": "
|
|
7460
|
+
"sha256": "8750d0bbfc33403ff451b780935496a037dbab4a8e30bdc089abde8da8b7400a"
|
|
7391
7461
|
},
|
|
7392
7462
|
{
|
|
7393
7463
|
"path": "tests/government_require_permission.mjs",
|
|
@@ -7527,7 +7597,7 @@
|
|
|
7527
7597
|
{
|
|
7528
7598
|
"path": "tests/helpers.mjs",
|
|
7529
7599
|
"mode": "0000644",
|
|
7530
|
-
"sha256": "
|
|
7600
|
+
"sha256": "7a306648d5fd083313126ce98d364e19d130313edf7d37dd23e3767c7e527c8f"
|
|
7531
7601
|
},
|
|
7532
7602
|
{
|
|
7533
7603
|
"path": "tests/hierarchy-config.mjs",
|
|
@@ -7842,7 +7912,7 @@
|
|
|
7842
7912
|
{
|
|
7843
7913
|
"path": "tests/migration_allocation.mjs",
|
|
7844
7914
|
"mode": "0000644",
|
|
7845
|
-
"sha256": "
|
|
7915
|
+
"sha256": "017770d7639ca5dfb204b613b9ed287fb01c1f768c4f6e0550cc0ac7cad5fb5e"
|
|
7846
7916
|
},
|
|
7847
7917
|
{
|
|
7848
7918
|
"path": "tests/migration_namespace.mjs",
|
|
@@ -8217,12 +8287,12 @@
|
|
|
8217
8287
|
{
|
|
8218
8288
|
"path": "tests/publish_reconciler.mjs",
|
|
8219
8289
|
"mode": "0000644",
|
|
8220
|
-
"sha256": "
|
|
8290
|
+
"sha256": "09c5e96eadbfd99f26579fbf67b2ccdf39c6c04415a2596e9dbd4644be8d3ebe"
|
|
8221
8291
|
},
|
|
8222
8292
|
{
|
|
8223
8293
|
"path": "tests/rank_gate.mjs",
|
|
8224
8294
|
"mode": "0000644",
|
|
8225
|
-
"sha256": "
|
|
8295
|
+
"sha256": "d8fff57f5fee95bf11a5c1df3e2c0e342d39ef5b22c5e87f47a61dd9a3d2a8cb"
|
|
8226
8296
|
},
|
|
8227
8297
|
{
|
|
8228
8298
|
"path": "tests/rank_tier_single_source.mjs",
|
|
@@ -8287,7 +8357,7 @@
|
|
|
8287
8357
|
{
|
|
8288
8358
|
"path": "tests/reward_gate.mjs",
|
|
8289
8359
|
"mode": "0000644",
|
|
8290
|
-
"sha256": "
|
|
8360
|
+
"sha256": "52f9997d60ce03c60137376dc2bba1940c669617f0ca69fdafd3d90091411df3"
|
|
8291
8361
|
},
|
|
8292
8362
|
{
|
|
8293
8363
|
"path": "tests/reward_mode_cost_plus_only.mjs",
|
|
@@ -8624,6 +8694,11 @@
|
|
|
8624
8694
|
"mode": "0000644",
|
|
8625
8695
|
"sha256": "4557c934704a009612ed8858c0f59c5b53facb5d92fa2c0740b1aecb079aa5c9"
|
|
8626
8696
|
},
|
|
8697
|
+
{
|
|
8698
|
+
"path": "tests/skill_preflight.mjs",
|
|
8699
|
+
"mode": "0000644",
|
|
8700
|
+
"sha256": "df2c86d02d560b242a341c905b9ee5fbb25c6479c506736807947749e0a033fa"
|
|
8701
|
+
},
|
|
8627
8702
|
{
|
|
8628
8703
|
"path": "tests/skill_prefs.mjs",
|
|
8629
8704
|
"mode": "0000644",
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: merge-mode
|
|
3
3
|
description: Manual fallback for the auto-merge in /builder-ship. Walks every task at status='confirmed' (= verified but not yet on main) and runs the merge + smoke + deploy chain. Triggers when the user says "/merge-mode", "merge the queue", "land confirmed tasks", "land the queue", "do a merge run", or after a /builder-ship reported the auto-merge bailed.
|
|
4
|
+
requires: [main-checkout, push-credential, gh, droplet-ssh]
|
|
4
5
|
---
|
|
5
6
|
|
|
6
7
|
You are running the manual merge-mode session for Example. **`/merge-mode` is a rare last resort, not a routine sweep — and not something to push on other builders.** The server lands merges on its own: `/builder-ship` chains into auto-merge, green PRs auto-merge, a 5-min reconciler flips `confirmed → shipped`, and the [ADR 0082](../../../docs/adr/<redacted>.md) resolver self-heals generated-file conflicts. **Before running this skill, confirm the task is genuinely stuck** — still at `confirmed` more than ~5 minutes after its ship because of a conflict or regression the server couldn't auto-resolve. If you haven't waited for the sweep yet, stop and wait. This skill is for the strand that survives all of that — usually a cross-branch / non-generated-file conflict, a smoke regression, or a `--no-merge` ship.
|
|
@@ -17,6 +18,21 @@ The queue this skill works against is **tasks at status='confirmed'**. Those are
|
|
|
17
18
|
|
|
18
19
|
## How to use
|
|
19
20
|
|
|
21
|
+
**Step 0 — preflight this machine, before anything else.**
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
node scripts/gds/skill-preflight.js merge-mode # exits 1 naming what is MISSING
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
If it exits non-zero, **stop**: this machine cannot finish the procedure, and the
|
|
28
|
+
partial run is the dangerous outcome (it mutates the main worktree). The skill's
|
|
29
|
+
`requires:` frontmatter is what it checks — `main-checkout`, `push-credential`,
|
|
30
|
+
`gh`, `droplet-ssh`. This gate exists because the note below was prose only, and
|
|
31
|
+
prose cannot refuse: merge-mode was run on a dev box that had none of them, while
|
|
32
|
+
`ship.js` separately already knew (`strandNextStep` tells a box "/merge-mode is
|
|
33
|
+
NOT available here"). The knowledge existed twice and neither copy stopped the run
|
|
34
|
+
(task 1003167).
|
|
35
|
+
|
|
20
36
|
> **Environment note:** merge-mode is an **ops procedure** — it mutates the single
|
|
21
37
|
> main worktree and deploys to the Linux droplet (owner-gated SSH). The git /
|
|
22
38
|
> `ssh` / `deploy.sh` / branch-inventory steps below assume a bash environment
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: planning-session
|
|
3
3
|
description: Run a structured planning session for an upcoming Bongos version — set scope criteria, draft a written spec, interview the owner in depth to resolve every non-obvious decision, then seed the ranked task list from that spec. Triggers when the user says "/planning-session", "open a planning session", "let's plan V[N]", "plan the next version", or "scope a new version". Metic+ rank only (Metic and Archon; not Xenos).
|
|
4
|
+
requires: [droplet-ssh]
|
|
4
5
|
---
|
|
5
6
|
|
|
6
7
|
You are running a planning session for Bongos. The goal is to leave the session with: (a) a clear set of done-when criteria for a version, (b) a **written spec** (`docs/specs/<ver>-<goal-slug>.md`) that an in-depth interview refines until every non-obvious decision is resolved, (c) a ranked task list **seeded from that spec** that lives in the Bongos database, and (d) a durable record of the session for the audit trail.
|
|
@@ -193,9 +194,18 @@ a builder-local one (so the bash/`ssh`/`psql` here is server-side by design, not
|
|
|
193
194
|
a Windows concern):
|
|
194
195
|
|
|
195
196
|
```bash
|
|
197
|
+
node scripts/gds/skill-preflight.js planning-session # stops here if this box has no ssh
|
|
196
198
|
ssh lars@REDACTED_IP "psql -d example -c '\\d tasks' | grep -i check"
|
|
197
199
|
```
|
|
198
200
|
|
|
201
|
+
The preflight sits at THIS step rather than at the top of the skill on purpose:
|
|
202
|
+
the `droplet-ssh` this skill declares is needed for one optional lookup, not for
|
|
203
|
+
the whole session, so gating the entire planning session on it would refuse work
|
|
204
|
+
that does not need it. Compare `/merge-mode`, where the capabilities are
|
|
205
|
+
preconditions for the whole procedure and the gate is Step 0. Both placements are
|
|
206
|
+
legitimate; what is not legitimate is declaring a capability and never checking it
|
|
207
|
+
(task 1003167).
|
|
208
|
+
|
|
199
209
|
Confirm what the `priority` column actually allows.
|
|
200
210
|
|
|
201
211
|
**Encoding (V3 convention):** priority is `1-5` (CHECK constraint). Use priority by tier:
|