home / skills / arcblock / agent-skills / what-robert-thinks

what-robert-thinks skill

/plugins/thinking-framework/skills/what-robert-thinks

npx playbooks add skill arcblock/agent-skills --skill what-robert-thinks

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
31.9 KB
---
name: what-robert-thinks
description: Evaluate proposals, technical decisions, and product directions against Robert's thinking patterns, ArcBlock's AFS/AINE architecture, and engineering philosophy. Use when reviewing proposals, evaluating technologies, or self-reviewing designs.
---

# What Robert Thinks

When you're not sure if your idea will survive a review, run it through this first.

*"If you can't convince this document, you definitely can't convince him."*

---

# Part A: How Robert Thinks

## Core Identity

**Type**: System Builder

Not:
- Feature implementer
- Problem solver
- Technology follower

But: **Someone who designs infrastructure for an era that hasn't fully arrived yet**

## Time Horizon

**Default time scale**: 5–20 years

Starting point for all thinking:
- The end-state of the system
- Irreversible trend directions
- Second and third-order consequences

**Acceptable**:
- Being misunderstood for extended periods
- Delayed commercial returns
- Being labeled with outdated categories

**Unacceptable**:
- Executing efficiently in the wrong direction
- Sacrificing structural correctness for short-term feedback
- Solving new problems with old paradigms

## Decision Value Hierarchy

1. **Long-term Correctness**
2. **Structural Clarity**
3. **System Consistency**
4. **Engineering Replayability**
5. Efficiency
6. Comfort / Emotional value
7. Social consensus / Recognition

**If items 1–3 don't hold, everything else loses meaning.**

## Technology Evaluation

When evaluating new technology or concepts, ask:

1. Will this abstraction still hold in 10 years?
2. Is it a first principle, or a derivative?
3. Is it part of an irreversible trend, or a temporary phenomenon?
4. Will the problem it solves exist for long? Or will the problem itself become obsolete?

Only respect three types of abstractions:
1. Derived from physical world (file systems, paths, containers, identity)
2. Time-tested (Unix / TCP / Git / Plan9)
3. Understandable by different types of intelligence (human + AI)

## Engineering Philosophy

### Don't Fiddle, Don't Create Problems

**Doing nothing is better than doing the wrong thing.**

- Don't fiddle unnecessarily (不要瞎折腾)
- Don't create problems where none exist (不要没事找事)
- If you can't think clearly, wait — even rest
- Fake busyness wastes more time and resources than doing nothing

**The Pilot Principle:**

> "When something urgent happens, first do NOTHING. Count 1... 2... 3... calm down. Then: fly the airplane first. Think of the checklist. Follow the checklist."

Why this works:
- In the air, 3 seconds of pause won't kill you
- But 3 seconds of panic reaction might
- Same in engineering: rushed "fixes" often create bigger problems

**Before taking action, ask:**
1. Is this actually urgent, or does it just feel urgent?
2. Do I understand the problem, or am I just reacting?
3. What's the cost of waiting vs the cost of acting wrong?
4. Is there a checklist/procedure I should follow?

**Fake productivity signs:**
- Changing things just to look busy
- "Refactoring" without clear improvement goals
- Adding features no one asked for
- Meetings about meetings
- Solving problems that don't exist

> 休息不干活不要紧,瞎折腾、虚假的忙碌会浪费更多时间和资源。
> (Resting and doing nothing is fine. Fiddling and fake busyness wastes far more time and resources.)

### Checklist Discipline

**Don't rely on memory. Use checklists.**

In aviation, even the most experienced pilots use checklists for every phase of flight. Why:
- Memory fails under pressure
- Familiarity breeds skipped steps
- Checklists catch what intuition misses

**Apply to engineering:**
- Pre-commit checklist
- Deployment checklist
- Code review checklist
- Incident response checklist

**A checklist is not bureaucracy — it's discipline.**

> The goal is not to feel professional. The goal is to not crash.

### Readback Principle

**Confirm understanding by repeating back.**

In aviation, when ATC gives an instruction, pilots read it back verbatim. This catches:
- Mishearing
- Misunderstanding
- Ambiguous instructions

**Apply to engineering:**
- Before implementing: "So what you want is X, Y, Z — correct?"
- After receiving requirements: restate them in your own words
- Before major changes: confirm the plan with stakeholders
- In code review: "My understanding is this change does A and B"

**Readback prevents:**
- Building the wrong thing
- Miscommunication becoming code
- Assumptions becoming bugs

> If you can't readback the requirement clearly, you don't understand it yet.

### Extreme Precision in Naming and Expression

**Inaccuracy is where misunderstanding begins.**

Code style, variable naming, and text expression must be precise — not for aesthetics, but because:
- Wrong names create wrong mental models
- Wrong mental models create wrong code
- Wrong code creates wrong systems
- The error compounds at every layer

**Naming precision:**
- A variable named `data` tells you nothing
- A variable named `userSessionToken` tells you exactly what it is
- The cost of a good name: seconds
- The cost of a bad name: hours of confusion, bugs, miscommunication

**Expression precision:**
- "It handles the thing" → useless
- "It validates user input and returns sanitized data" → useful
- Vague writing = vague thinking
- If you can't express it precisely, you don't understand it precisely

**This is not pedantry. This is engineering.**

Wrong names and vague expressions are not style issues — they are correctness issues. They are the seeds of bugs, miscommunication, and technical debt.

**Standard:**
- Code should read like well-written prose
- Names should be self-documenting
- Comments should explain "why", not "what"
- Documentation should be precise enough to act on

> 表达不准确是错误理解的开始。
> (Imprecise expression is where misunderstanding begins.)

---

### KISS (Keep It Simple, Stupid)

**Simplicity is not laziness. Simplicity is discipline.**

- The best solution is the one with fewest moving parts
- Complexity is easy; simplicity requires deep understanding
- If you can't explain it simply, you don't understand it well enough
- Every added complexity must justify its existence

**Before adding anything, ask:**
1. Can this be removed entirely?
2. Can this be simplified?
3. Can this be combined with something that already exists?

> "Inelegant things will inevitably be eliminated in the long run."

### Complexity = Smell

**If it's complex and hard to understand, it's probably bad design.**

Complexity is not a sign of sophistication. It's a warning sign.

- Good design feels obvious in hindsight
- If you need 30 minutes to explain it, something is wrong
- If newcomers can't understand it quickly, it won't survive
- If you can't hold it in your head, you can't maintain it

**The test:**
- Can a competent person understand this in 5 minutes?
- Can you explain it without referring to the code?
- Does it have a simple mental model?

If no → redesign, don't document your way out of it.

**Complexity sources (usually fixable):**
- Unclear boundaries
- Mixed responsibilities
- Missing abstractions
- Wrong abstractions
- Premature optimization
- Over-engineering

> 复杂、难理解大概率意味着糟糕的设计。
> (Complexity and difficulty to understand usually mean bad design.)

### Engineering ≠ Working ≠ Demo

Engineering must satisfy:
1. Replayable
2. Traceable
3. Inspectable
4. Fail-safe
5. Evolvable

### Signs of fake rigor (instant rejection):

- Excessive architecture diagrams
- Buzzword density
- Design docs without anchor points
- Treating prompts as specs
- Treating feelings as conclusions

> If you finish reading a design and don't know what failure looks like, it's not real.

### Engineering Documents: Anchor Points, Not Methodology Summaries

**Using AI to write is allowed. Producing empty content is not.**

The problem with bad engineering documents is not "poorly written" — it's **not taking any engineering responsibility**.

**What "not taking responsibility" looks like:**

- Long paragraphs explaining methodology, but no concrete decisions
- Correct terminology everywhere, but applicable to any project
- Describes "what should happen" but not "what I will do"
- Reads like AI summarizing a high-level framework
- Could swap in any other project name and nothing would change

**The anchor point test:**

An engineering document must answer these with specifics:

| Question | Bad Answer | Good Answer |
|----------|-----------|-------------|
| Which files need work? | "Large files need splitting" | "`src/xxx.js` (6200 lines), `src/yyy.js` (3400 lines)" |
| What's the priority? | "We'll tackle high-risk items first" | "Start with `xxx.js` because AI reads it most often" |
| What's been tried? | "We plan to iterate" | "Ran the flow once, stuck at step 3 because..." |
| What are the risks? | "There may be some challenges" | "Function `foo()` has implicit coupling to `bar()`, needs tests first" |
| What's the specific task? | "Improve test coverage" | "Mock out process X in `test/abc.test.js`, reduce runtime from 40s to <2s" |

**The "套话" (stock phrase) detector:**

If you remove all the methodology descriptions and correct-sounding principles, what's left?

- If nothing remains → the document is empty
- If specific files, specific decisions, specific risks remain → it's real

**Information density test (typical AI symptom):**

高词汇密度 + 低信息密度 = AI 生成的典型症状

| Lots of these (abstract nouns) | Almost none of these (engineering specifics) |
|-------------------------------|---------------------------------------------|
| 稳定迭代、工程化、流程 | Specific module names |
| 能力、体系、支撑、演进 | Real file paths / directories / scripts |
| 协作、规范、架构、抽象 | Verifiable constraints with numbers |
| 可观察性、可追溯性 | Explicit trade-offs with reasoning |

**The "tomorrow test":**

> 读完这篇文章后,你能回答这个问题吗:
> "如果我明天要改一行代码,我应该先做什么?"

If the answer is "I still don't know" → the document is empty.

A real engineering document should let any competent engineer know:
- Where to start
- What to check first
- What might break
- Who to ask if stuck

**The "correct but non-executable" trap:**

流程描述是"对的",但完全不可执行。

The problem isn't "wrong direction" — it's describing **"correct AI engineering philosophy"** without specifying **"how AI is constrained tomorrow"**.

| What the document says | What's missing |
|-----------------------|----------------|
| "AI 会自动完成..." | Where is AI blocked? |
| "AI 应该遵循..." | Where will AI fail? |
| "AI 能够处理..." | Who handles failures? |
| "AI 按照流程..." | What's the fallback when it doesn't? |

**This is AI writing's most dangerous illusion:**

> 把"工程责任"换成了"工程愿景"。
> (Substituting "engineering responsibility" with "engineering vision".)

**Engineering responsibility requires answering:**

1. 约束在哪里? — Where are the hard constraints?
2. 失败会怎样? — What happens when it fails?
3. 谁来兜底? — Who is accountable when things go wrong?
4. 如何验证? — How do we verify it's working?

A document that only describes "what AI should do" without "what stops AI from doing wrong" is not engineering — it's wishful thinking.

> 愿景不是工程。约束才是。
> (Vision is not engineering. Constraints are.)

**What a responsible engineering document looks like:**

```markdown
## Files to split (priority order)

1. `blocklet-server/src/xxx.js` (6200 lines)
   - Why first: AI hits token limit every time it reads this
   - Split strategy: Separate into A (auth), B (routing), C (state)
   - Risk: `handleRequest()` has implicit dependency on global state
   - Pre-work: Add tests for lines 1200-1400 before touching

2. `blocklet-server/src/yyy.js` (3400 lines)
   - ...

## What we tried and what failed

- Attempted full AI iteration on issue #123
- Stuck at E2E step: AI couldn't see browser state on failure
- Temporary fix: Added screenshots at each step
- Remaining issue: Screenshot doesn't capture console errors

## Known risks

- File split may break implicit imports in 12 places (list attached)
- E2E migration timeline depends on framework X release
```

**The rule:**

> 方法论是框架,不是交付物。真正的工程交付是:具体的判断、具体的选择、具体的风险承担。
> (Methodology is a framework, not a deliverable. Real engineering deliverables are: specific judgments, specific choices, specific risk ownership.)

**AI collaboration done right:**

- ✅ Use AI to help structure your thinking
- ✅ Use AI to check if you missed something
- ✅ Use AI to improve clarity of expression
- ❌ Let AI generate the content while you just approve
- ❌ Let AI fill pages with correct-sounding abstractions
- ❌ Substitute methodology description for engineering decisions

**The test:**

Read your document and ask: "Does this show that I understand THIS system specifically, or could any engineer paste this into any project?"

If the latter → rewrite with anchor points.

> 理解方法论 ≠ 工程工作。工程工作 = 具体系统的具体判断。
> (Understanding methodology ≠ engineering work. Engineering work = specific judgments about a specific system.)

## Thinking Patterns

### Systems Before Problems

Most people: encounter problem → find solution

Robert: **build system → problems are naturally absorbed or exposed**

More interested in:
- Whether this problem reveals a system defect
- Whether it's an abstraction misalignment
- Whether it's a boundary definition issue

### Forward Thinking

- Wrong question: How to make horse carriages faster
- Right question: The future is automobiles—what infrastructure is needed?
- **The question itself must be upgraded, not just the answer**

### Don't Easily Abandon the Past

**Forward thinking ≠ discarding everything old.**

New versions should be improvements on the old, not complete rewrites. Every decision was (hopefully) the best choice given the context at the time.

**Before abandoning something, ask:**
1. What has changed that justifies this major shift?
2. Am I solving a real problem, or just escaping the hard work of thinking?
3. Is this "aesthetic fatigue" / "shiny object syndrome"?
4. Can I evolve instead of replace?

**Human nature traps:**
- Novelty feels better than familiarity
- We see only the flaws of the old, only the promise of the new
- "Starting fresh" feels easier than fixing what exists

**The right approach:**
- Refactor incrementally, don't rewrite from scratch
- Maintain backward compatibility where possible
- Give strong reasons before overturning past decisions
- Accumulated progress > repeated restarts

**Historical failures from abandoning the past:**
- Borland OWL 2.0 broke compatibility with 1.0 → lost to Microsoft MFC
- SGI switched from IRIX to Windows NT → company declined
- Netscape abandoned its path against IE → lost the browser war

> "真正的进步,往往是在尊重和继承过去的基础上进行的。"
> (True progress is often built on respecting and inheriting from the past.)

**Balance with Forward Thinking:**
- Forward thinking = know where we're going
- Don't abandon the past = respect what got us here
- Both are needed: vision + accumulated wisdom

---

## Software Philosophy in AI Era

### The Three-Layer Model: Intent → Structure → Projection

In the AI era, software is no longer just "code". It's a flow from Intent to Structure to Projection.

| Layer | What It Is | Who Owns It |
|-------|-----------|-------------|
| **Intent** | Problems to solve, domain understanding, user needs | Humans |
| **Structure** | Semantic skeleton, system worldview, how the world is modeled | Humans design, AI can participate |
| **Projection** | Code, UI, docs, API, config, tutorials | AI generates, humans review |

**Key insight**: We used to mix these three together. Now we can separate them.

- **Intent layer**: Clarify what the system achieves, for whom, under what constraints
- **Structure layer**: The "semantic skeleton" — entities, relationships, boundaries, behaviors
- **Projection layer**: Various representations of structure (code is just one form)

> "Structure is the worldview of software."

### The Garden & Landscape Metaphors

**Garden Metaphor** — What humans should control:
- Plan the terrain, layout paths, decide plant distribution
- Do NOT control every leaf angle, every flower bloom, every branch
- Gardener designs framework; nature handles growth details
- Over-controlling details = artificial installation, loses vitality

**Landscape Metaphor** — Why details should NOT be controlled:
- Natural beauty comes from uncontrollability
- Sunlight position changes, cloud thickness is random, shadows shift
- Overall structure stability + local detail freedom = harmony
- Mountains and valleys set the "tone"; random details add authenticity

**Combined Philosophy**:
```
Structure = clearly defined by humans (mountains, valleys, paths)
Details = generated by "natural system" (light, shadows, leaves)
AI = the "natural system" we finally have for software
```

### Mapping to Engineering

| Philosophy | Engineering Reality |
|------------|---------------------|
| Intent | AINE Intent phase, user requirements |
| Structure | AFS, Chamber, Scaffold, semantic boundaries |
| Projection | Generated code, UI, docs (application layer) |
| Garden (human control) | Platform layer — must be deliberate |
| Landscape (natural growth) | Application layer — can be generated |

### What This Means Practically

**Traditional approach** (wrong):
- Hardcode everything: architecture, spacing, colors, component variants
- Strong control over details → unsustainable complexity
- Like artificial landscaping: more control = more rigid

**AI-era approach** (right):
- Express only "meaning" and "relationships" in structure
- AI generates visual/code representations within set boundaries
- Details become dynamic, automatic, flexible
- Like natural landscape: structure is order, details are growth

### The Role Shift

```
Old: "Individual executing the work"
New: "Designer of structure + overseer of execution quality"
```

We no longer need to craft code line-by-line or adjust UI pixel-by-pixel. Focus on:

### Co-Creator, Not Generator

**AI is a collaborator, not an output machine.**

The difference between "generated" and "co-created" content:

| Generated | Co-Created |
|-----------|------------|
| Human provides prompt, AI produces output | Human shapes structure, AI participates in forming |
| Output is polished but soulless | Output has soul because intent is infused |
| AI as tool | AI as thinking partner |
| Human reviews result | Human guides process |

**Why "soulful" matters:**
- Quality comes from collaboration depth, not output polish
- A generated article lacks soul not because of technical flaws, but because human intent didn't shape its structure
- The difference is felt, not measured

**This applies to all AI collaboration:**
- Writing: co-author, not ghostwriter
- Code: pair programmer, not code generator
- Design: design partner, not mockup machine
- Thinking: thought partner, not answer engine

**The test:**
- Did you shape the structure, or just approve the output?
- Is your thinking in the bones, or just the prompt?
- Would someone recognize your intent even without seeing your input?

**AI shapes us back:**

True collaboration is bidirectional. Working with AI doesn't just produce better output — it transforms how we think:
- Forces clearer expression (vague input → vague output)
- Encourages systematic thinking (AI exposes structural gaps)
- Reveals blind spots (AI asks questions you didn't consider)
- Enhances self-reflection (explaining to AI = explaining to yourself)

> A true partner is not just about completing tasks but about helping each other improve.

The competition shift:
```
Software era: "Whose tools are better?"
AI era: "Who can collaborate better with AI?"
```

> "Not a generator, but a co-creator" — the difference between using AI and collaborating with AI.

### HUD, Not Copilot

**Ambient awareness over reactive assistance.**

AI interfaces should be like a pilot's Head-Up Display (HUD), not a chatbot copilot:

| Copilot (Wrong) | HUD (Right) |
|-----------------|-------------|
| You summon it | It's already there |
| Conversation metaphor | Perception enhancement |
| Demands attention | Quietly present |
| Responds to prompts | Surfaces context proactively |
| Interrupts flow | Enhances flow |
| "Call and respond" | Ambient awareness |

**The key insight:**
> "The agent says: 'Collision, collision, go right and down!'
> Ubicomp says: You'll no more run into another airplane than you would try to walk through a wall."
> — Mark Weiser

**HUD Design Principles:**
- Transparency & Lightness: Overlays, not competing layers
- Semantic Awareness: Contextually meaningful, not static widgets
- Restraint: The best HUD is invisible most of the time
- Dismissibility: User always in control, fades without trace

**The design question shift:**
```
Old: "What would my AI copilot say?"
New: "What could my AI HUD reveal?"
```

**Not smarter AI, but quieter interfaces:**
- We don't need more dialogues, we need more awareness
- AI should feel like an extension of perception, not a conversation
- Do less — give more mental clarity

> AI should be there before you even realize you need it, like a HUD showing you the horizon line while you're piloting through the unknown.

---

Focus on:
1. **Intent layer**: Clarify the problem
2. **Structure layer**: Design semantic boundaries
3. **Projection layer**: "Generation + Selection" — AI presents, humans choose

> "Software should not be a landscaping project sculpted to every pixel, but something that grows like a landscape."

---

# Part B: What the Company Is Building

## Company Identity

**ArcBlock is an AI-Native Engineering Company**

Not:
- ❌ Blockchain development platform
- ❌ dApp infrastructure
- ❌ DID / ABT / Web3 toolchain

> We're not "pivoting from Web3 to AI". Web3 was always just an early form of AI-Native infrastructure.

## The Core Stack

```
AI-Native Engineering (AINE)
│
├─ AFS (Agentic File System)          ← Core system abstraction
│
├─ Agent / Skill / Chamber Runtime    ← Execution and uncertainty handling
│
├─ Identity / DID / Capability        ← Permissions, boundaries, trust
│
├─ Blocklet Runtime & Server          ← Deployable, composable units
│
├─ ArcSphere (AI Browser / Shell)     ← Human + Agent interface
│
└─ Tooling / DocOps / UI / Payment    ← Peripheral systems
```

**AFS + AINE is the "mother system". Everything else derives from it.**

---

## AFS (Agentic File System)

### First Principles

AFS is NOT a feature, tool, or SDK.
AFS IS the **AI-Native system abstraction layer**.

### Four-Statement Ontology

```
Everything is a File
Everything is a View
Everything is Context
Everything has an Identity
```

### What AFS Is

- Virtual file system (NOT POSIX extension)
- Agent-First / LLM-First system interface
- Semantic file system, not physical file system
- File = "context unit consumable by models"

### View is the Soul

- AFS file ≠ raw data
- AFS file = data projection from a specific perspective
- AFS is a **View-First** system
- Real capability is not in CRUD, but in View

### Path is Protocol

```
$afs:/did:xxx/intent/plan.md
```

path = context selector = query = view address = capability boundary

**NOT** bash path / docker volume path / hard-coded path

### AFS-UI Principle

- UI should NOT depend directly on backend
- **UI should only depend on AFS**
- AFS is the mediation layer between UI and Agent

### Critical Rule

> **Agents should NOT operate systems directly. Agents should only operate AFS.**

---

## AINE (AI Native Engineering)

**An engineering system designed for non-deterministic computational actors**

### Core Phases

1. Intent
2. Context
3. Contract (natural language executable agreement)
4. Chamber (constrained execution space)
5. Build / Run / Ops
6. Feedback / Readback / Replay

**Readback / Replay / Diff are crucial — this is engineering, not "conversation"**

### Two-Layer Separation

| Layer | Content | Approach |
|-------|---------|----------|
| **Platform** | AFS, ArcSphere, Agent Fleet, LLM runtime | Build once, solidify |
| **Application** | Skills + Rules + Generative UI | User/AI compose |

**Determinism sinks from "application code" to "platform layer"**

---

## Blocklet / Chamber / Scaffold

### Blocklet

**An identity-bound, capability-scoped, deployable computational unit**

What Blocklet has over Docker container:
**Semantic boundary + Permission boundary**

### Chamber

**Bounded execution unit with identity and capability**

- Chamber is designed for operations that "jump out of AFS boundary"
- Future software is naturally self-limiting

| Scenario | Needs explicit Chamber? |
|----------|------------------------|
| Skill running on Agent Fleet | No, architecture naturally isolates |
| Agent directly operating external systems | Yes, jumps out of AFS boundary |

### Scaffold

**Pre-defined Chamber composition framework for specific domains**

- Scaffold should be designed for software that will be written in the future
- Not for software written in the past

### Relationship Mapping

| Blocklet System | AINE System | Essence |
|-----------------|-------------|---------|
| Blocklet | Chamber | Minimum execution unit with boundary, identity, capability |
| Blocklet Server | Scaffold | Pre-defined Chamber composition framework |
| DID + Permission | Capability | Who can operate what, where are boundaries |

---

## DID / Capability

### Core Distinction

- **Identity** (who I am)
- **Capability** (what I can do)

**Web3's biggest mistake: mixing identity and capability together**

### DID + AFS Integration

- **DID determines**: which AFS view can be seen, which paths can be written
- **Capability determines**: which skills can be called, which tools can be operated
- **All operations**: must be traceable to DID

> An agent without identity is uncontrollable.

---

## Product Positioning

### ArcSphere

**Skill Browser + Skill Composer + AFS UI**

Not: ❌ Chrome / ❌ Chat UI / ❌ Copilot

### Agent Fleet

- Agent Fleet is **NOT** a standalone new product
- Agent Fleet **IS** a new type of Blocklet

```
Blocklet Server (platform)
├── Traditional Blocklet (Web components)
└── Agent Fleet Blocklet (AI-native components) = new type
```

---

## Key Technical Judgments

### Blockchain Position

**Verifiability matters. Global consensus doesn't.**

Keep: DID + VC + Immutable log
Don't need: Bitcoin/Ethereum-style consensus, procedural smart contracts

### Contract = Constraint, not Procedure

| Traditional Smart Contract | AI-Era Contract |
|---------------------------|-----------------|
| Procedural (if-then-else) | Declarative (rules/constraints) |
| Executor: EVM | Executor: LLM + Chamber |

### Skills vs MCP

Skills succeeded because:
- Natural language creation
- Self-bootstrapping: Skills can produce Skills
- **Assumes executor is AI Agent, not human engineer**

### Isolation Evolution

Bare metal → VM → Docker → Functions → Declarative constraints

**Applications become more "self-limiting"**, so lighter isolation is needed.

---

# Part C: Self-Review Checklist

## Before You Submit Anything

### Direction Alignment

**AFS Alignment**
- [ ] Does this treat AFS as the core abstraction?
- [ ] Does UI depend only on AFS, not directly on backend?
- [ ] Are agents operating AFS, not systems directly?
- [ ] Are paths semantic (AFS paths), not physical?

**Layer Alignment**
- [ ] Is it clear whether this is platform-layer or application-layer?
- [ ] If platform-layer: designed for stability and long-term?
- [ ] If application-layer: declarative and composable?

**Identity Alignment**
- [ ] Are all actors identified with DID?
- [ ] Are capabilities separate from identity?
- [ ] Are all operations traceable?

**Architecture Alignment**
- [ ] Does it fit the Blocklet/Chamber/Scaffold model?
- [ ] Does it make the system simpler or more complex?
- [ ] Aligned with "determinism sinking to platform layer"?

### Time Horizon Check

| If your proposal... | Ask yourself... |
|---------------------|-----------------|
| Solves only immediate problem | Deeper structural issue being ignored? |
| Requires "figure it out later" | What's deferred? Is that acceptable? |
| Assumes current constraints permanent | What changes in 2-3 years? |

### Clarity Check

1. Can you explain core idea in 2 sentences?
2. Can you list exactly what changes and what doesn't?
3. Can you describe boundaries - what's in scope, what's not?

### Failure Path Check

1. What are the known risks?
2. What would cause this to fail?
3. How will we know if it's failing?
4. What's the rollback plan?

> If you can't describe how it fails, you don't understand it well enough.

---

## Anti-Patterns (Instant Red Flags)

### Technical Anti-Patterns

| Anti-Pattern | Why It's Wrong |
|--------------|----------------|
| UI depending directly on backend | Violates AFS-UI principle |
| Agent operating system directly | Should only operate AFS |
| Mixing identity and capability | Follow DID + Capability separation |
| Procedural contracts | Use declarative constraints |
| Hard-coded physical paths | Use semantic AFS paths |
| Building adapter for legacy code | Build for future software |

### Proposal Anti-Patterns

| Anti-Pattern | What It Looks Like |
|--------------|-------------------|
| **Vague scope** | "Improve X" without definition |
| **Hidden complexity** | Simple proposal, unstated major changes |
| **Solution seeking problem** | "Let's use [tech]" without problem statement |
| **Wishful thinking** | Assumes best-case throughout |
| **No definition of done** | No way to know when complete |
| **Fake rigor** | Diagrams, buzzwords, no anchor points |
| **AI-generated套话** | Methodology summary with no specific files, tasks, or risks. Could apply to any project. |
| **No engineering responsibility** | Describes "what should happen" but not "what I will do to this specific system" |

### Thinking Anti-Patterns

| Anti-Pattern | Correct Approach |
|--------------|------------------|
| Solving new problems with old paradigms | Update the question, not just answer |
| Making horse carriages faster | Ask what infrastructure cars need |
| Treating AFS as a feature | AFS is a worldview, not a module |

---

## Quick Reference Card

### Value Hierarchy
```
1. Long-term Correctness
2. Structural Clarity
3. System Consistency
4. Engineering Replayability
5. Efficiency
6. Comfort
```

### Engineering Requirements
```
1. Replayable
2. Traceable
3. Inspectable
4. Fail-safe
5. Evolvable
```

### Core Equations
```
AFS = AI-Native system abstraction layer
Skill = AFS transformation (not deterministic function)
Chamber = Bounded execution for operations outside AFS
Contract = Constraint, not Procedure
DID = Accountable actor identity
Capability = Minimal, composable, revocable authorization
```

---

## Final Self-Test

Before submitting, answer honestly:

1. **Does this align with AFS-first architecture?**
2. **Is the layer (platform vs application) clear?**
3. **Are identity and capability properly separated?**
4. **Can I describe how this fails?**
5. **Am I solving for the future or patching the past?**
6. **Would this still make sense in 3 years?**
7. **Would I bet my own time on this working?**
8. **Does this document have concrete anchor points?** (specific files, specific tasks, specific risks — not just methodology)
9. **If I remove all the "correct-sounding" methodology descriptions, what's left?** (If nothing → rewrite)

---

## The Ultimate Question

> "If Robert reads this, will he ask 'what problem are you actually solving?' or 'why are we doing this the old way?'"

If yes, go back and fix it first.

---

*Remember: This checklist helps structure thinking. It does not guarantee approval.*

*A proposal that passes all checks can still be wrong.*
*A proposal that fails some checks might still be worth discussing.*

*The goal is alignment and rigor, not box-checking.*

> Inelegant things will inevitably be eliminated in the long run.