Commit Graph

20 Commits

Author SHA1 Message Date
d4dd7be4ef . 2026-09-11 13:58:06 +03:00
dfbc646c51 . 2026-09-11 13:28:50 +03:00
b3869f7320 Include help_codes.py in the Docker image so Coolify can boot after the numbering change.
Fixes Traefik 503 / no available server when uvicorn imports help_codes at startup.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 13:36:33 +03:00
3a30959ae5 Give each help file unique sequential extraction codes, show the count, and allow wiping all extractions for a file while testing.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 13:26:21 +03:00
170c551d6e Move help-file rescan off Home into a dedicated Сканиране tab with separate file and folder pickers.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 12:34:26 +03:00
f060cf700d Fix PDF extracts: split TOC list items and merge drop-cap letters.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 14:57:24 +03:00
1db58adafd Fix extracts: preserve list and line structure instead of collapsing whitespace.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 14:17:06 +03:00
d323bee712 Rename healthz label to Статус на услугата; document live URL.
API tab and OpenAPI summary now say status instead of health; docs point to rip.inex-project.net.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-27 10:54:51 +03:00
2e356653d7 Add API tab with ERP-oriented docs and live request tester.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-27 09:39:47 +03:00
026fc4bc00 Restyle tabs: plain labels and light-blue tab bar.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-27 09:33:15 +03:00
169039c4b4 Fix search: stem matching and skip query words absent from corpus.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 13:20:23 +03:00
877a3f55db Polish search labels CSS and drop non-HTML generate paths.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 12:57:36 +03:00
4d66e44fd3 Search: stop-words, full extraction modal, HTML-only generator.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 12:55:36 +03:00
1c7874a31e Fix viewer: safe JSON embed so search cards render again.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 10:51:37 +03:00
a31c8d678c Restore search UI: keyword cloud, mode filters, labeled extractions.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 10:44:25 +03:00
7f86c4e7c2 Fix Docker build: stop ignoring help_processor.py in .dockerignore.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 09:41:55 +03:00
46a2f2272b Add server-side /api/rescan upload pipeline and Home UI.
Accept ZIP/single help files, process with help_processor into OUTPUT_DIR+Postgres, pollable jobs, optional RESCAN_TOKEN.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 09:20:45 +03:00
a81d5794d4 Align Coolify webapp with WinSCP share and remote output paths.
Resolve section text from OUTPUT_DIR by basename, add /api/search and richer /healthz, default mount to /mnt/.../Output, support --remote-root in processor.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 19:47:09 +03:00
9613420d1d Migrate to PostgreSQL + add FastAPI webapp for Coolify deploy
Backend migration:
- Replace pyodbc/SQL Server with psycopg2/PostgreSQL throughout
- Rewrite Database class with portable SQL: SERIAL, ON CONFLICT, NOW()
- Lowercase table names (rip_help_files, rip_help_sections) - Postgres convention
- libpq connection string format in HELP_DB_CONN

Webapp (webapp/):
- FastAPI app: GET /, GET /images/<f>, GET /home-image, GET /api/sections,
  POST /api/keywords/<code>, GET /healthz
- Jinja2 template extracted from generate_html.py with HTTP image URLs
- Direct keyword save to DB (no JSON download detour)
- Same prefix scoping as CLI tools (?prefix=RIP)

Deployment:
- Dockerfile (python:3.12-slim + uvicorn)
- docker-compose.yml for local dev
- requirements-webapp.txt (minimal, no Windows-only deps)
- .dockerignore excludes pipeline scripts and BAT files
- README updated with webapp section and Coolify deploy guide

Also: switch AI model to claude-haiku-4-5 (~3x cheaper, same quality for this task)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 17:00:44 +03:00
711053b8bd Initial commit: working RIP/INEX_TM help processing pipeline
- help_processor.py: parses .docx/.html/.pdf/.doc/.txt, extracts images,
  classifies sections via Claude API, writes to SQL Server
- generate_html.py: builds interactive HTML viewer (Home/Editor/Search/Generator)
- save_keywords.py: applies keyword edits back to DB
- Prefix-scoped DB schema (RIP_help_files, RIP_help_sections) so multiple
  projects share the same database without collision
- BAT launchers per project (RIP_load.bat, INEX_TM_load.bat, ...) load
  credentials from gitignored .env via _load_env.bat
- Rich HTML preservation for .html sources (html_text column)
- Image extraction for all formats with MS Word / LibreOffice fallback for .doc

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 11:52:11 +03:00