Skip to content

Releases: sean2077/topoexec

TopoExec v0.2.0-alpha.0

Pre-release

Choose a tag to compare

@sean2077 sean2077 released this 07 May 07:38
14d4fe8

TopoExec v0.2.0-alpha.0 release candidate notes

Candidate commit: 14d4fe845382478ae65a22a813ccbc0fb082c039 (14d4fe8)

Draft notes from CHANGELOG.md Unreleased

Added

  • Added trust-trial maintainability sweep coverage for G86-G95, including
    CLI/parser error-path regression checks and durable focused-gate evidence
    without adding new workflow tooling or ecosystem surfaces.
  • Added G75 release/adoption readiness alignment for the v0.2.0-alpha.0
    candidate line: Apache-2.0 public metadata, 0.2.0 CMake/package draft
    version metadata, tracked adoption readiness notes, a tracked prerelease
    notes draft, install/downstream onboarding guidance, and focused
    docs/golden/package/release gate evidence without tagging or publishing.
  • Added the G76 synthetic dogfood pilot under examples/90-dogfood-pilot/
    with graph metadata, live assertion YAML, generated topology/metrics/trace
    assets, a focused ./scripts/goal_check.sh dogfood gate, benchmark coverage,
    and case-study docs that keep hardware, ROS 2, ML runtime, production
    telemetry, and hard-real-time claims out of scope.
  • Added the G77 stable-v0.2 compatibility harness through
    ./scripts/goal_check.sh compat and tests/compat/check_compatibility_contract.py,
    covering installed-header API inventory, versioning/deprecation docs, doctor,
    schema, metrics, trace, live observe JSON fields, golden files, schema smoke,
    live observe smoke, and runtime-only package consumption.
  • Added G78 distribution/package hardening with a tracked package matrix,
    package metadata alignment checks, package-draft version/license docs, and a
    stronger ./scripts/goal_check.sh package gate that validates package matrix,
    CPack, package draft, runtime-only, and downstream install smokes while
    keeping registry publication deferred.
  • Added G79 reliability program docs, bounded soak-lite smoke, a reliability
    focused gate, and policy checks for test tiers, fuzz corpus, perf regression,
    failure artifacts, ASAN/UBSAN, and non-blocking TSAN without adding unbounded
    soak or machine-global timing thresholds.
  • Added G80 adoption feedback and triage workflow docs, debug-pack guidance,
    issue-template adoption/debug-pack prompts, and ./scripts/goal_check.sh adoption
    checks for first-user path, community readiness, docs smoke, and downstream
    package reproduction.
  • Added the G81 ecosystem decision gate and blocker note comparing G82a-e,
    recommending package registry publication only as a future human-owned track
    after release/adoption evidence, and validating that adapters/bindings/editor
    and registry publication remain deferred.
  • Added the G82x/G83 conditional tracks ledger with per-track blocker notes for
    production telemetry exporters, native Python bindings, real ROS 2 adapter,
    editor/LSP, package registry publication, and schema v2/migration so deferred
    implementation cannot open without adoption evidence and human decisions.
  • Added the G84 core-runtime beta candidate readiness review with a
    core-runtime-only beta gate, G75-G80 evidence summary, explicit
    adapter/ecosystem/v1.0 deferrals, and ./scripts/goal_check.sh beta so beta
    discussion stays local, owner-gated, and non-publishing.
  • Added the G85 v1.0 readiness program as deferred criteria only, with
    post-beta adoption, stable-surface, scheduler/runtime limitation, package
    maturity, and owner-decision requirements guarded by ./scripts/goal_check.sh v1.
  • Added G99 final ultragoal evidence for the next-stage plan, including the
    required full repository gate, focused release/adoption/dogfood/reliability/
    compatibility/live/performance/fuzz/stress/sanitizer checks, diff whitespace
    validation, and durable .omx/ultragoal checkpoint evidence.
  • Added G74 examples/showcase refresh with a generated README hero and visual
    showcase, 9 curated example directories with metadata/README pages, generated
    graph/metrics/trace assets under docs/assets/generated,
    scripts/update_examples_index.py, scripts/render_example_assets.py,
    scripts/examples_smoke.py, scripts/check_readme_assets.sh, and focused
    ./scripts/goal_check.sh examples / showcase anti-rot gates.
  • Added G73 low-overhead live runtime validation with compile-time optional
    runtime live-observe transport, default-off RuntimeRunnerOptions
    activation, topoexec graph observe NDJSON/json-summary output,
    tooling-layer live assertions, replayable record artifacts, a local
    observe-only SSE dashboard, live/live-perf focused gates, and benchmark cases
    for live-observe overhead checks.
  • Added G71 post-alpha hardening evidence covering previous-tick wake behavior,
    bounded trigger pending queues, condition timestamp head handling, async
    in-flight accounting, CompositeLoop output visibility, benchmark expansion,
    optional Doxygen API reference generation, and GitHub Pages site wiring.
  • Added runtime.trigger.pending_drop_count to expose drops from bounded
    internal trigger pending queues.
  • Added benchmark cases for combined channel modes and trigger-v2 policies, and
    expanded the benchmark contract/baseline scripts to include them.
  • Added optional TOPOEXEC_BUILD_DOCS / topoexec_doxygen CMake support,
    docs/61-api/doxygen.md, mkdocs.yml, scripts/docs_build_site.sh, and a
    GitHub Pages workflow that publishes Markdown docs plus Doxygen HTML under
    /api/.
  • Added CI preview-option smoke coverage for adapter, FFI, Python preview, and
    plugin-loader surfaces without making them runtime dependencies.
  • Added the post-G25 architecture-stabilization goal board and G26 release-candidate baseline docs for the next architecture-stabilization stage; completed goal-board details are now summarized under docs/31-planning-roadmap/goals/.
  • Added normalized golden coverage for Chrome trace shape, schema dump JSON, and doctor JSON.
  • Added explicit stable-v0.2/mixed/experimental public API markers, an API change checklist, and stronger runtime-only downstream smoke coverage for result metrics/trace consumption.
  • Added docs/21-architecture/semantic-contract.md and exposed semantic_contract_version through doctor/schema dump outputs.
  • Added architecture policy checks for installed-header markers, runtime/YAML/CLI target boundaries, private include leaks, semantic-bypass CLI includes, and planted-violation self-tests.
  • Added scheduler v2 capability summaries in plan JSON and advisory diagnostics for parsed-but-not-enforced lane/execution fields.
  • Added persistent thread_pool worker-pool v1 with bounded queue admission, worker-id trace attributes, and stop/drain coverage for queued work.
  • Added opt-in fixed_rate wall-clock cadence v1 with overrun_policy, tick/skipped/max-lateness metrics, and fixed-rate trace events while keeping deterministic stepping as the default.
  • Added runtime-level scheduler priority/admission v1 with execution.priority classes, priority queue ordering, priority metrics, low-priority rejection metrics, schema validation, and starvation smoke coverage.
  • Added cooperative cancellation/timeout semantics v1 with CancellationToken, GraphContext::cancel_requested(), Invocation::cancel_requested(), component/loop/task cancellation metrics, and post-return timeout-budget reporting without hard preemption.
  • Added TaskExecutor v2 preview with ITaskExecutor, explicit DeterministicTaskExecutor, opt-in bounded ThreadedTaskExecutor, queued-task metrics, shutdown policy, and threaded completion-routing tests.
  • Added Trigger Engine v2 preview policies: watermark, condition,
    debounce, and rate_limit, with declarative schema fields, late/drop and
    suppression metrics, and runtime/graph coverage without arbitrary scripting.
  • Added invocation metadata v1 with correlation, causation, epoch, transaction, source endpoint, and trigger-kind propagation through publish/channel/trigger/invocation/task/composite-loop paths plus trace attributes.
  • Added bounded runtime health events for channel overflow/stale/deadline/high-watermark, task reject, and scheduler reject paths, exposed through RuntimeRunnerResult, CLI JSON, doctor feature metadata, and trace events without adding health-triggered control flow.
  • Added edge reader/copy-policy explainability in plan/explain output, including slow_reader_drop_risk, plus lint surfacing for slow multi-reader drop risk and invalid move_only multi-reader edges.
  • Added BufferPoolConfig, bounded pool allocation stats, payload schema summaries, and loaned-view pool-owner lint coverage for in-process large-payload memory planning.
  • Added OpaquePayload/make_custom_payload and BufferPool loan/release/byte metrics with memory docs.
  • Added descriptor-backed typed port validation for schema/payload-type compatibility, required and optional inputs, input multiplicity, and boundary role mismatches without adding schema v1 port fields.
  • Added hierarchical subgraphs[] as schema-v1 compile-time namespace
    expansion, with expanded GraphHierarchyEntry plan metadata, last-dot
    endpoint parsing for namespaced component ids, CompositeLoop ownership after
    expansion, and graph/runtime tests proving hierarchy does not hide cycles or
    metric paths.
  • Added graph templates with schema-v1 templates[] and template_instances[]
    for strict scalar {{parameter}} substitution, deterministic namespace
    expansion before validation/runtime, invalid-parameter tests, and a runnable
    source-transform-sink template example without a runtime template interpreter.
  • Added CompositeLoop solver_iteration preview with loop-local iteration
    context, typed convergence/residual reports, residual-threshold convergence,
    partial-success output discard/fail/commit policy, runtime residual/discard
    metrics, and trace evidence while keeping cycles exact-owned and in-process.
  • Added experimental component reset, snapshot, and restore lifecycle hooks with start-epoch runner options, post-run snapshot capt...
Read more