DeAlgoOpen workspace
Historical platform changes. See current financial controls release scope.

Changelog

What we shipped.

Every meaningful change to the DeAlgo platform — portal, API, SDK, MCP server, and audit chain. Newest first.

mcpdealgo-mcp 0.1.0

MCP server published to PyPI

  • Single-line install: pip install dealgo-mcp.
  • Console script dealgo-mcp wires straight into Claude Desktop, Claude Code, or Cursor — no absolute paths or venv juggling.
  • Default endpoint flipped to https://dealgo-portal.vercel.app/api. Backwards-compat shim at server.py preserves any existing absolute-path Claude Desktop configs.
  • GitHub Actions release workflow ships sdist + wheel via PyPI Trusted Publishing (OIDC, no API tokens).
sdkdealgo-csc 2.1.0

Python SDK published to PyPI

  • Single-line install: pip install dealgo-csc. Apache-2.0 licensed.
  • New DeAlgo client targets the public /v1/decide endpoint by default; api_key parameter takes a sk_live_ or sk_test_ Bearer token.
  • Neutral decide(action_type=..., risk_score=..., confidence=..., intent=..., metadata=...) is the primary call shape; Decision now carries decision_log_id, environment, idempotency_replayed, latency_ms.
  • Idempotency-Key support on decide() and report_outcome(). report_outcome() closes the loop via /v1/outcomes.
  • Backwards compatible: existing client.check(feed=...) still works (auto-translated to neutral schema). CSC stays as an alias for DeAlgo.
portalportal v1

Quickstart rebuild — first verdict in 60 seconds

  • Rewrote /quickstart for the new /v1/decide contract and neutral schema (action_type / risk_score / confidence / intent / metadata).
  • Tabs: curl (default) / Python SDK / MCP for Claude Desktop / TypeScript fetch.
  • Inline sandbox key mint — signed-in users grab a sk_test_ key without leaving the page; bearer prefilled across all four tabs.
  • Trace CTA promoted under the response example: "View full decision trace" → /decisions/<decision_log_id> (the wow-moment link).
sdkdealgo-csc 2.1.0

Python SDK retargets at /v1/decide + ships neutral decide() schema

  • New DeAlgo client class with api_key (sk_live_ / sk_test_) + decide(action_type=..., risk_score=..., confidence=..., metadata=...).
  • Idempotency-Key support, decision_log_id deep-links, environment + replay flags surfaced on Decision.
  • Backwards compatible — existing client.check(feed=...) translates to neutral schema under the hood.
  • report_outcome() closes the loop via /v1/outcomes.
  • GitHub Actions test matrix (Python 3.9–3.12) + PyPI publish workflow via Trusted Publishing.
  • License: Apache-2.0. Distribution: dealgo-csc on PyPI.
portalportal v1

Tabbed decision detail — Trace / Chain proof / Raw

  • Each lens on a decision is a different audience and a different question. Three tabs lets each be the hero of its own view.
  • URL-routable (?view=trace|proof|raw); span selection (?span=...) preserved on the trace tab and auto-cleared elsewhere.
  • Top stats strip + Reason banner stay above the tabs and apply to every view.
portalportal v1

Playground wired to /v1/decide with auto-managed sandbox key

  • Internal session-authed proxy mints (or reuses) a sk_test_ key labeled "playground" and forwards your payload to /v1/decide.
  • Result panel shows the verdict, stimulus_id, environment, and an "Open trace →" link straight to the decision detail page.
  • Demo loop closed: payload → real verdict → trace → proof, no key leaves the server.
portalportal v1

v1 API surface — /v1/decide + /v1/outcomes + sandbox keys + idempotency + rate limit

  • POST /v1/decide accepts a neutral schema and translates at the edge to the runtime payload (no backend changes).
  • POST /v1/outcomes proxies signed outcome payloads verbatim to the runtime, then attaches them to the matching DecisionLog row.
  • sk_test_ sandbox keys alongside sk_live_. Test calls are tagged on DecisionLog and skip MonthlyUsage metering. Same audit chain. UI toggle in /keys.
  • Idempotency-Key header (24h window, scoped per-API-key). Replays return the original response with idempotency_replayed=true.
  • Per-key rate limit (60 req/min default), Postgres-backed sliding window. X-RateLimit-* headers on every response; 429 with Retry-After on overflow.
  • Legacy /api/csc/check preserved as alias — existing SDK + MCP installs keep working.
portalportal v1

Trace inspector on /decisions/<id>

  • Three-column trace layout: step tree of the runtime evaluation, with metrics, reasons, and IO per step.
  • Right-pane span detail with metrics / reason / metadata / IO blocks.
  • URL-routable selection (?span=...) for shareable deep links.
  • Copy-as-curl button on the header — every audited decision becomes a runnable example.
  • Auto-expands the path to first failure on DENY/DELAY; right pane defaults to the failing condition.

Subscribe to release notes by watching dealgo-portal releases on GitHub.