Skip to content

feat(e2e): smoke scenario + label-triggered CI (Plugin Batch 1)#16

Merged
saurabhjain1592 merged 3 commits intomainfrom
feat/smoke-e2e
Apr 19, 2026
Merged

feat(e2e): smoke scenario + label-triggered CI (Plugin Batch 1)#16
saurabhjain1592 merged 3 commits intomainfrom
feat/smoke-e2e

Conversation

@saurabhjain1592
Copy link
Copy Markdown
Member

Summary

Adds a narrow smoke E2E to the plugin repo so local deny UX regressions surface without the full enterprise matrix.

  • tests/e2e/smoke-block-context.sh runs pre-tool-check.sh against a reachable AxonFlow stack, feeds a SQLi-bearing Bash tool invocation, and asserts exit 2 + stderr with AxonFlow policy violation prefix + Plugin Batch 1 richer-context markers (decision:, risk:).
  • .github/workflows/smoke-e2e.yml triggers on workflow_dispatch or PR label run-e2e. Off by default so normal PRs don't need a live stack.
  • Exits 0 with SKIP: when the stack isn't reachable, so the script is safe to run anywhere.

Scope is intentionally narrow — install wiring + one deny UX. Full install-and-use matrix (explain, override lifecycle, audit filter parity, cache invalidation) is owned by axonflow-enterprise/tests/e2e/plugin-batch-1/codex-install/.

Test plan

  • bash -n tests/e2e/smoke-block-context.sh (passes locally)
  • ./tests/test-hooks.sh still green (existing hook regression tests unchanged)
  • Start a local stack (axonflow-enterprise/scripts/setup-e2e-testing.sh) and run bash tests/e2e/smoke-block-context.sh → expect PASS: output
  • Apply run-e2e label on this PR to exercise the CI workflow against a reachable stack

Adds tests/e2e/smoke-block-context.sh exercising pre-tool-check.sh
against a reachable AxonFlow stack. Scope is intentionally narrow:
install wiring + one local deny UX. Full install-and-use matrix
(explain, override lifecycle, audit filter parity, cache invalidation)
is owned by axonflow-enterprise/tests/e2e/plugin-batch-1/codex-install/.

New workflow .github/workflows/smoke-e2e.yml is off by default. Runs on
workflow_dispatch or when a PR is labeled run-e2e — so normal PRs don't
need a live stack to merge, but the scenario is one click away for
reviewers who want to verify a real end-to-end flow before tagging.
Combines the smoke scenario with a 2026-04-19 patch bump rather than
waiting for a separate release. Version bumped in plugin.json /
marketplace.json manifests; CHANGELOG [Unreleased] → [0.4.1].
- Remove forward reference to axonflow-enterprise/docs/test-visibility-policy.md
  (doc doesn't exist yet) — replace with self-contained scope comment.
- Remove runtime 'chmod +x' on hook script — git mode is 100755, files are
  already executable on fresh checkout.
- Remove misleading PR-label trigger (`run-e2e`) from smoke workflow.
  GitHub-hosted runners cannot reach localhost:8080, so the label path
  silently exited 0 with SKIP — a false-green signal. Keep
  workflow_dispatch only; operator supplies reachable endpoint as input.
- Update CHANGELOG/README to reflect workflow_dispatch-only trigger and
  explain why PR gating needs a self-hosted runner.
@saurabhjain1592 saurabhjain1592 merged commit a3484b8 into main Apr 19, 2026
3 checks passed
@saurabhjain1592 saurabhjain1592 deleted the feat/smoke-e2e branch April 21, 2026 19:42
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