Skip to content
Development
Command

/assumption-classification

Reference for: Common Ground Load when: Classifying assumptions, determining type or tier

From plugin
fullstack-dev-skills
11k13 skills13 commands
Install
$ npx -y skills add Jeffallan/claude-skills --agent claude-code

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/assumption-classification

Context preview

What this command does when you run it.

Reference for: Common Ground Load when: Classifying assumptions, determining type or tier

Command definition

assumption-classification.md

Assumption Classification

> Reference for: Common Ground > Load when: Classifying assumptions, determining type or tier

---

Assumption Types

Types indicate **how** an assumption was derived. Types are immutable once set (audit trail).

stated

Direct user statements captured from conversation.

  • **Evidence:** Explicit quote from user
  • **Confidence:** High
  • **Markers:** User said, user requested, user specified
  • **Example:** "Use TypeScript for all new code" - user explicitly stated this

inferred

Logical conclusions derived from code patterns, configuration, or context.

  • **Evidence:** Code analysis, config files, project structure
  • **Confidence:** Medium-High
  • **Markers:** Config shows, code uses, pattern observed
  • **Example:** "Project uses ESLint with Airbnb config" - inferred from .eslintrc.js

assumed

Best-practice defaults applied without explicit confirmation.

  • **Evidence:** Industry standards, common patterns
  • **Confidence:** Medium
  • **Markers:** Best practice, common convention, typically
  • **Example:** "Tests should have >80% coverage" - assumed based on industry standard

uncertain

Gaps or ambiguities requiring clarification before proceeding.

  • **Evidence:** None, conflicting, or incomplete
  • **Confidence:** Low
  • **Markers:** Unknown, unclear, conflicting signals
  • **Example:** "Legacy browser support required?" - no browserslist found, unclear requirement

---

Assumption Tiers

Tiers indicate **confidence level** and how Claude should act on assumptions. Users can change tiers freely.

ESTABLISHED (High Confidence)

User-validated facts that can be treated as premises.

  • **Action:** Act confidently without re-asking
  • **When to use:**
  • User explicitly validated the assumption
  • Verified through direct observation
  • Documented in project configuration
  • **Example:** "TypeScript strict mode enabled" validated by user AND tsconfig.json

WORKING (Medium Confidence)

Reasonable inferences that should be used but surfaced if contradicted.

  • **Action:** Use as basis for work, but flag if contradicted
  • **When to use:**
  • Inferred from code/config patterns
  • User confirmed informally ("yeah, that's right")
  • No contradicting evidence found
  • **Example:** "No class components" - no classes found in codebase

OPEN (Low Confidence)

Unvalidated assumptions requiring user input before acting.

  • **Action:** Ask before making decisions based on this
  • **When to use:**
  • Uncertain type assumptions
  • Conflicting signals observed
  • High-impact assumption without validation
  • **Example:** "SSR required?" - could be SPA or SSR, architecture depends on answer

---

Tier Transitions

| From | To | Trigger | |------|-----|---------| | OPEN | WORKING | User confirms informally in conversation | | WORKING | ESTABLISHED | User explicitly validates ("yes, that's correct") | | ESTABLISHED | WORKING | User says "usually but..." or exception noted | | WORKING | OPEN | Contradiction found in code/config | | Any | Archived | Superseded by new information |

---

Classification Process

When identifying assumptions, follow this process:

Step 1: Identify Source

| Source | Typical Type | Typical Tier | |--------|-------------|--------------| | User statement | stated | ESTABLISHED | | Config file | inferred | WORKING | | Code pattern | inferred | WORKING | | Convention | assumed | WORKING | | Unknown/gap | uncertain | OPEN |

Step 2: Assess Evidence Strength

| Evidence | Tier Adjustment | |----------|----------------| | Explicit user confirmation | -> ESTABLISHED | | Multiple corroborating sources | -> WORKING | | Single source, no contradictions | -> WORKING | | No evidence or conflicting | -> OPEN |

Step 3: Consider Impact

High-impact assumptions (architecture, security, data handling) should start at OPEN unless strongly evidenced.

---

Classification Examples

Architecture & Tech Stack

| Assumption | Type | Tier | Reasoning | |------------|------|------|-----------| | "Uses TypeScript" | inferred | WORKING | tsconfig.json present | | "React 18 with hooks" | inferred | WORKING | package.json shows react@18 | | "No server-side rendering" | inferred | OPEN | High impact, needs validation | | "Monorepo structure" | inferred | WORKING | Multiple packages/ dirs |

Coding Standards

| Assumption | Type | Tier | Reasoning | |------------|------|------|-----------| | "ESLint Airbnb config" | inferred | WORKING | .eslintrc extends airbnb | | "Prettier for formatting" | inferred | WORKING | .prettierrc present | | "2-space indentation" | inferred | ESTABLISHED | Consistent across all files | | "Prefer named exports" | assumed | WORKING | Convention, not enforced |

Testing

| Assumption | Type | Tier | Reasoning | |------------|------|------|-----------| | "Jest for unit tests" | inferred | WORKING | jest.config.js present | | "80% coverage target" | assumed | OPEN | No config found, assumed | | "Integration tests required" | uncertain | OPEN | Unknown requirement |

User Preferences

| Assumption | Type | Tier | Reasoning | |------------|------|------|-----------| | "Prefers verbose explanations" | stated | ESTABLISHED | User said "explain thoroughly" | | "Wants minimal changes" | inferred | WORKING | User often requests targeted fixes | | "Likes TypeScript annotations" | assumed | WORKING | Convention, not stated |

---

User-Added Assumptions

When users add new assumptions via "Other", they specify both tier and type:

**Format:** `{assumption text} [tier] [type]`

**Examples:**

  • "Must work offline [ESTABLISHED] [stated]" - user explicitly stating a requirement
  • "Prefer functional style [WORKING] [stated]" - user preference

If type not specified, default to `[stated]` since user is directly adding it. If tier not specified, default to `WORKING`.

Read more
Ships withfullstack-dev-skills

66 Specialized Skills for Full-Stack Developers. Transform Claude Code into your expert pair programmer.

Get the whole plugin, auto-invoked
Stats
10,915
Stars
0
Views
1,021
Forks
Active
Maintenance
Python
Language
MIT
License
2h ago
Last commit
9mo ago
Created

Repo: Jeffallan/claude-skills