Skip to content

chore: remove slide_creator agent and slide generation#493

Merged
locnguyen1986 merged 2 commits into
mainfrom
chore/remove-slide-creator
Jun 19, 2026
Merged

chore: remove slide_creator agent and slide generation#493
locnguyen1986 merged 2 commits into
mainfrom
chore/remove-slide-creator

Conversation

@locnguyen1986

Copy link
Copy Markdown
Collaborator

Summary

Removes the slide-creator agent and all slide-specific code across the backend services, web app, tests, and tooling. The other agents (deep_research, doc_generator, pdf_generator, spreadsheet_generator) and generic .pptx file upload are intentionally preserved.

The slide executor was the de-facto handler for all ArtifactCreate steps (doc/pdf/spreadsheet/deep_research all emit store_artifact), so the shared generic path was first extracted into a new planners/artifactexec package before the slide-specific code was deleted.

Changes

response-api

  • New internal/domain/agent/planners/artifactexec package — generic ArtifactCreate executor extracted from the slide package.
  • Deleted the slide_creator planner/steps, assets/slide_creator + assets/slide_renderer, the slides skill template, and the now-dead RoutingExecutor.
  • Rewired DI: deepResearchExecutor for tool/LLM calls, GenericArtifactExecutor for artifact creation.
  • Removed ContentTypeSlides, AgentTypeSlideCreator, SkillTypeSlides, SlideCreator* metadata/schemas/examples, SlidesMetadata, MediaArtifact.SlidesImages, RenderSlidesPPTX, the SLIDE_RENDERER_* / SKILL_SLIDES_ENABLED config, and the generate_slide request special-casing.

mcp-tools

  • Removed the slide_creator agent-proxy handling and the slide-only generation package.

llm-api

  • Dropped the slide_generate MCP tool key.

web

  • Removed the slide viewer, the "Presentations" artifact filter, slide rendering in the gallery/card/sidebar, and slide metadata parsing. Presentation file upload is kept.

tests / docs / tooling

  • Unit + integration tests, e2e seed SQL, postman collections, env-var docs, .env.template, and the Makefile updated; slide assertions repointed to doc_generator; orphaned test-agent-slide target removed.

Local-docker fixes (separate commit — pre-existing, unrelated to slides)

While verifying the stack in Docker, two pre-existing issues blocked a healthy bring-up and are fixed in d944305:

  • media-api: the default local storage backend registered a path-based static mount at /v1/files/*filepath that conflicts with /v1/files/:id and panics gin at startup. Files are served by ID via the Proxy handler, so the redundant static mount is removed.
  • web: the container healthcheck used http://localhost:3001 (resolves to IPv6 ::1, where nginx on 0.0.0.0:3001 doesn't answer) → switched to 127.0.0.1.

Verification

  • go build ./... (+ -tags wireinject) passes for response-api, llm-api, mcp-tools; web builds (tsc -b && vite build).
  • response-api unit tests pass (agent list now returns deep_research/doc_generator, no slide_creator).
  • Full stack built and deployed in local Docker — all 9 containers healthy (infra + llm-api, response-api, media-api, mcp-tools, web); /v1/agents route wired, guest-login intact.
  • Repo-wide sweep confirms no remaining slide_creator / slide-agent references (animation classes and pptx-upload MIME types intentionally retained).

Nguyen added 2 commits June 18, 2026 16:48
Remove the slide-creator agent and all slide-specific code across the
backend services, web app, tests, and tooling. The other agents
(deep_research, doc_generator, pdf_generator, spreadsheet_generator) and
generic .pptx file upload are unaffected.

response-api:
- Extract the shared generic artifact executor into a new
  planners/artifactexec package. The slide executor was the de-facto
  handler for all ArtifactCreate steps (doc/pdf/spreadsheet/deep_research
  depend on store_artifact), so the generic path is preserved while the
  slide-specific code is deleted.
- Delete the slide_creator planner/steps, slide_creator + slide_renderer
  assets, the slides skill template, and the dead RoutingExecutor.
- Drop slide wiring; register deepResearchExecutor for tool/LLM calls and
  the generic artifact executor for artifact creation.
- Remove ContentTypeSlides, AgentTypeSlideCreator, SkillTypeSlides,
  SlideCreator* metadata/schemas/examples, SlidesMetadata,
  MediaArtifact.SlidesImages, RenderSlidesPPTX, and the
  SLIDE_RENDERER_* / SKILL_SLIDES_ENABLED config + generate_slide casing.

mcp-tools:
- Remove the slide_creator agent-proxy handling and the slide-only
  generation package.

llm-api:
- Drop the slide_generate MCP tool key.

web:
- Remove the slide viewer, the "Presentations" artifact filter, slide
  rendering in the gallery/card/sidebar, and slide metadata parsing.
  Presentation file upload is kept.

tests/docs/seeds/postman/Makefile updated; slide assertions repointed to
doc_generator, and the orphaned test-agent-slide target removed.
…althcheck)

Pre-existing issues that prevented the local docker stack from starting
healthy, unrelated to the slide removal:

- media-api: with the default local storage backend it registered a
  path-based static mount at /v1/files/*filepath, which conflicts with
  the /v1/files/:id route and panics gin at startup. Local files are
  served by ID through the Proxy handler, so the redundant static mount
  is removed.
- web: the container healthcheck used http://localhost:3001, which
  resolves to IPv6 ::1 where nginx (listening on 0.0.0.0:3001) does not
  answer, marking the container unhealthy. Use 127.0.0.1.
@locnguyen1986 locnguyen1986 merged commit 761c4b9 into main Jun 19, 2026
4 of 9 checks passed
@locnguyen1986 locnguyen1986 deleted the chore/remove-slide-creator branch June 19, 2026 02:07
@github-project-automation github-project-automation Bot moved this to QA in Jan Jun 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: QA

Development

Successfully merging this pull request may close these issues.

2 participants