Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 9 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,19 +124,23 @@ jobs:
node-version: '22'
cache: 'npm'
- run: npm ci
- name: 'Gate 5a: v19 capability contract drift'
run: npm run check:capabilities
- name: 'Gate 5b: Install pinned Wesley generator'
- name: 'Gate 5a: Install pinned Wesley generator'
run: >-
cargo install
--git https://github.com/flyingrobots/wesley.git
--rev 4891a631f888c5b2f70e117e3704538dd1362c2f
--locked
wesley-cli
- name: 'Gate 5c: Generated SDK source and reference drift'
- name: 'Gate 5b: Wesley vocabulary IR drift'
run: npm run check:vocabulary-ir
- name: 'Gate 5c: v19 capability artifact drift'
run: npm run check:capabilities
- name: 'Gate 5d: Generated SDK source and reference drift'
run: npm run check:sdk-fixture
- name: 'Gate 5d: Packed generated SDK with disposable real Git'
- name: 'Gate 5e: Packed generated SDK with disposable real Git'
run: npm run test:sdk-fixture
- name: 'Gate 5f: All twelve v19 acceptance gates'
run: npm run test:v19-acceptance

type-firewall-docs:
runs-on: ubuntu-latest
Expand Down
21 changes: 10 additions & 11 deletions ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,25 +109,24 @@ Full standard: [Systems-Style TypeScript](docs/SYSTEMS_STYLE_TYPESCRIPT.md).

## Public API surface

### `openWarp()`
### `Runtime`

The package root accepts an opaque `WarpStorage` and returns a frozen `Warp`:
The package root exports exactly one runtime value. `Runtime.open()` owns
production storage composition:

```typescript
import { openWarp } from '@git-stunts/git-warp';
import { GitStorage } from '@git-stunts/git-warp/storage';
import { Runtime } from '@git-stunts/git-warp';

const storage = await GitStorage.open({ cwd: '.' });
const warp = await openWarp({ storage, writer: 'agent-1' });
const team = await warp.timeline('team');
const runtime = await Runtime.open({ at: '.', writer: 'agent-1' });
const team = await runtime.lane('team');

// After the final lane operation:
await storage.close();
await runtime.close();
```

Application code writes with `timeline.write(intent)` and reads with
`timeline.read(reading)`. Formal coordinate reads and receipt inspection live
on the explicit `advanced` and `diagnostics` subpaths.
Application code writes validated Intents with `lane.write(intent)` and runs
Observers with `lane.observe(observer)`. Formal coordinate reads and Receipt
inspection live on the explicit `/advanced` and `/diagnostics` subpaths.

### Storage composition

Expand Down
304 changes: 11 additions & 293 deletions bin/cli/capabilities/V19CapabilityContract.generated.ts
Original file line number Diff line number Diff line change
@@ -1,296 +1,14 @@
/* @generated from v19-capabilities.json. Do not edit by hand. */
/* @generated from schemas/v19-public-vocabulary.graphql by Wesley. Do not edit. */

import { V19_MCP_CAPABILITIES } from './V19McpCapabilities.generated.ts';
import {
V19_PUBLIC_NOUNS,
V19_PUBLIC_VOCABULARY,
} from './V19PublicVocabulary.generated.ts';

export { V19_PUBLIC_NOUNS };

export const V19_CAPABILITY_CONTRACT = {
"version": "git-warp.capabilities/v19",
"cli": [
{
"command": "write",
"summary": "Write one Intent to a Lane.",
"usage": "git warp write --lane <name> [--strand <name>] --intent <json>"
},
{
"command": "observe",
"summary": "Run one bounded Observer over a Lane.",
"usage": "git warp observe --lane <name> [--strand <name>] --observer <id> --reading <json>"
},
{
"command": "fork",
"summary": "Fork a Lane into a named strand Lane.",
"usage": "git warp fork --lane <source> --name <strand>"
},
{
"command": "settle",
"summary": "Preview or apply an immutable Settlement plan.",
"usage": "git warp settle preview --source <lane> --strand <name> --target <lane> | settle apply --plan <path>"
},
{
"command": "receipt",
"summary": "Render a canonical Receipt envelope.",
"usage": "git warp receipt show --input <path|->"
},
{
"command": "doctor",
"summary": "Diagnose the local Runtime and Lane.",
"usage": "git warp doctor --lane <name>"
},
{
"command": "repair",
"summary": "Apply one explicit Runtime repair.",
"usage": "git warp repair --lane <name> --action materialization"
},
{
"command": "audit",
"summary": "Verify the local Runtime audit trail.",
"usage": "git warp audit --lane <name> [--writer <id>]"
},
{
"command": "mcp",
"summary": "Serve the v19 capabilities over MCP stdio.",
"usage": "git warp mcp --repo <path> --writer <id>"
}
],
"mcp": [
{
"name": "warp_lane_describe",
"description": "Describe one Runtime Lane.",
"inputSchema": {
"type": "object",
"properties": {
"lane": {
"type": "string",
"minLength": 1
},
"strand": {
"type": "string",
"minLength": 1
}
},
"required": [
"lane"
],
"additionalProperties": false
}
},
{
"name": "warp_intent_write",
"description": "Write one validated Intent to a Lane and return its canonical Receipt.",
"inputSchema": {
"type": "object",
"properties": {
"lane": {
"type": "string",
"minLength": 1
},
"strand": {
"type": "string",
"minLength": 1
},
"intent": {
"type": "object"
}
},
"required": [
"lane",
"intent"
],
"additionalProperties": false
}
},
{
"name": "warp_observation_start",
"description": "Start one bounded Observation and retain its Readings for transport.",
"inputSchema": {
"type": "object",
"properties": {
"lane": {
"type": "string",
"minLength": 1
},
"strand": {
"type": "string",
"minLength": 1
},
"observerId": {
"type": "string",
"minLength": 1
},
"reading": {
"type": "object"
}
},
"required": [
"lane",
"observerId",
"reading"
],
"additionalProperties": false
}
},
{
"name": "warp_observation_read",
"description": "Read the next bounded transport batch from an Observation.",
"inputSchema": {
"type": "object",
"properties": {
"observationId": {
"type": "string",
"minLength": 1
},
"cursor": {
"type": "string",
"minLength": 1
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 256
}
},
"required": [
"observationId"
],
"additionalProperties": false
}
},
{
"name": "warp_observation_cancel",
"description": "Cancel and discard one retained Observation transport.",
"inputSchema": {
"type": "object",
"properties": {
"observationId": {
"type": "string",
"minLength": 1
}
},
"required": [
"observationId"
],
"additionalProperties": false
}
},
{
"name": "warp_receipt_get",
"description": "Return one canonical Receipt retained by this MCP server.",
"inputSchema": {
"type": "object",
"properties": {
"receiptRef": {
"type": "string",
"minLength": 1
}
},
"required": [
"receiptRef"
],
"additionalProperties": false
}
},
{
"name": "warp_settlement_preview",
"description": "Preview an immutable Settlement plan between two Lanes.",
"inputSchema": {
"type": "object",
"properties": {
"sourceLane": {
"type": "string",
"minLength": 1
},
"sourceStrand": {
"type": "string",
"minLength": 1
},
"targetLane": {
"type": "string",
"minLength": 1
}
},
"required": [
"sourceLane",
"sourceStrand",
"targetLane"
],
"additionalProperties": false
}
},
{
"name": "warp_settlement_apply",
"description": "Revalidate and apply one retained immutable Settlement plan.",
"inputSchema": {
"type": "object",
"properties": {
"planRef": {
"type": "string",
"minLength": 1
}
},
"required": [
"planRef"
],
"additionalProperties": false
}
},
{
"name": "warp_doctor",
"description": "Diagnose one local Runtime Lane.",
"inputSchema": {
"type": "object",
"properties": {
"lane": {
"type": "string",
"minLength": 1
}
},
"required": [
"lane"
],
"additionalProperties": false
}
},
{
"name": "warp_repair",
"description": "Apply one explicit local Runtime repair.",
"inputSchema": {
"type": "object",
"properties": {
"lane": {
"type": "string",
"minLength": 1
},
"action": {
"type": "string",
"enum": [
"materialization"
]
}
},
"required": [
"lane",
"action"
],
"additionalProperties": false
}
},
{
"name": "warp_audit",
"description": "Verify the local Runtime audit trail.",
"inputSchema": {
"type": "object",
"properties": {
"lane": {
"type": "string",
"minLength": 1
},
"writer": {
"type": "string",
"minLength": 1
}
},
"required": [
"lane"
],
"additionalProperties": false
}
}
]
...V19_PUBLIC_VOCABULARY,
mcp: V19_MCP_CAPABILITIES,
} as const;
Loading
Loading