Skip to content

chore: requirements.txt + Agentation dev panel#41

Open
spencerwozniak wants to merge 2 commits into
zeapsu:mainfrom
spencerwozniak:split/01-chores
Open

chore: requirements.txt + Agentation dev panel#41
spencerwozniak wants to merge 2 commits into
zeapsu:mainfrom
spencerwozniak:split/01-chores

Conversation

@spencerwozniak

@spencerwozniak spencerwozniak commented May 22, 2026

Copy link
Copy Markdown
Contributor

Summary

Split out of #37 — independent infra/tooling, no runtime feature changes.

  • backend/requirements.txt — pip-installable mirror of pyproject.toml for environments that don't use uv.
  • AgentationDev overlay — dev-only in-app feedback widget. Renders only when NODE_ENV === "development", never ships in production builds.

Test plan

  • pip install -r backend/requirements.txt resolves in a fresh venv
  • npm run dev shows the Agentation overlay; npm run build does not bundle it
  • Verify nothing else in the app is affected

spencerwozniak and others added 2 commits May 22, 2026 15:36
Provides a pip-installable dependency list alongside the uv-managed
pyproject.toml for environments that don't use uv.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Installs the agentation npm package as a devDependency and mounts a
small <AgentationDev /> wrapper at the end of <body> in the root
layout. The wrapper only renders when NODE_ENV === "development", so
the overlay never ships in a production build.

The optional MCP server (which forwards feedback into a CLI agent
session) is set up out-of-tree via `npx agentation-mcp init` — no
config is committed.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@zeapsu

zeapsu commented May 25, 2026

Copy link
Copy Markdown
Owner

Thanks for splitting this out, this helped make the tooling changes much easier to reason about.

I think we should hold off on merging this PR as-is, mostly because Sage needs a clear, single dependency/tooling path.

For backend dependencies, Sage uses uv with pyproject.toml and uv.lock as the source of truth. Adding a committed requirements.txt would create a second dependency source that can drift from uv.lock, especially as more contributors join. If we ever need requirements.txt for a deployment target, I’d prefer generating it from uv rather than maintaining it manually.

For Agentation, I like the intent of improving dev feedback/review workflows, but I do not think we should commit it as a project dev dependency. Not every contributor uses Agentation, others may have their own review tools, and adding it to devDependencies makes the whole project install and implicitly support it. There are also production-bundling and license/privacy considerations if it enters the app tree.

I also noticed the current implementation imports Agentation from the normal app layout path. Even with a development guard, the static import can still put Agentation code into production build output. So if we ever revisit this, it would need to be truly dev-only.

Recommended changes for this PR:

  • remove backend/requirements.txt
  • remove Agentation from committed devDependencies
  • keep personal/dev annotation tooling local, untracked, or fork-only
  • avoid unrelated package-lock.json churn

This is less about the specific tools being bad, and more about keeping Sage’s contributor workflow predictable: one backend dependency manager, one lockfile path, and no project-level dev tooling unless Sage itself requires it.

Checks I ran locally in an isolated checkout:

  • backend pytest with isolated HOME: passed
  • frontend install: passed
  • frontend build: passed
  • TypeScript check: passed

Great Sage appreciates the cleanup effort here, I just want to keep the project tooling path crisp before this lands.

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