Merge Go frontend (apiserver + xcecli) into meson build

This commit is contained in:
Rongsong Shen 2026-04-14 11:20:17 +08:00
parent 43dc12a36c
commit c9dc8c4676
205 changed files with 30793 additions and 328 deletions

34
src/controller/CLAUDE.md Normal file
View file

@ -0,0 +1,34 @@
# XCE Controller
## Overview
C daemon managing cluster-level job and queue operations. Acts as the central coordinator between the scheduler, worker nodes, and the Go API server.
## Build
```bash
# From workspace root
nix develop
meson build && ninja -C build
```
## Architecture
Core source files handle distinct domains:
- `job.c` — Job lifecycle management
- `queue.c` — Queue state and control
- `cluster.c` — Cluster topology
- `dataex.c` — Data exchange with other daemons
Links against `libxce` from `src/lib/`.
## Conventions
- C standard: C99 or later
- Format with `clang-format`
- Component-specific headers in `include/`
- Shared types defined in `src/include/xce/` (libxce)
## Key Files
- `src/controller/` — Controller source files
- `include/` — Controller-specific headers
## See Also
- Shared library: `src/lib/CLAUDE.md`
- Root guidelines: `/workspace/CLAUDE.md`