Skip to content

fix: debug goblin reset logic#22164

Open
iakovenkos wants to merge 1 commit intofb/goblin_flush_implfrom
si/prob-fix-goblin
Open

fix: debug goblin reset logic#22164
iakovenkos wants to merge 1 commit intofb/goblin_flush_implfrom
si/prob-fix-goblin

Conversation

@iakovenkos
Copy link
Copy Markdown
Contributor

  • transcript_builder: gate hiding op handling on is_zk so index 0 goes through the normal main loop when is_zk=false (root bug: sentinel x-coordinate was written to ECCVM Px without infinity flag, causing ECCVM/Translator accumulated_result mismatch)
  • ecc_op_queue: add get_is_zk() getter; remove (0,0) coordinate override in eq_and_reset that destroyed the infinity flag (the transcript builder already zeros coords for infinity points)
  • eccvm_flavor: pass is_zk to compute_rows
  • goblin.hpp: add set_op_queue_zk() setter
  • mock_circuits: restructure for non-ZK — only last-prepended circuit gets 4 leading no-ops (translator padding), every circuit gets eq_and_reset, end random ops gated on is_zk
  • goblin_verifier.test: set op_queue_zk(false), add BB_DISABLE_ASSERTS
  • goblin.cpp: remove debug trace checker

Please read contributing guidelines and remove this line.

For audit-related pull requests, please use the audit PR template.

- transcript_builder: gate hiding op handling on is_zk so index 0 goes
  through the normal main loop when is_zk=false (root bug: sentinel
  x-coordinate was written to ECCVM Px without infinity flag, causing
  ECCVM/Translator accumulated_result mismatch)
- ecc_op_queue: add get_is_zk() getter; remove (0,0) coordinate override
  in eq_and_reset that destroyed the infinity flag (the transcript builder
  already zeros coords for infinity points)
- eccvm_flavor: pass is_zk to compute_rows
- goblin.hpp: add set_op_queue_zk() setter
- mock_circuits: restructure for non-ZK — only last-prepended circuit gets
  4 leading no-ops (translator padding), every circuit gets eq_and_reset,
  end random ops gated on is_zk
- goblin_verifier.test: set op_queue_zk(false), add BB_DISABLE_ASSERTS
- goblin.cpp: remove debug trace checker
@iakovenkos iakovenkos self-assigned this Mar 30, 2026
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