docs: recover the RFP judgment + UX audit into the repo (were /tmp-only, lost to tmp cleanup)
This commit is contained in:
parent
f3631307aa
commit
ad912828ea
2 changed files with 92 additions and 0 deletions
61
docs/reports/rfp-judgment-final.md
Normal file
61
docs/reports/rfp-judgment-final.md
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
# Editor v2 RFP — FINAL judgment (3 of 4; deepseek a no-show)
|
||||
|
||||
deepseek: 5 launch attempts, all died to infra (latest: lease expired at seq 17, no output). Excluded.
|
||||
In hand: nemotron (19/25 preliminary), glm53 (24/25 preliminary), qwen38 (scored below).
|
||||
|
||||
## qwen38 (qwen3.8-27b) — assessment
|
||||
|
||||
Strengths:
|
||||
- Landscape-native schema from v1 (`aspect: '16:9' 720p | '9:16' 1080×1920`, `fit: cover|contain`) —
|
||||
satisfies the mandatory amendment glm53 needed, natively.
|
||||
- Captions are schema-first: Speaches faster-whisper large-v3-turbo (correct model per research),
|
||||
words JSON as source of truth, SRT/VTT/ASS derived, ASS burn-in re-timed through the EDL.
|
||||
- Container generalization is disciplined: the in-flight produce payload becomes a degenerate
|
||||
EdlProject → ONE validator, ONE render path; version discriminator + version-bump policy as the
|
||||
explicit anti-NLE-creep defense.
|
||||
- Job model reuses the in-flight producer lease pattern (`kind='assemble'`, SKIP LOCKED).
|
||||
- Render: one process / one filter_complex / one encode, measured 1.2× RT; stream-copy honestly
|
||||
rejected inside assemblies; cards as loop-PNG from the existing overlay renderer — no drawtext
|
||||
at all; pre-spawn trim validation against probe durationMs; retry/timeout/scratch-cleanup policy.
|
||||
- AI: Speaches + SigLIP + job runner on gpu-01 over Tailscale, worker stays pure FFmpeg; VRAM budget
|
||||
table; license register incl. BLOCKED list (XTTS-v2 CPML, F5-TTS CC-BY-NC, RVM GPL-3, Ultralytics AGPL-3);
|
||||
auto-editor as SUGGESTED cuts with human confirm.
|
||||
- UI: only new files, primitives named as reused, mobile single-column with chevron reorder, ≥44 px
|
||||
targets, one-thumb flow, 8 documented shortcuts, exact brand tokens.
|
||||
- Risk honesty: 5 risks with mitigations; "preview ≈ final"; measured-vs-EST labeling.
|
||||
|
||||
Weaknesses: stale migration number (036 vs actual next); no explicit schema-drift guard; no
|
||||
render-CPU-contention semaphore; thinner canvas/revision formalism than glm53.
|
||||
|
||||
## Final scoring (1–5 per criterion)
|
||||
|
||||
| Criterion | nemotron | glm53 | qwen38 |
|
||||
|---|---|---|---|
|
||||
| Correctness vs real constraints | 3.5 | 4.5 | 4.5 |
|
||||
| Concreteness (files/jobs/models) | 4 | 5 | 5 |
|
||||
| Speed-to-value for crews | 4 | 4.5 | 4.5 |
|
||||
| Look-and-feel respect | 4 | 5 | 5 |
|
||||
| Risk honesty | 3.5 | 5 | 5 |
|
||||
| **Total** | **19/25** | **24/25** | **24/25** |
|
||||
|
||||
## Verdict
|
||||
|
||||
glm53 and qwen38 tie at 24/25. Tie-break on the deltas: glm53's only mandatory amendment was a SCHEMA
|
||||
change (portrait-only canvas); qwen38's gaps are ADDITIVE process guards.
|
||||
|
||||
**Decision: adopt qwen38 as the editor-v2 plan base, with two glm53 amendments folded in:**
|
||||
1. glm53's mirror-file + mirror-assert convention for the EDL schema (API↔worker drift guard).
|
||||
2. glm53's render semaphore (≤2 concurrent niced renders) so batch renders never starve the live compositor.
|
||||
|
||||
nemotron: not adopted (wrong transcription stack, captions missing, matting confusion).
|
||||
deepseek: no-show; may be re-run later for a second opinion but is not blocking.
|
||||
|
||||
## Implementation status
|
||||
- S1 EDL schema + /video/edl API + 043 store: SHIPPED (media-control/edl.ts, EdlController, 043)
|
||||
- L1 assemble lane: SHIPPED (044 claim widening, runner probe+assemble lanes, assemble-builder,
|
||||
overlay-png cards, ffprobe port) — e2e verified (2 clips + card + overlay → derived asset)
|
||||
- M1 editor UI: queued
|
||||
- M2 transcription lane: sidecar deployed (Speaches-compatible faster-whisper on moxexleyhp1-1 GPU,
|
||||
http://100.70.240.7:9000) — hub wiring pending
|
||||
- v1.5 search (SigLIP): sidecar deferred — TEI 1.8 cannot parse google SigLIP configs; needs a newer
|
||||
TEI or the planned FastAPI wrapper
|
||||
Loading…
Add table
Add a link
Reference in a new issue