| Version | Supported / Unterstützt |
|---|---|
| 0.1.x | ✅ |
| < 0.1 | ❌ |
source-resolver is a role-based source resolution library for AI agent skills and local automation workflows. It is engineered with strict local boundaries and fail-closed privacy guarantees:
-
Strict Local-First Architecture & Zero Network Egress:
- The entire resolution ladder (Stage 0 to Stage 4) operates exclusively on local filesystem paths, registered local module paths, and local CLI executables.
- It initiates zero outbound HTTP/HTTPS requests, contains no telemetry, and transmits no metadata or query strings over the network.
-
User Configuration Sovereignty (Stage 0 Priority):
- Explicit user configurations stored in
~/.source-resolver/config.jsontake absolute precedence over any built-in canonical providers (Stage 1), discovery proposals (Stage 2), or external adapters (Stage 3). - Local user overrides cannot be silently superseded by discovered files or package updates.
- Explicit user configurations stored in
-
Safe Discovery Proposals (Stage 2 Non-Auto-Confirmation):
- Stage 2 discovery proposals return candidate locations as unconfirmed suggestions (
status="proposed",is_proposal=True). - Discovery proposals never mutate persistent user configuration or execute unknown external code automatically without explicit confirmation (
source-resolver confirmor programmatic confirmation).
- Stage 2 discovery proposals return candidate locations as unconfirmed suggestions (
-
Fail-Closed Pointer & Adapter Resolution:
- Missing pointer targets, dangling paths, or unavailable adapter CLIs result in deterministic, fail-closed diagnostic outcomes (
status="error",reason="pointer_drift"orreason="adapter_error"). - Broken configurations never fall through silently to insecure defaults.
- Missing pointer targets, dangling paths, or unavailable adapter CLIs result in deterministic, fail-closed diagnostic outcomes (
-
Credential & Secret Protection:
source-resolverresolves storage pointers and module paths; it never requires or persists plaintext API keys, passwords, or tokens.- Fixtures and test suites run entirely against isolated temporary directory trees (
tmp_path).
If you identify a potential security issue or vulnerability in source-resolver, please report it privately:
- GitHub Security Advisory (Preferred): Open a private security advisory at ellmos-ai/source-resolver Security Advisories.
- Email Contacts: Send detailed technical findings to
security@open-bricks.organdsecurity@ellmos.ai(CC:lukas@open-bricks.org,support@lukasgeiger.com).
Service Level Agreement (SLA):
- Acknowledgment: Within 48 hours.
- Triage & Risk Assessment: Within 5 business days.
- Remediation & Fix Release: Handled with priority according to verified testing.
Please do not disclose security issues through public GitHub issues or public pull requests.
source-resolver dient der rollenbasierten Quellenauflösung für KI-Agenten-Skills und Automations-Workflows. Die Bibliothek unterliegt strikten Schutz- und Isolationsgarantien:
-
Striktes Local-First-Prinzip und Zero-Network-Egress:
- Die gesamte Stufenleiter (Stufe 0 bis Stufe 4) arbeitet ausschließlich auf dem lokalen Dateisystem, lokalen Modulpfaden und lokalen CLI-Binaries.
- Das System führt keine ausgehenden Netzwerkverbindungen (HTTP/HTTPS) durch, sendet keine Telemetriedaten und überträgt keinerlei Rollen- oder Pfadabfragen ins Internet.
-
Souveränität der Nutzerkonfiguration (Vorrang von Stufe 0):
- Explizite Nutzereinträge in
~/.source-resolver/config.jsonbesitzen stets Vorrang vor kanonischen Modul-Providern (Stufe 1), heuristischen Suchergebnissen (Stufe 2) oder Adaptern (Stufe 3). - Nutzereinstellungen können nicht durch automatisierte Dateifunde oder Paketaktualisierungen stillschweigend überschrieben werden.
- Explizite Nutzereinträge in
-
Sichere Discovery-Vorschläge (Keine Auto-Bestätigung auf Stufe 2):
- Gefundene Kandidaten auf Stufe 2 werden als unverbindliche Vorschläge ausgewiesen (
status="proposed"). - Heuristische Funde verändern niemals selbsttätig die persistente Konfiguration und führen keine ungeprüften Skripte aus, solange keine explizite Bestätigung vorliegt.
- Gefundene Kandidaten auf Stufe 2 werden als unverbindliche Vorschläge ausgewiesen (
-
Fail-Closed-Auflösung von Pointern und Adaptern:
- Nicht auffindbare Zeigerziele (Pointer-Drift) oder fehlende CLI-Adapter führen zu eindeutigen Fehlerbefunden (
pointer_drift,adapter_error), statt unbemerkt auf unsichere Standardpfade zurückzufallen.
- Nicht auffindbare Zeigerziele (Pointer-Drift) oder fehlende CLI-Adapter führen zu eindeutigen Fehlerbefunden (
-
Schutz von Geheimnissen und Schlüsseln:
- Es werden keine Passwörter, API-Schlüssel oder Tokens im Quellcode oder in den Konfigurationsdateien gespeichert.
- Tests laufen vollständig isoliert auf temporären Dateisystempfaden.
Sollten Sie eine Sicherheitslücke oder Unregelmäßigkeit in source-resolver feststellen, melden Sie diese bitte vertraulich:
- GitHub Security Advisory (Bevorzugt): Erstellen Sie ein vertrauliches Security Advisory unter ellmos-ai/source-resolver Security Advisories.
- E-Mail-Kontakt: Senden Sie den Befund an
security@open-bricks.orgundsecurity@ellmos.ai(CC:lukas@open-bricks.org,support@lukasgeiger.com).
Service Level Agreement (SLA):
- Erstreaktion / Empfangsbestätigung: Innerhalb von 48 Stunden.
- Triage & Risikobewertung: Innerhalb von 5 Werktagen.
- Bereitstellung eines Fixes: Prioritäre Behebung mit verifizierten Regressionstests.
Bitte veröffentlichen Sie Sicherheitsmeldungen keinesfalls in öffentlichen Issues oder Pull Requests.