LLMCredentialResolver.resolve now returns ProviderCredential instead of a bare String, so the endpoint travels with the value from the vault all the way to the provider that needs it. Every one of the eight call sites had to change to compile - there was no way to touch only one - so all of them now pass the resolved credential straight through instead of unwrapping it first. That turned out to be the right amount of change, not more than necessary. Where an endpoint-aware provider is not actually reachable yet (the interaction simulator and the bias judge choose their descriptor after the execution already exists, and never had their authorization requirement computed up front to begin with - a separate, pre-existing gap this does not close), a missing credential fails exactly as it always did: LLMCredentialResolver still throws "Missing saved credential" when the authorizations map has no entry for the provider's key, whether the caller then unwraps .value() or keeps the whole ProviderCredential makes no difference to that failure. The only place behaviour actually changes is the success case, and only for a provider that reads the endpoint at all - every existing provider still only reads .value() through the interface's own default unwrapping, so Gemini, InternalOllama and every test stub keep behaving exactly as before. LLMCredentialResolverTest is new: this resolver was previously exercised only indirectly, through a full execution. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> |
||
|---|---|---|
| .mvn/wrapper | ||
| src | ||
| .gitattributes | ||
| .gitignore | ||
| CITATION.cff | ||
| Dockerfile | ||
| LICENSE | ||
| LICENSE-ADDENDUM | ||
| NOTICE | ||
| README.md | ||
| mvnw | ||
| mvnw.cmd | ||
| ollama-preloaded-docker | ||
| pom.xml | ||
| run_service.sh | ||
README.md
RUN LOCAL SERVICE
./run_service.sh
BUILD DOCKER IMAGE
docker buildx build –platform linux/amd64,linux/arm64 -t luciolelii/humainflow:latest . –push
HOST
License
Copyright (C) 2025-2026 Lucio Lelii — ISTI-CNR.
HumAIn Flow is released under the GNU Affero General Public License v3.0 or later (LICENSE), with an additional attribution term under section 7(b) of that license (LICENSE-ADDENDUM).
In practice this means:
you may use, study, modify and redistribute it freely;
if you run a modified version as a network service, you must offer its source to the users of that service;
any work based on it must keep the attribution below, both in the source and where the interface shows its legal notices:
Based on HumAIn Flow, originally developed by Lucio Lelii (ISTI-CNR) — https://github.com/luciolelii/humainflow-service
If you use HumAIn Flow in academic work, please cite it — see CITATION.cff.