Skip to content

feat: add C++23 AWS Durable Execution SDK - #1

Merged
zhongkechen merged 11 commits into
masterfrom
initial-cpp23-sdk
Aug 26, 2026
Merged

feat: add C++23 AWS Durable Execution SDK#1
zhongkechen merged 11 commits into
masterfrom
initial-cpp23-sdk

Conversation

@zhongkechen

@zhongkechen zhongkechen commented Aug 26, 2026

Copy link
Copy Markdown
Owner

Summary

  • add a dependency-free C++23 durable execution core with deterministic replay and a stable SDK-owned BLAKE2b operation-ID contract
  • implement steps, waits, retries, child contexts, callbacks, chained invoke, polling, replay-safe values, recursion, parallel/map, typed DAG flows, and a deterministic local runner
  • add a stable custom-operation extension SPI with one-shot reservations, local IDs, custom subtypes, stateful steps, callbacks, invokes, waits, and child contexts
  • add versioned instrumentation plugins with invocation/operation/attempt/change hooks and fault isolation
  • add optional AWS SDK for C++ and aws-lambda-cpp adapters plus reproducible Amazon Linux 2023 packaging
  • define source, ABI, durable-history, wire, and serialized-payload compatibility contracts for the C++ SDK

Conformance

  • maps all 171 requirements in the pinned official suite (148 core + 23 plugin)
  • strict manifest generation reports 171/171 and zero NotImplemented
  • official CloudWatch log matcher passes locally for all 23 plugin cases
  • official validator parser reports zero uncovered requirements
  • SAM basic validation, SAM lint, and offline SAM build pass
  • deployed AWS validator report: 171 passed, 0 failed, 0 optional failed, 0 uncovered
  • persistent concurrency-controlled stack avoids repeated resource creation between runs

Verification

  • GitHub Actions Release job: passed
  • GitHub Actions ASan/UBSan job: passed
  • GitHub Actions deployed conformance job: passed
  • Python-generated reference fixtures reproduce exactly as independent oracles
  • shared library exposes SONAME 1 and preserves the original execution_state constructor symbol
  • installed core and optional-adapter CMake package consumers pass
  • Amazon Linux 2023 x86-64 runtime builds with GCC 14, AWS SDK 1.11.878, and aws-lambda-cpp 1.0.1
  • current microbenchmarks remain near the established baseline (operation IDs ~350 ns, minimal invocation decode <1 microsecond)

@zhongkechen zhongkechen self-assigned this Aug 26, 2026
@zhongkechen
zhongkechen merged commit 3bebc65 into master Aug 26, 2026
3 checks passed
@zhongkechen
zhongkechen deleted the initial-cpp23-sdk branch August 26, 2026 14:13
@zhongkechen

Copy link
Copy Markdown
Owner Author

Codex goal execution metrics

The following values were captured from the completed goal telemetry and the final token-count event at the goal completion boundary.

Runtime configuration

  • Model: openai.gpt-5.6-sol
  • Reasoning effort: xhigh
  • Model context window: 828,400 tokens
  • Codex CLI version: 0.149.0
  • Approval policy: on-request
  • Approval reviewer: user
  • Sandbox mode: workspace-write
  • Model changes during the goal: none; every recorded turn used the same model and reasoning effort

Token usage

  • Goal-accounted tokens: 5,087,315
  • Uncached input tokens: 4,508,366
  • Output tokens: 578,949
    • Reasoning output tokens: 208,872 (included in output tokens)
  • Cached input tokens reused: 541,254,011
  • Total input tokens processed, including cached input: 545,762,377
  • Cache-write input tokens: 4,427,548

The goal-accounted total is:

uncached input + output = 4,508,366 + 578,949 = 5,087,315

The much larger total-input figure includes repeatedly reused cached context. Cached input is excluded from the goal-accounted token total above.

Time usage

  • Goal start: 2026-08-25 16:46:41 UTC
  • Goal completion: 2026-08-26 14:13:07 UTC
  • Total wall-clock time: 77,186 seconds (21h 26m 26s)
  • Clearly identifiable long approval-blocked intervals: approximately 52,177 seconds (14h 29m 37s)
  • Estimated time excluding approval waits: approximately 25,009 seconds (6h 56m 49s)
  • Reasonable active-time range: approximately 5–7 hours

Timing methodology and limitation

The system records exact goal wall-clock time, token usage, model metadata, and context-window size. It does not separately record command runtime and approval-wait duration for every approval-gated command. Short approval waits and command execution therefore overlap in the event log.

The approval-wait-excluded value is calculated by subtracting clearly identifiable long approval-blocked intervals from total wall-clock time. It is an event-log estimate, not an exact active-time measurement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant