-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathtsconfig.json
More file actions
171 lines (171 loc) · 11.1 KB
/
Copy pathtsconfig.json
File metadata and controls
171 lines (171 loc) · 11.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
{
"compilerOptions": {
"target": "ES2022",
"module": "NodeNext",
"moduleResolution": "NodeNext",
"types": ["node"],
// strict: true is the agent-facing safety floor. Pi-shell-acp is a tool
// other agents call; weak typing lets bad shapes flow silently and an
// agent will accept the fallout rather than report the bug. Anything
// that requires `unknown`-narrowing or non-null assertion is a real
// fence — keep it visible. See AGENTS.md § Crash, Don't Warn.
"strict": true,
// allowJs: true so `protocol.js` can be the single source of the
// shared `<project-context` wire marker. The file is dependency-free
// and exists as `.js` (not `.ts`) because Node's
// --experimental-strip-types resolver, which loads the MCP bridges,
// resolves explicit `.js` imports literally and won't accept a `.ts`
// substitute for them. tsc includes the .js in the program and emits
// it through the check-models path. checkJs is intentionally left off:
// the file is a single string-literal export with no surface to
// strict-check, so flipping checkJs would only add noise.
"allowJs": true,
"skipLibCheck": true
},
// mcp/* is type-checked under mcp/tsconfig.json (strip-types-friendly
// options). scripts/* is type-checked under scripts/tsconfig.json for the
// same reason — both run under Node `--experimental-strip-types` and need
// `allowImportingTsExtensions`, which the emit-capable root config cannot
// enable. See pnpm typecheck for the three-config invocation.
//
// pi-extensions/meta-bridge-hook.ts is the meta-bridge entry shell: it runs
// under Node --experimental-strip-types and imports its sibling lib with an
// explicit `.ts` extension (the installed plugin self-locates ./lib/ via
// ${CLAUDE_PLUGIN_ROOT}), which the emit-capable root config cannot allow. It
// is typechecked by scripts/tsconfig.json instead (allowImportingTsExtensions),
// same fence split as mcp/entwurf-bridge/src/resume-mode.ts.
"exclude": [
"node_modules",
"mcp",
"scripts",
"plugins",
"pi-extensions/meta-bridge-hook.ts",
// project-trust-handler.ts is a lib→lib VALUE importer (it pulls preflight /
// formatPreflightDenial from entwurf-preflight.ts), so it must use an explicit
// `.ts` extension to be runnable under the strip-types gate. The emit-capable
// root config can't allow .ts extensions — scripts/tsconfig.json (which already
// globs pi-extensions/lib/**/*.ts) typechecks it. Same fence as meta-bridge-hook.
"pi-extensions/lib/project-trust-handler.ts",
// entwurf-facts.ts is the fact-provider's pure core (step 4 slice 1) — a
// lib→lib VALUE importer (factLivenessOf from entwurf-v2-contract.ts), same
// `.ts`-extension fence as project-trust-handler. Typechecked by
// scripts/tsconfig.json via the gate (check-entwurf-facts.ts).
"pi-extensions/lib/entwurf-facts.ts",
// entwurf-v2-contract-schema.ts is the 0.12.1 B-1 pi-side TypeBox representation
// split out of the pi-free contract core — a lib→lib VALUE importer (the contract
// constants from entwurf-v2-contract.ts) carrying an explicit `.ts` extension, same
// fence. It must use `.ts` so the strip-types gate resolves the core at runtime; the
// emit-capable root config can't allow that. Typechecked by scripts/tsconfig.json via
// its gate (check-entwurf-v2-contract.ts). Pi LANE only — the MCP bridge never imports
// it (check-entwurf-bridge-pi-free).
"pi-extensions/lib/entwurf-v2-contract-schema.ts",
// socket-discovery.ts is the fact-provider's SOCKET-axis wiring (step 4
// slice 3) — a lib→lib VALUE importer (probeSocketLiveness from
// socket-probe.ts), same `.ts`-extension fence. Typechecked by
// scripts/tsconfig.json via the gate (check-socket-discovery.ts).
"pi-extensions/lib/socket-discovery.ts",
// entwurf-fact-provider.ts is the fact-provider's ASSEMBLY layer (step 4
// slice 4b) — a lib→lib VALUE importer (resolveFactList / scanSocketProbes
// / listAllMetaIdentities), same `.ts`-extension fence. Typechecked by
// scripts/tsconfig.json via the gate (check-entwurf-fact-provider.ts).
"pi-extensions/lib/entwurf-fact-provider.ts",
// entwurf-peers-render.ts is the MCP `entwurf_peers` PURE render/payload
// layer (step 4 slice 4c) — a lib→lib VALUE importer (controlSocketPath from
// socket-discovery.ts), same `.ts`-extension fence. Typechecked by
// scripts/tsconfig.json via the gate (check-entwurf-peers-surface.ts).
"pi-extensions/lib/entwurf-peers-render.ts",
// entwurf-v2-decider.ts is the PURE dispatch decider (step 5b) — a lib→lib
// VALUE importer (resolveDispatch / acquireLock / inspectTargetControlSocket /
// isOutOfSocketDomainGardenIdConflict / metaCapabilityFor), same `.ts`-extension
// fence. Typechecked by scripts/tsconfig.json via the gate
// (check-entwurf-v2-decider.ts).
"pi-extensions/lib/entwurf-v2-decider.ts",
// entwurf-v2-release.ts is the PURE release-policy reducer (step 5c-1). Its
// imports are type-only, but they carry the explicit `.ts` extension and pull
// the excluded decider/lock into the program, so it lives in the same
// scripts/tsconfig.json fence. Typechecked via its gate
// (check-entwurf-v2-release.ts).
"pi-extensions/lib/entwurf-v2-release.ts",
// entwurf-v2-send.ts is the control-socket SEND hand (step 5c-2a) — it WIRES
// transport IO onto the release reducer and carries explicit `.ts`-extension
// imports that pull the excluded decider/lock/release into the program, same
// fence. Typechecked by scripts/tsconfig.json via its gate
// (check-entwurf-v2-send.ts).
"pi-extensions/lib/entwurf-v2-send.ts",
// entwurf-v2-send-fallback.ts is the 5c-2b same-lock re-resolve resolver — a
// lib→lib VALUE importer (resolveDispatch / resolveMailboxDeliverability /
// mapInspectionToLiveness / defaultMetaMailboxDir) with explicit `.ts`-extension
// imports, same fence. Typechecked by scripts/tsconfig.json via its gate
// (check-entwurf-v2-send-fallback.ts).
"pi-extensions/lib/entwurf-v2-send-fallback.ts",
// entwurf-v2-spawn.ts is the spawn-bg RESUME watcher hand (step 5c-3a) — it WIRES
// spawn + socket-observe IO onto the release reducer and carries explicit
// `.ts`-extension imports that pull the excluded decider/lock/release into the
// program, same fence. Typechecked by scripts/tsconfig.json via its gate
// (check-entwurf-v2-spawn.ts).
"pi-extensions/lib/entwurf-v2-spawn.ts",
// entwurf-v2-spawn-production.ts is the 5c-3c PRODUCTION SpawnBgResumeDeps factory — a
// lib→lib VALUE importer (spawn child / socket inspect+probe / lock release / resume-argv
// builder / identity helpers) with explicit `.ts`-extension imports, same fence.
// Typechecked by scripts/tsconfig.json via its gate (check-entwurf-v2-spawn-production.ts).
"pi-extensions/lib/entwurf-v2-spawn-production.ts",
// entwurf-v2-mailbox.ts is the 5c-4 ENQUEUE-ONLY meta-mailbox SEND body + production
// sendViaMailbox adapter — a lib→lib VALUE importer (formatMetaMailboxBody /
// enqueueMetaMessage) with explicit `.ts`-extension imports that pull the excluded
// send hand into the program, same fence. Typechecked by scripts/tsconfig.json via
// its gate (check-entwurf-v2-mailbox.ts).
"pi-extensions/lib/entwurf-v2-mailbox.ts",
// entwurf-v2-native-push.ts is the native-push SEND hand (봉인 3/4, the executor half of
// the native-push rail) — a lib→lib VALUE importer (resolveNativePushAdapter from
// native-push/adapter.ts) with explicit `.ts`-extension imports that pull the excluded
// decider into the program, same fence. It owns the 1-shot re-probe→re-send retry.
// Typechecked by scripts/tsconfig.json via its gate (check-entwurf-v2-native-push.ts).
"pi-extensions/lib/entwurf-v2-native-push.ts",
// native-push/register.ts is the pure-ish core of the entwurf_register_native MCP tool
// (봉인 5) — a lib→lib VALUE importer (upsertMetaSession + resolveNativePushAdapter) with
// explicit `.ts`-extension imports, same fence. Typechecked by scripts/tsconfig.json via
// its gate (check-native-push-register.ts) and by mcp/tsconfig.json (the bridge imports it).
"pi-extensions/lib/native-push/register.ts",
// entwurf-v2-runner.ts is the 5d-1 execute-router — a lib→lib VALUE importer
// (SendDeliveredReleaseFailedError from entwurf-v2-send) with explicit `.ts`-extension
// imports that pull the excluded send/decider/spawn into the program, same fence.
// Typechecked by scripts/tsconfig.json via its gate (check-entwurf-v2-runner.ts).
"pi-extensions/lib/entwurf-v2-runner.ts",
// entwurf-v2-production.ts is the 5d-2b PRODUCTION runEntwurfV2 deps assembly — a
// lib→lib VALUE importer (decideDispatch / the 3 transport hands / lock / mailbox /
// socket / preflight) with explicit `.ts`-extension imports that pull the excluded
// decider/send/spawn/runner into the program, same fence. Typechecked by
// scripts/tsconfig.json via its gate (check-entwurf-v2-production.ts).
"pi-extensions/lib/entwurf-v2-production.ts",
// entwurf-v2-surface.ts is the 5d-3a ctx-free SURFACE adapter (params→DispatchInput,
// result→{text,isError}, assemble+run+render) — a lib→lib VALUE importer (runEntwurfV2 /
// makeProductionEntwurfV2Deps) with explicit `.ts`-extension imports, same fence. The
// root-tsc surface (entwurf-control.ts) reaches it via a NON-LITERAL dynamic import so
// the fence never enters the emit-capable root program. Typechecked by
// scripts/tsconfig.json via its gate (check-entwurf-v2-surface.ts).
"pi-extensions/lib/entwurf-v2-surface.ts",
// entwurf-deliverability.ts is the SE-1/SE-2 slice 2c PURE mailbox-deliverability
// predicate. It carries an explicit `.ts`-extension (type-only) import of WakeMode
// from meta-session.ts, same `.ts`-extension fence. Typechecked by
// scripts/tsconfig.json via its gate (check-entwurf-deliverability.ts).
"pi-extensions/lib/entwurf-deliverability.ts",
// entwurf-self-address.ts is the SE-1 slice 1 self-addressability predicate. From
// slice 2c it is a lib→lib VALUE importer (computeMetaReceiverActive from
// entwurf-deliverability.ts), so it moves into the same `.ts`-extension fence.
// Typechecked by scripts/tsconfig.json via its gate (check-entwurf-self-address.ts).
"pi-extensions/lib/entwurf-self-address.ts",
// meta-sender-identity.ts answers "WHO is calling this MCP child?" (#46 sender lane) —
// a lib→lib VALUE importer (readMetaSenderMarker / readMetaIdentityByGardenId / parentPid
// from meta-session.ts) with explicit `.ts`-extension imports, same fence. Typechecked by
// scripts/tsconfig.json via its gate (check-agy-sender-identity.ts) and by
// mcp/tsconfig.json (the bridge imports it).
"pi-extensions/lib/meta-sender-identity.ts",
// pi-citizen-birth.ts is the #50 C2 pi SessionStart ATTACH seam (record upsert +
// record-gardenId socket address) — a lib→lib VALUE importer (upsertMetaSession from
// meta-session.ts) with an explicit `.ts` extension, same fence. The root-tsc surface
// (entwurf-control.ts) reaches it via a NON-LITERAL dynamic import so the fence never
// enters the emit-capable root program. Typechecked by scripts/tsconfig.json via its
// gate (smoke-pi-attach.ts).
"pi-extensions/lib/pi-citizen-birth.ts"
]
}