Skip to content

State correctness: add composed lifecycle transition-table invariant tests #28

@mark-e-deyoung

Description

@mark-e-deyoung

Summary

Add explicit composed state-machine invariant tests across system lifecycle, API lifecycle, and UI lifecycle.

Why

Current tests validate many endpoints and idempotent paths, but there is no single transition-table test suite that codifies allowed/blocked transitions across composed states.

Scope

  • Define transition table for:
    • Instance states (starting, running, shutting_down, powering_off, completed, failed)
    • Session states (active, suspended, completed)
    • API availability states (running, stopping, down)
    • UI polling states (normal, backoff, stopped)
  • Add tests that validate expected outputs for key transition sequences (including repeated/idempotent calls).
  • Add negative tests for forbidden transitions.

Acceptance Criteria

  • Transition table is documented and referenced by tests.
  • Tests fail on any undocumented transition behavior regression.
  • CI runs the suite in pre-flight or deterministic integration stage.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions