Skip to content

docs: adopt IBM Design Thinking governance#302

Merged
flyingrobots merged 1 commit intomainfrom
feat/ibm-design-thinking-governance
Mar 25, 2026
Merged

docs: adopt IBM Design Thinking governance#302
flyingrobots merged 1 commit intomainfrom
feat/ibm-design-thinking-governance

Conversation

@flyingrobots
Copy link
Owner

PR Title

docs: adopt IBM Design Thinking governance

Summary

  • add ADR-0005 to make IBM Design Thinking the official planning and governance model for Git Mind
  • promote the governance decision into the canonical planning docs, including README, ROADMAP, and docs/README
  • mark the product frame document as canonical and tie it explicitly to the new ADR
  • update contributor and agent instructions so humans and LLMs frame work in terms of sponsor user, jobs, Hills, and Playbacks

Problem Statement

Git Mind's product frame had been clarified, but the planning discipline itself still lived mostly as prose and recent conversation context. That left too much room for drift back toward milestone theater, architecture-first planning, or backlog-only decision making. The repository needed a durable, visible rule that makes IBM Design Thinking part of the operating model instead of an optional preference.

ADR Compliance (Required)

Relevant ADR(s)

  • ADR-0002 (Worktree Independence and Materialization Architecture)
  • ADR-0003 (Graph-Native Content, Deterministic Materialization, and Workspace Bridge)
  • None

Compliance Declaration

  • This PR is fully compliant with all checked ADRs.
  • This PR intentionally deviates from one or more checked ADRs (complete Exception Request below).

Exception Request (Required if deviating)

  • ADR clause(s) deviated from: N/A
  • Why deviation is necessary now: N/A
  • Risk introduced by deviation: N/A
  • Mitigation and rollback plan: N/A
  • Follow-up ADR/issue to reconcile architecture debt: N/A

Architecture Laws Checklist (Hard Gates)

Canonical Truth & Context

  • Graph remains canonical truth (no dual truth with generated files).
  • No hidden worktree coupling introduced in core/domain/materialization paths.
  • Context-sensitive behavior is explicit (--at, --observer, --trust) or deterministically defaulted.
  • Resolved context is surfaced in output metadata where applicable.

Determinism & Provenance

  • Pure query/materialization paths remain deterministic for identical inputs.
  • Mutations/materializations include provenance receipts/envelopes where required.
  • Cache keys (if used) are derived only from semantic inputs + pinned versions.

Artifact Hygiene

  • No forbidden generated artifact paths are tracked.
  • Any generated artifacts intentionally tracked are in allowlisted publish paths only.
  • Pre-commit/CI policy checks updated or confirmed valid.

Contracts & Compatibility

  • Machine-facing outputs are schema-versioned.
  • Breaking contract changes include version bump + migration notes.
  • Backward compatibility impact is documented below.

Extension/Effects Safety (if applicable)

  • Extension behavior does not bypass capability restrictions.
  • Effectful operations use explicit plan/apply semantics and emit receipts.
  • Timeouts/resource bounds are defined for new script/effect paths.

Scope Control

  • PR is single-purpose/cohesive (no unrelated refactors).
  • Any non-essential refactor is split into separate PR(s) or explicitly justified.

Backward Compatibility

  • CLI/API contract changes: None.
  • Data model/storage changes: None.
  • Migration required?: No.
  • User-facing behavior changes: Contributors and agents now have an explicit, repo-level planning rule that product work must be framed with sponsor user, jobs, Hills, and Playbacks.

Test Plan (Required)

Unit

  • Added/updated tests for changed logic
  • Commands:
npm test -- test/diff.test.js

Integration

  • Added/updated integration tests
  • Commands:
# No integration test changes; this is a docs/governance PR.

Determinism

  • Determinism assertions included for relevant paths
  • Method:
  • Commands:
# Not applicable for this docs/governance change.

Contract/Schema

  • Schema validation updated/passing
  • Commands:
# No schema changes.

Policy Gates

  • Mechanical architecture gates pass
  • Commands:
git commit

Security / Trust Impact

  • Threat surface changed?: No runtime threat-model change.
  • Trust policy impact: None.
  • Provenance/audit impact: Planning governance is now documented and traceable via ADR-0005.
  • New failure modes introduced: None in product runtime; contributors may now need to reframe work that is not Hill-aligned.

Performance Impact

  • Hot path affected?: No.
  • Expected impact (latency/memory/io): None.
  • Benchmarks or profiling evidence: Not applicable.

Observability / Debuggability

  • Errors are actionable and include context.
  • Logs/diagnostics added or updated where needed.
  • git mind status / diagnostics updated if writeback/eventing behavior changed.

Operational Notes

  • Feature flag (if any): None.
  • Rollback strategy: Revert this commit if the governance language needs to be withdrawn or revised.
  • Operational caveats: The full npm test suite currently exhibits pre-existing timeout flake under full-suite load; targeted reruns such as npm test -- test/diff.test.js pass.

Linked Issues / Milestones


Reviewer Quick Verdict Block (for maintainers)

MUST (Hard Gates)

  • PASS

SHOULD (Quality)

  • PASS

Verdict

  • APPROVE

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 25, 2026

Summary by CodeRabbit

  • Documentation
    • Established IBM Design Thinking as the official planning framework.
    • Added mandatory planning gates requiring identification of sponsor user, job-to-be-done, Hill(s), and playback evidence before work commitment.
    • Updated contributor guidelines with pre-proposal checklists and planning sequencing requirements.
    • Formalized the planning model through governance documentation.

Walkthrough

This PR establishes IBM Design Thinking as Git Mind's official product planning and governance framework, introducing consistent requirements across documentation: identifying sponsor users, jobs-to-be-done, Hills, and Playback evidence before substantial work. Governance codified in new ADR-0005.

Changes

Cohort / File(s) Summary
Governance Foundation
docs/adr/ADR-0005.md, docs/adr/README.md
New ADR-0005 formalizes IBM Design Thinking as official planning framework with canonical sources, planning rules (sponsor user/job/Hill/playback mandates), and execution model. ADR README updated to reflect architecture-and-governance scope.
Core Planning Documentation
docs/design/git-mind.md, docs/README.md
Marked git-mind.md as canonical product frame; added cross-references to ADR-0005. Updated docs/README.md to list ADR-0005 and introduce "Contributor Rule" enforcing sponsor user → jobs → Hills → playback sequence.
User-Facing Guidelines
CONTRIBUTING.md, README.md, ROADMAP.md
Added IBM Design Thinking expectations section with pre-proposal checklist; new "Planning Framework" section explaining planning semantics; new "Planning Gate" acceptance checklist blocking fuzzy answers on sponsor/job/Hill/playback.
Agent/Team Process Docs
AGENTS.md, CLAUDE.md
Expanded REQUIRED BEHAVIOR with three new mandates; updated PLAN THE JOB procedure to insert IBM Design Thinking framing step ahead of approval; enhanced SITREPs with sponsor/Hill/playback requirements.

Sequence Diagram(s)

No diagrams applicable: changes are documentation-only with no code control flow, component interactions, or functional modifications.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~13 minutes

Possibly related PRs

  • #301: Modifies overlapping documentation surfaces (docs/design/git-mind.md, CONTRIBUTING.md, README.md, ROADMAP.md, docs/README.md), indicating coordinated governance/planning updates.

Poem

🏔️ From chaos springs Design Thinking's frame,
Sponsor and job and Hill stake their claim,
Playbacks prove progress, no blurry intent—
Governance carved, the fuzzy cement.
Git Mind now plans with pedantic precision,

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed Title clearly and specifically summarizes the main change: adopting IBM Design Thinking as the governance model. Concise, readable, avoids noise, and a teammate scanning history would immediately understand the primary intent.
Description check ✅ Passed Description is comprehensive and follows the template. Includes summary, problem statement, ADR compliance declaration, architecture checklist, scope control, backward compatibility, test plan explanation, security/performance/observability assessment, operational notes, and linked issues—all appropriate for a documentation/governance change.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/ibm-design-thinking-governance

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@flyingrobots flyingrobots merged commit bb4946f into main Mar 25, 2026
7 of 8 checks passed
@flyingrobots flyingrobots deleted the feat/ibm-design-thinking-governance branch March 25, 2026 05:08
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 18

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@AGENTS.md`:
- Around line 7-8: AGENTS.md currently adds a canonical governance link to
docs/adr/ADR-0005.md (and a product frame link to docs/design/git-mind.md) but
ADR-0005.md is not part of this PR; update AGENTS.md to avoid declaring
ADR-0005.md as the canonical governance within this change by either removing
the direct ADR-0005.md link, replacing it with a non-authoritative note (e.g.,
"see ADR-0005.md (external/under-review)"), or pointing to an in-scope
governance document; specifically edit the lines referencing
docs/adr/ADR-0005.md and docs/design/git-mind.md in AGENTS.md to reflect that
ADR-0005.md is not included in this PR and should not be treated as
authoritative until reviewed.
- Around line 28-30: The three "YOU MUST" mandates introducing "IBM Design
Thinking", "identify the sponsor user, job to be done, and relevant Hill(s)",
and "use Playbacks to judge whether work actually moved a Hill" are ambiguous
and not enforceable by an agent; change these lines to remove hard "YOU MUST"
enforcement and either (a) define "substantial product work" and what counts as
a Playback, or (b) convert them to guidance/requirements that delegate judgement
to a human sponsor. Specifically, replace the three mandates with clarified
language such as: 1) "For substantial product work (defined as changes that
affect >X users or alter core flows), prefer IBM Design Thinking when framing
work"; 2) "Document the sponsor user, job to be done, and relevant Hill(s) for
major initiatives"; and 3) "Use Playbacks or an equivalent human-validated
review to assess Hill movement (agents should flag candidates for Playback and
escalate to the sponsor for judgement)"; update the quoted phrases ("substantial
product work", "use Playbacks") so they have definitions or explicitly require
human validation.

In `@CLAUDE.md`:
- Around line 28-30: The CLAUDE.md mandates are ambiguous: explicitly define
what qualifies as "substantial product work" and reword the Playback requirement
so an autonomous agent's responsibilities are clear; update the phrase "when
framing substantial product work" to include a short threshold (e.g., scope,
estimated effort, or impact criteria such as >1 week of effort, >NLOC,
cross-team impact, or new customer-facing features) and change "use Playbacks to
judge whether work actually moved a Hill" to something actionable for agents
like "prepare Playback materials and document Playback outcomes" or "record
evidence for Playback review by stakeholders" so the policy clarifies who runs
Playbacks and what the agent must produce (refer to the exact strings
"substantial product work" and "use Playbacks to judge whether work actually
moved a Hill" to locate and replace).
- Around line 54-61: Update the PLAN THE JOB section so the IBM Design Thinking
framing items are enforced as a mandatory checklist (not optional bullets)
before proceeding: require the agent to complete and document the five framing
fields (sponsor user, job to be done, relevant Hill(s)/lane, playback evidence,
and any assumptions) and explicitly block step 3 ("Explain your plan to the user
and await approval") until that checklist is signed off; change the wording for
"playback evidence" to clarify it is predictive/speculative (e.g.,
"expected/playback evidence (predictive — to be validated during playback)") and
add a short gate sentence that the predicted playback evidence must be reviewed
and acknowledged by the user during the approval step.

In `@CONTRIBUTING.md`:
- Around line 18-36: Clarify what "substantial" means in the "IBM Design
Thinking Expectations" section by adding a brief definition and concrete
examples of changes that do and do not require the full
sponsor/user/Hill/playback checklist (e.g., typo fixes, docs tweaks, small
config flags = not substantial; feature additions, API changes, workflow changes
= substantial); and fix the ADR-0005 reference by either ensuring ADR-0005.md
exists and is up-to-date or replacing it with the correct ADR or doc link (or
noting it as "see design ADRs in docs/adr/") so the canonical planning
references are verifiable.

In `@docs/adr/ADR-0005.md`:
- Around line 76-78: The three numbered questions in ADR-0005 all start with
"Which," causing monotonous repetition; update the three items so they vary
sentence starters and tone—for example keep the first as "Which sponsor user
does this help?", change the second to "What job does it improve?" and the third
to "What Hill does it move, or which supporting lane does it strengthen?"—or use
similar rephrasings that avoid starting every line with "Which"; edit the list
entries (the three numbered questions) accordingly to improve readability while
preserving original meaning.
- Around line 112-122: The Enforcement section in ADR-0005.md is underspecified:
update the "Enforcement" block to define concrete mechanisms (who, when,
remediation, escape hatch, and ADR-change process); explicitly name responsible
roles (e.g., Maintainers or Security Team), the checkpoint timing (e.g., PR
gate, automated CI check, quarterly audit), the remediation workflow (e.g.,
create tracking issue, hotfix vs. staged remediation, SLA), an emergency escape
process for urgent fixes (temporary exception process + post-facto ADR review),
and the ADR amendment process (who can propose changes and how to ratify them);
reference the listed targets (README.md, docs/README.md,
docs/design/git-mind.md, ROADMAP.md, contributor instructions, agent
instructions) and add a line describing an automated compliance check and a
periodic review cadence so the enforcement text becomes actionable.
- Around line 35-37: ADR-0005 currently uses the term "Hills" without defining
it; update the "2. **Hills define strategic outcomes.**" paragraph in ADR-0005
to include a one-sentence inline definition (e.g., "Hills are ambitious,
time‑bound outcome statements with measurable indicators") and add a
parenthetical pointer to the Git Mind design documentation for full details
(referencing the Git Mind design doc rather than a full excerpt), so readers
unfamiliar with the framework understand what "Hills" means.
- Line 74: The ADR currently uses the term "significant work" without
definition; update ADR-0005 to either (A) add a concise definition under a new
"Definitions" or "Scope" paragraph that lists concrete criteria for "significant
work" (e.g., changes affecting user-facing behavior, API/DB/schema changes,
security/performance/cost impact, cross-repo or cross-team changes, PRs touching
>N files or >M lines, new external dependencies), or (B) explicitly require that
all changes must be framed but provide a documented fast-track exception process
for trivial fixes (typos, small doc updates, single-line formatting) including
who may approve exceptions; mention the term "significant work" and the chosen
thresholds/examples so reviewers can apply the gate consistently.

In `@docs/adr/README.md`:
- Around line 110-123: The PR adds an index entry for ADR-0005 but does not
include the actual ADR content, so add the missing ADR-0005 document (create the
full ADR-0005.md with the governance details summarized in the index) and ensure
all references in the ADR index point to that new ADR file; run the repository
verification script referenced in CLAUDE.md to validate presence/consistency.
Also fix the markdownlint issues in the ADR index README by adding the required
blank lines around the new headings (the ADR index headings and the IBM Design
Thinking summary) so the file passes static analysis.

In `@docs/design/git-mind.md`:
- Around line 3-6: The document currently promotes "Status: canonical product
frame" while linking planning governance to ADR-0005 (unverified); either remove
or soften the hard link to ADR-0005 or mark ADR-0005 as pending to avoid a
broken/misleading reference: update the "Status: canonical product frame" line
or the sentence referencing ADR-0005 so it reads conditionally (e.g., "planning
governance is defined in ADR-0005 (pending verification)") or point the link to
a draft/placeholder until ADR-0005 is reviewed; ensure you edit the exact
strings "Status: canonical product frame" and the ADR-0005 reference so readers
aren’t directed to an unverified doc.
- Line 264: The sentence that upgrades the "no-milestones" policy to an accepted
repository rule cites ADR-0005 but may be incorrect; verify that ADR-0005
actually codifies the no-milestones rule and if it does not, either update
ADR-0005 to include that rule or remove/soften the claim in
docs/design/git-mind.md (change "an accepted repository rule under [ADR-0005]"
to reflect the true status, e.g., "a recommended policy" or point to the correct
ADR), ensuring the reference to ADR-0005 and the phrase "no-milestones" are
consistent and accurate.

In `@docs/README.md`:
- Line 15: The README's "Canonical Product Docs" list now references ADR-0005
via the markdown link `[ADR-0005](./adr/ADR-0005.md)` but ADR-0005.md is missing
from the PR; either add the ADR-0005.md file to the adr/ directory (ensuring its
content matches the description "official planning and governance model") or
remove the `[ADR-0005](./adr/ADR-0005.md)` entry from the README (or replace it
with a placeholder note) so the documentation map does not point to a
non-existent phantom document.
- Line 62: README.md adds a link to ADR-0005 but the ADR-0005.md file isn't
included in this PR; either remove the [ADR-0005] reference from the "Hills and
Playbacks live in:" list in README.md or add the missing ADR-0005.md document to
this PR so the link resolves correctly—locate the reference in README.md (the
added line containing "ADR-0005") and either delete or replace it, or add the
ADR-0005.md file to the repo with the appropriate content and commit.

In `@README.md`:
- Line 156: The README references docs/adr/ADR-0005.md but that ADR file is not
present in this PR; either add the missing ADR file (create docs/adr/ADR-0005.md
with the planned ADR content) or remove the link from the Documentation list to
keep the repo consistent with the current PR; update the Planning Framework
cross-reference (where ADR-0005 is mentioned) accordingly so both locations
match.
- Around line 22-37: The README's "Planning Framework" section references
ADR-0005 as a canonical planning source but ADR-0005 is not included in this PR,
blocking verification; either add the missing ADR-0005 document to the PR or
remove/replace the ADR-0005 reference in the "Planning Framework" section so the
canonical sources are all verifiable, and update the README entry accordingly to
point to an included/accessible document (refer to the "Planning Framework"
header and the ADR-0005 reference when making the change).

In `@ROADMAP.md`:
- Around line 54-55: The ROADMAP's statement asserting "IBM Hills/Playbacks" as
"the repository's official planning model per ADR-0005" is authoritative but
references an ADR not included in this PR; either (a) soften the wording in
ROADMAP.md around the phrase "IBM Hills/Playbacks" and the citation to ADR-0005
to make it advisory (e.g., "aligned with ADR-0005" or "per ADR-0005 (see linked
doc)"), or (b) include ADR-0005 (docs/adr/ADR-0005.md) in this PR so the
reference is verifiable; update the text accordingly and ensure the ADR-0005
reference is accurate and present.
- Around line 81-90: The "Planning Gate" section uses softer phrasing ("we
should be able to answer") and repetitive question starts; update the header
block so the gate is unambiguously mandatory by changing "we should be able to
answer" to "we must answer" (or equivalent) and reword the four checklist items
under the "Planning Gate" header to remove monotony—keep content identical but
vary phrasing (e.g., "Which sponsor user benefits?", "What user job is
improved?", "Which Hill or supporting lane is advanced?", "What playback
evidence will demonstrate success?") and retain the final blocking sentence ("If
those answers are fuzzy, the work is not ready for planning commitment yet") to
preserve the hard gate.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 361f36cd-e7d0-4910-99b7-52540e2a9a69

📥 Commits

Reviewing files that changed from the base of the PR and between f3d36ce and f7b2915.

📒 Files selected for processing (9)
  • AGENTS.md
  • CLAUDE.md
  • CONTRIBUTING.md
  • README.md
  • ROADMAP.md
  • docs/README.md
  • docs/adr/ADR-0005.md
  • docs/adr/README.md
  • docs/design/git-mind.md

Comment on lines +7 to +8
- Product frame: [docs/design/git-mind.md](docs/design/git-mind.md)
- Planning governance: [docs/adr/ADR-0005.md](docs/adr/ADR-0005.md)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Same critical dependency issue as CLAUDE.md.

Lines 7-8 add cross-references to docs/design/git-mind.md and docs/adr/ADR-0005.md, identical to CLAUDE.md:7-8. AGENTS.md is the operational orders for Codex (another agent), while CLAUDE.md is for Claude.

The same critical issue applies: ADR-0005.md is not in this PR's review scope, but this file establishes it as the canonical governance reference.

See CLAUDE.md:7-8 for the full analysis and verification script.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@AGENTS.md` around lines 7 - 8, AGENTS.md currently adds a canonical
governance link to docs/adr/ADR-0005.md (and a product frame link to
docs/design/git-mind.md) but ADR-0005.md is not part of this PR; update
AGENTS.md to avoid declaring ADR-0005.md as the canonical governance within this
change by either removing the direct ADR-0005.md link, replacing it with a
non-authoritative note (e.g., "see ADR-0005.md (external/under-review)"), or
pointing to an in-scope governance document; specifically edit the lines
referencing docs/adr/ADR-0005.md and docs/design/git-mind.md in AGENTS.md to
reflect that ADR-0005.md is not included in this PR and should not be treated as
authoritative until reviewed.

Comment on lines +28 to +30
- **YOU MUST** use IBM Design Thinking when framing substantial product work
- **YOU MUST** identify the sponsor user, job to be done, and relevant Hill(s) when planning
- **YOU MUST** use Playbacks to judge whether work actually moved a Hill
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Same ambiguity and enforceability issues as CLAUDE.md.

Lines 28-30 add REQUIRED BEHAVIOR mandates identical to CLAUDE.md:28-30:

  • "substantial product work" is undefined (line 28)
  • "use Playbacks to judge" is difficult for an agent to unilaterally execute (line 30)

See CLAUDE.md:28-30 for the full analysis and suggested fix.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@AGENTS.md` around lines 28 - 30, The three "YOU MUST" mandates introducing
"IBM Design Thinking", "identify the sponsor user, job to be done, and relevant
Hill(s)", and "use Playbacks to judge whether work actually moved a Hill" are
ambiguous and not enforceable by an agent; change these lines to remove hard
"YOU MUST" enforcement and either (a) define "substantial product work" and what
counts as a Playback, or (b) convert them to guidance/requirements that delegate
judgement to a human sponsor. Specifically, replace the three mandates with
clarified language such as: 1) "For substantial product work (defined as changes
that affect >X users or alter core flows), prefer IBM Design Thinking when
framing work"; 2) "Document the sponsor user, job to be done, and relevant
Hill(s) for major initiatives"; and 3) "Use Playbacks or an equivalent
human-validated review to assess Hill movement (agents should flag candidates
for Playback and escalate to the sponsor for judgement)"; update the quoted
phrases ("substantial product work", "use Playbacks") so they have definitions
or explicitly require human validation.

Comment on lines +28 to +30
- **YOU MUST** use IBM Design Thinking when framing substantial product work
- **YOU MUST** identify the sponsor user, job to be done, and relevant Hill(s) when planning
- **YOU MUST** use Playbacks to judge whether work actually moved a Hill
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Define "substantial product work" and clarify the Playback mandate.

Line 28 requires using IBM Design Thinking "when framing substantial product work," but "substantial" is undefined. This creates an ambiguity gap:

  • Does fixing a typo in docs require IBM Design Thinking framing?
  • Does adding a single function to an existing module require it?
  • Where is the threshold?

Line 30 mandates "use Playbacks to judge whether work actually moved a Hill," but Playbacks are typically collaborative review sessions involving human judgment. An autonomous agent cannot unilaterally execute a Playback. Consider rephrasing to clarify the agent's actual responsibility (e.g., "prepare Playback evidence" or "document Playback outcomes").

📋 Suggested clarification
-- **YOU MUST** use IBM Design Thinking when framing substantial product work
+- **YOU MUST** use IBM Design Thinking when framing product work that affects Hills, adds features, or changes user-facing behavior
-- **YOU MUST** use Playbacks to judge whether work actually moved a Hill
+- **YOU MUST** prepare Playback evidence to demonstrate whether work moved a Hill
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@CLAUDE.md` around lines 28 - 30, The CLAUDE.md mandates are ambiguous:
explicitly define what qualifies as "substantial product work" and reword the
Playback requirement so an autonomous agent's responsibilities are clear; update
the phrase "when framing substantial product work" to include a short threshold
(e.g., scope, estimated effort, or impact criteria such as >1 week of effort,
>NLOC, cross-team impact, or new customer-facing features) and change "use
Playbacks to judge whether work actually moved a Hill" to something actionable
for agents like "prepare Playback materials and document Playback outcomes" or
"record evidence for Playback review by stakeholders" so the policy clarifies
who runs Playbacks and what the agent must produce (refer to the exact strings
"substantial product work" and "use Playbacks to judge whether work actually
moved a Hill" to locate and replace).

Comment on lines +54 to +61
2. Frame the plan in IBM Design Thinking terms:
- sponsor user
- job to be done
- relevant Hill(s) or supporting lane
- playback evidence
3. Explain your plan to the user and await approval
4. Commit your approved plan to your memory banks
5. **Create a feature branch** — `git checkout -b feat/<topic>` — before writing any code
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick | 🔵 Trivial

Strengthen the planning gate and clarify the speculative nature of playback evidence.

The restructured PLAN THE JOB procedure now embeds IBM Design Thinking framing as step 2 (lines 54-58) with 5 sub-bullets. Step 3 (line 59) is "Explain your plan to the user and await approval."

The gate is implicit but not emphatic. The sub-bullet formatting might give the impression that the 5 framing items are optional or advisory rather than mandatory blockers for proceeding to step 3.

Additionally, line 58 asks the agent to identify "playback evidence" before the work is done. This is inherently speculative—the agent must predict what evidence would demonstrate that the work moved a Hill. That's valuable planning discipline, but the speculative nature should be acknowledged.

🔒 Suggested strengthening
 1. Before starting, use sequential thinking to make a plan
 2. Frame the plan in IBM Design Thinking terms:
    - sponsor user
    - job to be done
    - relevant Hill(s) or supporting lane
-   - playback evidence
-3. Explain your plan to the user and await approval
+   - playback evidence (predict what would demonstrate progress)
+3. **DO NOT PROCEED** until all 5 framing elements above are clear
+4. Explain your plan to the user and await approval
-4. Commit your approved plan to your memory banks
-5. **Create a feature branch** — `git checkout -b feat/<topic>` — before writing any code
+5. Commit your approved plan to your memory banks
+6. **Create a feature branch** — `git checkout -b feat/<topic>` — before writing any code
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@CLAUDE.md` around lines 54 - 61, Update the PLAN THE JOB section so the IBM
Design Thinking framing items are enforced as a mandatory checklist (not
optional bullets) before proceeding: require the agent to complete and document
the five framing fields (sponsor user, job to be done, relevant Hill(s)/lane,
playback evidence, and any assumptions) and explicitly block step 3 ("Explain
your plan to the user and await approval") until that checklist is signed off;
change the wording for "playback evidence" to clarify it is
predictive/speculative (e.g., "expected/playback evidence (predictive — to be
validated during playback)") and add a short gate sentence that the predicted
playback evidence must be reviewed and acknowledged by the user during the
approval step.

Comment on lines +18 to +36
## IBM Design Thinking Expectations

Git Mind officially uses IBM Design Thinking to guide product work.

Before proposing substantial product or workflow changes, identify:

- the sponsor user
- the job to be done
- the Hill this work moves, or the supporting lane it strengthens
- the playback evidence that would prove progress

Canonical planning references:

- [docs/design/git-mind.md](docs/design/git-mind.md)
- [ROADMAP.md](ROADMAP.md)
- [docs/adr/ADR-0005.md](docs/adr/ADR-0005.md)

GitHub issues are the execution backlog.
GitHub milestones are not the primary planning surface for this repository.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Contributor expectations are clear, but "substantial" is undefined and ADR-0005 is unverifiable.

Lines 18-36 introduce "IBM Design Thinking Expectations" for contributors. The section is well-structured and prescriptive, identifying the 4 required elements (sponsor user, job, Hill/lane, playback evidence) before proposals.

Two issues:

  1. "Substantial" is undefined (line 22): "Before proposing substantial product or workflow changes" leaves ambiguity. What threshold defines "substantial"? Does fixing a typo count? Does adding a CLI flag count? Contributors need clearer guidance.

  2. ADR-0005 dependency (line 33): The section lists ADR-0005.md as a canonical planning reference, but ADR-0005.md is not in this PR's review scope. If it doesn't exist or contradicts this guidance, contributors will be confused.

📋 Suggested clarification for "substantial"
-Before proposing substantial product or workflow changes, identify:
+Before proposing product or workflow changes that affect user-facing behavior, add features, or impact Hills, identify:
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@CONTRIBUTING.md` around lines 18 - 36, Clarify what "substantial" means in
the "IBM Design Thinking Expectations" section by adding a brief definition and
concrete examples of changes that do and do not require the full
sponsor/user/Hill/playback checklist (e.g., typo fixes, docs tweaks, small
config flags = not substantial; feature additions, API changes, workflow changes
= substantial); and fix the ADR-0005 reference by either ensuring ADR-0005.md
exists and is up-to-date or replacing it with the correct ADR or doc link (or
noting it as "see design ADRs in docs/adr/") so the canonical planning
references are verifiable.


- [ROADMAP.md](../ROADMAP.md)
- [Git Mind Product Frame](./design/git-mind.md)
- [ADR-0005](./adr/ADR-0005.md)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Consistent cross-referencing, same unverified dependency.

Line 62 adds ADR-0005 to the "Hills and Playbacks live in:" list, consistent with line 15 and the broader PR changes. The cross-referencing is thorough, but the underlying issue remains: ADR-0005.md is not in this PR's review scope.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/README.md` at line 62, README.md adds a link to ADR-0005 but the
ADR-0005.md file isn't included in this PR; either remove the [ADR-0005]
reference from the "Hills and Playbacks live in:" list in README.md or add the
missing ADR-0005.md document to this PR so the link resolves correctly—locate
the reference in README.md (the added line containing "ADR-0005") and either
delete or replace it, or add the ADR-0005.md file to the repo with the
appropriate content and commit.

Comment on lines +22 to +37
## Planning Framework

Git Mind officially uses **IBM Design Thinking** to guide product work.

That means:

- sponsor user and jobs come before architecture expansion
- Hills define the product outcomes we are trying to achieve
- Playbacks are how we decide whether recent work actually moved a Hill
- GitHub issues are the execution backlog, not the product strategy

Canonical planning sources:

- [docs/design/git-mind.md](docs/design/git-mind.md)
- [ROADMAP.md](ROADMAP.md)
- [docs/adr/ADR-0005.md](docs/adr/ADR-0005.md)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Planning Framework is clear but inherits the same critical dependency on the phantom ADR.

Lines 22-37 articulate the Planning Framework with admirable clarity:

  • Sponsor user and jobs precede architecture expansion (line 28)
  • Hills define outcomes (line 29)
  • Playbacks judge impact (line 30)
  • GitHub issues are execution, not strategy (line 31)

However, line 37 lists docs/adr/ADR-0005.md as one of the three canonical planning sources. As flagged in CLAUDE.md, ADR-0005.md is not included in this PR for review. The README now points users to a document I cannot verify exists or is coherent.

This is the same blocker as CLAUDE.md:7-8. See that comment for the verification script.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 22 - 37, The README's "Planning Framework" section
references ADR-0005 as a canonical planning source but ADR-0005 is not included
in this PR, blocking verification; either add the missing ADR-0005 document to
the PR or remove/replace the ADR-0005 reference in the "Planning Framework"
section so the canonical sources are all verifiable, and update the README entry
accordingly to point to an included/accessible document (refer to the "Planning
Framework" header and the ADR-0005 reference when making the change).

- [GUIDE.md](GUIDE.md)
- [GRAPH_SCHEMA.md](GRAPH_SCHEMA.md)
- [ROADMAP.md](ROADMAP.md)
- [docs/adr/ADR-0005.md](docs/adr/ADR-0005.md)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Consistent documentation reference, but same missing file issue.

Line 156 adds docs/adr/ADR-0005.md to the Documentation list, consistent with the Planning Framework section (lines 35-37). This reinforces the cross-referencing, but the underlying issue remains: ADR-0005.md is not in this PR's review scope.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` at line 156, The README references docs/adr/ADR-0005.md but that
ADR file is not present in this PR; either add the missing ADR file (create
docs/adr/ADR-0005.md with the planned ADR content) or remove the link from the
Documentation list to keep the repo consistent with the current PR; update the
Planning Framework cross-reference (where ADR-0005 is mentioned) accordingly so
both locations match.

Comment on lines +54 to +55
This is not an informal preference.
It is the repository's official planning model per [ADR-0005](docs/adr/ADR-0005.md).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Strong governance declaration, but the authority is unverifiable.

Lines 54-55 declare IBM Hills/Playbacks as "the repository's official planning model per ADR-0005." The wording is unambiguous and removes any wiggle room for treating this as advisory. Good governance posture.

However, once again, ADR-0005.md is not in this PR's review scope. This PR is building a governance fortress on a foundation I cannot inspect.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@ROADMAP.md` around lines 54 - 55, The ROADMAP's statement asserting "IBM
Hills/Playbacks" as "the repository's official planning model per ADR-0005" is
authoritative but references an ADR not included in this PR; either (a) soften
the wording in ROADMAP.md around the phrase "IBM Hills/Playbacks" and the
citation to ADR-0005 to make it advisory (e.g., "aligned with ADR-0005" or "per
ADR-0005 (see linked doc)"), or (b) include ADR-0005 (docs/adr/ADR-0005.md) in
this PR so the reference is verifiable; update the text accordingly and ensure
the ADR-0005 reference is accurate and present.

Comment on lines +81 to +90
## Planning Gate

Before significant work is accepted into an active Hill or supporting lane, we should be able to answer:

1. Which sponsor user does this help?
2. Which job to be done does it improve?
3. Which Hill does it move, or which supporting lane does it strengthen?
4. What playback evidence would show that this work actually helped?

If those answers are fuzzy, the work is not ready for planning commitment yet.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick | 🔵 Trivial

Planning Gate is a hard blocker—good—but the phrasing could be sharper.

Lines 81-90 introduce a Planning Gate with 4 mandatory questions (lines 85-88) and a clear failure condition (line 90: "If those answers are fuzzy, the work is not ready for planning commitment yet").

This is strong gate discipline. The "we should be able to answer" phrasing (line 83) is slightly softer than "we must answer," but line 90 tightens it by establishing that fuzzy answers block commitment.

Stylistic note: Lines 85-88 have repetitive sentence structure (three of four questions start with "Which"). Static analysis flagged this. It's not a functional issue, but it's mildly monotonous in a formal checklist.

✨ Optional stylistic improvement
 1. Which sponsor user does this help?
-2. Which job to be done does it improve?
-3. Which Hill does it move, or which supporting lane does it strengthen?
+2. What job to be done does it improve?
+3. What Hill does it move, or what supporting lane does it strengthen?
 4. What playback evidence would show that this work actually helped?
🧰 Tools
🪛 LanguageTool

[style] ~87-~87: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...hich job to be done does it improve? 3. Which Hill does it move, or which supporting ...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@ROADMAP.md` around lines 81 - 90, The "Planning Gate" section uses softer
phrasing ("we should be able to answer") and repetitive question starts; update
the header block so the gate is unambiguously mandatory by changing "we should
be able to answer" to "we must answer" (or equivalent) and reword the four
checklist items under the "Planning Gate" header to remove monotony—keep content
identical but vary phrasing (e.g., "Which sponsor user benefits?", "What user
job is improved?", "Which Hill or supporting lane is advanced?", "What playback
evidence will demonstrate success?") and retain the final blocking sentence ("If
those answers are fuzzy, the work is not ready for planning commitment yet") to
preserve the hard gate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant