Skip to content

Add stochastic uncertainty surface, robustness fixes, and broader pyfrbus validation gates - #5

Merged
vahid-ahmadi merged 1 commit into
mainfrom
feat/uncertainty-and-validation-gates
Jul 23, 2026
Merged

Add stochastic uncertainty surface, robustness fixes, and broader pyfrbus validation gates#5
vahid-ahmadi merged 1 commit into
mainfrom
feat/uncertainty-and-validation-gates

Conversation

@vahid-ahmadi

Copy link
Copy Markdown
Contributor
  • New frbus.uncertainty.stochsim_bands(): seeded residual-bootstrap
    percentile bands (68/90 default, configurable) around any shock
    scenario, with honest replication failure accounting (n_failed,
    failure_rate; raises only when all replications fail).
  • Robustness: stochsim narrows bare Exception to FrbusError so
    programming errors propagate; _preconditioner guards all-zero
    Jacobian rows with a named ComputationError; used_exos matches
    whole identifiers instead of substrings (verified identical exo
    set, 81=81, on the real model).
  • Validation gates extended from one to four pyfrbus like-for-like
    scenarios (monetary, fiscal egfe, tax trp, non-inertial Taylor)
    with committed vendor-generated fixtures agreeing to <=2.1e-8;
    scenario definitions shared verbatim between generator and gates;
    CI vendor-reference job matrixed over all four.
  • docs/mce-feasibility.md: concrete plan for model-consistent
    expectations (stacked-system solve), est. 2-4 days, no rewrite.

Co-Authored-By: Claude Fable 5 noreply@anthropic.com

… gates

- New frbus.uncertainty.stochsim_bands(): seeded residual-bootstrap
  percentile bands (68/90 default, configurable) around any shock
  scenario, with honest replication failure accounting (n_failed,
  failure_rate; raises only when all replications fail).
- Robustness: stochsim narrows bare Exception to FrbusError so
  programming errors propagate; _preconditioner guards all-zero
  Jacobian rows with a named ComputationError; used_exos matches
  whole identifiers instead of substrings (verified identical exo
  set, 81=81, on the real model).
- Validation gates extended from one to four pyfrbus like-for-like
  scenarios (monetary, fiscal egfe, tax trp, non-inertial Taylor)
  with committed vendor-generated fixtures agreeing to <=2.1e-8;
  scenario definitions shared verbatim between generator and gates;
  CI vendor-reference job matrixed over all four.
- docs/mce-feasibility.md: concrete plan for model-consistent
  expectations (stacked-system solve), est. 2-4 days, no rewrite.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vahid-ahmadi
vahid-ahmadi merged commit 996b4ab into main Jul 23, 2026
8 checks passed
@vahid-ahmadi
vahid-ahmadi deleted the feat/uncertainty-and-validation-gates branch July 23, 2026 11:25
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