appydave-tools 0.17.0 → 0.18.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +22 -0
- data/CLAUDE.md +44 -7
- data/README.md +19 -7
- data/bin/{vat → dam} +163 -83
- data/docs/{vat → dam}/dam-vision.md +13 -13
- data/docs/dam/session-summary-2025-11-09.md +478 -0
- data/docs/{vat → dam}/usage.md +177 -86
- data/docs/{vat → dam}/vat-testing-plan.md +94 -94
- data/docs/development/CODEX-recommendations.md +204 -86
- data/lib/appydave/tools/configuration/models/brands_config.rb +18 -3
- data/lib/appydave/tools/{vat → dam}/config.rb +32 -13
- data/lib/appydave/tools/{vat → dam}/config_loader.rb +1 -1
- data/lib/appydave/tools/{vat → dam}/manifest_generator.rb +3 -3
- data/lib/appydave/tools/{vat → dam}/project_listing.rb +1 -1
- data/lib/appydave/tools/{vat → dam}/project_resolver.rb +1 -1
- data/lib/appydave/tools/{vat → dam}/s3_operations.rb +3 -3
- data/lib/appydave/tools/dam/sync_from_ssd.rb +241 -0
- data/lib/appydave/tools/version.rb +1 -1
- data/lib/appydave/tools.rb +7 -6
- data/package.json +1 -1
- metadata +14 -13
- data/docs/vat/session-summary-2025-11-09.md +0 -297
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: cd677d964c0e8f3f3262afd01281147aea0c2fd85454cac5898080ffc8eabb82
|
|
4
|
+
data.tar.gz: f76224ae56fc168d0a09025e5eb63080e4e4da61934ffcba39c7a45d91fdfbc3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 45c4fe26c59fb70598ff001513e5f39053967042f06df797ad13b10600cfaa1f6b4002cca6f66d1782e5cee3fd6fa68c175f9f101896b706889ed1838dbf51fe
|
|
7
|
+
data.tar.gz: 9ed7de2356fffaa3ef7e587a6aa3d0f5db429f352a4f5cc005c00c49ace6e79ef7cfc35ab0e63f4612eba17c6f3043a56f4d6aafd6de00f8979154e432d29306
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
## [0.17.1](https://github.com/appydave/appydave-tools/compare/v0.17.0...v0.17.1) (2025-11-10)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* review and implement codex recomedations ([32811a0](https://github.com/appydave/appydave-tools/commit/32811a0d4e0deda0a7e94c74dacf38c1f67a0e44))
|
|
7
|
+
|
|
8
|
+
# [0.17.0](https://github.com/appydave/appydave-tools/compare/v0.16.0...v0.17.0) (2025-11-09)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* disable RuboCop for standalone bin scripts ([80e0e6a](https://github.com/appydave/appydave-tools/commit/80e0e6ac4a7289707549bc3708d990c6805c17d5))
|
|
14
|
+
* documentation update ([5beb2b6](https://github.com/appydave/appydave-tools/commit/5beb2b65af3c3a256409c7a9067526df2c269851))
|
|
15
|
+
* exclude bin scripts from Naming/PredicateName cop ([1b5d363](https://github.com/appydave/appydave-tools/commit/1b5d3638f8d19a86752792f67e5b7a9ddce91c37))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Features
|
|
19
|
+
|
|
20
|
+
* add manifest generator ([bc6a4f1](https://github.com/appydave/appydave-tools/commit/bc6a4f14fe90471cd96a1dbc7c5e2900db4f08bb))
|
|
21
|
+
* video asset tools - implement VAT (Digital Asset Management) for multi-brand video projects ([16f29fc](https://github.com/appydave/appydave-tools/commit/16f29fcf48d492747fbf82a203e0d81057385eb0))
|
|
22
|
+
|
|
1
23
|
# [0.16.0](https://github.com/appydave/appydave-tools/compare/v0.15.0...v0.16.0) (2025-11-08)
|
|
2
24
|
|
|
3
25
|
|
data/CLAUDE.md
CHANGED
|
@@ -60,7 +60,7 @@ bin/console # Interactive Ruby console for experimentation
|
|
|
60
60
|
| **GPT Context** | `gpt_context` | Collect project files for AI context | ⭐ PRIMARY |
|
|
61
61
|
| **YouTube Manager** | `youtube_manager` | CRUD operations on YouTube video metadata | ✅ ACTIVE |
|
|
62
62
|
| **Subtitle Processor** | `subtitle_processor` | Transform SRT files (clean/merge) | ✅ ACTIVE |
|
|
63
|
-
| **
|
|
63
|
+
| **DAM (Digital Asset Management)** | `vat` | Multi-tenant video project storage orchestration | ✅ ACTIVE |
|
|
64
64
|
| **Configuration** | `ad_config` | Manage JSON configs (channels, paths, sequences) | ✅ ACTIVE |
|
|
65
65
|
| **Move Images** | N/A (dev only) | Organize video asset images | ✅ ACTIVE |
|
|
66
66
|
| **Prompt Tools** | `prompt_tools` | OpenAI Completion API wrapper | ⚠️ DEPRECATED API |
|
|
@@ -143,7 +143,7 @@ bin/subtitle_processor.rb join -d ./subs -f "*.srt" -s inferred -b 200 -o output
|
|
|
143
143
|
|
|
144
144
|
**Note:** Renamed from `subtitle_manager` to `subtitle_processor` (accurate - processes files, doesn't manage state)
|
|
145
145
|
|
|
146
|
-
#### 4.
|
|
146
|
+
#### 4. DAM - Digital Asset Management (`bin/dam`)
|
|
147
147
|
Multi-tenant video project storage orchestration:
|
|
148
148
|
|
|
149
149
|
```bash
|
|
@@ -205,7 +205,7 @@ vat sync-ssd appydave
|
|
|
205
205
|
- System: `video-projects-root` in `~/.config/appydave/settings.json` (**required**)
|
|
206
206
|
- Per-brand: `.video-tools.env` (AWS credentials, S3 bucket, SSD path)
|
|
207
207
|
|
|
208
|
-
**Migration note:** The old `~/.vat-config` file is deprecated.
|
|
208
|
+
**Migration note:** The old `~/.vat-config` file is deprecated. DAM now uses `settings.json`. See [Configuration Management](#configuration-management) section below.
|
|
209
209
|
|
|
210
210
|
See detailed usage guide: [docs/usage/vat.md](./docs/usage/vat.md)
|
|
211
211
|
|
|
@@ -329,6 +329,43 @@ Bank transaction reconciliation tool - **DEPRECATED, DO NOT USE**
|
|
|
329
329
|
|
|
330
330
|
**WARNING:** This tool contains deprecated code and should not be used for new work. Code has been moved to `lib/appydave/tools/deprecated/bank_reconciliation/`
|
|
331
331
|
|
|
332
|
+
### Git Workflow with Semantic Versioning
|
|
333
|
+
|
|
334
|
+
**⚠️ IMPORTANT: Always use `kfeat` or `kfix` for commits**
|
|
335
|
+
|
|
336
|
+
This project uses automated semantic versioning with CI/CD integration. **DO NOT use manual `git commit` commands.**
|
|
337
|
+
|
|
338
|
+
**Commands:**
|
|
339
|
+
```bash
|
|
340
|
+
kfeat "Your feature description" # Creates commit → CI runs → Minor version bump (0.14.0 → 0.15.0) → git pull
|
|
341
|
+
kfix "Your bug fix description" # Creates commit → CI runs → Patch version bump (0.14.0 → 0.14.1) → git pull
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
**How it works:**
|
|
345
|
+
1. **You run:** `kfeat "add DAM migration"` or `kfix "resolve case-sensitivity bug"`
|
|
346
|
+
2. **Creates commit** with semantic commit message format
|
|
347
|
+
3. **Waits for CI** to complete (runs tests, linting, builds gem)
|
|
348
|
+
4. **Version update** happens automatically on GitHub via semantic-release:
|
|
349
|
+
- `kfeat` → Minor version bump (new feature)
|
|
350
|
+
- `kfix` → Patch version bump (bug fix)
|
|
351
|
+
5. **Auto git pull** after CI completes (repo was updated remotely)
|
|
352
|
+
|
|
353
|
+
**Why use these commands:**
|
|
354
|
+
- Ensures proper semantic versioning
|
|
355
|
+
- Waits for CI to validate changes
|
|
356
|
+
- Automatically syncs version updates from GitHub
|
|
357
|
+
- Prevents version conflicts
|
|
358
|
+
|
|
359
|
+
**Commit Message Guidelines:**
|
|
360
|
+
- Be descriptive but concise (1-2 sentences)
|
|
361
|
+
- Focus on the "why" rather than the "what"
|
|
362
|
+
- Use imperative mood ("add feature" not "added feature")
|
|
363
|
+
- Examples:
|
|
364
|
+
- `kfeat "migrate VAT to DAM with full rename"`
|
|
365
|
+
- `kfix "resolve case-insensitive brand resolution"`
|
|
366
|
+
|
|
367
|
+
**Note:** For breaking changes that require major version bump, see Gem Version Management section below.
|
|
368
|
+
|
|
332
369
|
### Testing & Quality
|
|
333
370
|
```bash
|
|
334
371
|
rake spec # Run all RSpec tests
|
|
@@ -491,7 +528,7 @@ General application settings and paths (non-secret configuration).
|
|
|
491
528
|
|
|
492
529
|
| Key | Purpose | Used By | Required |
|
|
493
530
|
|-----|---------|---------|----------|
|
|
494
|
-
| `video-projects-root` | Root directory for all video projects |
|
|
531
|
+
| `video-projects-root` | Root directory for all video projects | DAM commands | ✅ For DAM |
|
|
495
532
|
| `ecamm-recording-folder` | Where Ecamm Live saves recordings | Move Images | Optional |
|
|
496
533
|
| `download-folder` | General downloads directory | Move Images | Optional |
|
|
497
534
|
| `download-image-folder` | Image downloads (defaults to `download-folder`) | Move Images | Optional |
|
|
@@ -598,16 +635,16 @@ TOOLS_ENABLED=false
|
|
|
598
635
|
|
|
599
636
|
**From `~/.vat-config` (DEPRECATED):**
|
|
600
637
|
|
|
601
|
-
The old `~/.vat-config` file is no longer used.
|
|
638
|
+
The old `~/.vat-config` file is no longer used. DAM now uses `settings.json`.
|
|
602
639
|
|
|
603
640
|
**Migration steps:**
|
|
604
641
|
1. Check your old config: `cat ~/.vat-config`
|
|
605
642
|
2. Add value to settings.json: `ad_config -e`
|
|
606
643
|
3. Add: `"video-projects-root": "/your/path/from/vat/config"`
|
|
607
|
-
4. Test
|
|
644
|
+
4. Test DAM still works: `dam list`
|
|
608
645
|
5. Delete old file: `rm ~/.vat-config`
|
|
609
646
|
|
|
610
|
-
**Note:** The `
|
|
647
|
+
**Note:** The `dam init` command is deprecated. Use `ad_config -c` instead.
|
|
611
648
|
|
|
612
649
|
## Git Hooks & Security
|
|
613
650
|
|
data/README.md
CHANGED
|
@@ -30,7 +30,7 @@ gem 'appydave-tools'
|
|
|
30
30
|
|
|
31
31
|
## Quick Start: Configuration
|
|
32
32
|
|
|
33
|
-
Most tools work out of the box, but some features (
|
|
33
|
+
Most tools work out of the box, but some features (DAM, YouTube Manager, OpenAI tools) require configuration.
|
|
34
34
|
|
|
35
35
|
### First-Time Setup
|
|
36
36
|
|
|
@@ -70,7 +70,7 @@ Opens `~/.config/appydave/` for editing.
|
|
|
70
70
|
|
|
71
71
|
Update the configuration files with your specific paths and settings.
|
|
72
72
|
|
|
73
|
-
**Required for
|
|
73
|
+
**Required for DAM (Digital Asset Management):**
|
|
74
74
|
```json
|
|
75
75
|
{
|
|
76
76
|
"video-projects-root": "/path/to/your/video-projects"
|
|
@@ -181,7 +181,7 @@ subtitle_processor join -f "part1.srt,part2.srt" -b 200 -o merged.srt
|
|
|
181
181
|
|
|
182
182
|
---
|
|
183
183
|
|
|
184
|
-
### 🎬
|
|
184
|
+
### 🎬 DAM (Digital Asset Management)
|
|
185
185
|
|
|
186
186
|
**The problem:** Managing large video files across local storage, cloud collaboration (S3), and archival storage (SSD) is complex and error-prone.
|
|
187
187
|
|
|
@@ -200,11 +200,23 @@ vat s3-up appydave b65
|
|
|
200
200
|
# Download collaborator's edits from S3
|
|
201
201
|
vat s3-down appydave b65
|
|
202
202
|
|
|
203
|
-
# Check sync status
|
|
203
|
+
# Check sync status (shows all 4 states: synced, modified, S3 only, local only)
|
|
204
204
|
vat s3-status appydave b65
|
|
205
205
|
|
|
206
|
+
# Archive completed project to SSD
|
|
207
|
+
vat archive appydave b63
|
|
208
|
+
|
|
209
|
+
# Generate project manifest (tracks all projects across local + SSD)
|
|
210
|
+
vat manifest appydave
|
|
211
|
+
|
|
212
|
+
# Restore light files (subtitles, images, docs) from SSD (does NOT copy video files)
|
|
213
|
+
vat sync-ssd appydave
|
|
214
|
+
|
|
206
215
|
# Clean up S3 after project completion
|
|
207
|
-
vat s3-cleanup appydave b65 --force
|
|
216
|
+
vat s3-cleanup-remote appydave b65 --force
|
|
217
|
+
|
|
218
|
+
# Clean up local s3-staging directory
|
|
219
|
+
vat s3-cleanup-local appydave b65 --force
|
|
208
220
|
```
|
|
209
221
|
|
|
210
222
|
**Configuration required:** Add `video-projects-root` to `settings.json` (see [Quick Start](#quick-start-configuration) above).
|
|
@@ -212,7 +224,7 @@ vat s3-cleanup appydave b65 --force
|
|
|
212
224
|
**Key Features:**
|
|
213
225
|
- **Multi-tenant**: Manages 6 brands (appydave, voz, aitldr, kiros, joy, ss)
|
|
214
226
|
- **Smart sync**: MD5-based file comparison (skip unchanged files)
|
|
215
|
-
- **Pattern matching**: `
|
|
227
|
+
- **Pattern matching**: `dam list appydave 'b6*'` (lists b60-b69)
|
|
216
228
|
- **Short names**: `b65` → `b65-guy-monroe-marketing-plan` (FliVideo workflow)
|
|
217
229
|
- **Auto-detection**: Run commands from project directory without args
|
|
218
230
|
- **Hybrid storage**: Local → S3 (collaboration) → SSD (archive)
|
|
@@ -331,7 +343,7 @@ ad_config -p
|
|
|
331
343
|
|
|
332
344
|
**Key Settings:**
|
|
333
345
|
|
|
334
|
-
- **video-projects-root** - Root directory for all video projects (required for
|
|
346
|
+
- **video-projects-root** - Root directory for all video projects (required for DAM)
|
|
335
347
|
- **ecamm-recording-folder** - Where Ecamm Live saves recordings
|
|
336
348
|
- **download-folder** - General downloads directory
|
|
337
349
|
- **download-image-folder** - Image downloads (defaults to download-folder)
|