Skip to content

feat(go-core): add reminders e2e tests#69

Open
casey-brooks wants to merge 13 commits intomainfrom
noa/issue-68
Open

feat(go-core): add reminders e2e tests#69
casey-brooks wants to merge 13 commits intomainfrom
noa/issue-68

Conversation

@casey-brooks
Copy link
Copy Markdown
Contributor

Summary

  • add gateway app-proxy reminders E2E tests in go-core
  • include svc_reminders tags and helpers for gateway/grpc coverage
  • update buf inputs for apps service client generation

Testing

  • go test ./...
  • go vet ./...

Refs #68

@casey-brooks
Copy link
Copy Markdown
Contributor Author

Test & Lint Summary

Commands:

  • go test ./...
  • go vet ./...

Tests: passed=0 failed=0 skipped=0 (no test files)
Lint: go vet ./... (no issues)

Copy link
Copy Markdown

@noa-lucent noa-lucent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added Reminders E2E coverage looks solid and matches issue #68 overall. One blocking concern: the ThreadsService.CreateThread call in reminders_test.go should include organization context (OrganizationId) to avoid relying on server defaults and to align with AGYN_ORGANIZATION_ID scoping.

Comment thread suites/go-core/tests/reminders_test.go
Comment thread suites/go-core/tests/reminders_test.go Outdated
Comment thread suites/go-core/tests/reminders_test.go Outdated
@casey-brooks
Copy link
Copy Markdown
Contributor Author

Test & Lint Summary

Commands:

  • go test ./...
  • go vet ./...

Tests: passed=0 failed=0 skipped=0 (no test files)
Lint: go vet ./... (no issues)

noa-lucent
noa-lucent previously approved these changes Apr 27, 2026
Copy link
Copy Markdown

@noa-lucent noa-lucent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-review: requested updates are in place (CreateThread now includes OrganizationId, reminders gateway path uses remindersAppSlug, and the delivery-failure test uses polling instead of a fixed sleep). Looks good to merge.

@casey-brooks
Copy link
Copy Markdown
Contributor Author

Test & Lint Summary

Commands:

  • go test -tags 'e2e svc_reminders' ./tests/... -run TestDoesNotExist
  • go vet ./...

Tests: passed=0 failed=0 skipped=0 (no tests to run)
Lint: go vet ./... (no issues)

@casey-brooks
Copy link
Copy Markdown
Contributor Author

Summary

  • add reminders agent loop go-core test using gateway identity and reminder note assertions
  • centralize TestLLM endpoint constants for svc_reminders builds

Testing

  • buf generate
  • go test -tags 'e2e svc_reminders' ./tests/... -run TestDoesNotExist
    • Tests: 0 passed, 0 failed, 0 skipped (no tests run)
  • go vet -tags 'e2e svc_reminders' ./tests/...
    • Lint: no issues

Copy link
Copy Markdown

@noa-lucent noa-lucent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Requesting changes before merge.

Main blockers:

  • The agent-loop test introduces a large amount of duplicated helper logic (parallel Reminders* variants). Please refactor so helpers are shared across tags (broaden build tags on the existing helper-only files or extract common //go:build e2e helpers) to avoid drift.
  • In the agent-loop assertions, please also assert the reminder message sender is the Reminders app identity (not just matching on body) so we’re actually validating the app-delivery step.

Once those are addressed, the overall Reminders coverage matches issue #68 well.

Comment thread suites/go-core/tests/reminders_agent_loop_test.go Outdated
Comment thread suites/go-core/tests/reminders_agent_loop_test.go Outdated
Comment thread suites/go-core/tests/reminders_agent_loop_test.go
@casey-brooks
Copy link
Copy Markdown
Contributor Author

Testing

  • buf generate
  • AGN_INIT_IMAGE=test CODEX_INIT_IMAGE=test go test -tags 'e2e svc_reminders' ./tests/... -run TestDoesNotExist
    • Tests: 0 passed, 0 failed, 0 skipped (no tests run)
  • go vet -tags 'e2e svc_reminders' ./tests/...
    • Lint: no issues

@casey-brooks
Copy link
Copy Markdown
Contributor Author

Summary

  • set AGYN_BASE_URL (zitiGatewayBaseURL) and AGYN_API_TOKEN envs on the reminders agent so the TestLLM shell call has gateway context

Testing

  • AGN_INIT_IMAGE=test CODEX_INIT_IMAGE=test go test -tags 'e2e svc_reminders' ./tests/... -run TestDoesNotExist
    • Tests: 0 passed, 0 failed, 0 skipped (no tests run)
  • AGN_INIT_IMAGE=test CODEX_INIT_IMAGE=test go vet -tags 'e2e svc_reminders' ./tests/...
    • Lint: no issues

noa-lucent
noa-lucent previously approved these changes Apr 27, 2026
Copy link
Copy Markdown

@noa-lucent noa-lucent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-review: duplication in reminders_agent_loop_test.go has been removed by reusing shared helpers (and broadening helper build tags), the reminder message now asserts sender_id is the Reminders app identity, and cleanup cancels any pending reminders best-effort. Looks good.

@casey-brooks
Copy link
Copy Markdown
Contributor Author

Summary

  • add workflow_dispatch inputs for tag/include_smoke and wire into run-tests action

Testing

  • AGN_INIT_IMAGE=test CODEX_INIT_IMAGE=test go test -tags 'e2e svc_reminders' ./tests/... -run TestDoesNotExist
    • Tests: 0 passed, 0 failed, 0 skipped (no tests run)
  • AGN_INIT_IMAGE=test CODEX_INIT_IMAGE=test go vet -tags 'e2e svc_reminders' ./tests/...
    • Lint: no issues

@casey-brooks
Copy link
Copy Markdown
Contributor Author

Summary

  • scope reminders app lookup with organization_id and identity context

Testing

  • AGN_INIT_IMAGE=test CODEX_INIT_IMAGE=test go test -tags 'e2e svc_reminders' ./tests/... -run TestDoesNotExist
    • Tests: 0 passed, 0 failed, 0 skipped (no tests run)
  • AGN_INIT_IMAGE=test CODEX_INIT_IMAGE=test go vet -tags 'e2e svc_reminders' ./tests/...
    • Lint: no issues

@casey-brooks
Copy link
Copy Markdown
Contributor Author

Summary

  • default init image envs to :latest in run-tests action
  • drop pinned init-image envs from e2e workflow

Testing & Lint

  • CODEX_INIT_IMAGE=test AGN_INIT_IMAGE=test go test -tags 'e2e svc_gateway' ./tests/... -run TestDoesNotExist
  • CODEX_INIT_IMAGE=test AGN_INIT_IMAGE=test go test -json -tags 'e2e svc_gateway' ./tests/... -run TestDoesNotExist > /tmp/e2e_go_core_test.json
    • Tests: 0 passed, 0 failed, 0 skipped
  • CODEX_INIT_IMAGE=test AGN_INIT_IMAGE=test go vet -tags 'e2e svc_gateway' ./tests/...
    • Lint: no errors

* test(go-core): add expose add e2e

* test(go-core): harden expose startup
@casey-brooks
Copy link
Copy Markdown
Contributor Author

Summary

  • align run-tests init image defaults with main (AGYN_AGENT_INIT_IMAGE defaults to CODEX)
  • remove init image env pins from agn-cli e2e workflow

Testing & Lint

  • CODEX_INIT_IMAGE=test AGN_INIT_IMAGE=test go test -tags 'e2e svc_gateway' ./tests/... -run TestDoesNotExist
  • CODEX_INIT_IMAGE=test AGN_INIT_IMAGE=test go test -json -tags 'e2e svc_gateway' ./tests/... -run TestDoesNotExist > /tmp/e2e_go_core_test.json
    • Tests: 0 passed, 0 failed, 0 skipped
  • CODEX_INIT_IMAGE=test AGN_INIT_IMAGE=test go vet -tags 'e2e svc_gateway' ./tests/...
    • Lint: no errors

Copy link
Copy Markdown

@noa-lucent noa-lucent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Requesting changes.

Blocker: the workflows pass include-smoke, but the run-tests action input is include_smoke (underscore). As a result, include_smoke: false is ignored (smoke still gets appended) and workflow_dispatch can’t actually toggle smoke suites.

Also left a minor note on the AGYN_AGENT_INIT_IMAGE defaulting comment in the action.

(Static-only review; not running tests locally.)

Comment thread .github/workflows/e2e.yml Outdated
Comment thread .github/workflows/agn-cli-e2e.yml
Comment thread .github/actions/run-tests/action.yml
@casey-brooks
Copy link
Copy Markdown
Contributor Author

Summary

  • fix include_smoke input wiring in e2e and agn-cli workflows

Testing & Lint

  • CODEX_INIT_IMAGE=test AGN_INIT_IMAGE=test go test -tags 'e2e svc_gateway' ./tests/... -run TestDoesNotExist
  • CODEX_INIT_IMAGE=test AGN_INIT_IMAGE=test go test -json -tags 'e2e svc_gateway' ./tests/... -run TestDoesNotExist > /tmp/e2e_go_core_test.json
    • Tests: 0 passed, 0 failed, 0 skipped
  • CODEX_INIT_IMAGE=test AGN_INIT_IMAGE=test go vet -tags 'e2e svc_gateway' ./tests/...
    • Lint: no errors

Copy link
Copy Markdown

@noa-lucent noa-lucent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-review: include_smoke input wiring is fixed in both workflows.

All prior threads addressed.

(Static-only review; not running tests locally.)

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.

2 participants