diff --git a/HANDOVER.md b/HANDOVER.md deleted file mode 100644 index acb05e57a..000000000 --- a/HANDOVER.md +++ /dev/null @@ -1,52 +0,0 @@ -# Session Handover — PR #214 (OSS audit quick wins) - -**Date:** 2026-06-09 -**Branch:** `chore/quick-wins-203-204-211-212` -**PR:** https://github.com/Extralit/extralit/pull/214 (targets `develop`) -**Outcome:** Quick-win bundle for #203/#204/#211/#212 implemented and **verified**. **All PR CI checks green** on `6c7c48a6e` (frontend build, server package + docker images, SDK matrix 3.9–3.13, Scorecard, Snyk). Also unblocked the frontend CI test step that had been red on `develop` since #200. **Ready to merge.** - -> CI note: `build (3.9)` failed once on a transient Docker-registry timeout pulling the `extralitdev/extralit-hf-space:latest` service container (network flake at "Initialize containers", before any code ran); green on re-run. "Publish Release" shows "skipping" — expected on a PR. - ---- - -## PR #214 status — verification results - -| Item | Scope | Status | -|---|---|---| -| **#203** uv cache path | `extralit-server/docker/server/Dockerfile`: `UV_CACHE_DIR=/home/extralit/.cache/uv` + matching `--mount` target | ✅ Code correct & self-consistent (build-time BuildKit cache; only mount in builder stage). Docker build itself covered by CI "Build extralit-server package". | -| **#204** onboarding docs | README fence fix, SDK README snippets, root `AGENTS.md` → per-component `CLAUDE.md`, `examples/README.md`, `CONTRIBUTING.md` dev-env section | ✅ Committed. | -| **#211** Argilla→Extralit frontend rebrand | `BackendEnvironment.argilla`→`.extralit`, `argillaDatasets`→`extralitDatasets` i18n (4 locales + `DatasetList.vue`), `docs.argilla.io`→`docs.extralit.ai` in `ja.js`, 84 license headers | ✅ Verified: `useRunningEnvironment.test.ts` passes, no `BackendEnvironment.argilla` left in source, `extralitDatasets` consistent across all 4 locales + component, frontend build succeeds. | -| **#212** untrack editor/cache dirs | already in `.gitignore`, not tracked | ✅ No-op (confirmed). | -| **(extra)** empty spec from #200 | `components/features/import/file-upload/useImportFileUploadViewModel.spec.ts` was 0 bytes → Jest "must contain at least one test" → **broke frontend CI test step since #200** | ✅ Added `it.todo` placeholder; suite now green. | - -### Test plan (PR description) — results this session -- **`npm run lint`** — PR's own changed files are clean. The 50 errors `lint` reports are all in files **not touched by this PR** (pre-existing repo-wide debt); CI's lint step is `continue-on-error: true`, so they don't gate the PR. -- **`npm run test`** — 723 passed / 3 skipped; the one prior failure (empty `#200` spec) is fixed. -- **`npm run build`** — Nuxt production build succeeds (exit 0) with the rebranded type/i18n key. -- **Docker build** — Dockerfile change reviewed; defer to CI "Build extralit-server package" (heavy locally on ARM). - ---- - -## Key facts / gotchas for next session - -- **`develop`'s frontend CI has been red since #200** (`2ac8134a7`) because of the empty spec — not a #214 regression. This PR fixes it as a side effect. -- **CI lint vs pre-commit:** the pre-commit hook only lints staged files (so the PR "passed lint" locally), but CI runs full-repo `npm run lint`. Full-repo lint has 50 pre-existing errors incl. a **parse error in `pages/index.vue:157`** — worth a separate cleanup issue, out of scope here. -- **Intentionally retained Argilla references** (do not "fix"): `how-to-configure-argilla-on-huggingface/` doc paths (renamed paths 404), `argilla-dev` localStorage key (breaks installed extensions), `argilla.imglab-cdn.net` CDN, E2E mock fixtures, `CHANGELOG.md [Argilla]` entries, NOTICE attribution. - ---- - -## Remaining / next steps - -1. ✅ **CI green** — frontend build, server package + docker images, SDK matrix 3.9–3.13, Scorecard, Snyk all pass. -2. **Merge** — PR is ready; no blocking checks remain. -3. **Follow-ups (not in this PR):** full-repo frontend lint cleanup (50 errors incl. `pages/index.vue` parse error); the security items flagged but unfiled in the original audit (secret rotation, wildcard CORS in `api/handlers/v1/files.py`, `v-html` sanitization); architecture sequence #206→#207→#208; backend #205; schemas/payloads #209; uv workspaces #210. - ---- - -## Map of files touched by PR #214 -- `extralit-server/docker/server/Dockerfile` — #203 uv cache path -- `extralit/README.md`, root `README.md`, `AGENTS.md`, `CONTRIBUTING.md`, `examples/README.md` — #204 docs -- `extralit-frontend/v1/.../environment/{Environment.ts,EnvironmentRepository.ts}`, `v1/infrastructure/types/environment.ts`, `useRunningEnvironment.test.ts` — #211 env rename -- `extralit-frontend/translation/{en,de,es,ja}.js`, `components/features/home/dataset-list/DatasetList.vue` — #211 i18n -- ~84 frontend source files — #211 license-header convention -- `extralit-frontend/components/features/import/file-upload/useImportFileUploadViewModel.spec.ts` — empty-spec CI fix (this session) diff --git a/docs/superpowers/specs/2026-07-19-reference-review.md b/docs/superpowers/specs/2026-07-19-reference-review.md new file mode 100644 index 000000000..a2b5a2deb --- /dev/null +++ b/docs/superpowers/specs/2026-07-19-reference-review.md @@ -0,0 +1,133 @@ +# Handoff — ReferenceReview slice: design/correctness interrogation brief + +**Date:** 2026-07-19 +**Context branch:** `polish/v2-ui-shell-integration` (PR #232). The ReferenceReview slice itself is **already on `develop`** (merged via #230). +**Goal of next session:** interrogate the Presentation, Domain/infra, and Backend layers for **user design, API design, correctness, and performance** — then decide whether to redesign-in-place, or replace. + +--- + +## Why this brief exists (the reframing) + +I was asked whether the reference-review files are half-baked sprawl worth deleting, this is a critical review of the ReferenceReview vertical slice across three layers to determine if it is worth redesigning. + +**Where the value actually sits:** the *presentation* (~360 LOC) is the under-designed, replaceable part. The *domain/infra + backend contract* (~1,200 LOC, well-tested) is the asset a redesign reuses — deleting it means rebuilding it. + +--- + +## The full surface (the "any others") + +### Presentation (~360 LOC) — the redesign target +- `components/v2/review/ReviewRecordCard.vue` (137) — one card per schema-record; renders context as raw `
- {{ $t("schemas.totalApproximate", { total: page.total }) }} - {{ page.total }} -
-+ {{ $t("schemas.totalApproximate", { total: page.total }) }} + {{ page.total }} +
+| - | - | - | - |
|---|---|---|---|
|
- |
- {{ schema.status }} | -{{ schema.updatedAt }} | -
- |
-
| + | + | + | + |
|---|---|---|---|
|
+ |
+ {{ schema.updatedAt }} | +
+ |
+