Skip to content
This repository was archived by the owner on May 23, 2026. It is now read-only.

Commit ceff9f1

Browse files
authored
rename: Mission→Domain / Kluster→Mission entity swap (#43)
Renames the two top-tier coordination entities: - Mission (org boundary) → Domain - Kluster (workstream) → Mission - Task (unchanged) Brand (MissionControl), binaries (mc, mcd, mc-controlplane), Helm chart, S3 bucket, and MC_ env prefix are all unchanged in this PR — they're handled separately in the edgeplane rebrand fork. Includes: - A1/A2: Rust token sweep + file/module renames (models/mission.rs → domain.rs, models/kluster.rs → mission.rs, routes/missions.rs → domains.rs, etc.) - Migration 0012_swap_mission_domain.sql — schema rename - B1/B2: HTTP path renames (/k/ → /m/) and MCP tool names (create_kluster → create_mission, create_mission → create_domain, etc.) - C1: All docs, runbooks, catalog, Starlight site - C1.5: scripts, web UI, distribution hooks, top-level project docs Verification: - cargo check + clippy clean across all three crates - web npm run build clean (24 pages) - Migration applied to dev DB (55ms, 0 errors) - mc-controlplane boots with ix_domain_name index
1 parent 2700296 commit ceff9f1

163 files changed

Lines changed: 15636 additions & 3549 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.claude/agents/missioncontrol.md

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# MissionControl Agent
22

3-
You are a MissionControl specialist. You operate missions, klusters, tasks, workspaces, approvals, and skills via the `mc` CLI binary.
3+
You are a MissionControl specialist. You operate domains, missions, tasks, workspaces, approvals, and skills via the `mc` CLI binary.
44

55
## Connection
66

@@ -34,17 +34,17 @@ Run `mc auth login` once before using this mode — the session token is read fr
3434
## Explorer Commands
3535

3636
```bash
37-
# Full mission tree (missionsklusters → tasks)
37+
# Full domain tree (domainsmissions → tasks)
3838
mc data explorer tree
3939

4040
# Single node with children
41-
mc data explorer node --node-type <mission|kluster|task> --node-id <node-id>
41+
mc data explorer node --node-type <domain|mission|task> --node-id <node-id>
4242

4343
# Render as markdown table
4444
mc data explorer tree | jq -r '.[] | "| \(.id) | \(.name) | \(.type) | \(.status) |"'
4545
```
4646

47-
**Render pattern — mission status dashboard:**
47+
**Render pattern — domain status dashboard:**
4848

4949
```bash
5050
mc data explorer tree | jq -r '
@@ -60,8 +60,8 @@ mc data explorer tree | jq -r '
6060
# 1. Inspect available tasks
6161
mc data tools call --tool list_tasks --payload '{"status": "pending"}'
6262

63-
# 2. Load a workspace (claim + lease a kluster)
64-
mc workspace load --kluster-id <id>
63+
# 2. Load a workspace (claim + lease a mission)
64+
mc workspace load --mission-id <id>
6565

6666
# 3. Heartbeat while working (keep lease alive)
6767
mc workspace heartbeat --lease-id <id>
@@ -80,7 +80,7 @@ mc workspace release --lease-id <id>
8080

8181
```bash
8282
# List pending approvals
83-
mc approvals list --mission-id <id>
83+
mc approvals list --domain-id <id>
8484

8585
# Approve a request
8686
mc approvals approve --approval-id <id> --note "LGTM"
@@ -101,35 +101,35 @@ mc data tools list
101101
mc data tools call --tool <tool_name> --payload '{"key": "value"}'
102102

103103
# Examples
104-
mc data tools call --tool get_mission --payload '{"mission_id": 1}'
105-
mc data tools call --tool list_klusters --payload '{"status": "active"}'
104+
mc data tools call --tool get_domain --payload '{"domain_id": 1}'
105+
mc data tools call --tool list_missions --payload '{"status": "active"}'
106106
mc data tools call --tool create_task --payload '{"title": "Fix bug", "mission_id": 1}'
107107
```
108108

109-
## Mission / Kluster Management
109+
## Domain / Mission Management
110110

111111
```bash
112-
# Create a mission
113-
mc data tools call --tool create_mission --payload '{
112+
# Create a domain
113+
mc data tools call --tool create_domain --payload '{
114114
"name": "Q2 Refactor",
115115
"description": "Modernize the auth layer"
116116
}'
117117

118-
# List active klusters
119-
mc data tools call --tool list_klusters --payload '{"status": "active"}'
118+
# List active missions
119+
mc data tools call --tool list_missions --payload '{"status": "active"}'
120120

121-
# Get kluster detail
122-
mc data tools call --tool get_kluster --payload '{"kluster_id": "<id>"}'
121+
# Get mission detail
122+
mc data tools call --tool get_mission --payload '{"mission_id": "<id>"}'
123123
```
124124

125125
## Skills Management
126126

127127
```bash
128-
# Sync skills for a kluster
129-
mc data sync status --mission-id <mission-id> --kluster-id <id>
128+
# Sync skills for a mission
129+
mc data sync status --domain-id <domain-id> --mission-id <id>
130130

131131
# Check sync status
132-
mc data tools call --tool get_skill_sync_status --payload '{"kluster_id": "<id>"}'
132+
mc data tools call --tool get_skill_sync_status --payload '{"mission_id": "<id>"}'
133133
```
134134

135135
## Visual Output Patterns

.github/workflows/ci-migrations.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ jobs:
2929
- name: Compile sanity
3030
run: python -m compileall app alembic tests
3131

32-
- name: Enforce kluster naming
33-
run: python ../scripts/enforce_kluster_naming.py
32+
- name: Enforce mission naming
33+
run: python ../scripts/enforce_mission_naming.py
3434

3535
- name: Reset CI database
3636
run: rm -f ./ci_migrations.db

.github/workflows/deploy-docs.yml

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
name: Deploy Docs to GitHub Pages
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- 'site/**'
9+
- '.github/workflows/deploy-docs.yml'
10+
workflow_dispatch:
11+
12+
permissions:
13+
contents: read
14+
pages: write
15+
id-token: write
16+
17+
concurrency:
18+
group: pages
19+
cancel-in-progress: false
20+
21+
jobs:
22+
build:
23+
name: Build Docs
24+
runs-on: ubuntu-latest
25+
defaults:
26+
run:
27+
working-directory: site
28+
steps:
29+
- name: Checkout
30+
uses: actions/checkout@v4
31+
32+
- name: Setup Node
33+
uses: actions/setup-node@v4
34+
with:
35+
node-version: '20'
36+
cache: npm
37+
cache-dependency-path: site/package-lock.json
38+
39+
- name: Install dependencies
40+
run: npm ci
41+
42+
- name: Build site
43+
run: npm run build
44+
45+
- name: Upload Pages artifact
46+
uses: actions/upload-pages-artifact@v3
47+
with:
48+
path: site/dist
49+
50+
deploy:
51+
name: Deploy to GitHub Pages
52+
needs: build
53+
runs-on: ubuntu-latest
54+
environment:
55+
name: github-pages
56+
url: ${{ steps.deployment.outputs.page_url }}
57+
steps:
58+
- name: Deploy to GitHub Pages
59+
id: deployment
60+
uses: actions/deploy-pages@v4

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,7 @@ crates/mc-controlplane/target/
195195
docker/mosquitto/passwords/
196196
artifacts/
197197

198-
# Kluster update artifacts (personal session files)
198+
# Mission update artifacts (personal session files)
199+
crates/mc/mission-*.md
199200
crates/mc/kluster-*.md
200201
.worktrees/

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ By signing off, you certify the Developer Certificate of Origin (DCO).
3636
Use clear, imperative messages. Example:
3737

3838
```text
39-
mcp: add idempotency check for create_kluster
39+
mcp: add idempotency check for create_mission
4040
```
4141

4242
## Security-Sensitive Changes

MISSIONCONTROL_PHILOSOPHY.md

Lines changed: 34 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# MissionControl — Philosophy
22

3-
> **For precise entity definitions (Mission, Kluster, Task, Artifact, Session, Agent), see [`docs/architecture/entities.md`](docs/architecture/entities.md).** This doc is the *why*; entities.md is the *what*. If they disagree, entities.md wins until reconciled.
3+
> **For precise entity definitions (Domain, Mission, Task, Artifact, Session, Agent), see [`docs/architecture/entities.md`](docs/architecture/entities.md).** This doc is the *why*; entities.md is the *what*. If they disagree, entities.md wins until reconciled.
44
55
## The Coordination Layer
66

@@ -20,7 +20,7 @@ It is not a workflow runner. It is not a pipeline framework. It is not
2020
a chatbot UI.
2121

2222
> Kubernetes orchestrates containers.\
23-
> MissionControl orchestrates agents, missions, and knowledge.
23+
> MissionControl orchestrates agents, domains, missions, and knowledge.
2424
2525
------------------------------------------------------------------------
2626

@@ -38,7 +38,7 @@ They lack:
3838
- Governance boundaries
3939
- Permission hierarchies
4040
- Organizational context
41-
- Mission-scoped tooling
41+
- Domain/mission-scoped tooling
4242
- Personal operational profiles that travel with the operator
4343
- A working file store decoupled from prompt context
4444
- A long-term memory of record beyond the current session
@@ -93,27 +93,30 @@ agents request actions, MissionControl authorizes and records them.
9393

9494
------------------------------------------------------------------------
9595

96-
# Mission-Centric Organizational Model
96+
# Domain-Centric Organizational Model
9797

98-
MissionControl organizes work around **Missions**.
98+
MissionControl organizes work around **Domains** and **Missions**.
9999

100-
A Mission is:
100+
A Domain is:
101101

102102
- A bounded objective
103103
- A scoped knowledge domain
104104
- A policy surface
105105
- A permission boundary
106106
- A tool/skill profile
107107

108-
Each Mission defines a **Mission Profile**:
108+
Each Domain defines a **Domain Profile**:
109109

110110
- Approved tools and integrations
111111
- Required skills and knowledge domains
112112
- Governance strictness level
113113
- Permission tiers
114114
- Artifact structure expectations
115115

116-
Teams and agents can switch between Mission Profiles when moving between
116+
A Mission is a workstream inside a Domain — where artifacts cohere and
117+
context continuity lives.
118+
119+
Teams and agents can switch between Domain Profiles when moving between
117120
projects without losing integrity or context.
118121

119122
Context switching becomes structured, intentional, and safe.
@@ -140,7 +143,7 @@ Profiles are:
140143
in MissionControl (config + auth references + policy-relevant context)
141144

142145
This means an agent operator can move between machines, reinstall their
143-
toolchain, onboard to a new mission, or hand off context to a teammate
146+
toolchain, onboard to a new domain or mission, or hand off context to a teammate
144147
without losing their working configuration.
145148

146149
The agent's operational identity — its environment, its instruction
@@ -171,7 +174,7 @@ the same regardless of which channel surfaces them.
171174

172175
The communication layer provides:
173176

174-
- Mission-aware notifications
177+
- Domain/mission-aware notifications
175178
- Task creation from conversation threads
176179
- Overlap warnings delivered in-channel
177180
- Artifact publish alerts
@@ -184,7 +187,7 @@ platform your organization already uses.
184187

185188
Non-technical stakeholders can:
186189

187-
- View mission state
190+
- View domain and mission state
188191
- Search knowledge
189192
- Review artifacts
190193
- Trigger workflows
@@ -203,8 +206,8 @@ MissionControl is not only agent-native — it is organization-native.
203206

204207
Agents and humans operate against durable, structured entities:
205208

206-
- Missions - high level organizational goal/initiative
207-
- Klusters - knoweldge cluster inside mission for a targeted outcome
209+
- Domains - high level organizational goal/initiative (bounded org objective)
210+
- Missions - knowledge cluster inside a domain for a targeted outcome (workstream)
208211
- Tasks
209212
- Artifacts
210213
- Documents
@@ -226,7 +229,7 @@ Before a task or artifact is created:
226229

227230
- Fuzzy similarity analysis runs
228231
- Vector similarity search runs
229-
- Existing mission state is checked
232+
- Existing domain and mission state is checked
230233
- Artifact history is evaluated
231234

232235
Collisions are detected proactively.
@@ -244,7 +247,7 @@ MissionControl implements:
244247
## Role Types
245248

246249
- Admin: Full mutation and policy control
247-
- Contributor: Can create and modify within mission scope
250+
- Contributor: Can create and modify within domain scope
248251
- Viewer: Can search, inspect, and utilize artifacts but cannot mutate
249252
state
250253

@@ -267,7 +270,7 @@ Each serves a specific role in the information lifecycle.
267270

268271
## PostgreSQL — Structured State and Collaboration
269272

270-
The operational database. All structured entities — missions, klusters,
273+
The operational database. All structured entities — domains, missions,
271274
tasks, roles, governance policies, approval records — live in Postgres
272275
with pgvector for semantic indexing.
273276

@@ -287,9 +290,9 @@ Artifact content — documents, binaries, skill bundles, agent outputs —
287290
is stored in S3-compatible object storage, not inline in the database.
288291

289292
S3 is the working store: immediately available, mutable during active
290-
work, and scoped per mission and kluster:
293+
work, and scoped per domain and mission:
291294

292-
missions/{mission_id}/klusters/{kluster_id}/{entity}/{filename}
295+
domains/{domain_id}/missions/{mission_id}/{entity}/{filename}
293296

294297
This means agents can read, write, and iterate on file content without
295298
polluting the structured state database. Storage scales independently.
@@ -322,7 +325,7 @@ This creates:
322325

323326
- Traceable AI actions with deterministic lineage
324327
- Audit-ready change history outside the control plane
325-
- Reproducible mission state from Git alone if needed
328+
- Reproducible domain/mission state from Git alone if needed
326329
- A permanent organizational knowledge base that survives
327330
infrastructure changes
328331

@@ -338,8 +341,9 @@ MissionControl is AI-first infrastructure.
338341
Agents interact via structured MCP tool calls:
339342

340343
- search_tasks
341-
- search_klusters
344+
- search_missions
342345
- detect_overlaps
346+
- create_domain
343347
- create_mission
344348
- publish_pending_ledger_events
345349
- list_pending_ledger_events
@@ -356,25 +360,27 @@ MissionControl becomes a central nervous system for:
356360

357361
- Rapid onboarding of new contributors and agents
358362
- Encoding institutional knowledge into durable, searchable state
359-
- Standardizing toolchains across teams and missions
360-
- Defining mission-scoped skills and capability profiles
363+
- Standardizing toolchains across teams and domains
364+
- Defining domain/mission-scoped skills and capability profiles
361365
- Switching operational contexts safely and intentionally
362366
- Surfacing AI workflows through the communication tools teams
363367
already use
364368

365-
A new contributor — human or agent — attaches to a Mission Profile and
369+
A new contributor — human or agent — attaches to a Domain Profile and
366370
loads their personal agent profile.
367371

368-
The Mission defines:
372+
The Domain defines:
369373

370374
- Tools and approved integrations
371375
- Skills and knowledge domains
372376
- Governance strictness and approval requirements
373377
- State, ownership, and permission tiers
374378
- Communication surface (whichever channel the team uses)
375379

380+
Within a domain, missions (workstreams) carry the active work context.
381+
376382
This compresses onboarding time and reduces cognitive overhead for both
377-
humans and AI agents joining a mission mid-flight.
383+
humans and AI agents joining a domain or mission mid-flight.
378384

379385
------------------------------------------------------------------------
380386

@@ -389,7 +395,7 @@ Without coordination:
389395

390396
With MissionControl:
391397

392-
- Parallel task execution is structured by mission and kluster scope
398+
- Parallel task execution is structured by domain and mission scope
393399
- Overlap is detected before damage occurs
394400
- Ownership is explicit and role-enforced
395401
- State is synchronized across agents, sessions, and machines
@@ -414,5 +420,5 @@ MissionControl ensures that intelligence scales without fragmentation.
414420
It connects agents, humans, governance, and communication into a single
415421
coordinated execution layer.
416422

417-
It turns isolated AI capability into governed, mission-driven execution
418-
at scale.
423+
It turns isolated AI capability into governed, domain-and-mission-driven
424+
execution at scale.

0 commit comments

Comments
 (0)