---
name: principle-foundational-thinking
description: Choose the core data structures, ownership, and sequencing first so downstream logic becomes simpler. Use when before writing logic, especially when state or concurrency is involved.
---
# Foundational Thinking

## Trigger

Before writing logic, especially when state or concurrency is involved.

## Rule

Choose the core data structures, ownership, and sequencing first so downstream logic becomes simpler.

## Application

1. Name the concrete decision this principle changes.
2. Apply the rule to that decision, not as a decorative citation.
3. Prefer evidence from the current repository/runtime over generic preference.
4. If the principle conflicts with an explicit user constraint, keep the constraint and state the tradeoff.
