Skip to content

[Experiment] Verify scheduler action lifecycles and add runnable example - #62

Draft
chaptersix wants to merge 3 commits into
experiment/scheduler-execution-visibilityfrom
experiment/scheduler-integration-coverage
Draft

[Experiment] Verify scheduler action lifecycles and add runnable example#62
chaptersix wants to merge 3 commits into
experiment/scheduler-execution-visibilityfrom
experiment/scheduler-integration-coverage

Conversation

@chaptersix

@chaptersix chaptersix commented Sep 5, 2026

Copy link
Copy Markdown
Owner

Adds lifecycle and persistence coverage for workflow and standalone activity schedules, plus a runnable Go example with both action kinds, explicit activity policy selection, BUFFER_LATEST, termination, generic execution display, local server configuration, and cleanup.

Tests cover supported policies, selector validation, stable IDs across retries and edits, duplicate request IDs and results, completion before start acknowledgement, buffer movement, manual/backfill policy serialization, selected-start overlap reservations, activity retry accounting, terminal statuses, and Describe/List/visibility projections. Documentation records reproducible API/SDK pins and the local four-module development setup.

Validation passed:

  • go test -tags test_dep ./chasm/chasmtest ./chasm/lib/scheduler/... ./chasm/lib/activity ./docs/examples/chasm-scheduler
  • Activity BUFFER_ALL/retry and TERMINATE_OTHER functional tests, including List and visibility queries.
  • Selected existing CHASM workflow, overlap, continue-as-new, pause-on-failure, and paused-buffer functional tests.
  • Frontend create/update/action-policy/routing tests.
  • make lint-code-fast and repository proto regeneration; API buf lint.
  • Canonical SDK check, schedule conversion unit tests with race detection, and standalone activity integration against the modified server.
  • The runnable example, including a native Terminated activity result, BUFFER_LATEST skips, and cleanup.

This is an experimental draft stack; do not merge. The local integration base combines server main ad7b2298dcce00688cfe3b83ab02819abf9249e8 with the published readability stack e6c239bd4a368fcaaae7aefec85e3e4281f38045, preserving both sets of tests. Published branches are unchanged.

Cross-repository dependencies:

  • Source API: 40766d34ea6c0d2e59c100c1cf20cdf4fb286fe4
  • Generated API-Go: 5fd10bc0a6cd7694373353cf6e00a0886a0b8167
  • Go SDK: a6bed7c8ed3c4b90c467f003571c98b44ea8785b
  • Complete server integration: d80de5800cde0845596277a1af957c731eb1c0a2 on experiment/extensible-chasm-scheduler

Validation uses Go 1.26.7 and an external four-module go.work containing server, API-Go, SDK, and SDK/test. No dependency replacements or workspace files are committed; standalone CI needs these linked revisions wired explicitly until dependency versions are published.

Complete server review order: contracts, activity, visibility, coverage.

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