bash-A v2

Operations and limitations

Health checks, local recovery steps, security posture, and known gaps.

The project is verified for local and demo use. Treat it as an internal research system unless access controls and data handling are reviewed for a public deployment.

Health checks

From the repository root:

docker ps --filter name=bash-a-postgres
curl -sS http://localhost:8000/api/documents
curl -sS http://localhost:8000/api/graph/stats

The document route checks PostgreSQL access; graph stats need Neo4j. After a Docker restart, the database container can remain stopped:

docker start bash-a-postgres

For local models, run lms ps to check whether the configured model is loaded. Embedding and generation endpoints may be configured separately.

Security posture

  • There is no user login or session system.
  • DEMO_TOKEN optionally protects ingest, delete, feedback, and analytics with X-Demo-Token.
  • Search, document listing, chat, and graph inspection are not generally protected by that optional guard.
  • CORS restricts browser origins; it does not authenticate clients.
  • .env contains credentials and should stay local.
  • Analytics responses may contain real feedback text.

Do not expose the service publicly without suitable authentication, authorization, rate limits, and review of stored data.

Known limitations

  1. Graph provenance gaps: entities without source chunk IDs cannot support citable graph answers and may be missed by chunk-scoped cleanup.
  2. Limited graph coverage: graph indexing is partial relative to the full document corpus; ordinary questions still rely mainly on vector retrieval.
  3. No OCR fallback: image-only PDFs produce no searchable text.
  4. No web search provider: the web tool returns a disabled result until a provider is implemented.
  5. Graph indexing is bounded: large documents may be partly indexed in Neo4j, and a graph-stage error does not roll back vector chunks.
  6. No general access control: the demo token covers selected endpoints, not the full API or per-user data isolation.

The live docs/pipeline-progress.md file records current counts and pending work. Treat its changing figures as a project snapshot, not permanent system guarantees.

On this page