You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Ponytail cleanup: preview-env helper consolidation, duplicated name and issue strings (2026-10-05) #280
Ponytail audit 2026-10-05 (weekly-ponytail-audit, job ad3283353401). Report: ~/.hermes/cron/output/ad3283353401/2026-10-05_08-34-11.md.
Audited read-only at sprout 56f0168 (checkout clean, on main). Re-verify each path before deleting — this batch is the cleanest of the week.
What to build
packages/preview-env/src/health.ts:28 vs governance.ts:7 — two parseDurationMs under one name with different grammars. Consolidate. ~15-20 LOC.
apps/cli/src/yaml.ts:109-119 — healthIssueMessage is the last *IssueMessage living in the CLI while its siblings moved into the package. ~12 LOC.
apps/server/src/preview/naming.ts:8-9 vs e2e/harness/docker.ts:6-8 — identical container-name builder. ~5-10 LOC.
e2e/lifecycle.test.ts:106,149 — inline database name instead of the canonical previewDbName.
restricted-role.ts:33-35 vs app-deployment/pg-env.ts:38-40 — identical companion-role error. ~3-8 LOC.
README.md:40 — points at docs/site/index.html, which is generated output and not checked in. 1 line.
packages/preview-db/src/names.ts:17-24 — validateSlug and validateServiceName duplicate one regex. ~4 LOC.
packages/preview-env/src/index.ts:111 — PreviewVolumeIssue barrel export consumed only by a test. 1 line.
Not in scope
Human-routed this run: the un-export batch (deploy.ts:429/475/490, forge/gitlab.ts:12, telemetry/destination.ts:14 + CLI helpers) and the duplicated escapeHtml (docs/site/html.ts:2-7 vs server/src/http/dashboard.ts:53-58).
Acceptance
rg proof per removed symbol or duplicated helper; bun run lint, typecheck and bun test green; the e2e harness still provisions previews.
Ponytail audit 2026-10-26 follow-up (no new ticket — folding into this one as agreed):
Name-parse family duplicated 3× — packages/preview-env/src/naming.ts, server apps/server/src/preview/naming.ts, packages/preview-db/src/names.ts → one generic parsePrefixedName(re, …). ~28 LOC, safe. (The human set from the same run — byte-identical timing-safe compares, previewKey ×2, unused elysia dep in api-client, ~15 LOC — stays a decision for you.)
Re-verify against current main before implementing; record actioned or already resolved with the reason.
Activity
simpros commentedon Oct 5, 2026
Implemented in #281 (all 9 items; suite + typecheck green).
Ponytail cleanup: consolidate preview-env helpers and duplicated stri…
simpros commentedon Oct 26, 2026
Ponytail audit 2026-10-26 follow-up (no new ticket — folding into this one as agreed):
Name-parse family duplicated 3× —
packages/preview-env/src/naming.ts, serverapps/server/src/preview/naming.ts,packages/preview-db/src/names.ts→ one genericparsePrefixedName(re, …). ~28 LOC, safe. (The human set from the same run — byte-identical timing-safe compares,previewKey×2, unusedelysiadep in api-client, ~15 LOC — stays a decision for you.)Re-verify against current
mainbefore implementing; recordactionedoralready resolvedwith the reason.