Summary
Integration tests are wired in two places and the CI workflow comment says they run only when the test project is configured, but there is no explicit job-level guard for missing integration configuration. This can make CI behavior unclear and brittle for forks or repo setup changes.
Validation
Partially valid. The workflow files and integration setup confirm the configuration assumptions. No current CI failure was reproduced locally.
Relevant Code
.github/workflows/ci.yml:103 - defines an integration-tests job on main pushes after typecheck/build/unit tests.
.github/workflows/ci.yml:105 - comment says it should only run on main pushes when the test project is configured.
.github/workflows/ci.yml:106 - actual condition only checks event/ref, not whether required vars/secrets are present.
.github/workflows/integration.yml:1 - defines a separate manual/scheduled integration test workflow.
integration-tests/setup.ts:28 - throws if INSFORGE_INTEGRATION_BASE_URL is missing.
integration-tests/setup.ts:39 - throws if INSFORGE_INTEGRATION_ANON_KEY is missing.
integration-tests/setup.ts:88 - authenticated tests also require INSFORGE_INTEGRATION_TEST_EMAIL and INSFORGE_INTEGRATION_TEST_PASSWORD.
Proposed Solution
Clarify ownership between the push CI integration job and the manual/scheduled workflow. Add explicit preflight/skip behavior when required integration configuration is absent, or document that these secrets/vars are mandatory for the repository.
Acceptance Criteria
- Integration workflow behavior is documented for main pushes, manual runs, scheduled runs, and forks.
- Missing integration configuration produces a clear skip or preflight failure by design.
- Duplicate workflow responsibilities are reduced or explained.
Summary
Integration tests are wired in two places and the CI workflow comment says they run only when the test project is configured, but there is no explicit job-level guard for missing integration configuration. This can make CI behavior unclear and brittle for forks or repo setup changes.
Validation
Partially valid. The workflow files and integration setup confirm the configuration assumptions. No current CI failure was reproduced locally.
Relevant Code
.github/workflows/ci.yml:103- defines anintegration-testsjob on main pushes after typecheck/build/unit tests..github/workflows/ci.yml:105- comment says it should only run on main pushes when the test project is configured..github/workflows/ci.yml:106- actual condition only checks event/ref, not whether required vars/secrets are present..github/workflows/integration.yml:1- defines a separate manual/scheduled integration test workflow.integration-tests/setup.ts:28- throws ifINSFORGE_INTEGRATION_BASE_URLis missing.integration-tests/setup.ts:39- throws ifINSFORGE_INTEGRATION_ANON_KEYis missing.integration-tests/setup.ts:88- authenticated tests also requireINSFORGE_INTEGRATION_TEST_EMAILandINSFORGE_INTEGRATION_TEST_PASSWORD.Proposed Solution
Clarify ownership between the push CI integration job and the manual/scheduled workflow. Add explicit preflight/skip behavior when required integration configuration is absent, or document that these secrets/vars are mandatory for the repository.
Acceptance Criteria