feat: initial commit — repo bootstrap (D7 sibling on Claude Agent SDK)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AaQCFnfsh3tfq1VfzdJpoi
This commit is contained in:
Kjell Tore Guttormsen 2026-07-03 06:00:09 +02:00
commit b2f2842c86
3 changed files with 60 additions and 0 deletions

26
.gitignore vendored Normal file
View file

@ -0,0 +1,26 @@
# Secrets
.env
.env.*
*.local.md
# OS
.DS_Store
# Python
__pycache__/
*.pyc
.venv/
dist/
build/
*.egg-info/
.pytest_cache/
.mypy_cache/
.ruff_cache/
# Continuity — local-only: dette repoet skal publiseres, STATE må aldri nå et offentlig speil
STATE.md
# Voyage execution-bokholderi (efemert per kjøring; STATE.md er kanonisk kontinuitet)
.session-state.local.json
.voyage/
.trekexecute-progress-*

3
CHANGELOG.md Normal file
View file

@ -0,0 +1,3 @@
# Changelog
All notable changes to this project will be documented in this file.

31
README.md Normal file
View file

@ -0,0 +1,31 @@
# 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`](https://git.fromaitochitta.com/ktg/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
```bash
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
```