@studio-foundation/contracts 0.3.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,5 @@
1
+ {
2
+ "enabledPlugins": {
3
+ "linear@claude-plugins-official": true
4
+ }
5
+ }
@@ -0,0 +1,33 @@
1
+ # @studio-foundation/contracts
2
+
3
+ Types et interfaces partagés par tous les packages Studio. ZERO dépendances. ZERO logique.
4
+
5
+ ## Règles
6
+
7
+ - Ce package n'a AUCUNE dépendance (pas de `@studio/*`, pas de libs externes)
8
+ - JAMAIS de logique — uniquement des types, interfaces, enums TypeScript
9
+ - Exception unique : `isStageGroup()` dans `pipeline.ts` (type guard pur, sans état)
10
+ - Tout changement ici impacte TOUS les autres packages — être conservateur
11
+ - Exporter tout depuis `index.ts`
12
+
13
+ ## Fichiers clés
14
+
15
+ - `pipeline.ts` — `PipelineDefinition`, `StageDefinition`, `StageGroup`, `StageHooks`, `ToolHookDef`, `StageHookDef`, `StartupCommand`, `isStageGroup()`
16
+ - `stage.ts` — `StageStatus`, `StageKind` (= string), `StageResult`
17
+ - `task.ts` — `TaskStatus`
18
+ - `agent.ts` — `AgentConfig`, `AgentProfile`, `ToolCall`
19
+ - `run.ts` — `PipelineRun`, `StageRun`, `TaskRun`, `AgentRun`, `AgentStatus`
20
+ - `validation.ts` — `OutputContract`, `ToolCallRequirements`, `ValidationResult`, `ValidationRule`
21
+ - `provider.ts` — `LLMRequest`, `LLMResponse`, `Message`, `ToolDefinition`
22
+ - `errors.ts` — `ErrorCode` (enum), `StudioError`
23
+ - `context-pack.ts` — `ContextPackDefinition`, `ResolvedContextPack`
24
+ - `tool-plugin.ts` — `ToolPluginDef`, `ToolCommandDef`, `ShellExecute`, `BuiltinExecute`, `ParameterDef`
25
+ - `runner-events.ts` — `RunnerCallbacks`, événements de streaming tool calls et tokens
26
+ - `spawner.ts` — `RunSpawner`, `SpawnConfig`, `SpawnResult`
27
+ - `integration-plugin.ts` — `IntegrationPluginDef`
28
+
29
+ ## Test
30
+
31
+ ```bash
32
+ pnpm test
33
+ ```