Repository navigation
Phase 1: monorepo, KoSIT verifier, Token Factory client, CI - #1
Merged
Merged
Conversation
Workspaces apps/web, packages/core, eval. apps/web is a placeholder until phase 4. Refs: OPS-01 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Java 21 JDK HttpServer around KoSIT validator 1.6.3 with the XRechnung 3.0.2 configuration 2026-08-31, both pinned with SHA-256 in the Dockerfile. POST /v1/validate/xrechnung returns valid (acceptRecommendation only), findings with rule ID, severity, message and XPath location, the VARL report, its SHA-256 hash and the pinned versions. Every /v1 endpoint requires X-Verifier-Secret; the service refuses to start without a secret. No KoSIT daemon GUI. Refs: VER-01, VER-02, VER-03, VER-05 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
pnpm verifier:check validates all 41 CII instances of the KoSIT test suite and four mutations that must be rejected with the expected rule ID and a location. Refs: VER-01 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Single entry point for model calls. Counts tokens, prices them from pinned list prices with decimal.js and blocks calls once DAILY_BUDGET_USD is spent. Supports JSON-schema constrained decoding and disables Nemotron thinking by default. pnpm smoke:llm runs one extraction call (Super) and one repair call (Ultra). Refs: OPS-03, OPS-04 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
CI runs gitleaks, typecheck + tests, and the verifier acceptance check against a freshly built verifier image. Refs: OPS-01, OPS-02 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Token Factory serves Nemotron only as text models; extraction uses the PDF text layer for now. ZUGFeRD is anchored in phase 4 as VER-06 + CORE-05 after the kill gate. Refs: VER-04, EXT-02, CORE-05 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
gitleaks-action needs pull-requests: read to list PR commits. docker compose --wait returned before the verifier finished loading the KoSIT configuration. Refs: OPS-02, VER-01 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
apps/webplaceholder,packages/core,eval)pnpm verifier:check: 41/41 CII test suite instances valid, 4/4 mutations rejected with the expected rule IDpnpm smoke:llmruns one extraction (Nemotron Super) and one repair (Nemotron Ultra) callRequirements
OPS-01, OPS-02, OPS-03, OPS-04 (partial), VER-01, VER-02, VER-03, VER-04, VER-05
🤖 Generated with Claude Code