Skip to content

Check imported contracts like ones entered by hand - #630

Open
clstaudt wants to merge 1 commit into
vat-rate-from-operating-countryfrom
validate-imported-contracts
Open

clstaudt wants to merge 1 commit into
vat-rate-from-operating-countryfrom
validate-imported-contracts

Conversation

@clstaudt

@clstaudt clstaudt commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Document import saved contracts unchecked: a document's "19" became a 1900% VAT rate, fields the document didn't state silently took model defaults, and links to entities rejected in the review were dropped.

  • Checks: commit runs the same checks as the contract form and names the contract and the problem.
  • Required fields: what a contract type needs (rate, unit and billing cycle, or the fixed price) is required in the review. A payment term the document doesn't state stays empty.
  • Links: broken links and unknown existing records are errors that name them.

馃 Generated with Claude Code

Document import saved contracts without the contract form's checks, so
a document's "19" became a 1900% VAT rate. Fields the document left
open took model defaults (a 31-day term, an hourly unit, a monthly
cycle) while the review showed them blank, and links to entities left
out of the import were dropped without a word.

The commit now runs the contract form's validators and names the
contract it refuses. An unstated payment term stays empty, and the
fields a contract's type needs are required in the review. A link to
an entity that is not imported, or to a record that is gone, is
refused by name. Without the model's 31-day default, the contract form
can also save a contract without a payment term.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@clstaudt
clstaudt added this pull request to stack #631 October 18, 2026 20:23

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant