@productbrain/mcp 0.0.1-beta.67 → 0.0.1-beta.69
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.
|
@@ -1698,7 +1698,10 @@ var fieldSchema = z6.object({
|
|
|
1698
1698
|
type: z6.string().describe("Field type: 'string', 'select', 'array', 'number', 'boolean'"),
|
|
1699
1699
|
required: z6.boolean().optional().describe("Whether this field is required"),
|
|
1700
1700
|
options: z6.array(z6.string()).optional().describe("Options for 'select' type fields"),
|
|
1701
|
-
searchable: z6.boolean().optional().describe("Whether this field is included in full-text search")
|
|
1701
|
+
searchable: z6.boolean().optional().describe("Whether this field is included in full-text search"),
|
|
1702
|
+
displayHint: z6.enum(["hero", "badge", "meta", "section", "hidden"]).optional().describe("V2 rendering hint: how the field should be displayed in Studio"),
|
|
1703
|
+
zone: z6.enum(["header", "body", "meta"]).optional().describe("V2 layout zone: where the field appears in the entry view"),
|
|
1704
|
+
colorMap: z6.record(z6.string()).optional().describe("V2 value-to-semantic-color mapping, e.g. { critical: 'danger', low: 'success' }")
|
|
1702
1705
|
});
|
|
1703
1706
|
var collectionsSchema = z6.object({
|
|
1704
1707
|
action: z6.enum(COLLECTIONS_ACTIONS).describe(
|
|
@@ -3236,7 +3239,18 @@ var IMPLEMENTATION_REVIEW_WORKFLOW_DESCRIPTOR = {
|
|
|
3236
3239
|
|
|
3237
3240
|
## Sub-Agent Classification (for test failures)
|
|
3238
3241
|
|
|
3239
|
-
When reviewing test results: (a) test staleness \u2014 code changed, test not updated; (b) regression \u2014 code broke behavior; (c) flaky/bad test \u2014 harness or timing issue
|
|
3242
|
+
When reviewing test results: (a) test staleness \u2014 code changed, test not updated; (b) regression \u2014 code broke behavior; (c) flaky/bad test \u2014 harness or timing issue.
|
|
3243
|
+
|
|
3244
|
+
## Structured Verdict (CRITICAL)
|
|
3245
|
+
|
|
3246
|
+
Round 05 MUST end with a structured verdict block containing exactly these five items:
|
|
3247
|
+
1. **Verdict:** Y (ship) or N (do not ship) \u2014 one word, no hedging.
|
|
3248
|
+
2. **What shipped:** One sentence describing what was built.
|
|
3249
|
+
3. **Why it matters:** One sentence on the problem this solves.
|
|
3250
|
+
4. **User benefit:** One sentence on the value for users.
|
|
3251
|
+
5. **How to validate:** One sentence on how to verify it works as intended.
|
|
3252
|
+
|
|
3253
|
+
This block is the final deliverable of the review. Everything else is supporting evidence.`,
|
|
3240
3254
|
rounds: [
|
|
3241
3255
|
{
|
|
3242
3256
|
id: "orient",
|
|
@@ -3300,10 +3314,10 @@ When reviewing test results: (a) test staleness \u2014 code changed, test not up
|
|
|
3300
3314
|
label: "Synthesis & Sign-Off",
|
|
3301
3315
|
type: "commit",
|
|
3302
3316
|
instruction: "Summarize the review. Answer: Does this bring us closer to our vision and make our code and architecture cleaner? Refactoring needed? Ship or conditional? End with BET/chain IDs.",
|
|
3303
|
-
facilitatorGuidance: "Present the full synthesis: standards pass/fail, code grade, test honesty, chain validation. Explicitly answer: Does this bring us closer to our vision and make our code and architecture cleaner? **Counter-Metric Mandate (STD-19):** For EVERY quantitative result you present, you MUST include: (1) the denominator \u2014 what is the total population measured, (2) the coverage/abstention rate \u2014 what was excluded, (3) at least one counter-metric that tells the opposite story (recall vs precision, error rate vs success rate), (4) the 'student exam' reframe \u2014 score on the full exam, not just questions answered. **Red-team your own synthesis:** Before presenting, ask yourself: 'What's the worst honest interpretation of these numbers? What metric looks good but hides a real problem? What would a skeptic challenge?' Present that alongside the headline. Recommend: ship, ship with conditions, or do not ship. CRITICAL: The output MUST end with one sentence: 'BET/feature IDs reviewed: [IDs]. [One-line summary].' Example: 'BET-xxx, STD-xxx reviewed. Conditional ship \u2014 fix [specific issues] and add [missing tests].'",
|
|
3317
|
+
facilitatorGuidance: "Present the full synthesis: standards pass/fail, code grade, test honesty, chain validation. Explicitly answer: Does this bring us closer to our vision and make our code and architecture cleaner? **Counter-Metric Mandate (STD-19):** For EVERY quantitative result you present, you MUST include: (1) the denominator \u2014 what is the total population measured, (2) the coverage/abstention rate \u2014 what was excluded, (3) at least one counter-metric that tells the opposite story (recall vs precision, error rate vs success rate), (4) the 'student exam' reframe \u2014 score on the full exam, not just questions answered. **Red-team your own synthesis:** Before presenting, ask yourself: 'What's the worst honest interpretation of these numbers? What metric looks good but hides a real problem? What would a skeptic challenge?' Present that alongside the headline. Recommend: ship, ship with conditions, or do not ship. CRITICAL: The output MUST end with one sentence: 'BET/feature IDs reviewed: [IDs]. [One-line summary].' Example: 'BET-xxx, STD-xxx reviewed. Conditional ship \u2014 fix [specific issues] and add [missing tests].' **Structured Verdict Block (REQUIRED):** After the full synthesis, present the verdict block with exactly 5 items: (1) Verdict: Y or N \u2014 one word. (2) What shipped: one sentence. (3) Why it matters: one sentence on the problem solved. (4) User benefit: one sentence on value for users. (5) How to validate: one sentence on verification. This block is the final deliverable. Everything else is supporting evidence.",
|
|
3304
3318
|
outputSchema: {
|
|
3305
3319
|
field: "synthesis",
|
|
3306
|
-
description: "Full review synthesis with BET/chain IDs",
|
|
3320
|
+
description: "Full review synthesis with BET/chain IDs and structured verdict block (verdict Y/N, what shipped, why it matters, user benefit, how to validate)",
|
|
3307
3321
|
format: "structured"
|
|
3308
3322
|
},
|
|
3309
3323
|
maxDurationHint: "5 min"
|
|
@@ -3314,7 +3328,7 @@ When reviewing test results: (a) test staleness \u2014 code changed, test not up
|
|
|
3314
3328
|
label: "Capture & Close",
|
|
3315
3329
|
type: "close",
|
|
3316
3330
|
instruction: "Finalize the review as an insight draft. Use session-wrapup. Thank the participant.",
|
|
3317
|
-
facilitatorGuidance: "Summarize the review for finalization. Complete the terminal round through `workflows action=checkpoint` with `isFinal=true` so the workflow substrate creates the draft insight record. Include: BET/feature IDs, verdict, key findings. Run session-wrapup before closing. Thank the participant. Remind them to commit-entry when ready.",
|
|
3331
|
+
facilitatorGuidance: "Summarize the review for finalization. Complete the terminal round through `workflows action=checkpoint` with `isFinal=true` so the workflow substrate creates the draft insight record. Include: BET/feature IDs, verdict, key findings, and the structured verdict block from Round 05. The insight description MUST include the 5-item verdict block (verdict Y/N, what shipped, why it matters, user benefit, how to validate). Run session-wrapup before closing. Thank the participant. Remind them to commit-entry when ready.",
|
|
3318
3332
|
outputSchema: {
|
|
3319
3333
|
field: "capture",
|
|
3320
3334
|
description: "Insight entry created, BET IDs referenced",
|
|
@@ -11741,4 +11755,4 @@ export {
|
|
|
11741
11755
|
SERVER_VERSION,
|
|
11742
11756
|
createProductBrainServer
|
|
11743
11757
|
};
|
|
11744
|
-
//# sourceMappingURL=chunk-
|
|
11758
|
+
//# sourceMappingURL=chunk-3HM3XRC7.js.map
|