---
id: w1/m16/t005
title: Simplify — `/simplify` over what this milestone changed
worker: worker1
status: done
estimate: 20m
depends_on: [w1/m16/t004]
---

## Objective

Standing simplify pass: run `/simplify` over everything this milestone changed (the env-group + secret-file Core verbs, the three adapter fragments, the operator projection/mount code, and the dashboard views) to fold duplication into the existing `secrets` feature, reuse the projection helper rather than copy it, and keep the adapters pure presentation. Quality only — not a bug hunt.

## Context

- `/simplify` reviews changed code for reuse, simplification, efficiency, and altitude, then applies the fixes.
- The milestone deliberately reuses the OpenBao client + `<name>-env` Secret projection — the biggest simplify risk is a parallel copy of that path for groups/files instead of one shared helper.
- Adapters must stay thin (each verb has exactly one implementation in the feature `Service`; `rest.go`/`graphql.go`/`mcp.go` are pure presentation) — docs/ADR006-bex-api.md.

## Steps

1. Run `/simplify` over the milestone's diff.
2. Apply the reuse/altitude fixes it surfaces (shared projection helper, no adapter logic drift).
3. Re-run `make test` + dashboard tests after applying.

## Files

- `lego/backend/internal/secrets/` and any operator/dashboard files this milestone touched.

## Acceptance criteria

- [ ] `/simplify` run over the milestone diff; its fixes applied.
- [ ] No duplicated projection/OpenBao path between env vars, groups, and secret files.
- [ ] Adapters remain pure presentation over shared Core verbs.
- [ ] `make test` + dashboard tests still green after simplification.

## Out of scope

- Bug hunting (that's `/code-review`, not `/simplify`).
- New features.
