Commit History

8 days ago

  1. feat: 10 free upgrades β€” streaming upload, cache invalidation, hybrid search, ONNX reranker, SQLAlchemy pool tuning, batch embed cache, semantic chunking, Prometheus histograms, DLQ auto-retry, structured logging+OTel

    AkshayM
    3e047b8

  1. Add max_tokens parameter to NexAGI endpoint

    AkshayM
    f89f0c8
  2. Add privacy column to Document model + migration 005

    AkshayM
    262e6d5
  3. Remove PII from research mode and response handlers

    AkshayM
    390b099
  4. Tune Presidio: strict mode masks names+orgs for NDA, light mode skips them for research

    AkshayM
    073907c
  5. Add privacy flag to upload β€” PII runs only when privacy=True (NDA mode)

    AkshayM
    82a91b9
  6. Fix tuple unpacking error in gather result for PDF parsing

    AkshayM
    d3f3dec
  7. Skip MarkItDown for PDFs β€” run only as fallback if pypdf returns empty

    AkshayM
    e2a2578
  8. Swap pdfplumber β†’ pypdf for upload parsing (3x faster text extraction)

    AkshayM
    a965d17

  1. Fix NexAGI: reasoning_details is already a list of dicts

    AkshayM
    6102a51
  2. Fix NexAGI: reasoning_details list model_dump, add reasoning_details to message schema

    AkshayM
    9cb8ece
  3. Add /NexAGI endpoint β€” OpenRouter reasoning via nex-agi/nex-n2-pro:free

    AkshayM
    464d909

  1. feat: provider-based LLM profiles + per-request model switching⁠

    AkshayM
    9a38dd4
  2. fix: remove stale page_texts_pdf references from PII block

    AkshayM
    e8e7520
  3. fix: use pdfplumber text for chunking to ensure accurate page numbers for citations

    AkshayM
    247a9a5
  4. fix: keep MarkItDown for chunking, pass pdfplumber page texts separately so page numbers align for bbox extraction

    AkshayM
    e01df47
  5. fix: use pdfplumber text for chunking so page numbers align with page ranges (fixes bbox extraction)

    AkshayM
    4f4595a
  6. fix: actually anonymize PII in document text before indexing + sanitize all LLM outputs

    AkshayM
    548bb13

  1. fix: populate username from GitHub login on OAuth signup, return email/username in OAuth login response

    AkshayM
    4753a4e
  2. feat: add username field to User model, schemas, and API

    AkshayM
    c58901b
  3. perf: move PII detection from upload HTTP handler to job worker (runs concurrent with parsing)

    AkshayM
    6e20180

  1. feat: harden prompt injection guardrails with 11 detection layers + fix missing guardrails on /analyze

    AkshayM
    4eb6f45

  1. fix: add PII scan result log to upload endpoint

    AkshayM
    df2fe46
  2. perf: revert to all-MiniLM-L6-v2, query embed cache, fire-and-forget Cloudinary, pre-warm reranker, reduce top-k

    AkshayM
    1476572

  1. fix: import parse_document outside .pdf scope; coerce datetime→str in all response schemas

    AkshayM
    51bad61
  2. production hardening: circuit breakers, graceful degradation, health checks, parallel uploads, HF Spaces deploy config

    AkshayM
    fc2fe9f

  1. fix: remove local file fallback, use Cloudinary only, add POST /documents/backfill endpoint for old docs

    AkshayM
    1fd184a
  2. fix: add file_url to every citation so the frontend PDF viewer gets the URL directly without extra API call

    AkshayM
    7226ce1
  3. fix: cloudinary_url now falls back to local file_url so frontend PDF viewer always gets a working link

    AkshayM
    7edd24f
  4. fix: add file_url to DocumentResponse, pass request to _doc_response, handle old-path files in serve_file

    AkshayM
    aae70f2
  5. fix: Cloudinary upload resource_type=auto for PDF preview instead of raw download

    AkshayM
    a7baf2b
  6. fix: Cloudinary upload_bytes->upload method name bug, add GET /files/{doc_id} endpoint for PDF serving fallback

    AkshayM
    3953df3
  7. fix: enable NeMo Guardrails with correct parameters.api_key/parameters.base_url, add PII detection to guardrails flow, set PII_ENABLED=true

    AkshayM
    6ca471b
  8. fix: handle LLM connection errors gracefully (SSL/connect errors β†’ 502); convert Analyze 500 β†’ 502 with clear message

    AkshayM
    5d8e007
  9. fix: auto-fallback to Qdrant :memory: when remote unavailable

    AkshayM
    2636655
  10. fix: load .env at module level in main.py (removes run.py dependency); auto-start worker + register processor on startup⁠

    AkshayM
    84839f7
  11. fix: upload pipeline completely dead - worker never started, processor never registered⁠

    AkshayM
    2942460
  12. fix: 15 critical/high bugs across codebase⁠

    AkshayM
    da3be01
  13. fix upload pipeline: await add_document, pre-load model eagerly, add verbose UPLOAD/VectorStore logging; remove unused deployment configs

    AkshayM
    90c440b

  1. fix models.py: match Neon schema varchar sizes, add email unique constraint

    AkshayM
    167c070