- Python 100%
Transkript-analyse av den stoppede live-kjøringen (10 kall, 162 250 tokens, $0.331506): konfig-lekkasjen (setting_sources=None laster ALLE filsystem- settings) injiserte operatørens Claude-konfig i hvert kall — ~10-15k uncachede tokens, en påtvunget bekreftelses-preamble som gjorde ren-JSON-svar umulige, og en checker kapret av lekkede instrukser (debatt konvergerte aldri). - persist_stop_artifacts: stopp-event verbatim + usage/kost persisteres ALLTID ved BudgetExceeded (delt usage-shape med fullført-run-stien) - build_call_options: setting_sources=[] (SDK isolation mode, verifisert mot installert 0.2.110-kilde), system_prompt=None → tom system-prompt; detach- bevis via monkeypatchet query - _generation_prompt: krever ONLY the raw JSON object (fence-innpakning ga 4 fullpris parse-retries) 187/187 uten nøkkel · ruff + mypy --strict rene · tre detach-bevis RØDE → grønn Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QdSfQdND84oeq2mbjueLTS |
||
|---|---|---|
| shared | ||
| src/portfolio_optimiser_claude | ||
| tests | ||
| .gitignore | ||
| CHANGELOG.md | ||
| CLAUDE.md | ||
| pyproject.toml | ||
| README.md | ||
| uv.lock | ||
portfolio-optimiser-claude
Sibling implementation of the portfolio-optimiser method on the Claude Agent SDK (decision D7). An open, generic Python framework that finds cost savings inside each project in a portfolio of independent projects: agents generate candidate measures, a mandatory deterministic validator gates the numbers, domain experts judge via HITL, and the system learns from the verdicts.
The method itself is framework-neutral and lives in
portfolio-optimiser-commons
(consumed here as a git subtree under shared/): the method spec, the OKF bundle
navigation contract, the golden/conformance suite (the only oracle for the validator),
and the shared expert-reviewer persona skill. This repo implements that spec on the
Claude Agent SDK — it does not reverse-engineer the MAF sibling.
Disclaimer: this is a purely technical framework. The deployer owns DPIA, risk assessment, and the legal basis for any processing. The framework ships only the technical preconditions (local-only operation, provenance, no silent egress).
Status
Scaffold (S5): repo, contracts, and shared core in place — no agent runs yet.
Development
uv sync # install dependencies
uv run pytest # test suite (runs without any API key)
uv run ruff check . && uv run ruff format --check .
uv run mypy src