Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: dataelement/Clawith
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: dataelement/Clawith
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 002-tool-runtime-contract
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 3 commits
  • 67 files changed
  • 1 contributor

Commits on Aug 11, 2026

  1. Keep accepted Tool calls stable across Runtime recovery

    Freeze the model-visible Workset and accepted execution binding in checkpoint state, separate Provider correlation from Runtime identity, and give repairable failures a sanitized model-visible result. Add independent 10/20 repair budgets, operation-specific deadline/cancel/lease controls, and an incremental RegisteredTool compatibility boundary.
    
    Constraint: Existing checkpoints and nullable Receipt rows must remain recoverable during mixed-version rollout
    Rejected: Re-resolve enabled assignments in Tool Step | changes an already accepted model decision
    Rejected: Reuse Provider-local call IDs as Runtime identity | IDs repeat across Assistant turns
    Confidence: high
    Scope-risk: broad
    Reversibility: clean
    Directive: Do not remove the legacy resolver until its zero-usage release and rollback-window gate is satisfied
    Tested: 834 Runtime/Tool pytest cases; 9 migration/contract cases; Alembic f061-f062 offline upgrade and downgrade; scoped Ruff; Architecture Guard; git diff check
    Not-tested: Live Provider credentials and online migration against an isolated PostgreSQL database
    Y1fe1Zh0u committed Aug 11, 2026
    Configuration menu
    Copy the full SHA
    1dbad6d View commit details
    Browse the repository at this point in the history
  2. Make the Tool Runtime PR head reachable to target CI

    Drone clones only the target repository before checking out the fork PR SHA. Publish this no-op descendant to both repositories so the synchronize build can resolve the commit without changing the reviewed tree.
    
    Constraint: Drone build 487 failed in clone before any test because the fork-only SHA was absent from dataelement/Clawith
    Rejected: Ignore the failed required check | would leave PR health ambiguous
    Confidence: high
    Scope-risk: narrow
    Reversibility: clean
    Directive: This empty commit carries no release behavior and need not be merged separately into v1.11.4
    Tested: Underlying tree is identical to 1dbad6d
    Not-tested: Drone rerun until remote status is observed
    Y1fe1Zh0u committed Aug 11, 2026
    Configuration menu
    Copy the full SHA
    6f02c32 View commit details
    Browse the repository at this point in the history
  3. Make fresh database upgrades tolerate current metadata

    Fresh installs create the enterprise_info target shape from current ORM metadata before Alembic replays f061. Inspecting the live schema keeps that replay idempotent while preserving the legacy upgrade path, and the unified-schema assertion now leaves f062-owned Tool identity columns to their dedicated migration contract.
    
    Constraint: Fresh bootstrap derives tables from current ORM metadata before replaying historical revisions
    
    Rejected: Skip the failing CI migration lane | would leave a documented v1.11.4 P0 release blocker unresolved
    
    Confidence: high
    
    Scope-risk: narrow
    
    Directive: Keep provider_call_id and contract_version owned by f062 rather than backporting them into the unified baseline revision
    
    Tested: 836 Runtime, Tool, and migration tests; scoped Ruff; py_compile
    
    Not-tested: Fresh PostgreSQL bootstrap locally because Docker is unavailable; Drone will provide that evidence
    Y1fe1Zh0u committed Aug 11, 2026
    Configuration menu
    Copy the full SHA
    2724efa View commit details
    Browse the repository at this point in the history
Loading