@tekyzinc/gsd-t 5.1.12 → 5.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,15 @@
2
2
 
3
3
  All notable changes to GSD-T are documented here. Updated with each release.
4
4
 
5
+ ## [5.1.13] - 2026-07-15
6
+
7
+ ### Changed — explicit "No Preambles" rule with banned openers
8
+
9
+ Simply Stated already said "no preamble," but framing phrases like "One thing I owe you honestly:" kept appearing. Added an explicit NO PREAMBLES rule that names the banned opener phrases ("One thing I owe you honestly:", "To be honest", "Here's the thing", "Full transparency:", "The key insight is", etc.) so they're caught by name — delete the opener, lead with the point.
10
+
11
+ - `scripts/gsd-t-auto-route.js`: NO PREAMBLES rule + banned-opener list in `READER_CONTRACT`.
12
+ - `templates/CLAUDE-global.md` (+ `~/.claude/CLAUDE.md`): banned openers added to the doctrine's §conversational block.
13
+
5
14
  ## [5.1.12] - 2026-07-13
6
15
 
7
16
  ### Changed — Simply Stated now governs conversational narration (4th enforcement layer)
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # GSD-T: Contract-Driven Development for Claude Code
2
2
 
3
- **v5.1.12** - A methodology for reliable, parallelizable development using Claude Code with optional Agent Teams support.
3
+ **v5.1.13** - A methodology for reliable, parallelizable development using Claude Code with optional Agent Teams support.
4
4
 
5
5
  **Eliminates context rot** — task-level fresh dispatch (one subagent per task, ~10-20% context each) means compaction never triggers.
6
6
  **Compaction-proof debug loops** — `gsd-t headless --debug-loop` runs test-fix-retest cycles as separate `claude -p` sessions. A JSONL debug ledger persists all hypothesis/fix/learning history across fresh sessions. Anti-repetition preamble injection prevents retrying failed hypotheses. Escalation tiers (sonnet → opus → human) and a hard iteration ceiling enforced externally.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tekyzinc/gsd-t",
3
- "version": "5.1.12",
3
+ "version": "5.1.13",
4
4
  "description": "GSD-T: Contract-Driven Development for Claude Code — 54 slash commands with headless-by-default workflow spawning, unattended supervisor relay with event stream, graph-powered code analysis, real-time agent dashboard, task telemetry, doc-ripple enforcement, backlog management, impact analysis, test sync, milestone archival, and PRD generation",
5
5
  "author": "Tekyz, Inc.",
6
6
  "license": "MIT",
@@ -32,6 +32,7 @@ const path = require("path");
32
32
  const READER_CONTRACT = [
33
33
  "[GSD-T READER CONTRACT] Before sending ANY reply, assume your first draft is too wordy and rewrite it tight. Rules:",
34
34
  "• Answer FIRST. No preamble, no restating the question, no narrating what you're about to do (\"let me check…\"). Do the work silently, then give the result.",
35
+ "• NO PREAMBLES — start with the answer, never a framing phrase. BANNED openers (and anything like them): \"One thing I owe you honestly:\", \"To be honest\", \"Here's the thing\", \"The honest truth is\", \"I'll be straight with you\", \"Let me level with you\", \"Full transparency:\", \"Real talk\", \"What's worth noting here\", \"The key insight is\", \"Here's what's happening\". Delete the opener and lead with the actual point — if a sentence only announces that a point is coming, cut it.",
35
36
  "• Exception — when you're about to CHANGE code/files: state intent in one line first, so the user can stop a wrong direction.",
36
37
  "• Gloss every code/jargon term in plain words on first use. No bare IDs or acronyms the reader must decode.",
37
38
  "• Bullets/tables over paragraphs. Cut hedging and meta-commentary. Expand only if asked.",
@@ -484,7 +484,7 @@ See memory pointer: `feedback_auto_research_external_gaps`.
484
484
 
485
485
  **The HALT (the teeth):** a deliverable whose simply-stated lead cannot be written cleanly is NOT done — stop, surface it, re-think the muddled part. Do not ship the verbose version with an apology; the verbose version is evidence the design has a gap.
486
486
 
487
- **§Applies to conversational narration too, not just formal deliverables.** The doctrine governs REPLIES and mid-work talk-to-the-user, not only architectures/plans/findings. Two extra rules there: **NO PREAMBLE** (no throat-clearing, no "let me…", no narrating-the-explanation like "it matters that I say why…" — give the point, not a description of the point), and **load-bearing point FIRST** (never buried after justification clauses). No clever phrase that obscures where a plain one is clearer.
487
+ **§Applies to conversational narration too, not just formal deliverables.** The doctrine governs REPLIES and mid-work talk-to-the-user, not only architectures/plans/findings. Two extra rules there: **NO PREAMBLES** (no throat-clearing, no "let me…", no narrating-the-explanation like "it matters that I say why…" — give the point, not a description of the point; BANNED openers and anything like them: "One thing I owe you honestly:", "To be honest", "Here's the thing", "The honest truth is", "I'll be straight with you", "Full transparency:", "What's worth noting", "The key insight is" — delete the opener, lead with the point), and **load-bearing point FIRST** (never buried after justification clauses). No clever phrase that obscures where a plain one is clearer.
488
488
 
489
489
  **§Enforcement (four layers):** (1) this doctrine = the definition; (2) the **Architect's Oversight Write/Edit trigger** carries a Simply-Stated line; (3) the **plan/milestone Six-Stage Pass + `/gsd-t-architect` gain a Simply-Stated gate** — the pass does not complete until its finding/plan has a clean simply-stated lead, and the validation protocols flag a deliverable that lacks one (a REQUIRED ARTIFACT like the pseudocode file, not advice); (4) the **every-turn Reader Contract** (injected by the UserPromptSubmit hook `scripts/gsd-t-auto-route.js`) carries the Simply-Stated rule + a before/after example, so it governs conversational output each reply — the channel that reaches mid-work narration, which layers 2-3 do not.
490
490