@redaksjon/protokoll 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/.nvmrc +2 -0
  2. package/LICENSE +190 -0
  3. package/README.md +88 -0
  4. package/dist/arguments.js +158 -0
  5. package/dist/arguments.js.map +1 -0
  6. package/dist/constants.js +82 -0
  7. package/dist/constants.js.map +1 -0
  8. package/dist/logging.js +46 -0
  9. package/dist/logging.js.map +1 -0
  10. package/dist/main.js +5 -0
  11. package/dist/main.js.map +1 -0
  12. package/dist/phases/locate.js +55 -0
  13. package/dist/phases/locate.js.map +1 -0
  14. package/dist/phases/transcribe.js +149 -0
  15. package/dist/phases/transcribe.js.map +1 -0
  16. package/dist/processor.js +35 -0
  17. package/dist/processor.js.map +1 -0
  18. package/dist/prompt/instructions/transcribe.md +46 -0
  19. package/dist/prompt/personas/transcriber.md +37 -0
  20. package/dist/prompt/transcribe.js +41 -0
  21. package/dist/prompt/transcribe.js.map +1 -0
  22. package/dist/protokoll.js +81 -0
  23. package/dist/protokoll.js.map +1 -0
  24. package/dist/util/dates.js +96 -0
  25. package/dist/util/dates.js.map +1 -0
  26. package/dist/util/general.js +39 -0
  27. package/dist/util/general.js.map +1 -0
  28. package/dist/util/media.js +103 -0
  29. package/dist/util/media.js.map +1 -0
  30. package/dist/util/openai.js +92 -0
  31. package/dist/util/openai.js.map +1 -0
  32. package/dist/util/storage.js +135 -0
  33. package/dist/util/storage.js.map +1 -0
  34. package/docs/index.html +16 -0
  35. package/docs/package-lock.json +1521 -0
  36. package/docs/package.json +21 -0
  37. package/docs/vite.config.js +10 -0
  38. package/eslint.config.mjs +82 -0
  39. package/nodemon.json +14 -0
  40. package/output/kodrdriv/250702-1905-commit-message.md +1 -0
  41. package/output/kodrdriv/250702-1905-commit.request.json +14 -0
  42. package/output/kodrdriv/250702-1905-commit.response.json +36 -0
  43. package/output/kodrdriv/250702-1906-commit-message.md +1 -0
  44. package/output/kodrdriv/250702-1907-commit-message.md +1 -0
  45. package/output/kodrdriv/250702-1907-commit.request.json +14 -0
  46. package/output/kodrdriv/250702-1907-commit.response.json +36 -0
  47. package/output/kodrdriv/250716-1517-review-analysis.md +39 -0
  48. package/output/kodrdriv/250716-1517-review-notes.md +69 -0
  49. package/output/kodrdriv/250716-1518-review-analysis.md +15 -0
  50. package/output/kodrdriv/250716-1518-review-notes.md +67 -0
  51. package/output/kodrdriv/250716-1523-review-analysis.md +36 -0
  52. package/output/kodrdriv/250716-1523-review-notes.md +87 -0
  53. package/output/kodrdriv/250722-1135-commit-message.md +1 -0
  54. package/output/kodrdriv/250722-1331-commit-message.md +1 -0
  55. package/output/kodrdriv/250722-1335-commit-message.md +1 -0
  56. package/output/kodrdriv/250722-1337-commit-message.md +1 -0
  57. package/output/kodrdriv/250722-1342-release-notes.md +26 -0
  58. package/output/kodrdriv/250722-1416-commit-message.md +3 -0
  59. package/output/kodrdriv/250722-1420-commit-message.md +1 -0
  60. package/output/kodrdriv/250722-1422-commit-message.md +1 -0
  61. package/output/kodrdriv/250722-1423-commit-message.md +1 -0
  62. package/output/kodrdriv/250722-1425-release-notes.md +41 -0
  63. package/output/kodrdriv/250722-1527-commit-message.md +13 -0
  64. package/output/kodrdriv/250722-1532-commit-message.md +1 -0
  65. package/output/kodrdriv/250722-1532-release-notes.md +32 -0
  66. package/output/kodrdriv/250722-2314-review-analysis.md +28 -0
  67. package/output/kodrdriv/250722-2314-review-notes.md +464 -0
  68. package/output/kodrdriv/250722-2315-review-analysis.md +28 -0
  69. package/output/kodrdriv/250722-2315-review-notes.md +477 -0
  70. package/output/kodrdriv/250804-1623-review-analysis.md +38 -0
  71. package/output/kodrdriv/250804-1623-review-notes.md +479 -0
  72. package/output/kodrdriv/250804-1638-review-analysis.md +56 -0
  73. package/output/kodrdriv/250804-1638-review-notes.md +502 -0
  74. package/output/kodrdriv/250812-2021-review-analysis.md +27 -0
  75. package/output/kodrdriv/250812-2021-review-notes.md +571 -0
  76. package/output/kodrdriv/250826-0700-commit-message.md +12 -0
  77. package/output/kodrdriv/RELEASE_NOTES.md +30 -0
  78. package/output/kodrdriv/RELEASE_TITLE.md +1 -0
  79. package/package.json +78 -0
  80. package/tsconfig.tsbuildinfo +1 -0
  81. package/vite.config.ts +124 -0
  82. package/vitest.config.ts +30 -0
@@ -0,0 +1,571 @@
1
+ # Review Notes
2
+
3
+ I don't think the tool should be specifying which models are allowed and which are not allowed, the number of models available changes so often this doesn't make sense.
4
+
5
+ # Commit History Context
6
+
7
+
8
+
9
+ [Recent Commit History]
10
+ commit 2af48dccaf2d88b04eeba60a88a7cc0ac61822cb
11
+ Author: Simran Jafari <jafarisimran@gmail.com>
12
+ Date: Tue Jul 22 15:33:53 2025 -0700
13
+
14
+ 0.0.4
15
+
16
+ (#3)
17
+
18
+ * Add documentation site for Matnava with automated GitHub Pages deployment
19
+
20
+ Introduce a standalone documentation site under the `docs/` directory, built with React and Vite, featuring step-by-step setup instructions, feature overview, example usage, and customization guidance. The site leverages modern styling with dark/light mode support and is configured for GitHub Pages deployment.
21
+
22
+ Key additions and setup:
23
+ - `docs/README.md`: Instructions for local development, structure, and deployment workflow.
24
+ - `docs/src/`: Contains the main React components and styles (`App.jsx`, `index.css`, `main.jsx`).
25
+ - `docs/vite.config.js`: Vite configuration with `/matnava/` base for correct GH Pages routing.
26
+ - `docs/package.json`: Dependencies and scripts using pnpm.
27
+ - `.github/workflows/deploy-docs.yml`: GitHub Actions workflow to build and deploy the docs site on pushes to the `main` branch.
28
+ - `.gitignore`: Node, build artifacts, and local config files ignored under `docs/`.
29
+
30
+ This enables automated, seamless deployment of up-to-date documentation with every change to the `main` branch.
31
+
32
+ * Add NPM lockfile and .npmrc to docs for isolated dependency management
33
+
34
+ Introduced `docs/package-lock.json` to lock dependency versions for the documentation site, ensuring reproducible installs regardless of workspace settings. Added `docs/.npmrc` with `ignore-workspace=true` to prevent local or monorepo workspace dependencies from interfering, supporting reliable standalone installation via npm. These files improve CI stability and local development by decoupling the docs build from any global or workspace package manager configuration.
35
+
36
+ * No changes detected — empty commit.
37
+
38
+ * 0.0.4
39
+
40
+ commit 6c8c60dbf41bd6c24de187fa217b4835fcb1dfa5
41
+ Author: Simran Jafari <jafarisimran@gmail.com>
42
+ Date: Tue Jul 22 14:27:02 2025 -0700
43
+
44
+ 0.0.3
45
+
46
+ (#2)
47
+
48
+ * Removed ts-expect-error for config shape in matnava.ts, corrected error assertion in media utility test to throw an error, and fixed typo in tsconfig.json types array by removing duplicate entries and ensuring correct type specification.
49
+
50
+ * Upgraded @riotprompt/riotprompt, @theunwalked/cardigantime, and @theunwalked/dreadcabinet dependencies from local workspace links to released package versions in package.json, removed pnpm-workspace.yaml, and updated the packageManager field to require pnpm 10.13.1. This streamlines dependency management by transitioning from local development references to stable, published versions, and eliminates the need for custom workspace overrides.
51
+
52
+ * Removed mockdate from devDependencies in package.json to eliminate unused development dependency.
53
+
54
+ * Removed duplicate test execution in GitHub Actions workflows by deleting redundant 'pnpm test --coverage' steps from both pnpm-publish.yml and test.yml, ensuring tests run only once before code coverage upload.
55
+
56
+ * 0.0.2
57
+
58
+ * Removed local configuration and context files in favor of pnpm-workspace.yaml overrides; tightened dependency handling and updated instructional prompt
59
+
60
+ Deleted .cursorrules, .kodrdriv/config.yaml, and .kodrdriv/context/content.md to eliminate local test, workflow, and documentation rules. Added pnpm-workspace.yaml with explicit package link overrides to control dependency resolution. Expanded and clarified src/prompt/instructions/transcribe.md to set stricter constraints and formatting requirements for transcript processing, including clearer guidelines for spelling correction, Markdown structure, and fidelity, while discouraging summarization and interpretation. Refined src/arguments.ts and src/constants.ts to streamline config merging and remove unnecessary default properties and early argument parsing for --check-config and --init-config. Adjusted SecureConfigSchema in src/matnava.ts for proper secure configuration typing. Updated Vite rollupOptions externals list for more robust dependency exclusion. These changes enhance reproducibility, make project dependency management explicit, and improve transcript post-processing consistency.
61
+
62
+ * No changes detected — empty commit.
63
+
64
+ * No changes detected — empty commit.
65
+
66
+ * No changes detected — empty commit.
67
+
68
+ * Removing pnpm-workspace
69
+
70
+ * 0.0.3
71
+
72
+ commit de67713d5aa8b4e2fcdf7d3a4b5cfc0ff0e26dca
73
+ Author: Simran Jafari <jafarisimran@gmail.com>
74
+ Date: Tue Jul 22 11:16:09 2025 -0700
75
+
76
+ Initial commit
77
+
78
+
79
+ # Recent Diffs Context
80
+
81
+
82
+
83
+ [Recent Diff 1 (HEAD~1)]
84
+ diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml
85
+ new file mode 100644
86
+ index 0000000..a9fd775
87
+ --- /dev/null
88
+ +++ b/.github/workflows/deploy-docs.yml
89
+ @@ -0,0 +1,61 @@
90
+ +name: Deploy Documentation to GitHub Pages
91
+ +
92
+ +on:
93
+ + push:
94
+ + branches: [ main ]
95
+ + workflow_dispatch:
96
+ +
97
+ +permissions:
98
+ + contents: read
99
+ + pages: write
100
+ + id-token: write
101
+ +
102
+ +concurrency:
103
+ + group: "pages"
104
+ + cancel-in-progress: false
105
+ +
106
+ +jobs:
107
+ + build:
108
+ + runs-on: ubuntu-latest
109
+ + steps:
110
+ + - name: Checkout
111
+ + uses: actions/checkout@v4
112
+ +
113
+ + - name: Setup Node.js
114
+ + uses: actions/setup-node@v4
115
+ + with:
116
+ + node-version: '18'
117
+ +
118
+ + - name: Setup pnpm
119
+ + uses: pnpm/action-setup@v4
120
+ + with:
121
+ + version: 10.13.1
122
+ +
123
+ + - name: Install dependencies
124
+ + run: |
125
+ + cd docs
126
+ + pnpm install
127
+ +
128
+ + - name: Build documentation
129
+ + run: |
130
+ + cd docs
131
+ + pnpm run build
132
+ +
133
+ + - name: Setup Pages
134
+ + uses: actions/configure-pages@v4
135
+ +
136
+ + - name: Upload artifact
137
+ + uses: actions/upload-pages-artifact@v3
138
+ + with:
139
+ + path: ./docs/dist
140
+ +
141
+ + deploy:
142
+ + environment:
143
+ + name: github-pages
144
+ + url: ${{ steps.deployment.outputs.page_url }}
145
+ + runs-on: ubuntu-latest
146
+ + needs: build
147
+ + steps:
148
+ + - name: Deploy to GitHub Pages
149
+ + id: deployment
150
+ + uses: actions/deploy-pages@v4
151
+
152
+ diff --git a/docs/.gitignore b/docs/.gitignore
153
+ new file mode 100644
154
+ index 0000000..3c4acb8
155
+ --- /dev/null
156
+ +++ b/docs/.gitignore
157
+ @@ -0,0 +1,38 @@
158
+ +# Dependencies
159
+ +node_modules/
160
+ +/.pnp
161
+ +.pnp.js
162
+ +
163
+ +# Production builds
164
+ +/dist
165
+ +/build
166
+ +
167
+ +# Environment variables
168
+ +.env
169
+ +.env.local
170
+ +.env.development.local
171
+ +.env.test.local
172
+ +.env.production.local
173
+ +
174
+ +# Logs
175
+ +npm-debug.log*
176
+ +yarn-debug.log*
177
+ +yarn-error.log*
178
+ +pnpm-debug.log*
179
+ +lerna-debug.log*
180
+ +
181
+ +# Runtime data
182
+ +pids
183
+ +*.pid
184
+ +*.seed
185
+ +*.pid.lock
186
+ +
187
+ +# IDE files
188
+ +.vscode/
189
+ +.idea/
190
+ +*.swp
191
+ +*.swo
192
+ +
193
+ +# OS files
194
+ +.DS_Store
195
+ +Thumbs.db
196
+
197
+ diff --git a/docs/.npmrc b/docs/.npmrc
198
+ new file mode 100644
199
+ index 0000000..de14fd9
200
+ --- /dev/null
201
+ +++ b/docs/.npmrc
202
+ @@ -0,0 +1 @@
203
+ +ignore-workspace=true
204
+ diff --git a/docs/README.md b/docs/README.md
205
+ new file mode 100644
206
+ index 0000000..fe32a9d
207
+ --- /dev/null
208
+ +++ b/docs/README.md
209
+ @@ -0,0 +1,50 @@
210
+ +# Matnava Documentation Site
211
+ +
212
+ +This is a simple React documentation site for Matnava, deployed automatically to GitHub Pages.
213
+ +
214
+ +## Local Development
215
+ +
216
+ +To work on the documentation site locally:
217
+ +
218
+ +```bash
219
+ +# Navigate to the docs directory
220
+ +cd docs
221
+ +
222
+ +# Install dependencies
223
+ +pnpm install
224
+ +
225
+ +# Start the development server
226
+ +pnpm run dev
227
+ +
228
+ +# Build for production
229
+ +pnpm run build
230
+ +
231
+ +# Preview the production build
232
+ +pnpm run preview
233
+ +```
234
+ +
235
+ +## Deployment
236
+ +
237
+ +The site is automatically deployed to GitHub Pages via a GitHub workflow whenever commits are pushed to the `main` branch. The workflow:
238
+ +
239
+ +1. Installs dependencies using pnpm
240
+ +2. Builds the React app
241
+ +3. Deploys to GitHub Pages
242
+ +
243
+ +The site will be available at: `https://[username].github.io/matnava/`
244
+ +
245
+ +## Structure
246
+ +
247
+ +- `src/App.jsx` - Main React component with all the documentation content
248
+ +- `src/index.css` - Styles with dark/light mode support
249
+ +- `vite.config.js` - Vite configuration with GitHub Pages base path
250
+ +- `package.json` - Dependencies and scripts for the React app
251
+ +
252
+ +## Customization
253
+ +
254
+ +To update the documentation:
255
+ +
256
+ +1. Edit `src/App.jsx` to modify content
257
+ +2. Edit `src/index.css` to modify styling
258
+ +3. Test locally with `pnpm run dev`
259
+ +4. Commit and push to trigger automatic deployment
260
+
261
+ diff --git a/docs/index.html b/docs/index.html
262
+ new file mode 100644
263
+ index 0000000..cb07c28
264
+ --- /dev/null
265
+ +++ b/docs/index.html
266
+ @@ -0,0 +1,16 @@
267
+ +<!doctype html>
268
+ +<html lang="en">
269
+ +
270
+ +<head>
271
+ + <meta charset="UTF-8" />
272
+ + <link rel="icon" type="image/svg+xml" href="/vite.svg" />
273
+ + <meta name="viewport" content="width=device-width, initial-scale=1.0" />
274
+ + <title>Matnava - Focused Audio Transcription Tool</title>
275
+ +</head>
276
+ +
277
+ +<body>
278
+ + <div id="root"></div>
279
+ + <script type="module" src="/src/main.jsx"></script>
280
+ +</body>
281
+ +
282
+ +</html>
283
+
284
+ diff --git a/docs/package.json b/docs/package.json
285
+ new file mode 100644
286
+ index 0000000..e338989
287
+ --- /dev/null
288
+ +++ b/docs/package.json
289
+ @@ -0,0 +1,21 @@
290
+ +{
291
+ + "name": "matnava-docs",
292
+ + "version": "1.0.0",
293
+ + "description": "Documentation site for Matnava - a focused transcription tool",
294
+ + "type": "module",
295
+ + "scripts": {
296
+ + "dev": "vite",
297
+ + "build": "vite build",
298
+ + "preview": "vite preview"
299
+ + },
300
+ + "dependencies": {
301
+ + "react": "^18.2.0",
302
+ + "react-dom": "^18.2.0"
303
+ + },
304
+ + "devDependencies": {
305
+ + "@types/react": "^18.2.0",
306
+ + "@types/react-dom": "^18.2.0",
307
+ + "@vitejs/plugin-react": "^4.0.0",
308
+ + "vite": "^5.0.0"
309
+ + }
310
+ +}
311
+
312
+ ... [TRUNCATED: Original diff was 16153 characters, showing first 4987] ...
313
+
314
+ [Recent Diff 2 (HEAD~2..HEAD~1)]
315
+ diff --git a/.cursorrules b/.cursorrules
316
+ deleted file mode 100644
317
+ index ac40cec..0000000
318
+ --- a/.cursorrules
319
+ +++ /dev/null
320
+ @@ -1,8 +0,0 @@
321
+ -When writing tests make use of @ts-ignore to simplify things. Don't spend too much effort trying to address these errors.
322
+ -
323
+ -When mocking ESM modules in Jest, we need to make use of this approach:
324
+ -
325
+ - // Mock the modules before importing
326
+ - jest.unstable_mockModule('../../src/logging', () => ({
327
+ - getLogger: jest.fn(() => mockLogger)
328
+ - }));
329
+ diff --git a/.github/workflows/pnpm-publish.yml b/.github/workflows/pnpm-publish.yml
330
+ index cadaebc..18e8c81 100644
331
+ --- a/.github/workflows/pnpm-publish.yml
332
+ +++ b/.github/workflows/pnpm-publish.yml
333
+ @@ -24,7 +24,7 @@ jobs:
334
+ - run: pnpm install --frozen-lockfile --strict-peer-dependencies
335
+ - run: pnpm run lint
336
+ - run: pnpm run build
337
+ - - run: pnpm test --coverage
338
+ + - run: pnpm test
339
+ - uses: codecov/codecov-action@v5
340
+ with:
341
+ slug: jafarisimran/maloomscan
342
+ diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
343
+ index 894747f..31e6581 100644
344
+ --- a/.github/workflows/test.yml
345
+ +++ b/.github/workflows/test.yml
346
+ @@ -22,7 +22,7 @@ jobs:
347
+ - run: pnpm install --frozen-lockfile --strict-peer-dependencies
348
+ - run: pnpm run lint
349
+ - run: pnpm run build
350
+ - - run: pnpm test --coverage
351
+ + - run: pnpm test
352
+ - uses: codecov/codecov-action@v5
353
+ with:
354
+ slug: jafarisimran/maloomscan
355
+ diff --git a/.kodrdriv/config.yaml b/.kodrdriv/config.yaml
356
+ deleted file mode 100644
357
+ index 6e93ef3..0000000
358
+ --- a/.kodrdriv/config.yaml
359
+ +++ /dev/null
360
+ @@ -1,8 +0,0 @@
361
+ -contextDirectories:
362
+ - - .kodrdriv/context
363
+ -commit:
364
+ - cached: true
365
+ - sendit: true
366
+ -release:
367
+ - from: main
368
+ - to: HEAD
369
+
370
+ diff --git a/.kodrdriv/context/content.md b/.kodrdriv/context/content.md
371
+ deleted file mode 100644
372
+ index 28ae833..0000000
373
+ --- a/.kodrdriv/context/content.md
374
+ +++ /dev/null
375
+ @@ -1 +0,0 @@
376
+ -Maloomscan takes audio recordings and turned them into intellgent notes.
377
+ diff --git a/package.json b/package.json
378
+ index 3785f24..e544d4d 100644
379
+ --- a/package.json
380
+ +++ b/package.json
381
+ @@ -1,6 +1,6 @@
382
+ {
383
+ "name": "@jankhoj/matnava",
384
+ - "version": "0.0.1",
385
+ + "version": "0.0.3",
386
+ "description": "Matnava is a focused transcription tool that helps you transcribe audio intelligently using context.",
387
+ "main": "dist/main.js",
388
+ "type": "module",
389
+ @@ -11,7 +11,7 @@
390
+ "type": "git",
391
+ "url": "git+https://github.com/jafarisimran/matnava.git"
392
+ },
393
+ - "packageManager": "pnpm@10.11.0",
394
+ + "packageManager": "pnpm@10.13.1",
395
+ "scripts": {
396
+ "build": "pnpm run lint &&tsc --noEmit && vite build && copyfiles -u 1 \"src/**/*.md\" dist",
397
+ "dev": "vite",
398
+ @@ -31,9 +31,9 @@
399
+ "author": "Simran Jafari <jafarisimran@gmail.com>",
400
+ "license": "Apache-2.0",
401
+ "dependencies": {
402
+ - "@riotprompt/riotprompt": "link:../../StJustReckoning/riotprompt",
403
+ - "@theunwalked/cardigantime": "link:../../SemicolonAmbulance/cardigantime",
404
+ - "@theunwalked/dreadcabinet": "link:../../SemicolonAmbulance/dreadcabinet",
405
+ + "@riotprompt/riotprompt": "^0.0.8",
406
+ + "@theunwalked/cardigantime": "^0.0.16",
407
+ + "@theunwalked/dreadcabinet": "^0.0.10",
408
+ "@types/fluent-ffmpeg": "^2.1.27",
409
+ "commander": "^14.0.0",
410
+ "dayjs": "^1.11.13",
411
+ @@ -62,6 +62,7 @@
412
+ "eslint": "^9.31.0",
413
+ "eslint-plugin-import": "^2.32.0",
414
+ "globals": "^16.3.0",
415
+ + "mockdate": "^3.0.5",
416
+ "rollup-plugin-preserve-shebang": "^1.0.1",
417
+ "rollup-plugin-visualizer": "^6.0.3",
418
+ "typescript": "^5.8.3",
419
+ @@ -69,4 +70,4 @@
420
+ "vite-plugin-node": "^7.0.0",
421
+ "vitest": "^3.2.4"
422
+ }
423
+ -}
424
+
425
+ +}
426
+ diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
427
+ deleted file mode 100644
428
+ index 39693c1..0000000
429
+ --- a/pnpm-workspace.yaml
430
+ +++ /dev/null
431
+ @@ -1,4 +0,0 @@
432
+ -overrides:
433
+ - '@riotprompt/riotprompt': link:../../StJustReckoning/riotprompt
434
+ - '@theunwalked/cardigantime': link:../../SemicolonAmbulance/cardigantime
435
+ - '@theunwalked/dreadcabinet': link:../../SemicolonAmbulance/dreadcabinet
436
+ diff --git a/src/arguments.ts b/src/arguments.ts
437
+ index 00dc70e..1e435ff 100644
438
+ --- a/src/arguments.ts
439
+ +++ b/src/arguments.ts
440
+ @@ -36,23 +36,50 @@ export const configure = async (dreadcabinet: Dreadcabinet.DreadCabinet, cardiga
441
+ program = await cardigantime.configure(program);
442
+ program.version(VERSION);
443
+
444
+ + // Check if --check-config is in process.argv early
445
+ + if (process.argv.includes('--check-config')) {
446
+ + program.parse();
447
+ + const cliArgs: Args = program.opts<Args>();
448
+ +
449
+ + // Use CardiganTime's built-in checkConfig method
450
+ + await cardigantime.checkConfig(cliArgs);
451
+ +
452
+ + // Return minimal config for consistency, but main processing is done
453
+ + const config: Config = MATNAVA_DEFAULTS as Config;
454
+
455
+ ... [TRUNCATED: Original diff was 13636 characters, showing first 4951] ...
456
+
457
+ # GitHub Issues Context
458
+
459
+ Issue #17: Track and analyze transcript modifications for training and context improvement
460
+ Labels: priority-medium, review, category-investigation
461
+ Created: 2025-08-04T23:39:39Z
462
+ Updated: 2025-08-04T23:39:39Z
463
+ Body: ## Description
464
+
465
+ The reviewer sees value in maintaining a change log of substitutions and edits made during transcript review. By systematically collecting and analyzing these changes, the tool could surface patterns—potentially improving future transcription accuracy or contextual prompts. This would both aid user transparency and lay groundwork for adaptive system learning.
466
+
467
+ ## Details
468
+
469
+ - **Priority:** medium
470
+ - **Category:** investigation
471
+ - **Source:** Review
472
+
473
+ ## Suggestions
474
+
475
+ - Research feasibl...
476
+ ---
477
+
478
+ Issue #16: Enable transcript editing during verification/review stage
479
+ Labels: category-functionality, review, priority-high
480
+ Created: 2025-08-04T23:39:37Z
481
+ Updated: 2025-08-04T23:39:37Z
482
+ Body: ## Description
483
+
484
+ As part of the proposed interactive verification interface, provide users with the ability to edit the final transcript directly from the verification view. This allows for quick corrections or contextual adjustments, aligning the tool more closely with real-world review workflows.
485
+
486
+ ## Details
487
+
488
+ - **Priority:** high
489
+ - **Category:** functionality
490
+ - **Source:** Review
491
+
492
+ ## Suggestions
493
+
494
+ - Implement editable fields or modal dialogs for transcript segments in the UI.
495
+ - Ensure all edits ...
496
+ ---
497
+
498
+ Issue #15: Design and implement interactive transcript verification interface
499
+ Labels: priority-medium, review, category-ui
500
+ Created: 2025-08-04T23:39:33Z
501
+ Updated: 2025-08-04T23:39:33Z
502
+ Body: ## Description
503
+
504
+ The reviewer proposes an interactive UI workflow where, after transcript generation, both the raw and reviewed transcripts are shown side by side. This interface should allow users to scroll through both versions for consistency checks, and provide a convenient 'edit' button to enable direct modification of the final transcript. The goal is to streamline review, improve user empowerment, and ensure transcript quality.
505
+
506
+ ## Details
507
+
508
+ - **Priority:** medium
509
+ - **Category:** ui
510
+ - **Sou...
511
+ ---
512
+
513
+ Issue #14: Add option to limit the number of files processed per Matnava run
514
+ Labels: category-functionality, review, priority-high
515
+ Created: 2025-08-04T23:39:29Z
516
+ Updated: 2025-08-04T23:39:29Z
517
+ Body: ## Description
518
+
519
+ Currently, Matnava processes all available audio files in a batch, requiring users to wait for all files to finish. The user requests the ability to define a limit (N) so that only a set number of files are processed in a single run, enhancing control and efficiency for large batches or time-constrained scenarios.
520
+
521
+ ## Details
522
+
523
+ - **Priority:** high
524
+ - **Category:** functionality
525
+ - **Source:** Review
526
+
527
+ ## Suggestions
528
+
529
+ - Add a CLI/configuration option (e.g., --limit or --max-files) to...
530
+ ---
531
+
532
+ Issue #13: Clarify and implement audio file movement from Inbound to Processed directories post-transcription
533
+ Labels: priority-medium, review, category-investigation
534
+ Created: 2025-08-04T23:23:49Z
535
+ Updated: 2025-08-04T23:23:49Z
536
+ Body: ## Description
537
+
538
+ Currently, after transcription, audio files remain in the Inbound directory, leading to ambiguity over workflow status. It's unclear whether files are supposed to be moved to a Processed directory after transcription. Leaving files unmoved may result in duplicate processing, clutter in the Inbound directory, and operational confusion. The reviewer requests a clear policy and automation (if needed) governing the movement of files once they're transcribed.
539
+
540
+ ## Details
541
+
542
+ - **Priority...
543
+ ---
544
+
545
+ Issue #12: Fix transcript timestamps to use user’s local time instead of UTC
546
+ Labels: category-functionality, review, priority-high
547
+ Created: 2025-08-04T23:23:45Z
548
+ Updated: 2025-08-04T23:23:45Z
549
+ Body: ## Description
550
+
551
+ Transcripts generated by Matnava currently record timestamps in UTC. This results in logs that may not accurately reflect when recordings were actually made from the user's perspective. For example, a recording made at 5 PM Pacific would be logged as occurring the next day in UTC, creating confusion for users tracking their activities or reviewing transcripts. This issue risks misalignment with user expectations and can cause organizational or compliance concerns if the recorded ...
552
+ ---
553
+
554
+ Issue #6: Implement a Unified Project Analytics Dashboard (MindShone Concept)
555
+ Labels: priority-medium, category-functionality, review
556
+ Created: 2025-07-23T06:15:43Z
557
+ Updated: 2025-07-23T06:15:43Z
558
+ Body: ## Description
559
+
560
+ The reviewer suggests adding a 'unified view', similar to RunGhost or inspired by the original MindShone concept. This dashboard should aggregate and report on statistics across all monitored projects—such as the number of audio files, count and location of transcripts, and general progress metrics. The reviewer wants insights on overall progress, involvement levels per project, and comparative attention over time. The value is to provide high-level navigation and situational awa...
561
+ ---
562
+
563
+ Issue #5: Introduce dedicated directories for transcript file lifecycle management
564
+ Labels: priority-medium, category-functionality, review
565
+ Created: 2025-07-23T06:15:05Z
566
+ Updated: 2025-07-23T06:15:05Z
567
+ Body: ## Description
568
+
569
+ Currently, all transcript files are collected without a clear organizational system, leading to duplicate processing and reduced workflow efficiency. The reviewer suggests implementing a system where transcripts, once generated by the transcription tool (e.g., Matnava), are placed in a dedicated 'transcripts' directory. After they are processed (e.g., reviewed or converted into notes), they should be moved to a secondary directory such as 'notes' or 'review'. This will make it ea...
570
+ ---
571
+
@@ -0,0 +1,12 @@
1
+ Allow any OpenAI model name for transcription and enhancement; remove static model allowlists throughout codebase
2
+
3
+ - Remove static allowlists (ALLOWED_MODELS and ALLOWED_TRANSCRIPTION_MODELS) from constants and configuration logic
4
+ - Permit any model string for `model`, `transcriptionModel`, etc., deferring validation to the OpenAI API response
5
+ - Update argument and configuration validation to check only for model presence, not a fixed set of values
6
+ - Rewrite relevant documentation in README.md to:
7
+ - Describe future-proof, open model selection and usage
8
+ - Replace all references to the old project name with "Matnava"
9
+ - Add new usage instructions and examples for model selection
10
+ - Revise persona prompt for the transcription formatter to clarify scope, boundary, and structural expectations
11
+ - Remove related invalid model test cases from arguments.test.ts to reflect new open model policy
12
+ - Clean dependencies in pnpm-lock.yaml for dropped local/link-based and now-unused packages
@@ -0,0 +1,30 @@
1
+ This release centres on introducing a dedicated documentation site for Matnava, echoing a garden carefully cultivated for newcomers and long-time wanderers alike. The effort harmonises documentation, hosting, and dependency management: the "Release Focus" is to provide contributors and users with a reliable, self-contained, and always-current source of guidance, automatically deployed on every update to the main branch.
2
+
3
+ **New Features**
4
+
5
+ * Added a standalone React-based documentation site under the `docs/` directory.
6
+ * Documentation details quick start, key features, usage patterns, output formats, and customization guidance for Matnava.
7
+ * Modern design with dark/light mode support and a focus on clarity.
8
+
9
+ **Automated Deployment**
10
+
11
+ * Introduced `.github/workflows/deploy-docs.yml` GitHub Actions workflow to automate building and deploying the documentation site to GitHub Pages on pushes to the `main` branch.
12
+ * Deployment to `https://[username].github.io/matnava/` ensures the docs are always fresh and accessible, with each update reflected in production automatically.
13
+
14
+ **Dependency and Build Isolation**
15
+
16
+ * Added `docs/package-lock.json` to lock documentation site dependencies, ensuring reproducible installs and reliable CI builds.
17
+ * Introduced `docs/.npmrc` with `ignore-workspace=true` so that docs dependencies are not impacted by workspace or monorepo settings.
18
+ * Local development and CI are made more robust as docs/builds are decoupled from global or other workspace configurations.
19
+
20
+ **Project Structure**
21
+
22
+ * The documentation site's main content lives in `docs/src/`, with `App.jsx` (content), `index.css` (styling), and `main.jsx` (entry point).
23
+ * Vite is configured (`docs/vite.config.js`) for correct production routing under GitHub Pages.
24
+ * `.gitignore` within `docs/` keeps node modules, builds, dotfiles, and IDE settings out of version control.
25
+
26
+ ---
27
+
28
+ If I may borrow a phrase: "هر که در این سرا درآید، نانش دهید و از ایمانش مپرسید." ∎
29
+
30
+ > "Whoever enters this house, give them bread and do not ask of their faith." (Inscription at the tomb of Persian poet Saadi)
@@ -0,0 +1 @@
1
+ Standalone Documentation Site with Automated GitHub Pages Deployment