cog
Cog Server Rewrite
#2641
Merged

Cog Server Rewrite #2641

tempusfrangit merged 80 commits into main from FFI
tempusfrangit
tempusfrangit tempusfrangit requested a review from markphelps markphelps 266 days ago
tempusfrangit tempusfrangit requested a review from michaeldwan michaeldwan 266 days ago
michaeldwan
markphelps
markphelps commented on 2026-01-16
markphelps
markphelps commented on 2026-01-16
tempusfrangit
mfainberg-cf mfainberg-cf force pushed from 26a9ea76 to 2488ab18 264 days ago
tempusfrangit tempusfrangit force pushed from 2488ab18 to fe208087 263 days ago
tempusfrangit tempusfrangit force pushed from fe208087 to 03a01585 263 days ago
markphelps
markphelps commented on 2026-01-16
mfainberg-cf
markphelps markphelps force pushed from dcdb338a to 004862ba 262 days ago
tempusfrangit tempusfrangit marked this pull request as ready for review 261 days ago
tempusfrangit tempusfrangit requested a review 261 days ago
tempusfrangit tempusfrangit force pushed from 2a2363f3 to 1fbc3db1 261 days ago
tempusfrangit Ignore local agent and mise configuration files
8e96810b
tempusfrangit Add Rust tooling tasks to mise configuration
867c7354
tempusfrangit Add Cargo workspace for Rust crates
3138595a
tempusfrangit Add coglet dependencies to Cargo.toml
d5b69149
tempusfrangit Add health and version foundation types
726e1453
tempusfrangit Add IPC bridge protocol and codec
e089c4ef
tempusfrangit Add Unix socket transport for slot IPC
38528bef
tempusfrangit Add Prediction state tracking and PredictionOutput
cc8f076a
tempusfrangit Add predictor traits and prediction lifecycle types
701cce8f
tempusfrangit Add permit pool with typestate for slot management
803a1362
tempusfrangit Add PredictionSlot combining Prediction and Permit
4747fcc6
tempusfrangit Add webhook sender with throttling and retry
e09e5ce7
tempusfrangit Add PredictionSupervisor for lifecycle management
dad0093f
tempusfrangit Add Orchestrator for worker subprocess lifecycle
4cef6bd5
tempusfrangit Add PredictionService for transport-agnostic prediction lifecycle
82c590ff
tempusfrangit Add HTTP transport layer with axum server and routes
3b7ec2b6
tempusfrangit Add worker subprocess types for PyO3 bindings
ca111200
tempusfrangit Add coglet-python crate with PyO3 bindings
34772074
tempusfrangit Add Python input/output processing infrastructure
8c86cfab
tempusfrangit Add full predictor and worker bridge implementation
1eb34b66
tempusfrangit Add type stubs and Python tests
91d014a5
tempusfrangit Add setup log hook and audit helper exports to coglet module
154a213b
tempusfrangit Upgrade PyO3 from 0.24 to 0.27
694df39b
tempusfrangit Install log writers and audit hook in worker startup
3947382c
tempusfrangit Add SetupError type for typed setup failures
7549ad25
tempusfrangit Add architecture documentation for coglet crates
1e747649
tempusfrangit Remove dead predict_fn code path from service
a5d67ceb
tempusfrangit Extract Orchestrator trait for testable service layer
9f964530
tempusfrangit Add comprehensive tests using MockOrchestrator
306ef966
tempusfrangit Remove panics from permit/slot.rs state transitions
b3f1fa2b
tempusfrangit Remove panics from orchestrator.rs
a870b586
tempusfrangit Remove panics from service.rs prediction locks
0a12c214
tempusfrangit Remove panics from coglet-python setup and mutex locks
3872cf47
tempusfrangit Remove panics from webhook, routes, and server modules
9cefa645
tempusfrangit Replace remaining panics with PyErr in coglet-python
01c84f0d
tempusfrangit Add Rust CI workflow and stub generation
e602efeb
tempusfrangit Apply cargo fmt formatting
7947b4c7
tempusfrangit Fix Rust CI: add cargo-binstall, uv sync for Python
c875f731
tempusfrangit Fix CI: resolve checkout and virtualenv issues
98b4a865
markphelps Replace boolean flags with Rust enums (#2643)
c52e58d1
markphelps Add Rust coglet integration to CI tests (#2644)
9f7b7e10
tempusfrangit cog-dataclass: fix Rust server predictor configuration
adcec699
tempusfrangit Enable Rust coglet server in integration tests
11a1243f
tempusfrangit Clarify SDK detection: PYDANTIC_V2 exists in both v1 and v2
f4a02521
tempusfrangit Exclude Rust coglet wheel from Go binary embedding
7e4912e5
tempusfrangit Fix type checking errors in cog http.py for Rust coglet integration
af5c684e
tempusfrangit tempusfrangit force pushed from 058b073f to af5c684e 261 days ago
tempusfrangit Remove embedded Python coglet wheel to avoid package name conflicts
d16f30bb
tempusfrangit Remove coglet wheel test references
9f06ccab
tempusfrangit Fix Path handling for data URLs in cog-dataclass
d4a158f2
mfainberg-cf mfainberg-cf force pushed from bad284be to d4a158f2 261 days ago
tempusfrangit cog-dataclass: allow non-BasePredictor classes and add tests
b5cf6bb0
tempusfrangit coglet: detect non-pydantic runtime via cog-dataclass inspector
534e7a0b
tempusfrangit cog-dataclass: accept local paths in Path.validate
f0bd8fa7
tempusfrangit coglet: fix spurious error log during normal shutdown
7d501a61
tempusfrangit coglet: use manylinux2014 for Python 3.8+ compatibility
25e737a7
tempusfrangit Linting fixes
351f9f77
tempusfrangit Use rustls with native OS certificate stores
4dabe06c
tempusfrangit Allow CDLA-Permissive-2.0 license in cargo-deny
e7fb7e9c
tempusfrangit Fix coglet-python test task to install dependencies
e0691849
tempusfrangit tempusfrangit force pushed from 766ce4e4 to 6c58f3de 260 days ago
tempusfrangit CI: Add coglet-python tests and ensure rust+binstall before mise
67b91255
tempusfrangit Fix coglet-python tests with dynamic port discovery and cog.yaml
7737c949
tempusfrangit Require Python 3.10+ for coglet (matching cog-dataclass)
8fbff109
tempusfrangit Skip integration tests with Python <3.10 or monobase for coglet (Rust)
48b2b7a9
tempusfrangit CI: Use zig cross-compilation for Linux coglet wheel build
794f7fcb
mfainberg-cf mfainberg-cf force pushed from 6c58f3de to 794f7fcb 260 days ago
tempusfrangit fixup! CI: Add coglet-python tests and ensure rust+binstall before mise
d3e753a0
tempusfrangit Fix Secret serialization and skip pydantic2_output for cog-dataclass
2c4f8942
tempusfrangit Fix OpenAPI schema generation for training mode in coglet
b2975983
tempusfrangit Fix validation error messages to match pydantic format
e3f74571
tempusfrangit Fix subprocess output corrupting control channel in coglet
af3eb364
tempusfrangit Fix validation error format to show simple field messages
d9963867
tempusfrangit tempusfrangit force pushed from 07983636 to e7a30149 260 days ago
tempusfrangit Fix TrainingOutput serialization for Pydantic v2 models
e3d60616
mfainberg-cf mfainberg-cf force pushed from e7a30149 to e3d60616 259 days ago
tempusfrangit Fix validation error formatting in coglet to show simple messages
69ee2264
tempusfrangit Fix capture thread feedback loop and update to bounded channels
968afdfe
tempusfrangit Update cog-dataclass test to expect new validation error format
fe46af40
tempusfrangit Fix blocking panic and add dropped log tracking
f0c4d6be
tempusfrangit Ship worker tracing logs over IPC with preserved targets
8e4477cf
tempusfrangit Prevent feedback loop in codec logging
bd4814d4
tempusfrangit Accumulate coglet server setup logs via tracing layer
23696a14
tempusfrangit Ensure 'Server ready' log is accumulated before stopping
b558a50e
tempusfrangit Stabilize coglet bindings runtime detection
49ea6467
tempusfrangit tempusfrangit force pushed from 764599c5 to 49ea6467 259 days ago
tempusfrangit Normalize coglet output serialization
d7699c29
mfainberg-cf mfainberg-cf requested a review from markphelps markphelps 259 days ago
mfainberg-cf mfainberg-cf enabled auto-merge (squash) 259 days ago
disabled auto-merge 259 days ago
Manually disabled by user
tempusfrangit tempusfrangit enabled auto-merge (squash) 259 days ago
markphelps
markphelps approved these changes on 2026-01-23
tempusfrangit tempusfrangit merged 1d220a6e into main 259 days ago
tempusfrangit tempusfrangit deleted the FFI branch 259 days ago

Login to write a write a comment.

Login via GitHub

Assignees
No one assigned
Labels
Milestone