Skip to content
Back to skills

066 Assumption Classification 01ed385d

ASecurity

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

  • 9 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 11, 2026
testingtypescriptreacttestingsecurity

Security analysis

A100/100

Scanned October 11, 2026

npx -y skills add tools-only/X-Skills --skill 066-assumption-classification_01ed385d --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 066 Assumption Classification 01ed385d?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for 066 Assumption Classification 01ed385d
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tools-only-066-assumption-classification-01ed385d/badge)](https://www.skillsdirectory.com/skills/tools-only-066-assumption-classification-01ed385d)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.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`.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.