Alpha 3 -- Scaffolding removal
- Dominant language
- Python
- Stars
- 0
- Forks
- 2
- Avg merge
- 10h 52m
- Merged PRs (30d)
- 42
Description
Tracking issue for the "Alpha 3 -- Scaffolding removal" fix batch (`ALPHA_TRANSITION_PLAN.md` Phase 3), closing out the SAFE/REPLACE/DECIDE scaffolding inventory (§2.3) via one PR per row below, in this order.
- [ ] 24 -- Remove SAFE scaffolding (dead `POST /api/encode` + `MOCK_DATA_DIR` chain, `"neon-test"` view, dormant fake-progress block, mock-XML string in `ICCompletionTestPage.tsx`, hardcoded dev path in `scripts/convert2greyscale.py`). Verified already clean, no action needed: `staff-finding/config.yaml` (correctly gitignored, not present), `z_quicktest/` (doesn't exist).
- [ ] 25 -- Add auth + ownership checks to all `encode_api.py` routes (currently zero on all 6; `/manifest`, `/mei` need a `project_id`/`user_id` column added to `job_sessions` first)
- [ ] 26 -- `MOTHRA_SECRET`: fail fast instead of silent random fallback (`auth_api.py:58`)
- [ ] 27 -- Tighten CORS: no `*` defaults (backend env default `main.py`, text-service unconditional `main.py`, audit `docker-compose.yml`)
- [ ] 28 -- Periodic cleanup via Celery beat (`job_uploads`/`job_sessions`/Neon manifests/batch zips; fix `cleanup_stale_uplaods` typo; fold in the three duplicated ad hoc 86400s sweeps)
- [ ] 29 -- Real `/healthz` on backend + text-service, wire k8s probes (model: `paco-classifier-service`'s existing `/health`+`/ready`)
- [ ] 30 -- Move `BATCH_DIR` + `NEON_MANIFESTS_DIR` off node-local disk (Postgres-backed like `job_sessions`)
- [ ] 31 -- One-shot migration Job; remove import-time `init_db`/`_migrate_db`; unblock `replicas > 1`
- [ ] 32 -- Replace `NeonBatchEditor` 800ms save-race sleep with a real completion signal from `neonView.save()`
- [ ] 33 -- Decision-log triage: DL-1...DL-16 (one PR covering the full triage pass, not 16 separate PRs)
### DL-1...DL-16 disposition (issue #33's scope)
| DL# | Topic | Disposition |
|---|---|---|
| DL-1 | SKIP_PREDICT/placeholder-bbox-grid triad | **Decided** -- keep dev flags, add mandatory "SYNTHETIC -- no prediction ran" banner in the IC |
| DL-2 | `ICCompletionTestPage` + "ta-da!" copy | Execute doc recommendation: keep XML-upload affordance, drop unconditional celebration copy |
| DL-3 | paco-classifier personal-branch pin | Execute: freeze the pin until upstream merge; note in CODEOWNERS |
| DL-4 | ~570 checked-in artifacts | Execute: triage per HF-first policy (§5.8) |
| DL-5 | eslint disabled in CI | Execute: baseline now (fail on new errors only), burn down as rolling chore |
| DL-6 | `tests.yml` not a required check | Execute once suite is stable (repo-admin action) |
| DL-7 | `run_pageOG.py` + its test/CI step | Execute: delete once parity harness covers the comparison need |
| DL-8 | Unauth'd `GET /jobs/{id}/stream` | Execute: signed one-time token minted at kickoff, passed as query param |
| DL-9 | `bgr_adapter.py` hardcoded dev-machine paths | **Decided** -- remove the 3 hardcoded fallback paths, env-var (`MUSCRAT_LAYER_SEP_DIR`) only |
| DL-10 | ProcessingPage cosmetic pacing (4s delay) | Execute: remove the 4s delay, keep at most a short (<1s) settle animation |
| DL-11 | "printed text coming soon" pill | Execute: keep as-is, tidy copy only |
| DL-12 | Legacy dirs (`OLD-annotator/`, root `scripts/`, `configs/`) | Execute: move useful ML scripts to `research/`, delete the rest (`OLD-annotator/` already gone) |
| DL-13 | Null `confidence` placeholder in JSOMR | Execute: keep null for now, document; defer real computation |
| DL-14 | Stave conf default (0.25 vs 0.5) | **Already decided/fixed 2026-08-17** -- no action |
| DL-15 | `image_name` uniqueness constraint | Execute: key by id AND add the constraint as a backstop |
| DL-16 | Custom text models in containers | Execute: out of alpha scope; log clearly on unresolved custom path |
See `documentation_allons-y/ALPHA_TRANSITION_PLAN.md`'s §2.3 scaffolding inventory and §3 Phase 3 plan for full detail, and §4 decision log for the DL-* rows.
Branch: `kyrie/alpha3-scaffolding-removal` (off `main`, since #219/Alpha 1 is already merged). PR granularity is per row above, not per DL sub-item.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.