From 7f748bfdf7846fbdb60619c03d8251026c8e4981 Mon Sep 17 00:00:00 2001 From: EtienneLescot Date: Sat, 5 Sep 2026 00:00:35 +0200 Subject: [PATCH 1/2] fix(i18n): simplify transcript panel title across all locales Update transcript.title in all 13 locales to remove 'current' / 'actuelle', aligning the inspector panel heading with facets.transcript and surrounding titles. Also regenerate website recreation data and add unit test coverage. --- .../ai-edition/RightPanes.i18n.test.tsx | 56 ++++- src/i18n/locales/ar/settings.json | 2 +- src/i18n/locales/en/settings.json | 2 +- src/i18n/locales/es/settings.json | 2 +- src/i18n/locales/fr/settings.json | 2 +- src/i18n/locales/it/settings.json | 2 +- src/i18n/locales/ja-JP/settings.json | 2 +- src/i18n/locales/ko-KR/settings.json | 2 +- src/i18n/locales/pt-BR/settings.json | 2 +- src/i18n/locales/ru/settings.json | 2 +- src/i18n/locales/tr/settings.json | 2 +- src/i18n/locales/vi/settings.json | 2 +- src/i18n/locales/zh-CN/settings.json | 2 +- src/i18n/locales/zh-TW/settings.json | 2 +- .../src/components/Recreation/generated.ts | 220 +++++++++--------- website/src/components/Recreation/index.tsx | 6 +- 16 files changed, 181 insertions(+), 127 deletions(-) diff --git a/src/components/ai-edition/RightPanes.i18n.test.tsx b/src/components/ai-edition/RightPanes.i18n.test.tsx index 64e40e7d6..fb9fc07ba 100644 --- a/src/components/ai-edition/RightPanes.i18n.test.tsx +++ b/src/components/ai-edition/RightPanes.i18n.test.tsx @@ -11,7 +11,7 @@ import type { ReactElement } from "react"; import { afterEach, beforeEach, describe, expect, it } from "vitest"; import { I18nProvider } from "@/contexts/I18nContext"; import { LOCALE_STORAGE_KEY } from "@/i18n/config"; -import { CursorPane, LayoutPane, VideoEffectsPane } from "./RightPanes"; +import { CursorPane, LayoutPane, TranscriptPane, VideoEffectsPane } from "./RightPanes"; function renderIn(locale: string, ui: ReactElement) { localStorage.setItem(LOCALE_STORAGE_KEY, locale); @@ -77,4 +77,58 @@ describe("right-rail panes are localized", () => { expect(screen.getByRole("heading", { name: "Composition" })).toBeInTheDocument(); expect(screen.getByText("Blur BG")).toBeInTheDocument(); }); + + it("renders the transcript pane title as 'Transcription' in French", () => { + const noop = () => { + /* noop */ + }; + renderIn( + "fr", + , + ); + expect(screen.getByRole("heading", { name: "Transcription" })).toBeInTheDocument(); + }); + + it("renders the transcript pane title as 'Transcript' in English", () => { + const noop = () => { + /* noop */ + }; + renderIn( + "en", + , + ); + expect(screen.getByRole("heading", { name: "Transcript" })).toBeInTheDocument(); + }); }); diff --git a/src/i18n/locales/ar/settings.json b/src/i18n/locales/ar/settings.json index 3a9e392ca..2efb8fc10 100644 --- a/src/i18n/locales/ar/settings.json +++ b/src/i18n/locales/ar/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "التسجيل", "noTranscript": "لا يوجد نص بعد", - "title": "النص الحالي", + "title": "النص", "restoreWord": "استعادة \"{{word}}\"", "revertWord": "استعادة \"{{original}}\"", "editingHint": "انقر نقرًا مزدوجًا على كلمة لتصحيحها، واضغط Backspace لقطعها من الفيلم.", diff --git a/src/i18n/locales/en/settings.json b/src/i18n/locales/en/settings.json index 7053126b8..cf499104b 100644 --- a/src/i18n/locales/en/settings.json +++ b/src/i18n/locales/en/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "Recording", "noTranscript": "No transcript yet", - "title": "Current transcription", + "title": "Transcript", "restoreWord": "Restore \"{{word}}\"", "revertWord": "Restore \"{{original}}\"", "editingHint": "Double-click a word to correct it, Backspace cuts it from the film.", diff --git a/src/i18n/locales/es/settings.json b/src/i18n/locales/es/settings.json index 84419849c..dbde8bce8 100644 --- a/src/i18n/locales/es/settings.json +++ b/src/i18n/locales/es/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "Grabación", "noTranscript": "Aún no hay transcripción", - "title": "Transcripción actual", + "title": "Transcripción", "restoreWord": "Restaurar «{{word}}»", "revertWord": "Restaurar «{{original}}»", "editingHint": "Haz doble clic en una palabra para corregirla, Retroceso la corta del vídeo.", diff --git a/src/i18n/locales/fr/settings.json b/src/i18n/locales/fr/settings.json index 1c8bf2764..f7ab3d56e 100644 --- a/src/i18n/locales/fr/settings.json +++ b/src/i18n/locales/fr/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "Enregistrement", "noTranscript": "Aucune transcription pour l'instant", - "title": "Transcription actuelle", + "title": "Transcription", "restoreWord": "Restaurer « {{word}} »", "revertWord": "Rétablir « {{original}} »", "editingHint": "Double-cliquez sur un mot pour le corriger, Retour arrière le coupe du film.", diff --git a/src/i18n/locales/it/settings.json b/src/i18n/locales/it/settings.json index 2e5ac7381..0aa569e5c 100644 --- a/src/i18n/locales/it/settings.json +++ b/src/i18n/locales/it/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "Registrazione", "noTranscript": "Ancora nessuna trascrizione", - "title": "Trascrizione corrente", + "title": "Trascrizione", "restoreWord": "Ripristina «{{word}}»", "revertWord": "Ripristina «{{original}}»", "editingHint": "Fai doppio clic su una parola per correggerla, Backspace la taglia dal video.", diff --git a/src/i18n/locales/ja-JP/settings.json b/src/i18n/locales/ja-JP/settings.json index 6c746cdfa..dc49e7092 100644 --- a/src/i18n/locales/ja-JP/settings.json +++ b/src/i18n/locales/ja-JP/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "録画", "noTranscript": "文字起こしがまだありません", - "title": "現在の文字起こし", + "title": "文字起こし", "restoreWord": "「{{word}}」を元に戻す", "revertWord": "「{{original}}」に戻す", "editingHint": "ダブルクリックで単語を修正、Backspace で映像からカット。", diff --git a/src/i18n/locales/ko-KR/settings.json b/src/i18n/locales/ko-KR/settings.json index 66cbbd245..9095cb565 100644 --- a/src/i18n/locales/ko-KR/settings.json +++ b/src/i18n/locales/ko-KR/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "녹화", "noTranscript": "아직 전사가 없습니다", - "title": "현재 전사", + "title": "전사", "restoreWord": "\"{{word}}\" 복원", "revertWord": "\"{{original}}\"(으)로 되돌리기", "editingHint": "단어를 더블 클릭해 수정하고, Backspace로 영상에서 잘라내세요.", diff --git a/src/i18n/locales/pt-BR/settings.json b/src/i18n/locales/pt-BR/settings.json index b70b4d05e..ad216ac3d 100644 --- a/src/i18n/locales/pt-BR/settings.json +++ b/src/i18n/locales/pt-BR/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "Gravação", "noTranscript": "Nenhuma transcrição ainda", - "title": "Transcrição atual", + "title": "Transcrição", "restoreWord": "Restaurar \"{{word}}\"", "revertWord": "Restaurar \"{{original}}\"", "editingHint": "Clique duas vezes em uma palavra para corrigi-la, Backspace a corta do vídeo.", diff --git a/src/i18n/locales/ru/settings.json b/src/i18n/locales/ru/settings.json index c390819f5..cdf952de0 100644 --- a/src/i18n/locales/ru/settings.json +++ b/src/i18n/locales/ru/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "Запись", "noTranscript": "Расшифровки пока нет", - "title": "Текущая расшифровка", + "title": "Расшифровка", "restoreWord": "Вернуть «{{word}}»", "revertWord": "Вернуть «{{original}}»", "editingHint": "Дважды щёлкните слово, чтобы исправить его, Backspace вырезает его из фильма.", diff --git a/src/i18n/locales/tr/settings.json b/src/i18n/locales/tr/settings.json index 6309560f7..46812be46 100644 --- a/src/i18n/locales/tr/settings.json +++ b/src/i18n/locales/tr/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "Kayıt", "noTranscript": "Henüz döküm yok", - "title": "Geçerli döküm", + "title": "Metin Dökümü", "restoreWord": "\"{{word}}\" kelimesini geri al", "revertWord": "\"{{original}}\" haline getir", "editingHint": "Bir kelimeye çift tıklayarak düzeltin, Backspace onu videodan keser.", diff --git a/src/i18n/locales/vi/settings.json b/src/i18n/locales/vi/settings.json index 719f80e21..ae6323e29 100644 --- a/src/i18n/locales/vi/settings.json +++ b/src/i18n/locales/vi/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "Bản ghi", "noTranscript": "Chưa có bản chép lời", - "title": "Bản chép lời hiện tại", + "title": "Bản chép lời", "restoreWord": "Khôi phục \"{{word}}\"", "revertWord": "Khôi phục \"{{original}}\"", "editingHint": "Nhấp đúp vào một từ để sửa nó, Backspace cắt nó khỏi video.", diff --git a/src/i18n/locales/zh-CN/settings.json b/src/i18n/locales/zh-CN/settings.json index fb5033f53..316d6a2a9 100644 --- a/src/i18n/locales/zh-CN/settings.json +++ b/src/i18n/locales/zh-CN/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "录制", "noTranscript": "暂无转录", - "title": "当前转录", + "title": "转录", "restoreWord": "恢复“{{word}}”", "revertWord": "还原为“{{original}}”", "editingHint": "双击单词即可修正,Backspace 将其从影片中剪掉。", diff --git a/src/i18n/locales/zh-TW/settings.json b/src/i18n/locales/zh-TW/settings.json index cb02cc88f..c878478ce 100644 --- a/src/i18n/locales/zh-TW/settings.json +++ b/src/i18n/locales/zh-TW/settings.json @@ -113,7 +113,7 @@ "transcript": { "laneRecording": "錄影", "noTranscript": "尚無逐字稿", - "title": "目前的逐字稿", + "title": "逐字稿", "restoreWord": "還原「{{word}}」", "revertWord": "還原為「{{original}}」", "editingHint": "雙擊單字即可修正,Backspace 將其從影片中剪掉。", diff --git a/website/src/components/Recreation/generated.ts b/website/src/components/Recreation/generated.ts index 1409939ba..c6d70ba4c 100644 --- a/website/src/components/Recreation/generated.ts +++ b/website/src/components/Recreation/generated.ts @@ -71,7 +71,7 @@ export const META = { /** The transcript pane's header. */ export const INSPECTOR = { - title: "Current transcription", + title: "Transcript", indexBadge: "1", filename: "Bellrock — docs walkthrough", clipRange: "Clip 1 · 0:00.0—0:40.0", @@ -86,112 +86,112 @@ export const INSPECTOR = { * document's two agent trims. 2 entries are removed, all of them silences. */ export const WORDS: RecreationWord[] = [ - { i: 0, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_1", kind: "silence", text: "[silence 2.2s]", startSec: 0, endSec: 2.19, kept: false, trimId: "trim_f52989cf-489c-47f5-a6c7-b95a7d71b399" }, - { i: 1, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_1", kind: "word", text: "Hi,", startSec: 2.19, endSec: 2.63, kept: true, trimId: null }, - { i: 2, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_2", kind: "word", text: "quick", startSec: 2.63, endSec: 3.02, kept: true, trimId: null }, - { i: 3, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_3", kind: "word", text: "walk", startSec: 3.02, endSec: 3.08, kept: true, trimId: null }, - { i: 4, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_4", kind: "word", text: "through", startSec: 3.08, endSec: 3.29, kept: true, trimId: null }, - { i: 5, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_5", kind: "word", text: "the", startSec: 3.29, endSec: 3.95, kept: true, trimId: null }, - { i: 6, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_6", kind: "word", text: "documentation", startSec: 3.95, endSec: 4.62, kept: true, trimId: null }, - { i: 7, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_7", kind: "word", text: "site.", startSec: 4.62, endSec: 4.94, kept: true, trimId: null }, - { i: 8, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_8", kind: "word", text: "The", startSec: 4.94, endSec: 5.2, kept: true, trimId: null }, - { i: 9, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_9", kind: "word", text: "new", startSec: 5.2, endSec: 5.5200000000000005, kept: true, trimId: null }, - { i: 10, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_10", kind: "word", text: "release", startSec: 5.5200000000000005, endSec: 5.62, kept: true, trimId: null }, - { i: 11, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_11", kind: "word", text: "went", startSec: 5.62, endSec: 5.79, kept: true, trimId: null }, - { i: 12, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_12", kind: "word", text: "out", startSec: 5.79, endSec: 6.01, kept: true, trimId: null }, - { i: 13, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_13", kind: "word", text: "this", startSec: 6.01, endSec: 6.47, kept: true, trimId: null }, - { i: 14, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_14", kind: "word", text: "morning.", startSec: 6.47, endSec: 6.82, kept: true, trimId: null }, - { i: 15, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_15", kind: "word", text: "The", startSec: 6.83, endSec: 7.2, kept: true, trimId: null }, - { i: 16, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_16", kind: "word", text: "hero", startSec: 7.2, endSec: 7.37, kept: true, trimId: null }, - { i: 17, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_17", kind: "word", text: "does", startSec: 7.37, endSec: 7.57, kept: true, trimId: null }, - { i: 18, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_18", kind: "word", text: "the", startSec: 7.57, endSec: 7.88, kept: true, trimId: null }, - { i: 19, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_19", kind: "word", text: "work", startSec: 7.88, endSec: 8.16, kept: true, trimId: null }, - { i: 20, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_20", kind: "word", text: "now.", startSec: 8.16, endSec: 8.58, kept: true, trimId: null }, - { i: 21, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_21", kind: "word", text: "One", startSec: 8.58, endSec: 9.06, kept: true, trimId: null }, - { i: 22, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_22", kind: "word", text: "line,", startSec: 9.06, endSec: 9.5, kept: true, trimId: null }, - { i: 23, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_23", kind: "word", text: "one", startSec: 9.5, endSec: 10.040000000000001, kept: true, trimId: null }, - { i: 24, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_24", kind: "word", text: "promise,", startSec: 10.040000000000001, endSec: 10.41, kept: true, trimId: null }, - { i: 25, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_25", kind: "word", text: "and", startSec: 10.41, endSec: 10.6, kept: true, trimId: null }, - { i: 26, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_26", kind: "word", text: "the", startSec: 10.6, endSec: 10.950000000000001, kept: true, trimId: null }, - { i: 27, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_27", kind: "word", text: "install", startSec: 10.950000000000001, endSec: 11.21, kept: true, trimId: null }, - { i: 28, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_28", kind: "word", text: "command", startSec: 11.21, endSec: 11.61, kept: true, trimId: null }, - { i: 29, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_29", kind: "word", text: "right", startSec: 11.61, endSec: 11.97, kept: true, trimId: null }, - { i: 30, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_30", kind: "word", text: "under", startSec: 11.97, endSec: 12.290000000000001, kept: true, trimId: null }, - { i: 31, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_31", kind: "word", text: "it.", startSec: 12.290000000000001, endSec: 12.68, kept: true, trimId: null }, - { i: 32, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_32", kind: "word", text: "Scrolling", startSec: 12.68, endSec: 13.25, kept: true, trimId: null }, - { i: 33, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_33", kind: "word", text: "down,", startSec: 13.25, endSec: 13.63, kept: true, trimId: null }, - { i: 34, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_34", kind: "word", text: "those", startSec: 13.63, endSec: 14.02, kept: true, trimId: null }, - { i: 35, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_35", kind: "word", text: "six", startSec: 14.02, endSec: 14.4, kept: true, trimId: null }, - { i: 36, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_36", kind: "word", text: "cards", startSec: 14.4, endSec: 14.450000000000001, kept: true, trimId: null }, - { i: 37, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_37", kind: "word", text: "are", startSec: 14.450000000000001, endSec: 14.620000000000001, kept: true, trimId: null }, - { i: 38, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_38", kind: "word", text: "the", startSec: 14.620000000000001, endSec: 14.77, kept: true, trimId: null }, - { i: 39, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_39", kind: "word", text: "whole", startSec: 14.77, endSec: 15.21, kept: true, trimId: null }, - { i: 40, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_40", kind: "word", text: "library", startSec: 15.21, endSec: 15.530000000000001, kept: true, trimId: null }, - { i: 41, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_41", kind: "word", text: "on", startSec: 15.530000000000001, endSec: 15.75, kept: true, trimId: null }, - { i: 42, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_42", kind: "word", text: "one", startSec: 15.75, endSec: 16.13, kept: true, trimId: null }, - { i: 43, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_43", kind: "word", text: "screen.", startSec: 16.13, endSec: 16.62, kept: true, trimId: null }, - { i: 44, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_44", kind: "word", text: "No", startSec: 16.82, endSec: 16.93, kept: true, trimId: null }, - { i: 45, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_45", kind: "word", text: "page", startSec: 16.93, endSec: 17.37, kept: true, trimId: null }, - { i: 46, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_46", kind: "word", text: "gets", startSec: 17.37, endSec: 17.62, kept: true, trimId: null }, - { i: 47, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_47", kind: "word", text: "more", startSec: 17.62, endSec: 17.7, kept: true, trimId: null }, - { i: 48, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_48", kind: "word", text: "than", startSec: 17.7, endSec: 17.96, kept: true, trimId: null }, - { i: 49, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_49", kind: "word", text: "a", startSec: 17.96, endSec: 18.18, kept: true, trimId: null }, - { i: 50, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_50", kind: "word", text: "sentence.", startSec: 18.18, endSec: 18.93, kept: true, trimId: null }, - { i: 51, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_51", kind: "word", text: "Over", startSec: 18.93, endSec: 19.07, kept: true, trimId: null }, - { i: 52, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_52", kind: "word", text: "on", startSec: 19.07, endSec: 19.56, kept: true, trimId: null }, - { i: 53, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_53", kind: "word", text: "status,", startSec: 19.56, endSec: 20.17, kept: true, trimId: null }, - { i: 54, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_54", kind: "word", text: "every", startSec: 20.17, endSec: 20.650000000000002, kept: true, trimId: null }, - { i: 55, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_55", kind: "word", text: "component", startSec: 20.650000000000002, endSec: 21.06, kept: true, trimId: null }, - { i: 56, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_56", kind: "word", text: "with", startSec: 21.06, endSec: 21.31, kept: true, trimId: null }, - { i: 57, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_57", kind: "word", text: "30", startSec: 21.31, endSec: 21.490000000000002, kept: true, trimId: null }, - { i: 58, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_58", kind: "word", text: "days", startSec: 21.490000000000002, endSec: 21.82, kept: true, trimId: null }, - { i: 59, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_59", kind: "word", text: "of", startSec: 21.82, endSec: 21.91, kept: true, trimId: null }, - { i: 60, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_60", kind: "word", text: "probes", startSec: 21.91, endSec: 22.36, kept: true, trimId: null }, - { i: 61, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_61", kind: "word", text: "behind", startSec: 22.36, endSec: 22.740000000000002, kept: true, trimId: null }, - { i: 62, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_62", kind: "word", text: "it.", startSec: 22.740000000000002, endSec: 23.05, kept: true, trimId: null }, - { i: 63, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_63", kind: "word", text: "One", startSec: 23.19, endSec: 23.45, kept: true, trimId: null }, - { i: 64, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_64", kind: "word", text: "amber", startSec: 23.45, endSec: 23.63, kept: true, trimId: null }, - { i: 65, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_65", kind: "word", text: "day", startSec: 23.63, endSec: 23.830000000000002, kept: true, trimId: null }, - { i: 66, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_66", kind: "word", text: "on", startSec: 23.830000000000002, endSec: 24.060000000000002, kept: true, trimId: null }, - { i: 67, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_67", kind: "word", text: "the", startSec: 24.060000000000002, endSec: 24.27, kept: true, trimId: null }, - { i: 68, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_68", kind: "word", text: "validator,", startSec: 24.27, endSec: 24.94, kept: true, trimId: null }, - { i: 69, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_69", kind: "word", text: "and", startSec: 24.94, endSec: 25.19, kept: true, trimId: null }, - { i: 70, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_70", kind: "word", text: "it", startSec: 25.19, endSec: 25.560000000000002, kept: true, trimId: null }, - { i: 71, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_71", kind: "word", text: "recovered,", startSec: 25.560000000000002, endSec: 25.990000000000002, kept: true, trimId: null }, - { i: 72, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_72", kind: "word", text: "and", startSec: 25.990000000000002, endSec: 26.54, kept: true, trimId: null }, - { i: 73, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_73", kind: "word", text: "releases.", startSec: 26.54, endSec: 27.09, kept: true, trimId: null }, - { i: 74, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_2", kind: "silence", text: "[silence 0.2s]", startSec: 27.09, endSec: 27.32, kept: true, trimId: null }, - { i: 75, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_74", kind: "word", text: "Three", startSec: 27.32, endSec: 27.400000000000002, kept: true, trimId: null }, - { i: 76, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_75", kind: "word", text: "of", startSec: 27.400000000000002, endSec: 27.45, kept: true, trimId: null }, - { i: 77, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_76", kind: "word", text: "them,", startSec: 27.45, endSec: 28.060000000000002, kept: true, trimId: null }, - { i: 78, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_77", kind: "word", text: "newest", startSec: 28.060000000000002, endSec: 28.54, kept: true, trimId: null }, - { i: 79, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_78", kind: "word", text: "first,", startSec: 28.54, endSec: 28.95, kept: true, trimId: null }, - { i: 80, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_79", kind: "word", text: "and", startSec: 28.95, endSec: 29.240000000000002, kept: true, trimId: null }, - { i: 81, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_80", kind: "word", text: "every", startSec: 29.240000000000002, endSec: 29.53, kept: true, trimId: null }, - { i: 82, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_81", kind: "word", text: "line", startSec: 29.53, endSec: 29.88, kept: true, trimId: null }, - { i: 83, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_82", kind: "word", text: "links", startSec: 29.88, endSec: 30.09, kept: true, trimId: null }, - { i: 84, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_83", kind: "word", text: "into", startSec: 30.09, endSec: 30.32, kept: true, trimId: null }, - { i: 85, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_84", kind: "word", text: "the", startSec: 30.32, endSec: 30.560000000000002, kept: true, trimId: null }, - { i: 86, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_85", kind: "word", text: "commit", startSec: 30.560000000000002, endSec: 30.62, kept: true, trimId: null }, - { i: 87, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_86", kind: "word", text: "that", startSec: 30.62, endSec: 30.810000000000002, kept: true, trimId: null }, - { i: 88, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_87", kind: "word", text: "did", startSec: 30.810000000000002, endSec: 31.1, kept: true, trimId: null }, - { i: 89, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_88", kind: "word", text: "it.", startSec: 31.1, endSec: 31.560000000000002, kept: true, trimId: null }, - { i: 90, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_89", kind: "word", text: "Back", startSec: 31.39, endSec: 31.62, kept: true, trimId: null }, - { i: 91, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_90", kind: "word", text: "to", startSec: 31.62, endSec: 31.76, kept: true, trimId: null }, - { i: 92, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_91", kind: "word", text: "the", startSec: 31.76, endSec: 32.160000000000004, kept: true, trimId: null }, - { i: 93, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_92", kind: "word", text: "top,", startSec: 32.160000000000004, endSec: 32.46, kept: true, trimId: null }, - { i: 94, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_93", kind: "word", text: "and", startSec: 32.46, endSec: 32.730000000000004, kept: true, trimId: null }, - { i: 95, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_94", kind: "word", text: "that", startSec: 32.730000000000004, endSec: 32.86, kept: true, trimId: null }, - { i: 96, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_95", kind: "word", text: "is", startSec: 32.86, endSec: 32.9, kept: true, trimId: null }, - { i: 97, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_96", kind: "word", text: "the", startSec: 32.9, endSec: 33.07, kept: true, trimId: null }, - { i: 98, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_97", kind: "word", text: "whole", startSec: 33.07, endSec: 33.55, kept: true, trimId: null }, - { i: 99, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_98", kind: "word", text: "flow.", startSec: 33.55, endSec: 34.03, kept: true, trimId: null }, - { i: 100, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_99", kind: "word", text: "Tell", startSec: 33.99, endSec: 34.19, kept: true, trimId: null }, - { i: 101, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_100", kind: "word", text: "me", startSec: 34.19, endSec: 34.5, kept: true, trimId: null }, - { i: 102, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_101", kind: "word", text: "what", startSec: 34.5, endSec: 34.53, kept: true, trimId: null }, - { i: 103, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_102", kind: "word", text: "you", startSec: 34.53, endSec: 35, kept: true, trimId: null }, - { i: 104, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_103", kind: "word", text: "think.", startSec: 35, endSec: 35.12, kept: true, trimId: null }, - { i: 105, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_3", kind: "silence", text: "[silence 4.9s]", startSec: 35.12, endSec: 40.033, kept: false, trimId: "trim_3bad6006-721a-4dd4-a218-091fa734a63e" }, + { i: 0, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_1", kind: "silence", text: "[silence 2.2s]", startSec: 0, endSec: 2.19, kept: false }, + { i: 1, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_1", kind: "word", text: "Hi,", startSec: 2.19, endSec: 2.63, kept: true }, + { i: 2, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_2", kind: "word", text: "quick", startSec: 2.63, endSec: 3.02, kept: true }, + { i: 3, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_3", kind: "word", text: "walk", startSec: 3.02, endSec: 3.08, kept: true }, + { i: 4, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_4", kind: "word", text: "through", startSec: 3.08, endSec: 3.29, kept: true }, + { i: 5, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_5", kind: "word", text: "the", startSec: 3.29, endSec: 3.95, kept: true }, + { i: 6, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_6", kind: "word", text: "documentation", startSec: 3.95, endSec: 4.62, kept: true }, + { i: 7, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_7", kind: "word", text: "site.", startSec: 4.62, endSec: 4.94, kept: true }, + { i: 8, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_8", kind: "word", text: "The", startSec: 4.94, endSec: 5.2, kept: true }, + { i: 9, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_9", kind: "word", text: "new", startSec: 5.2, endSec: 5.5200000000000005, kept: true }, + { i: 10, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_10", kind: "word", text: "release", startSec: 5.5200000000000005, endSec: 5.62, kept: true }, + { i: 11, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_11", kind: "word", text: "went", startSec: 5.62, endSec: 5.79, kept: true }, + { i: 12, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_12", kind: "word", text: "out", startSec: 5.79, endSec: 6.01, kept: true }, + { i: 13, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_13", kind: "word", text: "this", startSec: 6.01, endSec: 6.47, kept: true }, + { i: 14, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_14", kind: "word", text: "morning.", startSec: 6.47, endSec: 6.82, kept: true }, + { i: 15, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_15", kind: "word", text: "The", startSec: 6.83, endSec: 7.2, kept: true }, + { i: 16, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_16", kind: "word", text: "hero", startSec: 7.2, endSec: 7.37, kept: true }, + { i: 17, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_17", kind: "word", text: "does", startSec: 7.37, endSec: 7.57, kept: true }, + { i: 18, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_18", kind: "word", text: "the", startSec: 7.57, endSec: 7.88, kept: true }, + { i: 19, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_19", kind: "word", text: "work", startSec: 7.88, endSec: 8.16, kept: true }, + { i: 20, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_20", kind: "word", text: "now.", startSec: 8.16, endSec: 8.58, kept: true }, + { i: 21, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_21", kind: "word", text: "One", startSec: 8.58, endSec: 9.06, kept: true }, + { i: 22, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_22", kind: "word", text: "line,", startSec: 9.06, endSec: 9.5, kept: true }, + { i: 23, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_23", kind: "word", text: "one", startSec: 9.5, endSec: 10.040000000000001, kept: true }, + { i: 24, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_24", kind: "word", text: "promise,", startSec: 10.040000000000001, endSec: 10.41, kept: true }, + { i: 25, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_25", kind: "word", text: "and", startSec: 10.41, endSec: 10.6, kept: true }, + { i: 26, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_26", kind: "word", text: "the", startSec: 10.6, endSec: 10.950000000000001, kept: true }, + { i: 27, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_27", kind: "word", text: "install", startSec: 10.950000000000001, endSec: 11.21, kept: true }, + { i: 28, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_28", kind: "word", text: "command", startSec: 11.21, endSec: 11.61, kept: true }, + { i: 29, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_29", kind: "word", text: "right", startSec: 11.61, endSec: 11.97, kept: true }, + { i: 30, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_30", kind: "word", text: "under", startSec: 11.97, endSec: 12.290000000000001, kept: true }, + { i: 31, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_31", kind: "word", text: "it.", startSec: 12.290000000000001, endSec: 12.68, kept: true }, + { i: 32, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_32", kind: "word", text: "Scrolling", startSec: 12.68, endSec: 13.25, kept: true }, + { i: 33, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_33", kind: "word", text: "down,", startSec: 13.25, endSec: 13.63, kept: true }, + { i: 34, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_34", kind: "word", text: "those", startSec: 13.63, endSec: 14.02, kept: true }, + { i: 35, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_35", kind: "word", text: "six", startSec: 14.02, endSec: 14.4, kept: true }, + { i: 36, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_36", kind: "word", text: "cards", startSec: 14.4, endSec: 14.450000000000001, kept: true }, + { i: 37, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_37", kind: "word", text: "are", startSec: 14.450000000000001, endSec: 14.620000000000001, kept: true }, + { i: 38, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_38", kind: "word", text: "the", startSec: 14.620000000000001, endSec: 14.77, kept: true }, + { i: 39, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_39", kind: "word", text: "whole", startSec: 14.77, endSec: 15.21, kept: true }, + { i: 40, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_40", kind: "word", text: "library", startSec: 15.21, endSec: 15.530000000000001, kept: true }, + { i: 41, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_41", kind: "word", text: "on", startSec: 15.530000000000001, endSec: 15.75, kept: true }, + { i: 42, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_42", kind: "word", text: "one", startSec: 15.75, endSec: 16.13, kept: true }, + { i: 43, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_43", kind: "word", text: "screen.", startSec: 16.13, endSec: 16.62, kept: true }, + { i: 44, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_44", kind: "word", text: "No", startSec: 16.82, endSec: 16.93, kept: true }, + { i: 45, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_45", kind: "word", text: "page", startSec: 16.93, endSec: 17.37, kept: true }, + { i: 46, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_46", kind: "word", text: "gets", startSec: 17.37, endSec: 17.62, kept: true }, + { i: 47, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_47", kind: "word", text: "more", startSec: 17.62, endSec: 17.7, kept: true }, + { i: 48, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_48", kind: "word", text: "than", startSec: 17.7, endSec: 17.96, kept: true }, + { i: 49, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_49", kind: "word", text: "a", startSec: 17.96, endSec: 18.18, kept: true }, + { i: 50, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_50", kind: "word", text: "sentence.", startSec: 18.18, endSec: 18.93, kept: true }, + { i: 51, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_51", kind: "word", text: "Over", startSec: 18.93, endSec: 19.07, kept: true }, + { i: 52, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_52", kind: "word", text: "on", startSec: 19.07, endSec: 19.56, kept: true }, + { i: 53, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_53", kind: "word", text: "status,", startSec: 19.56, endSec: 20.17, kept: true }, + { i: 54, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_54", kind: "word", text: "every", startSec: 20.17, endSec: 20.650000000000002, kept: true }, + { i: 55, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_55", kind: "word", text: "component", startSec: 20.650000000000002, endSec: 21.06, kept: true }, + { i: 56, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_56", kind: "word", text: "with", startSec: 21.06, endSec: 21.31, kept: true }, + { i: 57, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_57", kind: "word", text: "30", startSec: 21.31, endSec: 21.490000000000002, kept: true }, + { i: 58, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_58", kind: "word", text: "days", startSec: 21.490000000000002, endSec: 21.82, kept: true }, + { i: 59, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_59", kind: "word", text: "of", startSec: 21.82, endSec: 21.91, kept: true }, + { i: 60, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_60", kind: "word", text: "probes", startSec: 21.91, endSec: 22.36, kept: true }, + { i: 61, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_61", kind: "word", text: "behind", startSec: 22.36, endSec: 22.740000000000002, kept: true }, + { i: 62, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_62", kind: "word", text: "it.", startSec: 22.740000000000002, endSec: 23.05, kept: true }, + { i: 63, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_63", kind: "word", text: "One", startSec: 23.19, endSec: 23.45, kept: true }, + { i: 64, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_64", kind: "word", text: "amber", startSec: 23.45, endSec: 23.63, kept: true }, + { i: 65, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_65", kind: "word", text: "day", startSec: 23.63, endSec: 23.830000000000002, kept: true }, + { i: 66, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_66", kind: "word", text: "on", startSec: 23.830000000000002, endSec: 24.060000000000002, kept: true }, + { i: 67, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_67", kind: "word", text: "the", startSec: 24.060000000000002, endSec: 24.27, kept: true }, + { i: 68, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_68", kind: "word", text: "validator,", startSec: 24.27, endSec: 24.94, kept: true }, + { i: 69, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_69", kind: "word", text: "and", startSec: 24.94, endSec: 25.19, kept: true }, + { i: 70, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_70", kind: "word", text: "it", startSec: 25.19, endSec: 25.560000000000002, kept: true }, + { i: 71, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_71", kind: "word", text: "recovered,", startSec: 25.560000000000002, endSec: 25.990000000000002, kept: true }, + { i: 72, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_72", kind: "word", text: "and", startSec: 25.990000000000002, endSec: 26.54, kept: true }, + { i: 73, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_73", kind: "word", text: "releases.", startSec: 26.54, endSec: 27.09, kept: true }, + { i: 74, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_2", kind: "silence", text: "[silence 0.2s]", startSec: 27.09, endSec: 27.32, kept: true }, + { i: 75, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_74", kind: "word", text: "Three", startSec: 27.32, endSec: 27.400000000000002, kept: true }, + { i: 76, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_75", kind: "word", text: "of", startSec: 27.400000000000002, endSec: 27.45, kept: true }, + { i: 77, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_76", kind: "word", text: "them,", startSec: 27.45, endSec: 28.060000000000002, kept: true }, + { i: 78, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_77", kind: "word", text: "newest", startSec: 28.060000000000002, endSec: 28.54, kept: true }, + { i: 79, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_78", kind: "word", text: "first,", startSec: 28.54, endSec: 28.95, kept: true }, + { i: 80, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_79", kind: "word", text: "and", startSec: 28.95, endSec: 29.240000000000002, kept: true }, + { i: 81, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_80", kind: "word", text: "every", startSec: 29.240000000000002, endSec: 29.53, kept: true }, + { i: 82, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_81", kind: "word", text: "line", startSec: 29.53, endSec: 29.88, kept: true }, + { i: 83, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_82", kind: "word", text: "links", startSec: 29.88, endSec: 30.09, kept: true }, + { i: 84, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_83", kind: "word", text: "into", startSec: 30.09, endSec: 30.32, kept: true }, + { i: 85, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_84", kind: "word", text: "the", startSec: 30.32, endSec: 30.560000000000002, kept: true }, + { i: 86, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_85", kind: "word", text: "commit", startSec: 30.560000000000002, endSec: 30.62, kept: true }, + { i: 87, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_86", kind: "word", text: "that", startSec: 30.62, endSec: 30.810000000000002, kept: true }, + { i: 88, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_87", kind: "word", text: "did", startSec: 30.810000000000002, endSec: 31.1, kept: true }, + { i: 89, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_88", kind: "word", text: "it.", startSec: 31.1, endSec: 31.560000000000002, kept: true }, + { i: 90, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_89", kind: "word", text: "Back", startSec: 31.39, endSec: 31.62, kept: true }, + { i: 91, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_90", kind: "word", text: "to", startSec: 31.62, endSec: 31.76, kept: true }, + { i: 92, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_91", kind: "word", text: "the", startSec: 31.76, endSec: 32.160000000000004, kept: true }, + { i: 93, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_92", kind: "word", text: "top,", startSec: 32.160000000000004, endSec: 32.46, kept: true }, + { i: 94, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_93", kind: "word", text: "and", startSec: 32.46, endSec: 32.730000000000004, kept: true }, + { i: 95, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_94", kind: "word", text: "that", startSec: 32.730000000000004, endSec: 32.86, kept: true }, + { i: 96, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_95", kind: "word", text: "is", startSec: 32.86, endSec: 32.9, kept: true }, + { i: 97, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_96", kind: "word", text: "the", startSec: 32.9, endSec: 33.07, kept: true }, + { i: 98, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_97", kind: "word", text: "whole", startSec: 33.07, endSec: 33.55, kept: true }, + { i: 99, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_98", kind: "word", text: "flow.", startSec: 33.55, endSec: 34.03, kept: true }, + { i: 100, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_99", kind: "word", text: "Tell", startSec: 33.99, endSec: 34.19, kept: true }, + { i: 101, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_100", kind: "word", text: "me", startSec: 34.19, endSec: 34.5, kept: true }, + { i: 102, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_101", kind: "word", text: "what", startSec: 34.5, endSec: 34.53, kept: true }, + { i: 103, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_102", kind: "word", text: "you", startSec: 34.53, endSec: 35, kept: true }, + { i: 104, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_103", kind: "word", text: "think.", startSec: 35, endSec: 35.12, kept: true }, + { i: 105, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_3", kind: "silence", text: "[silence 4.9s]", startSec: 35.12, endSec: 40.033, kept: false }, ]; /** The five lanes in the app's order. A lane carries its shortcut hint if and @@ -765,12 +765,12 @@ export const TOKENS = { /** One entry per string on screen. */ export const PROVENANCE: ProvenanceEntry[] = [ - { shown: "Current transcription", source: "src/i18n/locales/en/settings.json → transcript.title" }, + { shown: "Transcript", source: "src/i18n/locales/en/settings.json → transcript.title" }, { shown: "Clip 1 · 0:00.0—0:40.0", source: "computed: settings.json transcript.clipLabel with index 1, joined to formatMs(0) and formatMs(40033) from src/lib/ai-edition/timeline/format.ts" }, { shown: "Bellrock — docs walkthrough", source: "fixture assets[0].label" }, - { shown: "[silence 2.2s]", source: "computed: settings.json transcript.silence over the 2.190s gap 0–2.19 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; inside trimRange trim_f52989cf-489c-47f5-a6c7-b95a7d71b399" }, + { shown: "[silence 2.2s]", source: "computed: settings.json transcript.silence over the 2.190s gap 0–2.19 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; inside trimRange undefined" }, { shown: "[silence 0.2s]", source: "computed: settings.json transcript.silence over the 0.230s gap 27.09–27.32 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; outside any trim" }, - { shown: "[silence 4.9s]", source: "computed: settings.json transcript.silence over the 4.913s gap 35.12–40.033 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; inside trimRange trim_3bad6006-721a-4dd4-a218-091fa734a63e" }, + { shown: "[silence 4.9s]", source: "computed: settings.json transcript.silence over the 4.913s gap 35.12–40.033 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; inside trimRange undefined" }, { shown: "Hi, quick walk through the documentation site. The new release went out this morning. The hero does the work now. One line, one promise, and the install command right under it. Scrolling down, those six cards are the whole library on one screen. No page gets more than a sentence. Over on status, every component with 30 days of probes behind it. One amber day on the validator, and it recovered, and releases. Three of them, newest first, and every line links into the commit that did it. Back to the top, and that is the whole flow. Tell me what you think.", source: "fixture transcript.words, rejoined in start order; every entry is rendered as its own span" }, { shown: "Conversation 1", source: "computed: editor.json chat.untitledConversation + the session index, as LeftPanel.tsx:1184 renders it" }, { shown: "No messages yet. Ask the agent to cut silences, tighten pauses, or add captions.", source: "editor.json chat.emptyState" }, diff --git a/website/src/components/Recreation/index.tsx b/website/src/components/Recreation/index.tsx index 53dbc524f..8fbbde9ee 100644 --- a/website/src/components/Recreation/index.tsx +++ b/website/src/components/Recreation/index.tsx @@ -49,7 +49,7 @@ import { import { useEffect, useRef } from "react"; import { attachDriver, SCENE_QUERIES } from "./driver"; -import { CONTROLS, CURSORS, PANELS } from "./generated"; +import { CONTROLS, CURSORS, INSPECTOR, PANELS } from "./generated"; import { BEATS, CLIPS, @@ -224,7 +224,7 @@ export default function Recreation() { {PANELS.cursor.title}

- Current transcription + {INSPECTOR.title}

@@ -337,7 +337,7 @@ export default function Recreation() { /> - {/* ── Current transcription ── */} + {/* ── Transcript ── */}

From 2e67954d9e84d82187ac1d205f03278dcb3f6802 Mon Sep 17 00:00:00 2001 From: EtienneLescot Date: Sat, 5 Sep 2026 08:02:38 +0200 Subject: [PATCH 2/2] fix(website): derive trimId from clipWord.trimIds in gen-recreation --- website/scripts/gen-recreation.mjs | 6 +- .../src/components/Recreation/generated.ts | 216 +++++++++--------- 2 files changed, 112 insertions(+), 110 deletions(-) diff --git a/website/scripts/gen-recreation.mjs b/website/scripts/gen-recreation.mjs index 0d3a416ef..4887bc83e 100644 --- a/website/scripts/gen-recreation.mjs +++ b/website/scripts/gen-recreation.mjs @@ -104,6 +104,7 @@ const appModule = (rel) => import(pathToFileURL(resolve(APP, rel)).href); const { formatSec, formatMs } = await appModule("src/lib/ai-edition/timeline/format.ts"); const { effectiveZoomScale } = await appModule("src/lib/ai-edition/timeline/zoom-scale.ts"); +const { removedRawSpans } = await appModule("src/lib/ai-edition/timeline/programme-time.ts"); const { buildClipSection, isSilenceWord, SILENCE_THRESHOLD_SEC } = await appModule( "src/lib/ai-edition/timeline/aggregated-transcript.ts", ); @@ -332,8 +333,9 @@ const asset = doc.assets[0]; const clip = doc.timeline.clips[0]; const totalSec = asset.durationSec; const trims = doc.timeline.trimRanges; +const removed = removedRawSpans(doc.timeline.clips, trims); -const section = buildClipSection(clip, { ...doc.transcript, segments: [] }, asset, trims); +const section = buildClipSection(clip, { ...doc.transcript, segments: [] }, asset, removed); const pct = (sec) => Number(((sec / totalSec) * 100).toFixed(4)); @@ -354,7 +356,7 @@ const WORDS = section.words.map((cw, i) => { startSec: cw.word.startSec, endSec: cw.word.endSec, kept: cw.kept, - trimId: cw.trimId, + trimId: cw.trimIds[0] ?? null, }; }); diff --git a/website/src/components/Recreation/generated.ts b/website/src/components/Recreation/generated.ts index c6d70ba4c..4205cb6a2 100644 --- a/website/src/components/Recreation/generated.ts +++ b/website/src/components/Recreation/generated.ts @@ -86,112 +86,112 @@ export const INSPECTOR = { * document's two agent trims. 2 entries are removed, all of them silences. */ export const WORDS: RecreationWord[] = [ - { i: 0, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_1", kind: "silence", text: "[silence 2.2s]", startSec: 0, endSec: 2.19, kept: false }, - { i: 1, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_1", kind: "word", text: "Hi,", startSec: 2.19, endSec: 2.63, kept: true }, - { i: 2, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_2", kind: "word", text: "quick", startSec: 2.63, endSec: 3.02, kept: true }, - { i: 3, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_3", kind: "word", text: "walk", startSec: 3.02, endSec: 3.08, kept: true }, - { i: 4, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_4", kind: "word", text: "through", startSec: 3.08, endSec: 3.29, kept: true }, - { i: 5, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_5", kind: "word", text: "the", startSec: 3.29, endSec: 3.95, kept: true }, - { i: 6, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_6", kind: "word", text: "documentation", startSec: 3.95, endSec: 4.62, kept: true }, - { i: 7, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_7", kind: "word", text: "site.", startSec: 4.62, endSec: 4.94, kept: true }, - { i: 8, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_8", kind: "word", text: "The", startSec: 4.94, endSec: 5.2, kept: true }, - { i: 9, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_9", kind: "word", text: "new", startSec: 5.2, endSec: 5.5200000000000005, kept: true }, - { i: 10, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_10", kind: "word", text: "release", startSec: 5.5200000000000005, endSec: 5.62, kept: true }, - { i: 11, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_11", kind: "word", text: "went", startSec: 5.62, endSec: 5.79, kept: true }, - { i: 12, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_12", kind: "word", text: "out", startSec: 5.79, endSec: 6.01, kept: true }, - { i: 13, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_13", kind: "word", text: "this", startSec: 6.01, endSec: 6.47, kept: true }, - { i: 14, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_14", kind: "word", text: "morning.", startSec: 6.47, endSec: 6.82, kept: true }, - { i: 15, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_15", kind: "word", text: "The", startSec: 6.83, endSec: 7.2, kept: true }, - { i: 16, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_16", kind: "word", text: "hero", startSec: 7.2, endSec: 7.37, kept: true }, - { i: 17, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_17", kind: "word", text: "does", startSec: 7.37, endSec: 7.57, kept: true }, - { i: 18, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_18", kind: "word", text: "the", startSec: 7.57, endSec: 7.88, kept: true }, - { i: 19, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_19", kind: "word", text: "work", startSec: 7.88, endSec: 8.16, kept: true }, - { i: 20, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_20", kind: "word", text: "now.", startSec: 8.16, endSec: 8.58, kept: true }, - { i: 21, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_21", kind: "word", text: "One", startSec: 8.58, endSec: 9.06, kept: true }, - { i: 22, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_22", kind: "word", text: "line,", startSec: 9.06, endSec: 9.5, kept: true }, - { i: 23, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_23", kind: "word", text: "one", startSec: 9.5, endSec: 10.040000000000001, kept: true }, - { i: 24, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_24", kind: "word", text: "promise,", startSec: 10.040000000000001, endSec: 10.41, kept: true }, - { i: 25, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_25", kind: "word", text: "and", startSec: 10.41, endSec: 10.6, kept: true }, - { i: 26, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_26", kind: "word", text: "the", startSec: 10.6, endSec: 10.950000000000001, kept: true }, - { i: 27, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_27", kind: "word", text: "install", startSec: 10.950000000000001, endSec: 11.21, kept: true }, - { i: 28, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_28", kind: "word", text: "command", startSec: 11.21, endSec: 11.61, kept: true }, - { i: 29, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_29", kind: "word", text: "right", startSec: 11.61, endSec: 11.97, kept: true }, - { i: 30, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_30", kind: "word", text: "under", startSec: 11.97, endSec: 12.290000000000001, kept: true }, - { i: 31, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_31", kind: "word", text: "it.", startSec: 12.290000000000001, endSec: 12.68, kept: true }, - { i: 32, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_32", kind: "word", text: "Scrolling", startSec: 12.68, endSec: 13.25, kept: true }, - { i: 33, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_33", kind: "word", text: "down,", startSec: 13.25, endSec: 13.63, kept: true }, - { i: 34, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_34", kind: "word", text: "those", startSec: 13.63, endSec: 14.02, kept: true }, - { i: 35, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_35", kind: "word", text: "six", startSec: 14.02, endSec: 14.4, kept: true }, - { i: 36, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_36", kind: "word", text: "cards", startSec: 14.4, endSec: 14.450000000000001, kept: true }, - { i: 37, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_37", kind: "word", text: "are", startSec: 14.450000000000001, endSec: 14.620000000000001, kept: true }, - { i: 38, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_38", kind: "word", text: "the", startSec: 14.620000000000001, endSec: 14.77, kept: true }, - { i: 39, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_39", kind: "word", text: "whole", startSec: 14.77, endSec: 15.21, kept: true }, - { i: 40, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_40", kind: "word", text: "library", startSec: 15.21, endSec: 15.530000000000001, kept: true }, - { i: 41, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_41", kind: "word", text: "on", startSec: 15.530000000000001, endSec: 15.75, kept: true }, - { i: 42, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_42", kind: "word", text: "one", startSec: 15.75, endSec: 16.13, kept: true }, - { i: 43, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_43", kind: "word", text: "screen.", startSec: 16.13, endSec: 16.62, kept: true }, - { i: 44, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_44", kind: "word", text: "No", startSec: 16.82, endSec: 16.93, kept: true }, - { i: 45, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_45", kind: "word", text: "page", startSec: 16.93, endSec: 17.37, kept: true }, - { i: 46, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_46", kind: "word", text: "gets", startSec: 17.37, endSec: 17.62, kept: true }, - { i: 47, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_47", kind: "word", text: "more", startSec: 17.62, endSec: 17.7, kept: true }, - { i: 48, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_48", kind: "word", text: "than", startSec: 17.7, endSec: 17.96, kept: true }, - { i: 49, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_49", kind: "word", text: "a", startSec: 17.96, endSec: 18.18, kept: true }, - { i: 50, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_50", kind: "word", text: "sentence.", startSec: 18.18, endSec: 18.93, kept: true }, - { i: 51, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_51", kind: "word", text: "Over", startSec: 18.93, endSec: 19.07, kept: true }, - { i: 52, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_52", kind: "word", text: "on", startSec: 19.07, endSec: 19.56, kept: true }, - { i: 53, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_53", kind: "word", text: "status,", startSec: 19.56, endSec: 20.17, kept: true }, - { i: 54, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_54", kind: "word", text: "every", startSec: 20.17, endSec: 20.650000000000002, kept: true }, - { i: 55, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_55", kind: "word", text: "component", startSec: 20.650000000000002, endSec: 21.06, kept: true }, - { i: 56, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_56", kind: "word", text: "with", startSec: 21.06, endSec: 21.31, kept: true }, - { i: 57, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_57", kind: "word", text: "30", startSec: 21.31, endSec: 21.490000000000002, kept: true }, - { i: 58, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_58", kind: "word", text: "days", startSec: 21.490000000000002, endSec: 21.82, kept: true }, - { i: 59, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_59", kind: "word", text: "of", startSec: 21.82, endSec: 21.91, kept: true }, - { i: 60, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_60", kind: "word", text: "probes", startSec: 21.91, endSec: 22.36, kept: true }, - { i: 61, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_61", kind: "word", text: "behind", startSec: 22.36, endSec: 22.740000000000002, kept: true }, - { i: 62, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_62", kind: "word", text: "it.", startSec: 22.740000000000002, endSec: 23.05, kept: true }, - { i: 63, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_63", kind: "word", text: "One", startSec: 23.19, endSec: 23.45, kept: true }, - { i: 64, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_64", kind: "word", text: "amber", startSec: 23.45, endSec: 23.63, kept: true }, - { i: 65, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_65", kind: "word", text: "day", startSec: 23.63, endSec: 23.830000000000002, kept: true }, - { i: 66, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_66", kind: "word", text: "on", startSec: 23.830000000000002, endSec: 24.060000000000002, kept: true }, - { i: 67, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_67", kind: "word", text: "the", startSec: 24.060000000000002, endSec: 24.27, kept: true }, - { i: 68, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_68", kind: "word", text: "validator,", startSec: 24.27, endSec: 24.94, kept: true }, - { i: 69, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_69", kind: "word", text: "and", startSec: 24.94, endSec: 25.19, kept: true }, - { i: 70, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_70", kind: "word", text: "it", startSec: 25.19, endSec: 25.560000000000002, kept: true }, - { i: 71, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_71", kind: "word", text: "recovered,", startSec: 25.560000000000002, endSec: 25.990000000000002, kept: true }, - { i: 72, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_72", kind: "word", text: "and", startSec: 25.990000000000002, endSec: 26.54, kept: true }, - { i: 73, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_73", kind: "word", text: "releases.", startSec: 26.54, endSec: 27.09, kept: true }, - { i: 74, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_2", kind: "silence", text: "[silence 0.2s]", startSec: 27.09, endSec: 27.32, kept: true }, - { i: 75, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_74", kind: "word", text: "Three", startSec: 27.32, endSec: 27.400000000000002, kept: true }, - { i: 76, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_75", kind: "word", text: "of", startSec: 27.400000000000002, endSec: 27.45, kept: true }, - { i: 77, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_76", kind: "word", text: "them,", startSec: 27.45, endSec: 28.060000000000002, kept: true }, - { i: 78, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_77", kind: "word", text: "newest", startSec: 28.060000000000002, endSec: 28.54, kept: true }, - { i: 79, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_78", kind: "word", text: "first,", startSec: 28.54, endSec: 28.95, kept: true }, - { i: 80, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_79", kind: "word", text: "and", startSec: 28.95, endSec: 29.240000000000002, kept: true }, - { i: 81, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_80", kind: "word", text: "every", startSec: 29.240000000000002, endSec: 29.53, kept: true }, - { i: 82, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_81", kind: "word", text: "line", startSec: 29.53, endSec: 29.88, kept: true }, - { i: 83, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_82", kind: "word", text: "links", startSec: 29.88, endSec: 30.09, kept: true }, - { i: 84, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_83", kind: "word", text: "into", startSec: 30.09, endSec: 30.32, kept: true }, - { i: 85, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_84", kind: "word", text: "the", startSec: 30.32, endSec: 30.560000000000002, kept: true }, - { i: 86, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_85", kind: "word", text: "commit", startSec: 30.560000000000002, endSec: 30.62, kept: true }, - { i: 87, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_86", kind: "word", text: "that", startSec: 30.62, endSec: 30.810000000000002, kept: true }, - { i: 88, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_87", kind: "word", text: "did", startSec: 30.810000000000002, endSec: 31.1, kept: true }, - { i: 89, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_88", kind: "word", text: "it.", startSec: 31.1, endSec: 31.560000000000002, kept: true }, - { i: 90, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_89", kind: "word", text: "Back", startSec: 31.39, endSec: 31.62, kept: true }, - { i: 91, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_90", kind: "word", text: "to", startSec: 31.62, endSec: 31.76, kept: true }, - { i: 92, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_91", kind: "word", text: "the", startSec: 31.76, endSec: 32.160000000000004, kept: true }, - { i: 93, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_92", kind: "word", text: "top,", startSec: 32.160000000000004, endSec: 32.46, kept: true }, - { i: 94, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_93", kind: "word", text: "and", startSec: 32.46, endSec: 32.730000000000004, kept: true }, - { i: 95, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_94", kind: "word", text: "that", startSec: 32.730000000000004, endSec: 32.86, kept: true }, - { i: 96, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_95", kind: "word", text: "is", startSec: 32.86, endSec: 32.9, kept: true }, - { i: 97, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_96", kind: "word", text: "the", startSec: 32.9, endSec: 33.07, kept: true }, - { i: 98, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_97", kind: "word", text: "whole", startSec: 33.07, endSec: 33.55, kept: true }, - { i: 99, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_98", kind: "word", text: "flow.", startSec: 33.55, endSec: 34.03, kept: true }, - { i: 100, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_99", kind: "word", text: "Tell", startSec: 33.99, endSec: 34.19, kept: true }, - { i: 101, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_100", kind: "word", text: "me", startSec: 34.19, endSec: 34.5, kept: true }, - { i: 102, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_101", kind: "word", text: "what", startSec: 34.5, endSec: 34.53, kept: true }, - { i: 103, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_102", kind: "word", text: "you", startSec: 34.53, endSec: 35, kept: true }, - { i: 104, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_103", kind: "word", text: "think.", startSec: 35, endSec: 35.12, kept: true }, - { i: 105, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_3", kind: "silence", text: "[silence 4.9s]", startSec: 35.12, endSec: 40.033, kept: false }, + { i: 0, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_1", kind: "silence", text: "[silence 2.2s]", startSec: 0, endSec: 2.19, kept: false, trimId: "trim_f52989cf-489c-47f5-a6c7-b95a7d71b399" }, + { i: 1, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_1", kind: "word", text: "Hi,", startSec: 2.19, endSec: 2.63, kept: true, trimId: null }, + { i: 2, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_2", kind: "word", text: "quick", startSec: 2.63, endSec: 3.02, kept: true, trimId: null }, + { i: 3, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_3", kind: "word", text: "walk", startSec: 3.02, endSec: 3.08, kept: true, trimId: null }, + { i: 4, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_4", kind: "word", text: "through", startSec: 3.08, endSec: 3.29, kept: true, trimId: null }, + { i: 5, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_5", kind: "word", text: "the", startSec: 3.29, endSec: 3.95, kept: true, trimId: null }, + { i: 6, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_6", kind: "word", text: "documentation", startSec: 3.95, endSec: 4.62, kept: true, trimId: null }, + { i: 7, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_7", kind: "word", text: "site.", startSec: 4.62, endSec: 4.94, kept: true, trimId: null }, + { i: 8, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_8", kind: "word", text: "The", startSec: 4.94, endSec: 5.2, kept: true, trimId: null }, + { i: 9, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_9", kind: "word", text: "new", startSec: 5.2, endSec: 5.5200000000000005, kept: true, trimId: null }, + { i: 10, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_10", kind: "word", text: "release", startSec: 5.5200000000000005, endSec: 5.62, kept: true, trimId: null }, + { i: 11, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_11", kind: "word", text: "went", startSec: 5.62, endSec: 5.79, kept: true, trimId: null }, + { i: 12, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_12", kind: "word", text: "out", startSec: 5.79, endSec: 6.01, kept: true, trimId: null }, + { i: 13, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_13", kind: "word", text: "this", startSec: 6.01, endSec: 6.47, kept: true, trimId: null }, + { i: 14, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_14", kind: "word", text: "morning.", startSec: 6.47, endSec: 6.82, kept: true, trimId: null }, + { i: 15, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_15", kind: "word", text: "The", startSec: 6.83, endSec: 7.2, kept: true, trimId: null }, + { i: 16, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_16", kind: "word", text: "hero", startSec: 7.2, endSec: 7.37, kept: true, trimId: null }, + { i: 17, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_17", kind: "word", text: "does", startSec: 7.37, endSec: 7.57, kept: true, trimId: null }, + { i: 18, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_18", kind: "word", text: "the", startSec: 7.57, endSec: 7.88, kept: true, trimId: null }, + { i: 19, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_19", kind: "word", text: "work", startSec: 7.88, endSec: 8.16, kept: true, trimId: null }, + { i: 20, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_20", kind: "word", text: "now.", startSec: 8.16, endSec: 8.58, kept: true, trimId: null }, + { i: 21, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_21", kind: "word", text: "One", startSec: 8.58, endSec: 9.06, kept: true, trimId: null }, + { i: 22, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_22", kind: "word", text: "line,", startSec: 9.06, endSec: 9.5, kept: true, trimId: null }, + { i: 23, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_23", kind: "word", text: "one", startSec: 9.5, endSec: 10.040000000000001, kept: true, trimId: null }, + { i: 24, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_24", kind: "word", text: "promise,", startSec: 10.040000000000001, endSec: 10.41, kept: true, trimId: null }, + { i: 25, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_25", kind: "word", text: "and", startSec: 10.41, endSec: 10.6, kept: true, trimId: null }, + { i: 26, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_26", kind: "word", text: "the", startSec: 10.6, endSec: 10.950000000000001, kept: true, trimId: null }, + { i: 27, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_27", kind: "word", text: "install", startSec: 10.950000000000001, endSec: 11.21, kept: true, trimId: null }, + { i: 28, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_28", kind: "word", text: "command", startSec: 11.21, endSec: 11.61, kept: true, trimId: null }, + { i: 29, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_29", kind: "word", text: "right", startSec: 11.61, endSec: 11.97, kept: true, trimId: null }, + { i: 30, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_30", kind: "word", text: "under", startSec: 11.97, endSec: 12.290000000000001, kept: true, trimId: null }, + { i: 31, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_31", kind: "word", text: "it.", startSec: 12.290000000000001, endSec: 12.68, kept: true, trimId: null }, + { i: 32, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_32", kind: "word", text: "Scrolling", startSec: 12.68, endSec: 13.25, kept: true, trimId: null }, + { i: 33, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_33", kind: "word", text: "down,", startSec: 13.25, endSec: 13.63, kept: true, trimId: null }, + { i: 34, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_34", kind: "word", text: "those", startSec: 13.63, endSec: 14.02, kept: true, trimId: null }, + { i: 35, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_35", kind: "word", text: "six", startSec: 14.02, endSec: 14.4, kept: true, trimId: null }, + { i: 36, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_36", kind: "word", text: "cards", startSec: 14.4, endSec: 14.450000000000001, kept: true, trimId: null }, + { i: 37, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_37", kind: "word", text: "are", startSec: 14.450000000000001, endSec: 14.620000000000001, kept: true, trimId: null }, + { i: 38, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_38", kind: "word", text: "the", startSec: 14.620000000000001, endSec: 14.77, kept: true, trimId: null }, + { i: 39, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_39", kind: "word", text: "whole", startSec: 14.77, endSec: 15.21, kept: true, trimId: null }, + { i: 40, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_40", kind: "word", text: "library", startSec: 15.21, endSec: 15.530000000000001, kept: true, trimId: null }, + { i: 41, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_41", kind: "word", text: "on", startSec: 15.530000000000001, endSec: 15.75, kept: true, trimId: null }, + { i: 42, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_42", kind: "word", text: "one", startSec: 15.75, endSec: 16.13, kept: true, trimId: null }, + { i: 43, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_43", kind: "word", text: "screen.", startSec: 16.13, endSec: 16.62, kept: true, trimId: null }, + { i: 44, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_44", kind: "word", text: "No", startSec: 16.82, endSec: 16.93, kept: true, trimId: null }, + { i: 45, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_45", kind: "word", text: "page", startSec: 16.93, endSec: 17.37, kept: true, trimId: null }, + { i: 46, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_46", kind: "word", text: "gets", startSec: 17.37, endSec: 17.62, kept: true, trimId: null }, + { i: 47, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_47", kind: "word", text: "more", startSec: 17.62, endSec: 17.7, kept: true, trimId: null }, + { i: 48, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_48", kind: "word", text: "than", startSec: 17.7, endSec: 17.96, kept: true, trimId: null }, + { i: 49, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_49", kind: "word", text: "a", startSec: 17.96, endSec: 18.18, kept: true, trimId: null }, + { i: 50, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_50", kind: "word", text: "sentence.", startSec: 18.18, endSec: 18.93, kept: true, trimId: null }, + { i: 51, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_51", kind: "word", text: "Over", startSec: 18.93, endSec: 19.07, kept: true, trimId: null }, + { i: 52, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_52", kind: "word", text: "on", startSec: 19.07, endSec: 19.56, kept: true, trimId: null }, + { i: 53, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_53", kind: "word", text: "status,", startSec: 19.56, endSec: 20.17, kept: true, trimId: null }, + { i: 54, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_54", kind: "word", text: "every", startSec: 20.17, endSec: 20.650000000000002, kept: true, trimId: null }, + { i: 55, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_55", kind: "word", text: "component", startSec: 20.650000000000002, endSec: 21.06, kept: true, trimId: null }, + { i: 56, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_56", kind: "word", text: "with", startSec: 21.06, endSec: 21.31, kept: true, trimId: null }, + { i: 57, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_57", kind: "word", text: "30", startSec: 21.31, endSec: 21.490000000000002, kept: true, trimId: null }, + { i: 58, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_58", kind: "word", text: "days", startSec: 21.490000000000002, endSec: 21.82, kept: true, trimId: null }, + { i: 59, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_59", kind: "word", text: "of", startSec: 21.82, endSec: 21.91, kept: true, trimId: null }, + { i: 60, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_60", kind: "word", text: "probes", startSec: 21.91, endSec: 22.36, kept: true, trimId: null }, + { i: 61, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_61", kind: "word", text: "behind", startSec: 22.36, endSec: 22.740000000000002, kept: true, trimId: null }, + { i: 62, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_62", kind: "word", text: "it.", startSec: 22.740000000000002, endSec: 23.05, kept: true, trimId: null }, + { i: 63, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_63", kind: "word", text: "One", startSec: 23.19, endSec: 23.45, kept: true, trimId: null }, + { i: 64, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_64", kind: "word", text: "amber", startSec: 23.45, endSec: 23.63, kept: true, trimId: null }, + { i: 65, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_65", kind: "word", text: "day", startSec: 23.63, endSec: 23.830000000000002, kept: true, trimId: null }, + { i: 66, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_66", kind: "word", text: "on", startSec: 23.830000000000002, endSec: 24.060000000000002, kept: true, trimId: null }, + { i: 67, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_67", kind: "word", text: "the", startSec: 24.060000000000002, endSec: 24.27, kept: true, trimId: null }, + { i: 68, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_68", kind: "word", text: "validator,", startSec: 24.27, endSec: 24.94, kept: true, trimId: null }, + { i: 69, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_69", kind: "word", text: "and", startSec: 24.94, endSec: 25.19, kept: true, trimId: null }, + { i: 70, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_70", kind: "word", text: "it", startSec: 25.19, endSec: 25.560000000000002, kept: true, trimId: null }, + { i: 71, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_71", kind: "word", text: "recovered,", startSec: 25.560000000000002, endSec: 25.990000000000002, kept: true, trimId: null }, + { i: 72, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_72", kind: "word", text: "and", startSec: 25.990000000000002, endSec: 26.54, kept: true, trimId: null }, + { i: 73, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_73", kind: "word", text: "releases.", startSec: 26.54, endSec: 27.09, kept: true, trimId: null }, + { i: 74, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_2", kind: "silence", text: "[silence 0.2s]", startSec: 27.09, endSec: 27.32, kept: true, trimId: null }, + { i: 75, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_74", kind: "word", text: "Three", startSec: 27.32, endSec: 27.400000000000002, kept: true, trimId: null }, + { i: 76, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_75", kind: "word", text: "of", startSec: 27.400000000000002, endSec: 27.45, kept: true, trimId: null }, + { i: 77, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_76", kind: "word", text: "them,", startSec: 27.45, endSec: 28.060000000000002, kept: true, trimId: null }, + { i: 78, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_77", kind: "word", text: "newest", startSec: 28.060000000000002, endSec: 28.54, kept: true, trimId: null }, + { i: 79, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_78", kind: "word", text: "first,", startSec: 28.54, endSec: 28.95, kept: true, trimId: null }, + { i: 80, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_79", kind: "word", text: "and", startSec: 28.95, endSec: 29.240000000000002, kept: true, trimId: null }, + { i: 81, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_80", kind: "word", text: "every", startSec: 29.240000000000002, endSec: 29.53, kept: true, trimId: null }, + { i: 82, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_81", kind: "word", text: "line", startSec: 29.53, endSec: 29.88, kept: true, trimId: null }, + { i: 83, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_82", kind: "word", text: "links", startSec: 29.88, endSec: 30.09, kept: true, trimId: null }, + { i: 84, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_83", kind: "word", text: "into", startSec: 30.09, endSec: 30.32, kept: true, trimId: null }, + { i: 85, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_84", kind: "word", text: "the", startSec: 30.32, endSec: 30.560000000000002, kept: true, trimId: null }, + { i: 86, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_85", kind: "word", text: "commit", startSec: 30.560000000000002, endSec: 30.62, kept: true, trimId: null }, + { i: 87, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_86", kind: "word", text: "that", startSec: 30.62, endSec: 30.810000000000002, kept: true, trimId: null }, + { i: 88, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_87", kind: "word", text: "did", startSec: 30.810000000000002, endSec: 31.1, kept: true, trimId: null }, + { i: 89, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_88", kind: "word", text: "it.", startSec: 31.1, endSec: 31.560000000000002, kept: true, trimId: null }, + { i: 90, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_89", kind: "word", text: "Back", startSec: 31.39, endSec: 31.62, kept: true, trimId: null }, + { i: 91, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_90", kind: "word", text: "to", startSec: 31.62, endSec: 31.76, kept: true, trimId: null }, + { i: 92, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_91", kind: "word", text: "the", startSec: 31.76, endSec: 32.160000000000004, kept: true, trimId: null }, + { i: 93, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_92", kind: "word", text: "top,", startSec: 32.160000000000004, endSec: 32.46, kept: true, trimId: null }, + { i: 94, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_93", kind: "word", text: "and", startSec: 32.46, endSec: 32.730000000000004, kept: true, trimId: null }, + { i: 95, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_94", kind: "word", text: "that", startSec: 32.730000000000004, endSec: 32.86, kept: true, trimId: null }, + { i: 96, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_95", kind: "word", text: "is", startSec: 32.86, endSec: 32.9, kept: true, trimId: null }, + { i: 97, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_96", kind: "word", text: "the", startSec: 32.9, endSec: 33.07, kept: true, trimId: null }, + { i: 98, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_97", kind: "word", text: "whole", startSec: 33.07, endSec: 33.55, kept: true, trimId: null }, + { i: 99, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_98", kind: "word", text: "flow.", startSec: 33.55, endSec: 34.03, kept: true, trimId: null }, + { i: 100, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_99", kind: "word", text: "Tell", startSec: 33.99, endSec: 34.19, kept: true, trimId: null }, + { i: 101, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_100", kind: "word", text: "me", startSec: 34.19, endSec: 34.5, kept: true, trimId: null }, + { i: 102, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_101", kind: "word", text: "what", startSec: 34.5, endSec: 34.53, kept: true, trimId: null }, + { i: 103, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_102", kind: "word", text: "you", startSec: 34.53, endSec: 35, kept: true, trimId: null }, + { i: 104, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:word_103", kind: "word", text: "think.", startSec: 35, endSec: 35.12, kept: true, trimId: null }, + { i: 105, id: "clip_3aa049d2-cf6c-406e-99fa-4a9754fea5fe:silence_3", kind: "silence", text: "[silence 4.9s]", startSec: 35.12, endSec: 40.033, kept: false, trimId: "trim_3bad6006-721a-4dd4-a218-091fa734a63e" }, ]; /** The five lanes in the app's order. A lane carries its shortcut hint if and @@ -768,9 +768,9 @@ export const PROVENANCE: ProvenanceEntry[] = [ { shown: "Transcript", source: "src/i18n/locales/en/settings.json → transcript.title" }, { shown: "Clip 1 · 0:00.0—0:40.0", source: "computed: settings.json transcript.clipLabel with index 1, joined to formatMs(0) and formatMs(40033) from src/lib/ai-edition/timeline/format.ts" }, { shown: "Bellrock — docs walkthrough", source: "fixture assets[0].label" }, - { shown: "[silence 2.2s]", source: "computed: settings.json transcript.silence over the 2.190s gap 0–2.19 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; inside trimRange undefined" }, + { shown: "[silence 2.2s]", source: "computed: settings.json transcript.silence over the 2.190s gap 0–2.19 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; inside trimRange trim_f52989cf-489c-47f5-a6c7-b95a7d71b399" }, { shown: "[silence 0.2s]", source: "computed: settings.json transcript.silence over the 0.230s gap 27.09–27.32 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; outside any trim" }, - { shown: "[silence 4.9s]", source: "computed: settings.json transcript.silence over the 4.913s gap 35.12–40.033 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; inside trimRange undefined" }, + { shown: "[silence 4.9s]", source: "computed: settings.json transcript.silence over the 4.913s gap 35.12–40.033 that buildClipSection inserted at SILENCE_THRESHOLD_SEC 0.2; inside trimRange trim_3bad6006-721a-4dd4-a218-091fa734a63e" }, { shown: "Hi, quick walk through the documentation site. The new release went out this morning. The hero does the work now. One line, one promise, and the install command right under it. Scrolling down, those six cards are the whole library on one screen. No page gets more than a sentence. Over on status, every component with 30 days of probes behind it. One amber day on the validator, and it recovered, and releases. Three of them, newest first, and every line links into the commit that did it. Back to the top, and that is the whole flow. Tell me what you think.", source: "fixture transcript.words, rejoined in start order; every entry is rendered as its own span" }, { shown: "Conversation 1", source: "computed: editor.json chat.untitledConversation + the session index, as LeftPanel.tsx:1184 renders it" }, { shown: "No messages yet. Ask the agent to cut silences, tighten pauses, or add captions.", source: "editor.json chat.emptyState" },