Skip to content

[TS Calls] Record unknown-call decisions - #374

Open
CaelmBleidd wants to merge 1 commit into
mainfrom
caelmbleidd/issue-364-call-observation
Open

[TS Calls] Record unknown-call decisions#374
CaelmBleidd wants to merge 1 commit into
mainfrom
caelmbleidd/issue-364-call-observation

Conversation

@CaelmBleidd

@CaelmBleidd CaelmBleidd commented Aug 23, 2026

Copy link
Copy Markdown
Member

Summary

  • extend the existing TsInterpreterObserver with onUnknownCall(event);
  • report structured decisions for modeled, fresh-symbolic, and stopped unknown calls;
  • attach the applied model ID or residual fallback policy and reason;
  • isolate observer failures from symbolic exploration;
  • cover all outcomes and model-created forks with focused tests.

Scope boundary

This PR is local to usvm-ts. It intentionally does not add a separate observer API, persistent history to TsState, generic StepScope helpers, stopped-path frontiers, textual path constraints, or frontier capture options. The research-only path-history/frontier contract will be designed with its concrete article consumer and is tracked in #373.

Builds on #372.

Testing

  • ./gradlew :usvm-ts:test --tests org.usvm.machine.call.TsUnknownCallDispatcherTest
  • ./gradlew :usvm-ts:test --rerun-tasks :usvm-ts:detektMain :usvm-ts:detektTest
  • git diff --check origin/main..HEAD

Closes #364.
Part of #360.

@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/issue-364-call-observation branch from d80dfa9 to f348a29 Compare August 23, 2026 14:36
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.

[TS Calls] Record unknown-call decisions

1 participant