Skip to content

[Catalog] Unpublish smoke-test agents from the live store #65

Closed

Description

@serge-ivo

[Catalog] Unpublish smoke-test agents from the live store

Test fixtures are visible in the public catalog — an unfinished-store signal.

Confirmed offenders (live 2026-08-01)

  • mcp-launch-smoke-202606111215 — "MCP Launch Smoke Agent … smoke-test agent launched through MCP"
  • codex-mcp-browser-test-20260611 — "Smoke-test agent created from Codex through the MCP browser-auth flow"

Do

  • Set these to draft/unlisted (don't delete — keep for MCP regression, just remove from the public catalog).
  • Add a guard so agents whose slug/description marks them as smoke/test can't be visibility=published (or a publish-time warning).

Acceptance

  • Neither appears in GET /v1/agents (public catalog).
  • A test agent cannot be published without an explicit override.

Part of the catalog audit.

Activity

  1. added
    bugSomething isn't working
    catalogAgent catalog integrity/cleanup
    on Aug 1, 2026
  2. serge-ivo commented on Aug 6, 2026

    @serge-ivo
    ContributorAuthor

    Done in e10af15, deployed and verified live.

    Public catalog: 32 → 29 agents. Set to draft (not deleted, as asked — they stay available for MCP regression):

    • mcp-launch-smoke-202606111215
    • codex-mcp-browser-test-20260611
    • google-drive-doc-chat-test — not on the original list, but its slug, name AND description all say Test

    The guard is live. Re-publishing one now returns:

    This looks like a test fixture (matched "test" in its slug, name or description) and would appear in the public catalog. Publish it with allowTestAgent: true if that is intended.

    Design notes worth keeping:

    • Heuristic, not an isTest column. The fixtures already exist and already say what they are, so a column would need back-filling by exactly this judgement, and every future fixture would have to remember to set it. What reliably marks a smoke test is that its author called it one.
    • Whole-word, not substring. includes("test") was the obvious first cut and blocks "Latest News Digest", "Contest Judge", "Testimonial Collector" — more real products than fixtures. Tested.
    • Only published is gated. Moving to draft always works, including for an already-published agent that would now fail the check — otherwise this guard would have trapped the very fixtures it exists to remove.

    Leaving #64 (audit every published agent) and #67 (collapse duplicates) open. Worth a look while you're there: chatbot is still listed with 0 subscribers and a generic scaffold description, and the seed agents (site-monitor, lead-qualifier, content-pipeline, competitor-intel, support-escalator, seo-auditor, invoice-parser, email-drafter, data-analyst) are all published at 0 subs — that is #64's call to make, not this ticket's.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingcatalogAgent catalog integrity/cleanup

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions