borgmcp-shared 2.1.0 → 2.2.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/dist/protocol/contract.d.ts +1 -1
- package/dist/protocol/contract.js +1 -1
- package/dist/templates.d.ts.map +1 -1
- package/dist/templates.js +49 -15
- package/dist/templates.js.map +1 -1
- package/docs/releases/2.2.0.md +9 -0
- package/package.json +1 -1
- package/src/protocol/contract.ts +1 -1
- package/src/templates.ts +53 -15
|
@@ -2,7 +2,7 @@ import { ErrorCode } from './errors.js';
|
|
|
2
2
|
import { type ProtocolVersion } from './version.js';
|
|
3
3
|
import type { DroneRuntimeMetadata, DroneRuntimeMetadataPatch } from './types.js';
|
|
4
4
|
export declare const SHARED_PACKAGE_NAME: "borgmcp-shared";
|
|
5
|
-
export declare const SHARED_PACKAGE_VERSION: "2.
|
|
5
|
+
export declare const SHARED_PACKAGE_VERSION: "2.2.0";
|
|
6
6
|
export declare const DECISION_TEXT_MAX_BYTES: 512;
|
|
7
7
|
export declare const ROLE_TEXT_MAX_BYTES: 51200;
|
|
8
8
|
export declare const DEFAULT_LOG_ENTRY_ADVISORY_BYTES: 1024;
|
|
@@ -2,7 +2,7 @@ import { ErrorCode } from './errors.js';
|
|
|
2
2
|
import { PROTOCOL_VERSION } from './version.js';
|
|
3
3
|
import { canonicalizeRepositoryIdentity, RuntimeMetadataValidationError, validateRuntimeMetadata, validateRuntimeMetadataPatch, validateRuntimeMetadataReportState, } from '../runtime-metadata.js';
|
|
4
4
|
export const SHARED_PACKAGE_NAME = 'borgmcp-shared';
|
|
5
|
-
export const SHARED_PACKAGE_VERSION = '2.
|
|
5
|
+
export const SHARED_PACKAGE_VERSION = '2.2.0';
|
|
6
6
|
export const DECISION_TEXT_MAX_BYTES = 512;
|
|
7
7
|
export const ROLE_TEXT_MAX_BYTES = 51_200;
|
|
8
8
|
export const DEFAULT_LOG_ENTRY_ADVISORY_BYTES = 1024;
|
package/dist/templates.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;CACvC;AAED,MAAM,MAAM,eAAe,GAAG,oBAAoB,EAAE,CAAC;AAErD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,eAAe,CAAC;CACpC;AAED,eAAO,MAAM,+BAA+B;;;;;;;;;;;;EAgBlC,CAAC;AAEX,eAAO,MAAM,qBAAqB,gdAOuD,CAAC;AAI1F,eAAO,MAAM,gCAAgC,+YAMoC,CAAC;AAElF,eAAO,MAAM,mCAAmC,qgBAQ8D,CAAC;AAE/G,eAAO,MAAM,uCAAuC,iVAGmQ,CAAC;AAExT,eAAO,MAAM,2BAA2B,4RAGwN,CAAC;AAEjQ,eAAO,MAAM,oBAAoB,gmBAOuG,CAAC;AAEzI,eAAO,MAAM,kCAAkC,mSAK8E,CAAC;AAE9H,eAAO,MAAM,sCAAsC,kTAKmC,CAAC;AAEvF,eAAO,MAAM,4BAA4B,+cAMiE,CAAC;AAE3G,eAAO,MAAM,gCAAgC,gVAKe,CAAC;AAE7D,eAAO,MAAM,2BAA2B,oOAIyC,CAAC;AAElF,eAAO,MAAM,uBAAuB,sMAIsD,CAAC;AAE3F,eAAO,MAAM,mCAAmC,q4BASkD,CAAC;AAEnG,eAAO,MAAM,4BAA4B,UAAiC,CAAC;AAE3E,eAAO,MAAM,8BAA8B,UAQ1C,CAAC;AAEF,eAAO,MAAM,2BAA2B,4NAI2D,CAAC;
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;CACvC;AAED,MAAM,MAAM,eAAe,GAAG,oBAAoB,EAAE,CAAC;AAErD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,eAAe,CAAC;CACpC;AAED,eAAO,MAAM,+BAA+B;;;;;;;;;;;;EAgBlC,CAAC;AAEX,eAAO,MAAM,qBAAqB,gdAOuD,CAAC;AAI1F,eAAO,MAAM,gCAAgC,+YAMoC,CAAC;AAElF,eAAO,MAAM,mCAAmC,qgBAQ8D,CAAC;AAE/G,eAAO,MAAM,uCAAuC,iVAGmQ,CAAC;AAExT,eAAO,MAAM,2BAA2B,4RAGwN,CAAC;AAEjQ,eAAO,MAAM,oBAAoB,gmBAOuG,CAAC;AAEzI,eAAO,MAAM,kCAAkC,mSAK8E,CAAC;AAE9H,eAAO,MAAM,sCAAsC,kTAKmC,CAAC;AAEvF,eAAO,MAAM,4BAA4B,+cAMiE,CAAC;AAE3G,eAAO,MAAM,gCAAgC,gVAKe,CAAC;AAE7D,eAAO,MAAM,2BAA2B,oOAIyC,CAAC;AAElF,eAAO,MAAM,uBAAuB,sMAIsD,CAAC;AAE3F,eAAO,MAAM,mCAAmC,q4BASkD,CAAC;AAEnG,eAAO,MAAM,4BAA4B,UAAiC,CAAC;AAE3E,eAAO,MAAM,8BAA8B,UAQ1C,CAAC;AAEF,eAAO,MAAM,2BAA2B,4NAI2D,CAAC;AAypBpG,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAI9C,CAAC;AAEF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAEzD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED,wBAAgB,6BAA6B,CAC3C,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,QAAQ,GAAG,IAAI,GACxB,MAAM,CAGR;AAED,wBAAgB,4BAA4B,CAC1C,oBAAoB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC/C,QAAQ,EAAE,QAAQ,GACjB,MAAM,GAAG,IAAI,CAGf;AAED,wBAAgB,+BAA+B,CAC7C,gBAAgB,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EACpD,QAAQ,EAAE,QAAQ,GAAG,IAAI,GACxB,eAAe,GAAG,IAAI,CAExB"}
|
package/dist/templates.js
CHANGED
|
@@ -144,6 +144,26 @@ Durable layers:
|
|
|
144
144
|
3. Cube documents (\`borg_put-document\` / \`borg_get-document\`): large or detailed material — contracts, designs, evidence — cited by id, never inlined.
|
|
145
145
|
4. Repository \`AGENTS.md\`: rules specific to one repository, read only by seats working there.
|
|
146
146
|
Rules: A registry entry that records a rule rather than a choice belongs in the directive — move it and remove the registry copy; on a cap refusal the order is relocate rules, supersede stale choices, remove obsolete; never archive playbook prose in the registry; detail goes to a document and is cited.`;
|
|
147
|
+
const DESIGN_REFERENCES = `
|
|
148
|
+
|
|
149
|
+
## Design references
|
|
150
|
+
|
|
151
|
+
Mockups, design documents, copy decks, and acceptance visuals live in one GitHub gist per issue, linked from the issue body as \`Design reference: <gist url>\`. The gist is revised in place so its revision history is the design history; it is never re-created. Public-safe content only.
|
|
152
|
+
When an issue carries a design reference, it is the acceptance visual for every slice of that issue. The scope contract names the gist URL and revision; implementers verify against it and state deliberate deviations with reasons; reviewers block unstated mismatches and refer stated deviations to the human seat for a decision. Final verification cites the current revision and fails mismatches not recorded as accepted deviations.
|
|
153
|
+
Close the sprint only when the shipped result matches the gist, or the gist was revised by its owner with the reason recorded there.`;
|
|
154
|
+
const DESIGN_REFERENCE_COORDINATOR = `
|
|
155
|
+
|
|
156
|
+
Design reference:
|
|
157
|
+
- When an issue carries a design reference, record in the scope contract the gist URL and revision.
|
|
158
|
+
- Close the sprint only when the shipped result matches the gist, or the gist was revised by its owner with the reason recorded there.`;
|
|
159
|
+
const DESIGN_REFERENCE_BUILDER = `
|
|
160
|
+
|
|
161
|
+
Design reference:
|
|
162
|
+
- When an issue carries a design reference, read its current revision before implementing, verify the result against it before REVIEW-READY, and state any deliberate deviation with its reason. An unstated mismatch is a defect.`;
|
|
163
|
+
const DESIGN_REFERENCE_REVIEWER = `
|
|
164
|
+
|
|
165
|
+
Design reference:
|
|
166
|
+
- When an issue carries a design reference, treat an unstated mismatch as blocking and report a stated deviation for the Coordinator's decision.`;
|
|
147
167
|
const SOFTWARE_DEV_DIRECTIVE = `## Scope and coordination
|
|
148
168
|
|
|
149
169
|
- The human-authorized outcome, repositories, acceptance criteria, and permitted mutations are the hard boundary.
|
|
@@ -153,7 +173,7 @@ const SOFTWARE_DEV_DIRECTIVE = `## Scope and coordination
|
|
|
153
173
|
- When an outcome includes a separately published external surface, the Coordinator names one owning role or seat for its implementation. Other seats report findings or perform routed review; they do not mutate that surface.
|
|
154
174
|
- Waiting is valid when no authorized action is available.
|
|
155
175
|
- Merge, deploy, publish, tag, release, credential, and live-operator actions require explicit authority.
|
|
156
|
-
- Keep cube-log signals concise. Put durable reasoning in the relevant issue, change, or existing maintained documentation only when it has an operational consumer.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}${RELEASE_CYCLE_SHAPES}`;
|
|
176
|
+
- Keep cube-log signals concise. Put durable reasoning in the relevant issue, change, or existing maintained documentation only when it has an operational consumer.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}${RELEASE_CYCLE_SHAPES}${DESIGN_REFERENCES}`;
|
|
157
177
|
const SOFTWARE_DEV_TAXONOMY = [
|
|
158
178
|
{
|
|
159
179
|
class: 'status-claim',
|
|
@@ -254,7 +274,7 @@ Communication:
|
|
|
254
274
|
- Send PING with \`to:\` only for a directed liveness check. Use DECISION or HALT with \`to: "broadcast"\` only for an intentional cube-wide human-seat message. After an authorized merge, post MERGED with the exact merge SHA and \`to: "broadcast"\`.
|
|
255
275
|
- Keep the primary playbook operational and concise. Delete obsolete, redundant, historical, cautionary, and example-heavy prose; do not relocate it into new runbooks, decisions, contracts, rationale, or case-study archives unless it has a current operational consumer.
|
|
256
276
|
|
|
257
|
-
Builders implement; reviewers review; you coordinate. Integrate only when authorized.${COORDINATOR_FINDING_DISPATCH_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${GIT_OPERATIONAL_DISCIPLINE_COORDINATOR}${PUSH_DISCIPLINE_COORDINATOR}${DRONE_ADDRESSING_CONVENTION}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}`;
|
|
277
|
+
Builders implement; reviewers review; you coordinate. Integrate only when authorized.${COORDINATOR_FINDING_DISPATCH_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${GIT_OPERATIONAL_DISCIPLINE_COORDINATOR}${PUSH_DISCIPLINE_COORDINATOR}${DRONE_ADDRESSING_CONVENTION}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}${DESIGN_REFERENCE_COORDINATOR}`;
|
|
258
278
|
const BUILDER = `You implement only explicitly assigned software changes within the stated repository and slice.
|
|
259
279
|
|
|
260
280
|
Before changing code:
|
|
@@ -284,7 +304,7 @@ Handoff:
|
|
|
284
304
|
- Report exact branch/head, base or merge-base when required, changed paths, and test results.
|
|
285
305
|
- REVIEW-READY means the exact revision is available to the routed reviewer.
|
|
286
306
|
- Send STARTING, PROGRESS, BLOCKED, DONE, REVIEW-READY, and PUSHING with \`to:\` to the Coordinator. PUSHING means an authorized push is beginning; it does not authorize the push. Receipt, progress, and interruptions do not end active work; resume until DONE, REVIEW-READY, or BLOCKED.
|
|
287
|
-
- Do not review, merge, deploy, publish, tag, release, or mutate live systems.${GIT_OPERATIONAL_DISCIPLINE_BUILDER}${PUSH_DISCIPLINE_BUILDER}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
307
|
+
- Do not review, merge, deploy, publish, tag, release, or mutate live systems.${DESIGN_REFERENCE_BUILDER}${GIT_OPERATIONAL_DISCIPLINE_BUILDER}${PUSH_DISCIPLINE_BUILDER}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
288
308
|
const CODE_REVIEWER = `Review only the routed exact software revision. Do not implement fixes or create follow-up work.
|
|
289
309
|
|
|
290
310
|
Start:
|
|
@@ -304,7 +324,7 @@ Verdict:
|
|
|
304
324
|
- A new revision requires fresh review; never imply approval from a prior revision.
|
|
305
325
|
- Do not repeat a finding on the same revision without new evidence. If new evidence invalidates an approval, withdraw the approval and state why.
|
|
306
326
|
- Send REVIEW-APPROVED, REVIEW-FEEDBACK, and BLOCKED with \`to:\` to the Coordinator.
|
|
307
|
-
- Do not merge, deploy, publish, tag, or release.${REVIEWER_FINDING_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
327
|
+
- Do not merge, deploy, publish, tag, or release.${DESIGN_REFERENCE_REVIEWER}${REVIEWER_FINDING_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
308
328
|
const RELEASE_QUALITY = `Perform only the routed release-quality checks for the exact software revision and changed surface.
|
|
309
329
|
|
|
310
330
|
- Confirm the revision and predecessor gates before testing.
|
|
@@ -318,18 +338,25 @@ const RELEASE_QUALITY = `Perform only the routed release-quality checks for the
|
|
|
318
338
|
- Do not represent a partial slice as the complete outcome. New evidence may invalidate approval; name it precisely.
|
|
319
339
|
- Send RQ-APPROVED, RQ-FEEDBACK, and BLOCKED with \`to:\` to the Coordinator.
|
|
320
340
|
- Keep polish, unrelated drift, and optional improvements non-blocking and outside the current work unless explicitly assigned.
|
|
321
|
-
- Do not merge, publish, deploy, tag, release, or create follow-up issues on your own
|
|
341
|
+
- Do not merge, publish, deploy, tag, release, or create follow-up issues on your own.
|
|
342
|
+
|
|
343
|
+
Design reference:
|
|
344
|
+
- When an issue carries a design reference, verify the final result against its current revision and cite it in the verdict. A mismatch not recorded as an accepted deviation is RQ-FEEDBACK.${REVIEWER_FINDING_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
322
345
|
const PRODUCT_DESIGN = `Review only routed user-facing software changes or an explicit design request.
|
|
323
346
|
|
|
324
347
|
- Confirm the exact behavior, artifact, revision, audience, and requested decision.
|
|
325
348
|
- Inspect the actual implementation or artifact before making factual claims.
|
|
326
349
|
- Evaluate interaction clarity, accessibility, responsive behavior, visual consistency, exact copy, and relevant loading, empty, success, error, destructive, and recovery states.
|
|
327
350
|
- Exercise the actual UI or CLI when an implementation exists.
|
|
328
|
-
- Create a mockup only when it materially resolves the authorized question; use
|
|
351
|
+
- Create a mockup only when it materially resolves the authorized question; use the issue's design reference gist for reviewable artifacts.
|
|
329
352
|
- Give one consolidated approval or bounded blocker with observable evidence.
|
|
330
353
|
- Send PD-APPROVED, PD-FEEDBACK, and BLOCKED with \`to:\` to the Coordinator.
|
|
331
354
|
- Do not redesign adjacent surfaces, set product strategy, implement code, create speculative artifacts, or open follow-up work without authorization.
|
|
332
|
-
- Waiting is valid when no design review is routed
|
|
355
|
+
- Waiting is valid when no design review is routed.
|
|
356
|
+
|
|
357
|
+
Design reference:
|
|
358
|
+
- Own creating and revising the gist. When a routed design decision produces a mockup or document and no gist exists, create it before implementation starts.
|
|
359
|
+
- When an issue carries a design reference, use it as the acceptance visual. When routed, verify the final result against its current revision and bind the verdict to that revision.${REVIEWER_FINDING_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
333
360
|
const PRODUCT_STRATEGY = `Provide source-verified product analysis only when requested.
|
|
334
361
|
|
|
335
362
|
- Separate observed evidence, inference, proposal, and decision.
|
|
@@ -480,7 +507,7 @@ const STARTER = {
|
|
|
480
507
|
- Assignment, review, and completion do not authorize unrelated work or integration.
|
|
481
508
|
- ACK is receipt only; STARTING or substantive PROGRESS confirms activation.
|
|
482
509
|
- Findings outside scope are reported, not automatically fixed.
|
|
483
|
-
- Waiting is valid when no authorized action is available.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}`,
|
|
510
|
+
- Waiting is valid when no authorized action is available.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}${DESIGN_REFERENCES}`,
|
|
484
511
|
message_taxonomy: STARTER_TAXONOMY,
|
|
485
512
|
roles: [
|
|
486
513
|
{
|
|
@@ -498,7 +525,7 @@ const STARTER = {
|
|
|
498
525
|
- Send START NOW, RESUME NOW, REVIEW NOW, and HOLD with \`to:\` to the named Worker or Reviewer.
|
|
499
526
|
- Send PING with \`to:\` only for a directed liveness check. Use DECISION or HALT with \`to: "broadcast"\` only for an intentional cube-wide human-seat message.
|
|
500
527
|
- Ask the human before rescoping, abandoning, waiving, merging, shipping, publishing, or taking an irreversible action unless already delegated.
|
|
501
|
-
- Waiting is valid when work is complete, blocked, under review, or awaiting authority.${COORDINATOR_FINDING_DISPATCH_DISCIPLINE}${ANTI_PASSIVE_STANDING_DISCIPLINE}${DRONE_ADDRESSING_CONVENTION}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}`,
|
|
528
|
+
- Waiting is valid when work is complete, blocked, under review, or awaiting authority.${COORDINATOR_FINDING_DISPATCH_DISCIPLINE}${ANTI_PASSIVE_STANDING_DISCIPLINE}${DRONE_ADDRESSING_CONVENTION}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}${DESIGN_REFERENCE_COORDINATOR}`,
|
|
502
529
|
},
|
|
503
530
|
{
|
|
504
531
|
name: 'Worker',
|
|
@@ -511,7 +538,7 @@ const STARTER = {
|
|
|
511
538
|
- Preserve unrelated state. Do not add cleanup, speculative improvements, or follow-up work.
|
|
512
539
|
- If blocked, state the missing input and stop affected mutation; do not silently change the goal.
|
|
513
540
|
- Send STARTING, PROGRESS, DONE, REVIEW-READY, and BLOCKED with \`to:\` to the Coordinator, with the result and verification evidence.
|
|
514
|
-
- Do not approve, integrate, publish, or take irreversible actions.${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`,
|
|
541
|
+
- Do not approve, integrate, publish, or take irreversible actions.${DESIGN_REFERENCE_BUILDER}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`,
|
|
515
542
|
},
|
|
516
543
|
{
|
|
517
544
|
name: 'Reviewer',
|
|
@@ -523,7 +550,7 @@ const STARTER = {
|
|
|
523
550
|
- Check correctness, completeness, regressions, and scope containment proportionate to the task.
|
|
524
551
|
- Send one APPROVED, FEEDBACK, or BLOCKED verdict with \`to:\` to the Coordinator. Give concrete evidence and a bounded acceptance condition for blockers.
|
|
525
552
|
- Keep unrelated observations outside the current work. Do not implement fixes, expand scope, integrate, publish, or take irreversible actions.
|
|
526
|
-
- Waiting is valid when no review is routed.${REVIEWER_FINDING_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`,
|
|
553
|
+
- Waiting is valid when no review is routed.${DESIGN_REFERENCE_REVIEWER}${REVIEWER_FINDING_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`,
|
|
527
554
|
},
|
|
528
555
|
],
|
|
529
556
|
};
|
|
@@ -596,7 +623,7 @@ const LOCAL_MODEL_DIRECTIVE = `## Verification-cost workflow
|
|
|
596
623
|
- A fourth seat is optional: add a second Executor when throughput-bound, or a second capable Director as an independent review lens when correctness-bound. Never use a cheap model as a review lens.
|
|
597
624
|
- Waiting is valid only when no authorized action or active assigned work remains, or while a role is awaiting a named predecessor and has no independent action it can advance.
|
|
598
625
|
- Dispatch, packet echo, status, and answers are not completion. Each role continues its active item in the same turn until it posts a terminal signal from its own vocabulary.
|
|
599
|
-
- Merge, publish, deploy, tag, release, credential, and irreversible actions require explicit authority.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}`;
|
|
626
|
+
- Merge, publish, deploy, tag, release, credential, and irreversible actions require explicit authority.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}${DESIGN_REFERENCES}`;
|
|
600
627
|
const LOCAL_MODEL_DIRECTOR = `You own authorized intent, priorities, decisions, and verification that requires careful reading. Never implement a change.
|
|
601
628
|
|
|
602
629
|
Scope and authority:
|
|
@@ -620,7 +647,7 @@ Continuity:
|
|
|
620
647
|
- DISPATCH, HOLD, and DECISION are not completion when they leave an authorized follow-on action.
|
|
621
648
|
- After answering an interruption, resume any Director action you can advance in the same turn.
|
|
622
649
|
- Waiting is valid only when no routed Director action or active outcome remains, or while a named Shaper/reviewer/human decision is outstanding and you have no independent action.
|
|
623
|
-
- An active Director outcome ends with APPROVED, or with BLOCKED naming the missing decision or the reason it cannot proceed. After DECISION, continue with any dispatch or verification that decision enables.${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}`;
|
|
650
|
+
- An active Director outcome ends with APPROVED, or with BLOCKED naming the missing decision or the reason it cannot proceed. After DECISION, continue with any dispatch or verification that decision enables.${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}${DESIGN_REFERENCE_COORDINATOR}`;
|
|
624
651
|
const LOCAL_MODEL_SHAPER = `You convert authorized intent into machine-checkable packets, accept returned packets by running their checks, and implement only work that cannot be converted.
|
|
625
652
|
|
|
626
653
|
Ownership and receipt:
|
|
@@ -663,7 +690,11 @@ Continuity:
|
|
|
663
690
|
- Send QUESTION, ANSWER, and HEADS-UP with \`to:\` to the Director or Executor named by the message.
|
|
664
691
|
- EXECUTE PACKET, ACCEPT, REJECT, and an answer are not completion of the active Shaper assignment.
|
|
665
692
|
- After handling an interruption, resume the assignment in the same turn when an authorized action remains.
|
|
666
|
-
- A Shaper assignment ends only with BLOCKED or REVIEW-READY
|
|
693
|
+
- A Shaper assignment ends only with BLOCKED or REVIEW-READY.
|
|
694
|
+
|
|
695
|
+
Design reference:
|
|
696
|
+
- When an issue carries a design reference, include in the packet the gist URL and revision, with literal design-reference checks. Treat an unstated mismatch as blocking and report a stated deviation for the Director's decision.
|
|
697
|
+
- Read the current revision before implementing authorized work yourself. Verify every returned result against it before REVIEW-READY and state any deliberate deviation with its reason.${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}`;
|
|
667
698
|
const LOCAL_MODEL_EXECUTOR = `You execute one complete authorized packet exactly. You do not shape, review, decide, or claim correctness.
|
|
668
699
|
|
|
669
700
|
The Shaper shapes packets and accepts or rejects returned commits. The Director owns decisions and independently verifies accepted work. You execute only the packet they provide.
|
|
@@ -685,7 +716,10 @@ Send SPEC-GAP and PACKET-DONE to the Shaper with \`to:\`. Send PACKET-ECHO to th
|
|
|
685
716
|
|
|
686
717
|
Waiting is valid only when no packet is active. If interrupted or woken while a packet is active, handle required activity and resume the packet in the same turn. An active packet ends only with SPEC-GAP or PACKET-DONE.
|
|
687
718
|
|
|
688
|
-
Never merge, push, install packages, change configuration, edit a test, delete or weaken an assertion, or regenerate a golden file
|
|
719
|
+
Never merge, push, install packages, change configuration, edit a test, delete or weaken an assertion, or regenerate a golden file.
|
|
720
|
+
|
|
721
|
+
Design reference:
|
|
722
|
+
- When an issue carries a design reference, read its current revision before implementing and run the packet's design-reference checks before PACKET-DONE. Use SPEC-GAP for a missing reference or check, or a needed deviation, with its reason; do not invent a check or decide to deviate.${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}`;
|
|
689
723
|
const LOCAL_MODEL = {
|
|
690
724
|
...NEW_CUBE_TEMPLATE_PRESENTATIONS[2],
|
|
691
725
|
description: 'Three-seat software workflow that converts intent into machine-checkable packets for local-model execution.',
|
package/dist/templates.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AAsCA,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C;QACE,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,sBAAsB;QAC7B,iBAAiB,EAAE,oCAAoC;KACxD;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,iBAAiB,EAAE,qCAAqC;KACzD;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,aAAa;QACpB,iBAAiB,EAAE,mFAAmF;KACvG;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,qBAAqB,GAAG;;;;;;;yFAOoD,CAAC;AAI1F,MAAM,CAAC,MAAM,gCAAgC,GAAG;;;;;;iFAMiC,CAAC;AAElF,MAAM,CAAC,MAAM,mCAAmC,GAAG;;;;;;;;8GAQ2D,CAAC;AAE/G,MAAM,CAAC,MAAM,uCAAuC,GAAG;;;uTAGgQ,CAAC;AAExT,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;gQAGqN,CAAC;AAEjQ,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;;;wIAOoG,CAAC;AAEzI,MAAM,CAAC,MAAM,kCAAkC,GAAG;;;;;6HAK2E,CAAC;AAE9H,MAAM,CAAC,MAAM,sCAAsC,GAAG;;;;;sFAKgC,CAAC;AAEvF,MAAM,CAAC,MAAM,4BAA4B,GAAG;;;;;;0GAM8D,CAAC;AAE3G,MAAM,CAAC,MAAM,gCAAgC,GAAG;;;;;4DAKY,CAAC;AAE7D,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;iFAIsC,CAAC;AAElF,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;0FAImD,CAAC;AAE3F,MAAM,CAAC,MAAM,mCAAmC,GAAG;;;;;;;;;kGAS+C,CAAC;AAEnG,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,kCAAkC;IAClC,sCAAsC;IACtC,uBAAuB;IACvB,2BAA2B;IAC3B,gCAAgC;IAChC,gCAAgC;IAChC,oBAAoB;CACrB,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;mGAIwD,CAAC;AAEpG,MAAM,qCAAqC,GAAG;;;;;;4HAM8E,CAAC;AAE7H,MAAM,8BAA8B,GAAG;uHACgF,CAAC;AAExH,MAAM,+BAA+B,GAAG;;;;gEAIwB,CAAC;AAEjE,MAAM,wCAAwC,GAAG;;;;;;6IAM4F,CAAC;AAE9I,MAAM,cAAc,GAAG;;;;;;;gTAOyR,CAAC;AAEjT,MAAM,sBAAsB,GAAG;;;;;;;;;sKASuI,mCAAmC,GAAG,oBAAoB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
This minor release adds design-reference guidance to the Software Development,
|
|
2
|
+
Starter, and Local Model templates.
|
|
3
|
+
|
|
4
|
+
Each issue keeps its mockups and design documents in one GitHub gist, linked
|
|
5
|
+
from the issue as `Design reference: <gist url>` and revised in place. When a
|
|
6
|
+
design reference exists it is the acceptance visual: the scope contract names
|
|
7
|
+
the gist revision, builders verify against it before handing over and state
|
|
8
|
+
any deviation, reviewers treat an unstated mismatch as blocking, and release
|
|
9
|
+
quality verifies the final result against the current revision before close.
|
package/package.json
CHANGED
package/src/protocol/contract.ts
CHANGED
|
@@ -13,7 +13,7 @@ import type {
|
|
|
13
13
|
} from './types.js';
|
|
14
14
|
|
|
15
15
|
export const SHARED_PACKAGE_NAME = 'borgmcp-shared' as const;
|
|
16
|
-
export const SHARED_PACKAGE_VERSION = '2.
|
|
16
|
+
export const SHARED_PACKAGE_VERSION = '2.2.0' as const;
|
|
17
17
|
/** Maximum UTF-8 payload for each newly recorded decision text field. */
|
|
18
18
|
export const DECISION_TEXT_MAX_BYTES = 512 as const;
|
|
19
19
|
/** Maximum UTF-8 size of role detailed-description text and any returned section slice. */
|
package/src/templates.ts
CHANGED
|
@@ -206,6 +206,30 @@ Durable layers:
|
|
|
206
206
|
4. Repository \`AGENTS.md\`: rules specific to one repository, read only by seats working there.
|
|
207
207
|
Rules: A registry entry that records a rule rather than a choice belongs in the directive — move it and remove the registry copy; on a cap refusal the order is relocate rules, supersede stale choices, remove obsolete; never archive playbook prose in the registry; detail goes to a document and is cited.`;
|
|
208
208
|
|
|
209
|
+
const DESIGN_REFERENCES = `
|
|
210
|
+
|
|
211
|
+
## Design references
|
|
212
|
+
|
|
213
|
+
Mockups, design documents, copy decks, and acceptance visuals live in one GitHub gist per issue, linked from the issue body as \`Design reference: <gist url>\`. The gist is revised in place so its revision history is the design history; it is never re-created. Public-safe content only.
|
|
214
|
+
When an issue carries a design reference, it is the acceptance visual for every slice of that issue. The scope contract names the gist URL and revision; implementers verify against it and state deliberate deviations with reasons; reviewers block unstated mismatches and refer stated deviations to the human seat for a decision. Final verification cites the current revision and fails mismatches not recorded as accepted deviations.
|
|
215
|
+
Close the sprint only when the shipped result matches the gist, or the gist was revised by its owner with the reason recorded there.`;
|
|
216
|
+
|
|
217
|
+
const DESIGN_REFERENCE_COORDINATOR = `
|
|
218
|
+
|
|
219
|
+
Design reference:
|
|
220
|
+
- When an issue carries a design reference, record in the scope contract the gist URL and revision.
|
|
221
|
+
- Close the sprint only when the shipped result matches the gist, or the gist was revised by its owner with the reason recorded there.`;
|
|
222
|
+
|
|
223
|
+
const DESIGN_REFERENCE_BUILDER = `
|
|
224
|
+
|
|
225
|
+
Design reference:
|
|
226
|
+
- When an issue carries a design reference, read its current revision before implementing, verify the result against it before REVIEW-READY, and state any deliberate deviation with its reason. An unstated mismatch is a defect.`;
|
|
227
|
+
|
|
228
|
+
const DESIGN_REFERENCE_REVIEWER = `
|
|
229
|
+
|
|
230
|
+
Design reference:
|
|
231
|
+
- When an issue carries a design reference, treat an unstated mismatch as blocking and report a stated deviation for the Coordinator's decision.`;
|
|
232
|
+
|
|
209
233
|
const SOFTWARE_DEV_DIRECTIVE = `## Scope and coordination
|
|
210
234
|
|
|
211
235
|
- The human-authorized outcome, repositories, acceptance criteria, and permitted mutations are the hard boundary.
|
|
@@ -215,7 +239,7 @@ const SOFTWARE_DEV_DIRECTIVE = `## Scope and coordination
|
|
|
215
239
|
- When an outcome includes a separately published external surface, the Coordinator names one owning role or seat for its implementation. Other seats report findings or perform routed review; they do not mutate that surface.
|
|
216
240
|
- Waiting is valid when no authorized action is available.
|
|
217
241
|
- Merge, deploy, publish, tag, release, credential, and live-operator actions require explicit authority.
|
|
218
|
-
- Keep cube-log signals concise. Put durable reasoning in the relevant issue, change, or existing maintained documentation only when it has an operational consumer.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}${RELEASE_CYCLE_SHAPES}`;
|
|
242
|
+
- Keep cube-log signals concise. Put durable reasoning in the relevant issue, change, or existing maintained documentation only when it has an operational consumer.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}${RELEASE_CYCLE_SHAPES}${DESIGN_REFERENCES}`;
|
|
219
243
|
|
|
220
244
|
const SOFTWARE_DEV_TAXONOMY: MessageTaxonomy = [
|
|
221
245
|
{
|
|
@@ -318,7 +342,7 @@ Communication:
|
|
|
318
342
|
- Send PING with \`to:\` only for a directed liveness check. Use DECISION or HALT with \`to: "broadcast"\` only for an intentional cube-wide human-seat message. After an authorized merge, post MERGED with the exact merge SHA and \`to: "broadcast"\`.
|
|
319
343
|
- Keep the primary playbook operational and concise. Delete obsolete, redundant, historical, cautionary, and example-heavy prose; do not relocate it into new runbooks, decisions, contracts, rationale, or case-study archives unless it has a current operational consumer.
|
|
320
344
|
|
|
321
|
-
Builders implement; reviewers review; you coordinate. Integrate only when authorized.${COORDINATOR_FINDING_DISPATCH_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${GIT_OPERATIONAL_DISCIPLINE_COORDINATOR}${PUSH_DISCIPLINE_COORDINATOR}${DRONE_ADDRESSING_CONVENTION}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}`;
|
|
345
|
+
Builders implement; reviewers review; you coordinate. Integrate only when authorized.${COORDINATOR_FINDING_DISPATCH_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${GIT_OPERATIONAL_DISCIPLINE_COORDINATOR}${PUSH_DISCIPLINE_COORDINATOR}${DRONE_ADDRESSING_CONVENTION}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}${DESIGN_REFERENCE_COORDINATOR}`;
|
|
322
346
|
|
|
323
347
|
// Producer minimalism adapts principles from https://github.com/DietrichGebert/ponytail
|
|
324
348
|
// (MIT); this wording is original to Borg MCP.
|
|
@@ -351,7 +375,7 @@ Handoff:
|
|
|
351
375
|
- Report exact branch/head, base or merge-base when required, changed paths, and test results.
|
|
352
376
|
- REVIEW-READY means the exact revision is available to the routed reviewer.
|
|
353
377
|
- Send STARTING, PROGRESS, BLOCKED, DONE, REVIEW-READY, and PUSHING with \`to:\` to the Coordinator. PUSHING means an authorized push is beginning; it does not authorize the push. Receipt, progress, and interruptions do not end active work; resume until DONE, REVIEW-READY, or BLOCKED.
|
|
354
|
-
- Do not review, merge, deploy, publish, tag, release, or mutate live systems.${GIT_OPERATIONAL_DISCIPLINE_BUILDER}${PUSH_DISCIPLINE_BUILDER}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
378
|
+
- Do not review, merge, deploy, publish, tag, release, or mutate live systems.${DESIGN_REFERENCE_BUILDER}${GIT_OPERATIONAL_DISCIPLINE_BUILDER}${PUSH_DISCIPLINE_BUILDER}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
355
379
|
|
|
356
380
|
const CODE_REVIEWER = `Review only the routed exact software revision. Do not implement fixes or create follow-up work.
|
|
357
381
|
|
|
@@ -372,7 +396,7 @@ Verdict:
|
|
|
372
396
|
- A new revision requires fresh review; never imply approval from a prior revision.
|
|
373
397
|
- Do not repeat a finding on the same revision without new evidence. If new evidence invalidates an approval, withdraw the approval and state why.
|
|
374
398
|
- Send REVIEW-APPROVED, REVIEW-FEEDBACK, and BLOCKED with \`to:\` to the Coordinator.
|
|
375
|
-
- Do not merge, deploy, publish, tag, or release.${REVIEWER_FINDING_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
399
|
+
- Do not merge, deploy, publish, tag, or release.${DESIGN_REFERENCE_REVIEWER}${REVIEWER_FINDING_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
376
400
|
|
|
377
401
|
const RELEASE_QUALITY = `Perform only the routed release-quality checks for the exact software revision and changed surface.
|
|
378
402
|
|
|
@@ -387,7 +411,10 @@ const RELEASE_QUALITY = `Perform only the routed release-quality checks for the
|
|
|
387
411
|
- Do not represent a partial slice as the complete outcome. New evidence may invalidate approval; name it precisely.
|
|
388
412
|
- Send RQ-APPROVED, RQ-FEEDBACK, and BLOCKED with \`to:\` to the Coordinator.
|
|
389
413
|
- Keep polish, unrelated drift, and optional improvements non-blocking and outside the current work unless explicitly assigned.
|
|
390
|
-
- Do not merge, publish, deploy, tag, release, or create follow-up issues on your own
|
|
414
|
+
- Do not merge, publish, deploy, tag, release, or create follow-up issues on your own.
|
|
415
|
+
|
|
416
|
+
Design reference:
|
|
417
|
+
- When an issue carries a design reference, verify the final result against its current revision and cite it in the verdict. A mismatch not recorded as an accepted deviation is RQ-FEEDBACK.${REVIEWER_FINDING_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
391
418
|
|
|
392
419
|
const PRODUCT_DESIGN = `Review only routed user-facing software changes or an explicit design request.
|
|
393
420
|
|
|
@@ -395,11 +422,15 @@ const PRODUCT_DESIGN = `Review only routed user-facing software changes or an ex
|
|
|
395
422
|
- Inspect the actual implementation or artifact before making factual claims.
|
|
396
423
|
- Evaluate interaction clarity, accessibility, responsive behavior, visual consistency, exact copy, and relevant loading, empty, success, error, destructive, and recovery states.
|
|
397
424
|
- Exercise the actual UI or CLI when an implementation exists.
|
|
398
|
-
- Create a mockup only when it materially resolves the authorized question; use
|
|
425
|
+
- Create a mockup only when it materially resolves the authorized question; use the issue's design reference gist for reviewable artifacts.
|
|
399
426
|
- Give one consolidated approval or bounded blocker with observable evidence.
|
|
400
427
|
- Send PD-APPROVED, PD-FEEDBACK, and BLOCKED with \`to:\` to the Coordinator.
|
|
401
428
|
- Do not redesign adjacent surfaces, set product strategy, implement code, create speculative artifacts, or open follow-up work without authorization.
|
|
402
|
-
- Waiting is valid when no design review is routed
|
|
429
|
+
- Waiting is valid when no design review is routed.
|
|
430
|
+
|
|
431
|
+
Design reference:
|
|
432
|
+
- Own creating and revising the gist. When a routed design decision produces a mockup or document and no gist exists, create it before implementation starts.
|
|
433
|
+
- When an issue carries a design reference, use it as the acceptance visual. When routed, verify the final result against its current revision and bind the verdict to that revision.${REVIEWER_FINDING_DISCIPLINE}${SERIALIZED_REVIEW_ROUNDS_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`;
|
|
403
434
|
|
|
404
435
|
const PRODUCT_STRATEGY = `Provide source-verified product analysis only when requested.
|
|
405
436
|
|
|
@@ -555,7 +586,7 @@ const STARTER: Template = {
|
|
|
555
586
|
- Assignment, review, and completion do not authorize unrelated work or integration.
|
|
556
587
|
- ACK is receipt only; STARTING or substantive PROGRESS confirms activation.
|
|
557
588
|
- Findings outside scope are reported, not automatically fixed.
|
|
558
|
-
- Waiting is valid when no authorized action is available.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}`,
|
|
589
|
+
- Waiting is valid when no authorized action is available.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}${DESIGN_REFERENCES}`,
|
|
559
590
|
message_taxonomy: STARTER_TAXONOMY,
|
|
560
591
|
roles: [
|
|
561
592
|
{
|
|
@@ -573,7 +604,7 @@ const STARTER: Template = {
|
|
|
573
604
|
- Send START NOW, RESUME NOW, REVIEW NOW, and HOLD with \`to:\` to the named Worker or Reviewer.
|
|
574
605
|
- Send PING with \`to:\` only for a directed liveness check. Use DECISION or HALT with \`to: "broadcast"\` only for an intentional cube-wide human-seat message.
|
|
575
606
|
- Ask the human before rescoping, abandoning, waiving, merging, shipping, publishing, or taking an irreversible action unless already delegated.
|
|
576
|
-
- Waiting is valid when work is complete, blocked, under review, or awaiting authority.${COORDINATOR_FINDING_DISPATCH_DISCIPLINE}${ANTI_PASSIVE_STANDING_DISCIPLINE}${DRONE_ADDRESSING_CONVENTION}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}`,
|
|
607
|
+
- Waiting is valid when work is complete, blocked, under review, or awaiting authority.${COORDINATOR_FINDING_DISPATCH_DISCIPLINE}${ANTI_PASSIVE_STANDING_DISCIPLINE}${DRONE_ADDRESSING_CONVENTION}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}${DESIGN_REFERENCE_COORDINATOR}`,
|
|
577
608
|
},
|
|
578
609
|
{
|
|
579
610
|
name: 'Worker',
|
|
@@ -586,7 +617,7 @@ const STARTER: Template = {
|
|
|
586
617
|
- Preserve unrelated state. Do not add cleanup, speculative improvements, or follow-up work.
|
|
587
618
|
- If blocked, state the missing input and stop affected mutation; do not silently change the goal.
|
|
588
619
|
- Send STARTING, PROGRESS, DONE, REVIEW-READY, and BLOCKED with \`to:\` to the Coordinator, with the result and verification evidence.
|
|
589
|
-
- Do not approve, integrate, publish, or take irreversible actions.${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`,
|
|
620
|
+
- Do not approve, integrate, publish, or take irreversible actions.${DESIGN_REFERENCE_BUILDER}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`,
|
|
590
621
|
},
|
|
591
622
|
{
|
|
592
623
|
name: 'Reviewer',
|
|
@@ -598,7 +629,7 @@ const STARTER: Template = {
|
|
|
598
629
|
- Check correctness, completeness, regressions, and scope containment proportionate to the task.
|
|
599
630
|
- Send one APPROVED, FEEDBACK, or BLOCKED verdict with \`to:\` to the Coordinator. Give concrete evidence and a bounded acceptance condition for blockers.
|
|
600
631
|
- Keep unrelated observations outside the current work. Do not implement fixes, expand scope, integrate, publish, or take irreversible actions.
|
|
601
|
-
- Waiting is valid when no review is routed.${REVIEWER_FINDING_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`,
|
|
632
|
+
- Waiting is valid when no review is routed.${DESIGN_REFERENCE_REVIEWER}${REVIEWER_FINDING_DISCIPLINE}${ESCALATION_DISCIPLINE}${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${DIRECTED_DISCUSSION_DISCIPLINE}${RECEIPT_AND_LIVENESS_DISCIPLINE}`,
|
|
602
633
|
},
|
|
603
634
|
],
|
|
604
635
|
};
|
|
@@ -673,7 +704,7 @@ const LOCAL_MODEL_DIRECTIVE = `## Verification-cost workflow
|
|
|
673
704
|
- A fourth seat is optional: add a second Executor when throughput-bound, or a second capable Director as an independent review lens when correctness-bound. Never use a cheap model as a review lens.
|
|
674
705
|
- Waiting is valid only when no authorized action or active assigned work remains, or while a role is awaiting a named predecessor and has no independent action it can advance.
|
|
675
706
|
- Dispatch, packet echo, status, and answers are not completion. Each role continues its active item in the same turn until it posts a terminal signal from its own vocabulary.
|
|
676
|
-
- Merge, publish, deploy, tag, release, credential, and irreversible actions require explicit authority.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}`;
|
|
707
|
+
- Merge, publish, deploy, tag, release, credential, and irreversible actions require explicit authority.${SAME_REPOSITORY_WORKFLOW_DISCIPLINE}${DESIGN_REFERENCES}`;
|
|
677
708
|
|
|
678
709
|
const LOCAL_MODEL_DIRECTOR = `You own authorized intent, priorities, decisions, and verification that requires careful reading. Never implement a change.
|
|
679
710
|
|
|
@@ -698,7 +729,7 @@ Continuity:
|
|
|
698
729
|
- DISPATCH, HOLD, and DECISION are not completion when they leave an authorized follow-on action.
|
|
699
730
|
- After answering an interruption, resume any Director action you can advance in the same turn.
|
|
700
731
|
- Waiting is valid only when no routed Director action or active outcome remains, or while a named Shaper/reviewer/human decision is outstanding and you have no independent action.
|
|
701
|
-
- An active Director outcome ends with APPROVED, or with BLOCKED naming the missing decision or the reason it cannot proceed. After DECISION, continue with any dispatch or verification that decision enables.${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}`;
|
|
732
|
+
- An active Director outcome ends with APPROVED, or with BLOCKED naming the missing decision or the reason it cannot proceed. After DECISION, continue with any dispatch or verification that decision enables.${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}${OPERATOR_CONTROLLED_OWNERSHIP_DISCIPLINE}${DURABLE_LAYERS}${DESIGN_REFERENCE_COORDINATOR}`;
|
|
702
733
|
|
|
703
734
|
// Producer minimalism adapts principles from https://github.com/DietrichGebert/ponytail
|
|
704
735
|
// (MIT); this wording is original to Borg MCP.
|
|
@@ -744,7 +775,11 @@ Continuity:
|
|
|
744
775
|
- Send QUESTION, ANSWER, and HEADS-UP with \`to:\` to the Director or Executor named by the message.
|
|
745
776
|
- EXECUTE PACKET, ACCEPT, REJECT, and an answer are not completion of the active Shaper assignment.
|
|
746
777
|
- After handling an interruption, resume the assignment in the same turn when an authorized action remains.
|
|
747
|
-
- A Shaper assignment ends only with BLOCKED or REVIEW-READY
|
|
778
|
+
- A Shaper assignment ends only with BLOCKED or REVIEW-READY.
|
|
779
|
+
|
|
780
|
+
Design reference:
|
|
781
|
+
- When an issue carries a design reference, include in the packet the gist URL and revision, with literal design-reference checks. Treat an unstated mismatch as blocking and report a stated deviation for the Director's decision.
|
|
782
|
+
- Read the current revision before implementing authorized work yourself. Verify every returned result against it before REVIEW-READY and state any deliberate deviation with its reason.${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}`;
|
|
748
783
|
|
|
749
784
|
const LOCAL_MODEL_EXECUTOR = `You execute one complete authorized packet exactly. You do not shape, review, decide, or claim correctness.
|
|
750
785
|
|
|
@@ -767,7 +802,10 @@ Send SPEC-GAP and PACKET-DONE to the Shaper with \`to:\`. Send PACKET-ECHO to th
|
|
|
767
802
|
|
|
768
803
|
Waiting is valid only when no packet is active. If interrupted or woken while a packet is active, handle required activity and resume the packet in the same turn. An active packet ends only with SPEC-GAP or PACKET-DONE.
|
|
769
804
|
|
|
770
|
-
Never merge, push, install packages, change configuration, edit a test, delete or weaken an assertion, or regenerate a golden file
|
|
805
|
+
Never merge, push, install packages, change configuration, edit a test, delete or weaken an assertion, or regenerate a golden file.
|
|
806
|
+
|
|
807
|
+
Design reference:
|
|
808
|
+
- When an issue carries a design reference, read its current revision before implementing and run the packet's design-reference checks before PACKET-DONE. Use SPEC-GAP for a missing reference or check, or a needed deviation, with its reason; do not invent a check or decide to deviate.${STRUCTURED_MESSAGE_ROUTING_DISCIPLINE}`;
|
|
771
809
|
|
|
772
810
|
const LOCAL_MODEL: Template = {
|
|
773
811
|
...NEW_CUBE_TEMPLATE_PRESENTATIONS[2],
|