8000 feat(ontology): connect NVIDIA Auto-Ontology through a private REST adapter by adeelahmad · Pull Request #720 · adeelahmad/lense · GitHub
[go: up one dir, main page]

Skip to content

feat(ontology): connect NVIDIA Auto-Ontology through a private REST adapter - #720

Draft
adeelahmad wants to merge 4 commits into
mainfrom
feat/nvidia-auto-ontology
Draft

adeelahmad wants to merge 4 commits into
mainfrom
feat/nvidia-auto-ontology

Conversation

@adeelahmad
@adeelahmad adeelahmad commented Nov 5, 2026 •
Copy link
Copy Markdown
Owner

Description

Adds an optional NVIDIA Auto-Ontology integration through its authenticated public REST gateway, surfaced through Lens's existing MCP extension controls.

  • Ready-made setup with a gateway URL and sealed API token; private by default, with explicit sharing warnings.
  • Five tools: readiness, term search/detail, question coverage, and SQL-backed answers with bounded rows and source provenance.
  • No new required dependency or service; no replacement of Lens's SurrealDB graph.
  • Fixed read routes, no redirects, bounded JSON/SSE reads, sanitized failures, and no automatic retries.
  • Stateless questions force prediction: false and omit conversation_id, preventing predictive table uploads and shared upstream history.
  • Existing extension ACLs, tool switches, third-party-content approval gates and activity ledger are reused. Remote model calls are marked unpriced.

Auto-Ontology's native MCP server requires OAuth. This is an actual REST adapter to a separately deployed Auto-Ontology, not a static MCP preset that would fail authentication or a reimplementation of its ontology engine.

Related bug fixes

The requested failed-check cleanup also fixes a real syslog-over-TLS shutdown bug: sending TLS close_notify before TCP close prevents log loss when the receiver writes session tickets. Strict TLS 1.2/1.3 regression tests and shutdown-failure cleanup tests were added, without weakening the existing API test. A 20-connection local reproduction improved from 0/20 deliveries to 20/20. The Clicks workflow now defaults to Ubuntu 24.04, supported by its pinned Playwright bundle, while preserving CI_RUNNER overrides and both browser surveys. The old two-preset assertion is corrected.

Validation

  • Passed: 13 stdlib unittest transport/contract tests, including a real local HTTP redirect test; Python compilation/AST checks.
  • Added API tests for private access, token sealing/masking, setup Test and masked Test, execution, ledger records, round-trip and adapter binding.
  • Added a UI setup test; updated the existing MCP preset test for the additional preset.
  • Not run locally: full pytest, Ruff, mypy, Jest, build, strict MkDocs. No connected coding environment was available. Dependencies could not be installed in the fallback workspace (No matching distribution found for pytest); Ruff is also absent.
  • ci/local-ci.sh --jobs backend could not start because the connector-materialized workspace has no Git checkout.
  • No live Auto-Ontology deployment or paid model was used. The documented deployment smoke test remains necessary.
  • Independent review corrected the upstream terms response envelope and the setup Test dispatch before publication.

Focused local command:
PYTHONPATH=fastapi_backend python -m unittest discover -s fastapi_backend/tests/domain -p test_auto_ontology.py -v

Types of changes

  • New feature (non-breaking; existing defaults unchanged)

Done questions

  1. Goal: Implementation PR delivered. Intentionally left draft and unmerged; CI/full validation pending.
  2. Agents: Yes, existing assistant tools, extension API and MCP setup tools.
  3. Zero setup: No new default prerequisite. This optional connection needs an existing Auto-Ontology deployment and its API token.
  4. Fewest clicks: Existing ready-made setup, Test and Enter-to-save flow.
  5. Configurable: Yes, URL/token, sharing, enabled state and per-tool switches in the existing web UI.
  6. Light: Yes, stdlib only; no default service or dependency.
  7. Private and secure: Private by default, sealed token, explicit delegated-access warning, updated threat model. External data/model processing remains the configured deployment's responsibility.
  8. Cost: Cheap reads do not call models. Remote model calls are logged as unpriced; Lens cannot reliably cap an unknown remote bill.
  9. User decides: Nothing enabled automatically, existing approval controls retained.
  10. Upgrades: No database schema change or migration; existing MCP configurations keep their credential context.
  11. Honest: Documents external deployment, source provenance and limitations; no native SurrealDB ontology claim.
  12. Tested/documented: Focused tests pass; integration/UI tests added, docs and changelog fragment updated; full CI remains pending. No typed API schema change.
  13. Open: Existing MCP extension interface and upstream public API; no new license/dependency burden.
  14. Reported: PR and verification limits will be shared with the requester. Refine later: per-user OAuth, live deployment compatibility checks and remote usage accounting.
  15. Reuse: Existing extensions, encryption, ACL, UI, tool gates and ledger.

No merge or deployment is requested by this PR.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

0