okto-pulse-core
Domain and application engine for Okto Pulse, with transport-neutral ports, contracts and MCP commands.
Ship with AI. Stay in control.
You probably want to install
okto-pulseinstead. This package is the internal engine. Theokto-pulsepackage provides the CLI, frontend, and everything you need to get started.
What's inside
- 0 SQLAlchemy models — Core owns no concrete relational mappings. This is checked by scanning for
__tablename__assignments anywhere undercore/; the Community edition owns the SQLAlchemy model and repository adapters. - 40 service classes — Full business logic with governance rules, board agent governance, resource propagation + lineage, bug-regression workflow, archive/restore, traceability and board-level resource readiness. Source: classes ending in
Serviceundercore/services. - 0 API route modules — Core owns application contracts and use cases, not concrete FastAPI routers. The count scans
core/api/*.py; Community owns the REST adapter and route modules. - 17 governance gates — Resource readiness, resource-to-task coverage, spec coverage, validation, evaluation, task completion, cognitive closeout, architecture-findings, evidence, bug traceability and sprint health controls.
- 312 MCP tools — Complete Model Context Protocol command catalog for AI agent integration, counted from the transport-neutral Core catalog after importing the server, including:
- Pipeline CRUD (Ideation, Refinement, Spec, Sprint, Card)
- Q&A and choice questions across every entity
- Mockups (HTML+Tailwind, sanitised) and Knowledge Bases at spec/refinement/card scope
- Decisions with supersedence and coverage gates
- Per-card Knowledge attachment lifecycle (
add_card_knowledgeand friends) - 62 Knowledge Graph tools (consolidation, query primary/power, health, dead-letter, schema-migrate, decay tick controllability, board rebuild and global discovery recovery preflight/confirm/run)
- Community runtime exposure: 312 core MCP tools, 0 community-only MCP tools
- Application composition contracts — edition-neutral runtime, auth, storage, persistence, graph, telemetry and transport ports; concrete app construction belongs to the edition
- Hexagonal backend ports — runtime, telemetry, repository/UoW and KG provider seams, plus the adapter readiness ledger, documented in
ARCHITECTURE.md - Knowledge Graph contracts and orchestration — graph schema vocabulary, query/consolidation semantics, deterministic + cognitive workers, 11 node types and 13 relationship types. Source:
len(KGEdgeType)incore/kg/schemas.py; the concrete LadybugDB/Kuzu board and global graph runtimes are supplied by the active edition - Bounded operational metric samples — governance, architecture, bug-regression, resource-lineage and global-discovery observability keep capped diagnostic samples. Global-discovery count APIs remain monotonic totals and do not derive totals from the retained sample ring.
Governance Gate Surface
Okto Pulse currently documents and enforces 17 named governance gates:
| Gate family | Gates |
|---|---|
| Resource readiness | Resource readiness; resource-to-task coverage |
| Spec coverage | Scenario/test coverage; functional requirement/business rule coverage; technical requirement/task coverage; API contract/task coverage; active decision/task coverage |
| Validation and evaluation | Spec validation; spec qualitative evaluation; task validation |
| Execution quality | Task start/spec readiness; task conclusion; cognitive closeout; architecture-findings done; test evidence; bug test-first/traceability |
| Sprint health | Sprint closure/evaluation |
The two execution-quality additions introduced in 0.2.3 — cognitive closeout (a done transition is blocked while active cognitive-consolidation items remain) and the architecture-findings done gate (active architecture warnings block spec/card done) — remain enforced in the current release.
Architecture
The core is a ports-and-policy package: it owns the SDLC domain, the governance gates and the Knowledge Graph contracts, and delegates every concrete mechanism (database, graph runtime, filesystem, HTTP, scheduler) to the active edition.
→ Architecture overview — layering, boundary governance (AF-20/21/22, AF-28/29/30/31), MCP composition helpers and the edition-ownership rules. → ARCHITECTURE.md — the deep hexagonal reference (ports, adapter readiness ledger, provider registry). → Relational ownership matrix — the executable AF-35 Core/edition ownership boundary and residual inventory.
Ports & Adapter Interfaces
Core defines ~100 Protocol contracts across 78 modules in okto_pulse/core/ports/ plus
30 Knowledge-Graph interfaces in okto_pulse/core/kg/interfaces/. Each one is a seam: core
declares what it needs; it never constructs a database, opens a file, resolves an environment
variable or speaks a wire protocol.
Unfilled slots fail closed (R-P2-03A-D) rather than falling back to a silent default.
→ Full port catalogue — every protocol with its method count and contract, grouped by persistence, KG storage/runtime, KG governance, delivery/workers, MCP/inbound, read models and telemetry.
Docker
This repo has no Dockerfile. The deployable artifact is a single image built from the sibling okto-pulse repo:
okto-pulse/Dockerfiletargetlocal-runtimebuilds wheels from this repo andokto-pulse/as siblings (used byokto-pulse/docker-compose.ymland the release pipeline's smoke build).okto-pulse/Dockerfiletargetpypi-runtimeinstallsokto-pulse==<version>from PyPI, which transitively pulls this package off PyPI per the floor inokto-pulse/pyproject.toml(used byokto-pulse/docker-compose.prod.yml).
To run the published image:
docker run -d --name okto-pulse \
-e HOST=0.0.0.0 -e MCP_HOST=0.0.0.0 \
-p 8100:8100 -p 8101:8101 \
-v okto-pulse-data:/data \
ghcr.io/oktolabsai/okto-pulse:latest
See okto-pulse/README.md for the full Docker quickstart, and okto-pulse/CLAUDE.md for the multi-stage build architecture.
Release Notes
Current: 0.3.1 — the quality-governance release. Core now provides receipt-backed ambiguity assessments and pinpoint findings, refinement research decision ledgers, curated Spec checklists, strict scenario-type contracts and their governed MCP/resource surfaces.
→ Full release notes — 0.3.1 and 0.3.0 changesets, plus 0.2.6, 0.2.5, 0.2.3, 0.2.2, 0.2.1, 0.2.0 and the 0.1.x line.
SaaS Closure Audit
The executable ownership matrix is generated by okto-pulse-saas-closure. Every transitional budget must remain zero; the command fails closed on import, dependency, adapter, wheel, or documentation drift.
| Surface | Core contract | Community/local adapter | SaaS swap target | Executable gates |
|---|---|---|---|---|
| Relational runtime | repository/UoW and schema lifecycle ports; no ad-hoc dialect or engine/session factory bypass | SQLite/SQLAlchemy adapters in community.adapters.sqlalchemy_* and relational_schema_lifecycle | SQLite -> Aurora/Postgres | run_relational_residue_gate, audit_dependency_conformance, audit_community_core_import_boundary |
| KG graph runtime | KG interfaces, policies and adapter-neutral schema compatibility helpers | LadybugDB/Kuzu adapters in community.adapters.kuzu_* and global_discovery_runtime | LadybugDB/Kuzu -> Neptune | audit_dependency_conformance, ImportBoundaryGate, audit_community_core_import_boundary |
| Durable files and artifacts | StorageProvider, RebuildAuditArtifactStore and CognitivePendingWorkProvider contracts | filesystem storage, upload_dir, rebuild audit storage and cognitive-pending providers | filesystem -> S3 | run_rebuild_audit_storage_gate, run_core_settings_defaults_gate, run_public_config_stability_gate |
| Telemetry effects | TelemetryPort contracts, event schema and privacy policy | local JSONL store, state files, beacon sender and product telemetry adapters | local telemetry files/API -> AWS telemetry API | run_telemetry_store_ownership_gate, run_telemetry_sender_ownership_gate, run_telemetry_product_ownership_gate |
| Scheduler/runtime effects | JobSpec, SchedulerControl and KG daily tick policy | APScheduler-backed SingletonSchedulerControl | APScheduler local runtime -> runtime scheduler adapter | SchedulerControlSymbolGate, scheduler_signal_conformance |
| MCP resources and versions | MCP instruction/resource/version provider ports and stable public catalog | Community resource catalog, capability descriptors and package version wiring | local catalog/version reads -> deployment provider | run_public_config_stability_gate, register_instruction_provider, register_package_version_provider |
| F16 executable surface | Owner | Observed | Terminal target |
|---|---|---|---|
| Core import rows | Core | 6254 | classified |
| Community-to-Core import rows | Community | 951 | classified |
| Direct dependency rows | Distribution owner | 24 | classified |
import_boundary_baseline budget |
675c43ee-7d91-4cc3-8f87-44eeb293f90c |
0 | 0 |
singleton_baseline budget |
675c43ee-7d91-4cc3-8f87-44eeb293f90c |
0 | 0 |
dependency_temporary_exceptions budget |
675c43ee-7d91-4cc3-8f87-44eeb293f90c |
0 | 0 |
graph_runtime_compatibility budget |
675c43ee-7d91-4cc3-8f87-44eeb293f90c |
0 | 0 |
rebuild_artifact_compatibility budget |
675c43ee-7d91-4cc3-8f87-44eeb293f90c |
0 | 0 |
community_private_reach_ins budget |
675c43ee-7d91-4cc3-8f87-44eeb293f90c |
0 | 0 |
community_adapter_bridges budget |
675c43ee-7d91-4cc3-8f87-44eeb293f90c |
0 | 0 |
af35_relational_residue budget |
675c43ee-7d91-4cc3-8f87-44eeb293f90c |
0 | 0 |
License
Elastic License 2.0 — free for personal and commercial use. Cannot be offered as a hosted/managed service.
Glossary
For plain-language definitions of recurring domain and architecture terms used in this repository, see the Glossary.
Release files for okto-pulse-core 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| okto_pulse_core-0.3.1.tar.gz | 5.0 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| okto_pulse_core-0.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.0 MB
Release files / okto_pulse_core-0.3.1.tar.gz
| Download URL | okto_pulse_core-0.3.1.tar.gz |
|---|---|
| Size | 5.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ff7c19b4d6456bf21dcde051bf8c8e43cb7989da653f2ebede2e54160fee54ca
|
|
BLAKE2b-256 checksum How to use checksums |
d1de86afab989df1d19e5317bf549bde159a1b565bc7e1fbed75a65469f2b276
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.1
|
Release files / okto_pulse_core-0.3.1-py3-none-any.whl
| Download URL | okto_pulse_core-0.3.1-py3-none-any.whl |
|---|---|
| Size | 3.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a84b536f049c645b9439c3c28e3a79fdfa9e29a5e934387318e8eb34fe6d9140
|
|
BLAKE2b-256 checksum How to use checksums |
555ef8ca943a0663c76ec80e06de25f6b3967257d6bd5b601a917a99cc285c22
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.1
|