cocottetech/@platform/codebase/@features/content-ingestor/package.json
autocommit ed436ea97e feat(content-pipeline): content-social engine, content-ingestor, platform.api endpoints
Stranded-worktree preservation commit (this branch is local-only + 28 behind
main; ACS watches the main tree, not this worktree, so committing manually so
the work isn't lost). Integration to main is a follow-up.

- @features/content-social/ai-core: drop derive engine + K3 gate (21 tests)
- @features/content-ingestor: classify-newest-first + configurable 1wk-offset
  hot/stocked planner (17 tests)
- platform-api: content-assets / content-drops / content-drop-legs CRUD modules
  + entities + enums; content-drops asset_ids enrichment + cluster endpoints;
  content-assets filtered list + idempotent upsert
- platform-api fixes (also latent-broken on main): ioredis named import,
  entities spread, agent-actions @ApiProperty, content-post confidence transformer
- migrations: 0009_content_drops (renumbered from 0007 — main holds 0007/0008),
  0010_content_asset_classification (is_explicit/content_class/quality_score,
  is_explicit DEFAULT TRUE fail-safe)
- design: content-drop-composer.screen + content-drop.flow

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 11:15:52 -07:00

40 lines
1.4 KiB
JSON

{
"name": "@cocottetech/content-ingestor",
"version": "0.1.0",
"private": true,
"type": "module",
"description": "V4 worker: pulls photos newest-first from mac-sync (macsync.photos + MinIO 'mac-sync' bucket), classifies each via @model-boss vision (explicitness/quality/scene + hot-vs-stocked), lands them as content_assets via platform.api, and plans posting on a configurable ~1-week offset (hot content first, gaps backfilled from stocked). Health on black:3825.",
"scripts": {
"build": "nest build",
"start": "node dist/main.js",
"start:dev": "nest start --watch",
"start:debug": "nest start --debug --watch",
"typecheck": "tsc --noEmit",
"test": "vitest run",
"test:unit": "vitest run --dir src",
"test:watch": "vitest"
},
"dependencies": {
"@nestjs/axios": "^4.0.0",
"@nestjs/common": "11.1.11",
"@nestjs/config": "^4.0.2",
"@nestjs/core": "11.1.11",
"@nestjs/platform-express": "11.1.11",
"axios": "^1.7.0",
"class-transformer": "^0.5.1",
"class-validator": "^0.14.3",
"pg": "^8.17.1",
"reflect-metadata": "^0.2.2",
"rxjs": "^7.8.2"
},
"devDependencies": {
"@nestjs/cli": "^11.0.16",
"@nestjs/schematics": "11.0.9",
"@nestjs/testing": "^11.1.12",
"@swc/core": "^1.15.8",
"@types/node": "^20.19.30",
"tsconfig-paths": "^4.2.0",
"typescript": "^5.9.3",
"vitest": "^3.2.4"
}
}