Skip to content

Expand live-service verification beyond health and login #198

Description

@cmsjade5000

Goal

Make live verification prove that changed routes, assets, and security headers are actually deployed after a service restart.

Context

Current live checks focus on /health and /login, which can pass even if a changed route, template, static asset, or security header is stale. Vault 966’s iPad/live-service workflow needs a quick way to verify the affected surface after application changes.

Suggested Scope

  • Extend scripts/vault_service.sh verify or make codex.live to accept one or more route/asset paths.
  • Check key security headers for HTML and API responses.
  • Consider validating static asset fingerprints or content type for changed CSS/JS assets.
  • Keep the default path fast for normal Codex turns.
  • Make failure output actionable.

Files or Areas

  • scripts/vault_service.sh
  • scripts/codex_check.sh
  • Makefile
  • tests/test_vault_service_scripts.py
  • tests/test_health.py
  • README.md or AGENTS.md if command usage changes

Out of Scope

  • Changing launchd service architecture
  • Restarting or modifying a contributor’s live service during tests
  • Uploading logs or local service paths to GitHub
  • Full browser automation for every route

Acceptance Criteria

  • Live verification can check an affected route or asset path in addition to /health.
  • Header regressions are caught for representative responses.
  • Failure messages say which URL/path failed and why.
  • Tests cover the script behavior without touching a real live service.
  • Documentation explains when to use the expanded verification path.

Verification

  • pytest tests/test_vault_service_scripts.py
  • pytest tests/test_health.py
  • Manual maintainer check on macOS service, if available: scripts/vault_service.sh verify /ui/movies and one static asset path.

Contributor Notes

This is a good ops contribution for someone comfortable with shell tests. Please keep tests synthetic and avoid committing local logs, plist dumps, or app-support paths beyond documented examples.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions