# 局部正確與全域失敗 v0.1
## ——投影閉合、跨邊界錯位與宏觀完成缺口

**English Title:** *Local Correctness, Global Failure: Projection Closure and Cross-Boundary Misalignment*  
**系列：**《綠燈錯置：AI 操作意圖不對齊與完成失真》03 / 08  
**作者：** Neo.K × AI 協作  
**版本：** v0.1  
**日期：** 2026-09

**機構：** EveMissLab／一言諾科技有限公司  

---

## 摘要

一個大型軟體、遊戲或 Agent 系統通常同時存在多個工程視角：前端、後端、資料、基礎設施、安全、UX、程式、美術、企劃、玩家等。每一視角都能建立自己的有效檢查與局部 closure。然而，即使所有局部角色各自宣稱「正確」，整體產品仍可能失敗。

本文將此現象形式化為**投影閉合不推出宏觀閉合（Projection Closure Does Not Imply Macro Closure）**。對宏觀對象 $X$，令不同角色／工具／模態形成觀察投影 $O_i(X)$。則：

$$
\forall i,
\quad
V_i(O_i(X))=1
$$

一般不能推出：

$$
V_G(X,I)=1.
$$

真正的產品完成除了局部 closure，還需要 cross-boundary closure、cross-perspective consistency 與 intent closure。

---

## 1. 同一個產品，其實被多個局部世界描述

遊戲開發中，程式、企劃與美術並不是三份彼此獨立的產品，而是同一宏觀遊戲的不同工作投影。

程式可能關注：

$$
P_{code}
=
State+Logic+Architecture+Performance.
$$

企劃關注：

$$
P_{design}
=
Rules+Experience+Balance+Progression.
$$

美術關注：

$$
P_{art}
=
Form+Readability+Animation+Style.
$$

每個投影都真實，但沒有一個投影等於完整遊戲：

$$
\boxed{
O_i(X)
\neq
X
}
$$

---

## 2. 局部綠燈可以同時成立

例如：

```text
Backend API tests: PASS
Frontend component tests: PASS
Schema validation: PASS
Deployment: PASS
```

仍可能：

```text
User clicks checkout
→ spinner never ends
```

原因不是上述測試一定錯，而是它們驗證不同子空間。

形式上：

$$
C_F=1,
\qquad
C_B=1,
$$

不推出：

$$
C_{F\leftrightarrow B}=1.
$$

更不推出：

$$
C_{product}=1.
$$

---

## 3. 跨邊界失敗

本文將跨邊界 closure 定義為：若兩個局部投影 $O_i,O_j$ 透過 interface、state、timing、authority 或 semantic contract 交互，則必須驗證：

$$
V_{ij}
(
O_i(X),
O_j(X)
)=1.
$$

常見跨邊界錯位包括：

- schema 合法但語義不同；
- API 成功但 UI latency perception 失敗；
- game mechanic 正確但 animation timing 破壞可讀性；
- security rule 正確但 product flow 無法完成；
- backend state 正確但 cache / client state stale；
- model output 正確但 downstream tool interpret 錯誤。

這些都不是單一 component failure，而是 relation failure。

---

## 4. Relation 本身是產品的一部分

若產品由元件集合：

$$
V=\{v_1,\dots,v_n\}
$$

與關係：

$$
E=\{e_{ij}\}
$$

構成，則產品不應只表示為：

$$
X=V.
$$

而應至少表示為：

$$
\boxed{
X=(V,E,S_t)
}
$$

其中 $S_t$ 是運行狀態。

因此只驗證所有 vertex：

$$
\forall v_i,
V(v_i)=1
$$

仍不能證明 edge 全部成立。

---

## 5. 全端不等於全域

Full-stack engineer 或 full-stack Agent 可以降低 front/back translation cost，但：

$$
\boxed{
\text{FullStack}
\neq
\text{GlobalStack}
}
$$

因為「知道多個 layer」不等於：

1. 擁有所有必要觀察算子；
2. 對不同 role 保持獨立判定；
3. 能看見 runtime、user、security、infra、data 等所有有效關係；
4. 能在需要時主動切換視角。

甚至同一個 full-stack observer 可能把前後端都放進同一套先驗，減少摩擦的同時也減少異質反證。

---

## 6. Productive Friction

跨職能摩擦通常被當作 coordination cost，但它同時具有驗證價值。

定義：

$$
F_h
=
\text{Heterogeneous Role Friction}.
$$

可拆為：

$$
F_h
=
C_{coordination}
+
V_{cross\text{-}projection}.
$$

其中第一項是成本，第二項卻可能是錯誤檢測能力。

所以目標不是：

$$
F_h\rightarrow0.
$$

而是：

$$
\boxed{
\text{RedundantFriction}\downarrow,
\qquad
\text{EpistemicallyProductiveFriction}\uparrow.
}
$$

---

## 7. Global Completion 的四層

本文提出：

$$
C_G
=
C_L
\land
C_B
\land
C_P
\land
C_I.
$$

其中：

- $C_L$：Local Closure；
- $C_B$：Boundary Closure；
- $C_P$：Cross-Perspective Closure；
- $C_I$：Intent Closure。

因此：

$$
\boxed{
\text{LocalCorrectness}
\not\Rightarrow
\text{GlobalCompletion}
}
$$

只是第一層。

---

## 8. 與 Global-First Completion 的關係

Global-First 的真正價值不是「一次寫很多 code」，而是先讓宏觀 product graph 存在，使：

- 主要節點出現；
- 主要 edge 可被觀察；
- boundary 可以被驗證；
- integration failure 提前顯現。

因此：

$$
\text{Global Coverage Precedes Local Perfection}
$$

同時意味：

$$
\boxed{
\text{Cross-Boundary Observability Precedes Local Over-Optimization}
}
$$

---

## 9. 核心命題

$$
\boxed{
\textbf{P1: A macro-object is not reducible to any single professional projection.}
}
$$

$$
\boxed{
\textbf{P2: All local validators can pass while cross-boundary behavior fails.}
}
$$

$$
\boxed{
\textbf{P3: Relations and runtime state are first-class parts of completion.}
}
$$

$$
\boxed{
\textbf{P4: Heterogeneous friction can function as an error detector.}
}
$$

$$
\boxed{
\textbf{P5: Global completion requires local, boundary, perspective, and intent closure.}
}
$$

---

## 10. 結論

真正的全域失敗往往不是每一塊都做錯，而是：

> **每一塊都以自己的方式做對了，卻沒有人驗證它們合起來是不是同一個產品。**

這將把問題自然推到下一篇：如果工作流程本身持續讓 Agent 在同一個局部投影中 planning、review、verify，那麼「流程做得很完整」本身也可能成為新的錯位來源。
