@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.
- package/.nvmrc +2 -0
- package/LICENSE +190 -0
- package/README.md +88 -0
- package/dist/arguments.js +158 -0
- package/dist/arguments.js.map +1 -0
- package/dist/constants.js +82 -0
- package/dist/constants.js.map +1 -0
- package/dist/logging.js +46 -0
- package/dist/logging.js.map +1 -0
- package/dist/main.js +5 -0
- package/dist/main.js.map +1 -0
- package/dist/phases/locate.js +55 -0
- package/dist/phases/locate.js.map +1 -0
- package/dist/phases/transcribe.js +149 -0
- package/dist/phases/transcribe.js.map +1 -0
- package/dist/processor.js +35 -0
- package/dist/processor.js.map +1 -0
- package/dist/prompt/instructions/transcribe.md +46 -0
- package/dist/prompt/personas/transcriber.md +37 -0
- package/dist/prompt/transcribe.js +41 -0
- package/dist/prompt/transcribe.js.map +1 -0
- package/dist/protokoll.js +81 -0
- package/dist/protokoll.js.map +1 -0
- package/dist/util/dates.js +96 -0
- package/dist/util/dates.js.map +1 -0
- package/dist/util/general.js +39 -0
- package/dist/util/general.js.map +1 -0
- package/dist/util/media.js +103 -0
- package/dist/util/media.js.map +1 -0
- package/dist/util/openai.js +92 -0
- package/dist/util/openai.js.map +1 -0
- package/dist/util/storage.js +135 -0
- package/dist/util/storage.js.map +1 -0
- package/docs/index.html +16 -0
- package/docs/package-lock.json +1521 -0
- package/docs/package.json +21 -0
- package/docs/vite.config.js +10 -0
- package/eslint.config.mjs +82 -0
- package/nodemon.json +14 -0
- package/output/kodrdriv/250702-1905-commit-message.md +1 -0
- package/output/kodrdriv/250702-1905-commit.request.json +14 -0
- package/output/kodrdriv/250702-1905-commit.response.json +36 -0
- package/output/kodrdriv/250702-1906-commit-message.md +1 -0
- package/output/kodrdriv/250702-1907-commit-message.md +1 -0
- package/output/kodrdriv/250702-1907-commit.request.json +14 -0
- package/output/kodrdriv/250702-1907-commit.response.json +36 -0
- package/output/kodrdriv/250716-1517-review-analysis.md +39 -0
- package/output/kodrdriv/250716-1517-review-notes.md +69 -0
- package/output/kodrdriv/250716-1518-review-analysis.md +15 -0
- package/output/kodrdriv/250716-1518-review-notes.md +67 -0
- package/output/kodrdriv/250716-1523-review-analysis.md +36 -0
- package/output/kodrdriv/250716-1523-review-notes.md +87 -0
- package/output/kodrdriv/250722-1135-commit-message.md +1 -0
- package/output/kodrdriv/250722-1331-commit-message.md +1 -0
- package/output/kodrdriv/250722-1335-commit-message.md +1 -0
- package/output/kodrdriv/250722-1337-commit-message.md +1 -0
- package/output/kodrdriv/250722-1342-release-notes.md +26 -0
- package/output/kodrdriv/250722-1416-commit-message.md +3 -0
- package/output/kodrdriv/250722-1420-commit-message.md +1 -0
- package/output/kodrdriv/250722-1422-commit-message.md +1 -0
- package/output/kodrdriv/250722-1423-commit-message.md +1 -0
- package/output/kodrdriv/250722-1425-release-notes.md +41 -0
- package/output/kodrdriv/250722-1527-commit-message.md +13 -0
- package/output/kodrdriv/250722-1532-commit-message.md +1 -0
- package/output/kodrdriv/250722-1532-release-notes.md +32 -0
- package/output/kodrdriv/250722-2314-review-analysis.md +28 -0
- package/output/kodrdriv/250722-2314-review-notes.md +464 -0
- package/output/kodrdriv/250722-2315-review-analysis.md +28 -0
- package/output/kodrdriv/250722-2315-review-notes.md +477 -0
- package/output/kodrdriv/250804-1623-review-analysis.md +38 -0
- package/output/kodrdriv/250804-1623-review-notes.md +479 -0
- package/output/kodrdriv/250804-1638-review-analysis.md +56 -0
- package/output/kodrdriv/250804-1638-review-notes.md +502 -0
- package/output/kodrdriv/250812-2021-review-analysis.md +27 -0
- package/output/kodrdriv/250812-2021-review-notes.md +571 -0
- package/output/kodrdriv/250826-0700-commit-message.md +12 -0
- package/output/kodrdriv/RELEASE_NOTES.md +30 -0
- package/output/kodrdriv/RELEASE_TITLE.md +1 -0
- package/package.json +78 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/vite.config.ts +124 -0
- package/vitest.config.ts +30 -0
|
@@ -0,0 +1,502 @@
|
|
|
1
|
+
# Review Notes
|
|
2
|
+
|
|
3
|
+
I would love to be able to run Matnava with a limit so that I'm not being asked to wait for all the files to be completed, I think it's important to give the user the ability to say, "Run this but only process N number of files."
|
|
4
|
+
|
|
5
|
+
I would also like to put forward this idea of running Matnava in an interactive format. Generate the transcript, and then load up both the raw transcript and the final reviewed transcript side by side. The give the user the ability to scroll through both and identify inconsistencies and additions. In this same view I would also love to be able to give the user the ability to press an edit button that would allow them to edit the final transcript.
|
|
6
|
+
|
|
7
|
+
Last, if we did have that interactive "verification" step the other thing I would find interesting is an ability to keep track of the substitutions and changes that were made throughout the transcript. These changes could then be analyzed after-the-fact to create something that could help train future transcripts or define more context.
|
|
8
|
+
|
|
9
|
+
# Commit History Context
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
[Recent Commit History]
|
|
14
|
+
commit 2af48dccaf2d88b04eeba60a88a7cc0ac61822cb
|
|
15
|
+
Author: Simran Jafari <jafarisimran@gmail.com>
|
|
16
|
+
Date: Tue Jul 22 15:33:53 2025 -0700
|
|
17
|
+
|
|
18
|
+
0.0.4
|
|
19
|
+
|
|
20
|
+
(#3)
|
|
21
|
+
|
|
22
|
+
* Add documentation site for Matnava with automated GitHub Pages deployment
|
|
23
|
+
|
|
24
|
+
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.
|
|
25
|
+
|
|
26
|
+
Key additions and setup:
|
|
27
|
+
- `docs/README.md`: Instructions for local development, structure, and deployment workflow.
|
|
28
|
+
- `docs/src/`: Contains the main React components and styles (`App.jsx`, `index.css`, `main.jsx`).
|
|
29
|
+
- `docs/vite.config.js`: Vite configuration with `/matnava/` base for correct GH Pages routing.
|
|
30
|
+
- `docs/package.json`: Dependencies and scripts using pnpm.
|
|
31
|
+
- `.github/workflows/deploy-docs.yml`: GitHub Actions workflow to build and deploy the docs site on pushes to the `main` branch.
|
|
32
|
+
- `.gitignore`: Node, build artifacts, and local config files ignored under `docs/`.
|
|
33
|
+
|
|
34
|
+
This enables automated, seamless deployment of up-to-date documentation with every change to the `main` branch.
|
|
35
|
+
|
|
36
|
+
* Add NPM lockfile and .npmrc to docs for isolated dependency management
|
|
37
|
+
|
|
38
|
+
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.
|
|
39
|
+
|
|
40
|
+
* No changes detected — empty commit.
|
|
41
|
+
|
|
42
|
+
* 0.0.4
|
|
43
|
+
|
|
44
|
+
commit 6c8c60dbf41bd6c24de187fa217b4835fcb1dfa5
|
|
45
|
+
Author: Simran Jafari <jafarisimran@gmail.com>
|
|
46
|
+
Date: Tue Jul 22 14:27:02 2025 -0700
|
|
47
|
+
|
|
48
|
+
0.0.3
|
|
49
|
+
|
|
50
|
+
(#2)
|
|
51
|
+
|
|
52
|
+
* 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.
|
|
53
|
+
|
|
54
|
+
* 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.
|
|
55
|
+
|
|
56
|
+
* Removed mockdate from devDependencies in package.json to eliminate unused development dependency.
|
|
57
|
+
|
|
58
|
+
* 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.
|
|
59
|
+
|
|
60
|
+
* 0.0.2
|
|
61
|
+
|
|
62
|
+
* Removed local configuration and context files in favor of pnpm-workspace.yaml overrides; tightened dependency handling and updated instructional prompt
|
|
63
|
+
|
|
64
|
+
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.
|
|
65
|
+
|
|
66
|
+
* No changes detected — empty commit.
|
|
67
|
+
|
|
68
|
+
* No changes detected — empty commit.
|
|
69
|
+
|
|
70
|
+
* No changes detected — empty commit.
|
|
71
|
+
|
|
72
|
+
* Removing pnpm-workspace
|
|
73
|
+
|
|
74
|
+
* 0.0.3
|
|
75
|
+
|
|
76
|
+
commit de67713d5aa8b4e2fcdf7d3a4b5cfc0ff0e26dca
|
|
77
|
+
Author: Simran Jafari <jafarisimran@gmail.com>
|
|
78
|
+
Date: Tue Jul 22 11:16:09 2025 -0700
|
|
79
|
+
|
|
80
|
+
Initial commit
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
# Recent Diffs Context
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
[Recent Diff 1 (HEAD~1)]
|
|
88
|
+
diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml
|
|
89
|
+
new file mode 100644
|
|
90
|
+
index 0000000..a9fd775
|
|
91
|
+
--- /dev/null
|
|
92
|
+
+++ b/.github/workflows/deploy-docs.yml
|
|
93
|
+
@@ -0,0 +1,61 @@
|
|
94
|
+
+name: Deploy Documentation to GitHub Pages
|
|
95
|
+
+
|
|
96
|
+
+on:
|
|
97
|
+
+ push:
|
|
98
|
+
+ branches: [ main ]
|
|
99
|
+
+ workflow_dispatch:
|
|
100
|
+
+
|
|
101
|
+
+permissions:
|
|
102
|
+
+ contents: read
|
|
103
|
+
+ pages: write
|
|
104
|
+
+ id-token: write
|
|
105
|
+
+
|
|
106
|
+
+concurrency:
|
|
107
|
+
+ group: "pages"
|
|
108
|
+
+ cancel-in-progress: false
|
|
109
|
+
+
|
|
110
|
+
+jobs:
|
|
111
|
+
+ build:
|
|
112
|
+
+ runs-on: ubuntu-latest
|
|
113
|
+
+ steps:
|
|
114
|
+
+ - name: Checkout
|
|
115
|
+
+ uses: actions/checkout@v4
|
|
116
|
+
+
|
|
117
|
+
+ - name: Setup Node.js
|
|
118
|
+
+ uses: actions/setup-node@v4
|
|
119
|
+
+ with:
|
|
120
|
+
+ node-version: '18'
|
|
121
|
+
+
|
|
122
|
+
+ - name: Setup pnpm
|
|
123
|
+
+ uses: pnpm/action-setup@v4
|
|
124
|
+
+ with:
|
|
125
|
+
+ version: 10.13.1
|
|
126
|
+
+
|
|
127
|
+
+ - name: Install dependencies
|
|
128
|
+
+ run: |
|
|
129
|
+
+ cd docs
|
|
130
|
+
+ pnpm install
|
|
131
|
+
+
|
|
132
|
+
+ - name: Build documentation
|
|
133
|
+
+ run: |
|
|
134
|
+
+ cd docs
|
|
135
|
+
+ pnpm run build
|
|
136
|
+
+
|
|
137
|
+
+ - name: Setup Pages
|
|
138
|
+
+ uses: actions/configure-pages@v4
|
|
139
|
+
+
|
|
140
|
+
+ - name: Upload artifact
|
|
141
|
+
+ uses: actions/upload-pages-artifact@v3
|
|
142
|
+
+ with:
|
|
143
|
+
+ path: ./docs/dist
|
|
144
|
+
+
|
|
145
|
+
+ deploy:
|
|
146
|
+
+ environment:
|
|
147
|
+
+ name: github-pages
|
|
148
|
+
+ url: ${{ steps.deployment.outputs.page_url }}
|
|
149
|
+
+ runs-on: ubuntu-latest
|
|
150
|
+
+ needs: build
|
|
151
|
+
+ steps:
|
|
152
|
+
+ - name: Deploy to GitHub Pages
|
|
153
|
+
+ id: deployment
|
|
154
|
+
+ uses: actions/deploy-pages@v4
|
|
155
|
+
|
|
156
|
+
diff --git a/docs/.gitignore b/docs/.gitignore
|
|
157
|
+
new file mode 100644
|
|
158
|
+
index 0000000..3c4acb8
|
|
159
|
+
--- /dev/null
|
|
160
|
+
+++ b/docs/.gitignore
|
|
161
|
+
@@ -0,0 +1,38 @@
|
|
162
|
+
+# Dependencies
|
|
163
|
+
+node_modules/
|
|
164
|
+
+/.pnp
|
|
165
|
+
+.pnp.js
|
|
166
|
+
+
|
|
167
|
+
+# Production builds
|
|
168
|
+
+/dist
|
|
169
|
+
+/build
|
|
170
|
+
+
|
|
171
|
+
+# Environment variables
|
|
172
|
+
+.env
|
|
173
|
+
+.env.local
|
|
174
|
+
+.env.development.local
|
|
175
|
+
+.env.test.local
|
|
176
|
+
+.env.production.local
|
|
177
|
+
+
|
|
178
|
+
+# Logs
|
|
179
|
+
+npm-debug.log*
|
|
180
|
+
+yarn-debug.log*
|
|
181
|
+
+yarn-error.log*
|
|
182
|
+
+pnpm-debug.log*
|
|
183
|
+
+lerna-debug.log*
|
|
184
|
+
+
|
|
185
|
+
+# Runtime data
|
|
186
|
+
+pids
|
|
187
|
+
+*.pid
|
|
188
|
+
+*.seed
|
|
189
|
+
+*.pid.lock
|
|
190
|
+
+
|
|
191
|
+
+# IDE files
|
|
192
|
+
+.vscode/
|
|
193
|
+
+.idea/
|
|
194
|
+
+*.swp
|
|
195
|
+
+*.swo
|
|
196
|
+
+
|
|
197
|
+
+# OS files
|
|
198
|
+
+.DS_Store
|
|
199
|
+
+Thumbs.db
|
|
200
|
+
|
|
201
|
+
diff --git a/docs/.npmrc b/docs/.npmrc
|
|
202
|
+
new file mode 100644
|
|
203
|
+
index 0000000..de14fd9
|
|
204
|
+
--- /dev/null
|
|
205
|
+
+++ b/docs/.npmrc
|
|
206
|
+
@@ -0,0 +1 @@
|
|
207
|
+
+ignore-workspace=true
|
|
208
|
+
diff --git a/docs/README.md b/docs/README.md
|
|
209
|
+
new file mode 100644
|
|
210
|
+
index 0000000..fe32a9d
|
|
211
|
+
--- /dev/null
|
|
212
|
+
+++ b/docs/README.md
|
|
213
|
+
@@ -0,0 +1,50 @@
|
|
214
|
+
+# Matnava Documentation Site
|
|
215
|
+
+
|
|
216
|
+
+This is a simple React documentation site for Matnava, deployed automatically to GitHub Pages.
|
|
217
|
+
+
|
|
218
|
+
+## Local Development
|
|
219
|
+
+
|
|
220
|
+
+To work on the documentation site locally:
|
|
221
|
+
+
|
|
222
|
+
+```bash
|
|
223
|
+
+# Navigate to the docs directory
|
|
224
|
+
+cd docs
|
|
225
|
+
+
|
|
226
|
+
+# Install dependencies
|
|
227
|
+
+pnpm install
|
|
228
|
+
+
|
|
229
|
+
+# Start the development server
|
|
230
|
+
+pnpm run dev
|
|
231
|
+
+
|
|
232
|
+
+# Build for production
|
|
233
|
+
+pnpm run build
|
|
234
|
+
+
|
|
235
|
+
+# Preview the production build
|
|
236
|
+
+pnpm run preview
|
|
237
|
+
+```
|
|
238
|
+
+
|
|
239
|
+
+## Deployment
|
|
240
|
+
+
|
|
241
|
+
+The site is automatically deployed to GitHub Pages via a GitHub workflow whenever commits are pushed to the `main` branch. The workflow:
|
|
242
|
+
+
|
|
243
|
+
+1. Installs dependencies using pnpm
|
|
244
|
+
+2. Builds the React app
|
|
245
|
+
+3. Deploys to GitHub Pages
|
|
246
|
+
+
|
|
247
|
+
+The site will be available at: `https://[username].github.io/matnava/`
|
|
248
|
+
+
|
|
249
|
+
+## Structure
|
|
250
|
+
+
|
|
251
|
+
+- `src/App.jsx` - Main React component with all the documentation content
|
|
252
|
+
+- `src/index.css` - Styles with dark/light mode support
|
|
253
|
+
+- `vite.config.js` - Vite configuration with GitHub Pages base path
|
|
254
|
+
+- `package.json` - Dependencies and scripts for the React app
|
|
255
|
+
+
|
|
256
|
+
+## Customization
|
|
257
|
+
+
|
|
258
|
+
+To update the documentation:
|
|
259
|
+
+
|
|
260
|
+
+1. Edit `src/App.jsx` to modify content
|
|
261
|
+
+2. Edit `src/index.css` to modify styling
|
|
262
|
+
+3. Test locally with `pnpm run dev`
|
|
263
|
+
+4. Commit and push to trigger automatic deployment
|
|
264
|
+
|
|
265
|
+
diff --git a/docs/index.html b/docs/index.html
|
|
266
|
+
new file mode 100644
|
|
267
|
+
index 0000000..cb07c28
|
|
268
|
+
--- /dev/null
|
|
269
|
+
+++ b/docs/index.html
|
|
270
|
+
@@ -0,0 +1,16 @@
|
|
271
|
+
+<!doctype html>
|
|
272
|
+
+<html lang="en">
|
|
273
|
+
+
|
|
274
|
+
+<head>
|
|
275
|
+
+ <meta charset="UTF-8" />
|
|
276
|
+
+ <link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
|
277
|
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
278
|
+
+ <title>Matnava - Focused Audio Transcription Tool</title>
|
|
279
|
+
+</head>
|
|
280
|
+
+
|
|
281
|
+
+<body>
|
|
282
|
+
+ <div id="root"></div>
|
|
283
|
+
+ <script type="module" src="/src/main.jsx"></script>
|
|
284
|
+
+</body>
|
|
285
|
+
+
|
|
286
|
+
+</html>
|
|
287
|
+
|
|
288
|
+
diff --git a/docs/package.json b/docs/package.json
|
|
289
|
+
new file mode 100644
|
|
290
|
+
index 0000000..e338989
|
|
291
|
+
--- /dev/null
|
|
292
|
+
+++ b/docs/package.json
|
|
293
|
+
@@ -0,0 +1,21 @@
|
|
294
|
+
+{
|
|
295
|
+
+ "name": "matnava-docs",
|
|
296
|
+
+ "version": "1.0.0",
|
|
297
|
+
+ "description": "Documentation site for Matnava - a focused transcription tool",
|
|
298
|
+
+ "type": "module",
|
|
299
|
+
+ "scripts": {
|
|
300
|
+
+ "dev": "vite",
|
|
301
|
+
+ "build": "vite build",
|
|
302
|
+
+ "preview": "vite preview"
|
|
303
|
+
+ },
|
|
304
|
+
+ "dependencies": {
|
|
305
|
+
+ "react": "^18.2.0",
|
|
306
|
+
+ "react-dom": "^18.2.0"
|
|
307
|
+
+ },
|
|
308
|
+
+ "devDependencies": {
|
|
309
|
+
+ "@types/react": "^18.2.0",
|
|
310
|
+
+ "@types/react-dom": "^18.2.0",
|
|
311
|
+
+ "@vitejs/plugin-react": "^4.0.0",
|
|
312
|
+
+ "vite": "^5.0.0"
|
|
313
|
+
+ }
|
|
314
|
+
+}
|
|
315
|
+
|
|
316
|
+
... [TRUNCATED: Original diff was 16153 characters, showing first 4987] ...
|
|
317
|
+
|
|
318
|
+
[Recent Diff 2 (HEAD~2..HEAD~1)]
|
|
319
|
+
diff --git a/.cursorrules b/.cursorrules
|
|
320
|
+
deleted file mode 100644
|
|
321
|
+
index ac40cec..0000000
|
|
322
|
+
--- a/.cursorrules
|
|
323
|
+
+++ /dev/null
|
|
324
|
+
@@ -1,8 +0,0 @@
|
|
325
|
+
-When writing tests make use of @ts-ignore to simplify things. Don't spend too much effort trying to address these errors.
|
|
326
|
+
-
|
|
327
|
+
-When mocking ESM modules in Jest, we need to make use of this approach:
|
|
328
|
+
-
|
|
329
|
+
- // Mock the modules before importing
|
|
330
|
+
- jest.unstable_mockModule('../../src/logging', () => ({
|
|
331
|
+
- getLogger: jest.fn(() => mockLogger)
|
|
332
|
+
- }));
|
|
333
|
+
diff --git a/.github/workflows/pnpm-publish.yml b/.github/workflows/pnpm-publish.yml
|
|
334
|
+
index cadaebc..18e8c81 100644
|
|
335
|
+
--- a/.github/workflows/pnpm-publish.yml
|
|
336
|
+
+++ b/.github/workflows/pnpm-publish.yml
|
|
337
|
+
@@ -24,7 +24,7 @@ jobs:
|
|
338
|
+
- run: pnpm install --frozen-lockfile --strict-peer-dependencies
|
|
339
|
+
- run: pnpm run lint
|
|
340
|
+
- run: pnpm run build
|
|
341
|
+
- - run: pnpm test --coverage
|
|
342
|
+
+ - run: pnpm test
|
|
343
|
+
- uses: codecov/codecov-action@v5
|
|
344
|
+
with:
|
|
345
|
+
slug: jafarisimran/maloomscan
|
|
346
|
+
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
|
|
347
|
+
index 894747f..31e6581 100644
|
|
348
|
+
--- a/.github/workflows/test.yml
|
|
349
|
+
+++ b/.github/workflows/test.yml
|
|
350
|
+
@@ -22,7 +22,7 @@ jobs:
|
|
351
|
+
- run: pnpm install --frozen-lockfile --strict-peer-dependencies
|
|
352
|
+
- run: pnpm run lint
|
|
353
|
+
- run: pnpm run build
|
|
354
|
+
- - run: pnpm test --coverage
|
|
355
|
+
+ - run: pnpm test
|
|
356
|
+
- uses: codecov/codecov-action@v5
|
|
357
|
+
with:
|
|
358
|
+
slug: jafarisimran/maloomscan
|
|
359
|
+
diff --git a/.kodrdriv/config.yaml b/.kodrdriv/config.yaml
|
|
360
|
+
deleted file mode 100644
|
|
361
|
+
index 6e93ef3..0000000
|
|
362
|
+
--- a/.kodrdriv/config.yaml
|
|
363
|
+
+++ /dev/null
|
|
364
|
+
@@ -1,8 +0,0 @@
|
|
365
|
+
-contextDirectories:
|
|
366
|
+
- - .kodrdriv/context
|
|
367
|
+
-commit:
|
|
368
|
+
- cached: true
|
|
369
|
+
- sendit: true
|
|
370
|
+
-release:
|
|
371
|
+
- from: main
|
|
372
|
+
- to: HEAD
|
|
373
|
+
|
|
374
|
+
diff --git a/.kodrdriv/context/content.md b/.kodrdriv/context/content.md
|
|
375
|
+
deleted file mode 100644
|
|
376
|
+
index 28ae833..0000000
|
|
377
|
+
--- a/.kodrdriv/context/content.md
|
|
378
|
+
+++ /dev/null
|
|
379
|
+
@@ -1 +0,0 @@
|
|
380
|
+
-Maloomscan takes audio recordings and turned them into intellgent notes.
|
|
381
|
+
diff --git a/package.json b/package.json
|
|
382
|
+
index 3785f24..e544d4d 100644
|
|
383
|
+
--- a/package.json
|
|
384
|
+
+++ b/package.json
|
|
385
|
+
@@ -1,6 +1,6 @@
|
|
386
|
+
{
|
|
387
|
+
"name": "@jankhoj/matnava",
|
|
388
|
+
- "version": "0.0.1",
|
|
389
|
+
+ "version": "0.0.3",
|
|
390
|
+
"description": "Matnava is a focused transcription tool that helps you transcribe audio intelligently using context.",
|
|
391
|
+
"main": "dist/main.js",
|
|
392
|
+
"type": "module",
|
|
393
|
+
@@ -11,7 +11,7 @@
|
|
394
|
+
"type": "git",
|
|
395
|
+
"url": "git+https://github.com/jafarisimran/matnava.git"
|
|
396
|
+
},
|
|
397
|
+
- "packageManager": "pnpm@10.11.0",
|
|
398
|
+
+ "packageManager": "pnpm@10.13.1",
|
|
399
|
+
"scripts": {
|
|
400
|
+
"build": "pnpm run lint &&tsc --noEmit && vite build && copyfiles -u 1 \"src/**/*.md\" dist",
|
|
401
|
+
"dev": "vite",
|
|
402
|
+
@@ -31,9 +31,9 @@
|
|
403
|
+
"author": "Simran Jafari <jafarisimran@gmail.com>",
|
|
404
|
+
"license": "Apache-2.0",
|
|
405
|
+
"dependencies": {
|
|
406
|
+
- "@riotprompt/riotprompt": "link:../../StJustReckoning/riotprompt",
|
|
407
|
+
- "@theunwalked/cardigantime": "link:../../SemicolonAmbulance/cardigantime",
|
|
408
|
+
- "@theunwalked/dreadcabinet": "link:../../SemicolonAmbulance/dreadcabinet",
|
|
409
|
+
+ "@riotprompt/riotprompt": "^0.0.8",
|
|
410
|
+
+ "@theunwalked/cardigantime": "^0.0.16",
|
|
411
|
+
+ "@theunwalked/dreadcabinet": "^0.0.10",
|
|
412
|
+
"@types/fluent-ffmpeg": "^2.1.27",
|
|
413
|
+
"commander": "^14.0.0",
|
|
414
|
+
"dayjs": "^1.11.13",
|
|
415
|
+
@@ -62,6 +62,7 @@
|
|
416
|
+
"eslint": "^9.31.0",
|
|
417
|
+
"eslint-plugin-import": "^2.32.0",
|
|
418
|
+
"globals": "^16.3.0",
|
|
419
|
+
+ "mockdate": "^3.0.5",
|
|
420
|
+
"rollup-plugin-preserve-shebang": "^1.0.1",
|
|
421
|
+
"rollup-plugin-visualizer": "^6.0.3",
|
|
422
|
+
"typescript": "^5.8.3",
|
|
423
|
+
@@ -69,4 +70,4 @@
|
|
424
|
+
"vite-plugin-node": "^7.0.0",
|
|
425
|
+
"vitest": "^3.2.4"
|
|
426
|
+
}
|
|
427
|
+
-}
|
|
428
|
+
|
|
429
|
+
+}
|
|
430
|
+
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
|
|
431
|
+
deleted file mode 100644
|
|
432
|
+
index 39693c1..0000000
|
|
433
|
+
--- a/pnpm-workspace.yaml
|
|
434
|
+
+++ /dev/null
|
|
435
|
+
@@ -1,4 +0,0 @@
|
|
436
|
+
-overrides:
|
|
437
|
+
- '@riotprompt/riotprompt': link:../../StJustReckoning/riotprompt
|
|
438
|
+
- '@theunwalked/cardigantime': link:../../SemicolonAmbulance/cardigantime
|
|
439
|
+
- '@theunwalked/dreadcabinet': link:../../SemicolonAmbulance/dreadcabinet
|
|
440
|
+
diff --git a/src/arguments.ts b/src/arguments.ts
|
|
441
|
+
index 00dc70e..1e435ff 100644
|
|
442
|
+
--- a/src/arguments.ts
|
|
443
|
+
+++ b/src/arguments.ts
|
|
444
|
+
@@ -36,23 +36,50 @@ export const configure = async (dreadcabinet: Dreadcabinet.DreadCabinet, cardiga
|
|
445
|
+
program = await cardigantime.configure(program);
|
|
446
|
+
program.version(VERSION);
|
|
447
|
+
|
|
448
|
+
+ // Check if --check-config is in process.argv early
|
|
449
|
+
+ if (process.argv.includes('--check-config')) {
|
|
450
|
+
+ program.parse();
|
|
451
|
+
+ const cliArgs: Args = program.opts<Args>();
|
|
452
|
+
+
|
|
453
|
+
+ // Use CardiganTime's built-in checkConfig method
|
|
454
|
+
+ await cardigantime.checkConfig(cliArgs);
|
|
455
|
+
+
|
|
456
|
+
+ // Return minimal config for consistency, but main processing is done
|
|
457
|
+
+ const config: Config = MATNAVA_DEFAULTS as Config;
|
|
458
|
+
|
|
459
|
+
... [TRUNCATED: Original diff was 13636 characters, showing first 4951] ...
|
|
460
|
+
|
|
461
|
+
# GitHub Issues Context
|
|
462
|
+
|
|
463
|
+
Issue #13: Clarify and implement audio file movement from Inbound to Processed directories post-transcription
|
|
464
|
+
Labels: priority-medium, review, category-investigation
|
|
465
|
+
Created: 2025-08-04T23:23:49Z
|
|
466
|
+
Updated: 2025-08-04T23:23:49Z
|
|
467
|
+
Body: ## Description
|
|
468
|
+
|
|
469
|
+
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.
|
|
470
|
+
|
|
471
|
+
## Details
|
|
472
|
+
|
|
473
|
+
- **Priority...
|
|
474
|
+
---
|
|
475
|
+
|
|
476
|
+
Issue #12: Fix transcript timestamps to use user’s local time instead of UTC
|
|
477
|
+
Labels: category-functionality, review, priority-high
|
|
478
|
+
Created: 2025-08-04T23:23:45Z
|
|
479
|
+
Updated: 2025-08-04T23:23:45Z
|
|
480
|
+
Body: ## Description
|
|
481
|
+
|
|
482
|
+
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 ...
|
|
483
|
+
---
|
|
484
|
+
|
|
485
|
+
Issue #6: Implement a Unified Project Analytics Dashboard (MindShone Concept)
|
|
486
|
+
Labels: priority-medium, category-functionality, review
|
|
487
|
+
Created: 2025-07-23T06:15:43Z
|
|
488
|
+
Updated: 2025-07-23T06:15:43Z
|
|
489
|
+
Body: ## Description
|
|
490
|
+
|
|
491
|
+
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...
|
|
492
|
+
---
|
|
493
|
+
|
|
494
|
+
Issue #5: Introduce dedicated directories for transcript file lifecycle management
|
|
495
|
+
Labels: priority-medium, category-functionality, review
|
|
496
|
+
Created: 2025-07-23T06:15:05Z
|
|
497
|
+
Updated: 2025-07-23T06:15:05Z
|
|
498
|
+
Body: ## Description
|
|
499
|
+
|
|
500
|
+
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...
|
|
501
|
+
---
|
|
502
|
+
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Review Analysis Result
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
The reviewer challenges the approach of hard-coding or maintaining an explicit allow-list/deny-list of transcription models within the tool, highlighting that model availability is highly dynamic and subject to frequent change. The core motivation is to make the tool resilient to evolving model ecosystems, favoring user flexibility and maintainability over rigid constraints. This reveals potential underlying requirements: enabling broader model compatibility, avoiding brittle configuration, and possibly rethinking how model selection is surfaced or managed by the tool. The main actionable outcome is to investigate and redesign the model selection logic to remove strict enforcement and instead rely on dynamic discovery and user configuration, if necessary.
|
|
5
|
+
|
|
6
|
+
## Total Issues Found
|
|
7
|
+
1
|
|
8
|
+
|
|
9
|
+
## Issues
|
|
10
|
+
|
|
11
|
+
[
|
|
12
|
+
{
|
|
13
|
+
"title": "Redesign model selection logic to avoid hard-coded allow/deny lists for transcription models",
|
|
14
|
+
"description": "Context: The current implementation or design plan for model selection in the Matnava tool relies on specifying which transcription models are allowed or not allowed. This is problematic, as the reviewer notes, because model availability can change frequently—models may appear, disappear, or be deprecated rapidly by providers such as OpenAI or others, making any static list quickly outdated and frustrating for users.\n\nSpecific Requirements:\n- Refactor or remove any logic that hard-codes lists of allowed or disallowed models for audio transcription (for example, in configuration or validation layers).\n- Instead, implement dynamic discovery of available models using the API(s) of the relevant provider(s) at runtime, or accept any model string that the provider supports.\n- If user input is required for model choice, provide clear guidance and helpful error messages when an unsupported or unavailable model is selected, rather than pre-blocking unknown models.\n- Ensure documentation (docs/ and README.md) is updated to reflect this new approach to model selection and guide users accordingly.\n\nImplementation Details:\n- Review code in areas responsible for model selection and validation (e.g., src/arguments.ts, config schemas, any prompt logic that restricts model choice).\n- Remove explicit arrays or logic enforcing allow/deny lists.\n- If needed, integrate a function that queries the active provider's API for available models, or documents how users can discover/provider the desired model strings as part of configuration.\n- Update documentation in docs/src/App.jsx and usage instructions to explain the flexible approach, and how users can determine which model names to use.\n\nExpected Behavior:\n- Users are able to select any available model offered by the provider without being blocked by stale or incomplete allow-lists.\n- If a user specifies an invalid model, the error message should come from the provider API or offer meaningful advice, not an outdated local validation.\n- The codebase avoids assumptions about model availability, leading to better long-term maintainability.\n\nTechnical Considerations:\n- Consider edge cases where a provider's API may temporarily fail to list models, or where naming conventions change.\n- Ensure there is fallback guidance for users (e.g., logging a link to the provider's documentation on available models).\n- Watch for any dependencies (such as in configuration schemas) that might still expect a fixed set of names.\n\nDefine Success Criteria:\n- All static model lists are removed from the codebase.\n- Users can supply any model supported by the provider.\n- Documentation and error handling are updated to match this dynamic/flexible selection process.",
|
|
15
|
+
"priority": "medium",
|
|
16
|
+
"category": "functionality",
|
|
17
|
+
"suggestions": [
|
|
18
|
+
"Audit codebase for any static model allow-lists and replace with dynamic validation or API-driven approach",
|
|
19
|
+
"Update documentation to guide users in choosing or discovering supported models"
|
|
20
|
+
],
|
|
21
|
+
"relatedIssues": []
|
|
22
|
+
}
|
|
23
|
+
]
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
*Analysis completed at 2025-08-13T03:21:46.519Z*
|