development_bugsquash #36

Closed
thabeta wants to merge 21 commits from development_bugsquash into development
Owner

addresses some of the concerns raised by opus feedback, this is by no means exhaustive nor 100% tested

addresses some of the concerns raised by opus feedback, this is by no means exhaustive nor 100% tested
Address CRIT-02 by avoiding shared Vector prefixes in line and approval indexes.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Address CRIT-03 by adding callbacks for refund and fee transfer failures.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Address CRIT-04 by requiring the committed node's farm owner to settle SLA periods.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Address CRIT-05 by implementing custom Debug redaction and skipping private key serialization.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Address CRIT-07/HIGH-07 by removing Any-origin CORS and defaulting listener to 127.0.0.1.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Address CRIT-08 by using ConnectInfo<SocketAddr> and keying the limiter by source IP.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Address CRIT-12 by replacing unsafe set_var with a scoped in-process network override.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Address CRIT-10 by blocking arbitrary environment variable reads from Rhai scripts.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Address CRIT-01 by gating run_command and run_command_output behind HEROLEDGER_RHAI_ALLOW_SYSTEM=1.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Address CRIT-11 by gating expand_path/file_exists/dir_exists/which behind HEROLEDGER_RHAI_ALLOW_SYSTEM=1.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add zeroize dep and wrap private-key bytes/hex in Zeroizing<T> across vault.rs and mnemonic.rs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Replace the panic-prone &key[..40] slice with a redacted placeholder.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reject validator_key.json if mode bits allow group/other read (> 0600).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Prevents callback panics on corrupted amount strings, preserving balance rollback.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add allowed_callers set; only owner or registered relayer accounts can call fund_account.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Engine limits: 1M ops, depth 64, 1MiB strings, 100k arrays/maps
- block_height/hash/by_height/by_hash now return Result instead of panicking
- wait_seconds/wait_ms ignore negative values

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Custom Debug impl, #[serde(skip_serializing)] on private_key field.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Names must be alphanumeric, hyphen or underscore only.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Write .heroledger sentinel on init; refuse to wipe if absent.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
fix(js-client): remove secret key/seed logging and replace innerHTML with textContent (HIGH-16, HIGH-17)
Some checks failed
Bootstrap Test / bootstrap (push) Failing after 6s
Test / build-and-test (push) Successful in 5m7s
Bootstrap Test / bootstrap (pull_request) Failing after 9s
Test / build-and-test (pull_request) Successful in 5m53s
c3cf09e522
- mnemonic-account.ts: redact seed phrase and secret key from console output
- web-demo/main.ts: replace innerHTML with textContent to prevent XSS

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
thabeta requested reviews from lee, scott 2026-02-26 14:12:12 +00:00
Member

I'm implementing fixes independently. See: #35 (comment)

I'm implementing fixes independently. See: https://forge.ourworld.tf/lhumina_code/hero_ledger/pulls/35#issuecomment-9622
scott closed this pull request 2026-03-02 19:40:25 +00:00
Some checks failed
Bootstrap Test / bootstrap (push) Failing after 6s
Test / build-and-test (push) Successful in 5m7s
Bootstrap Test / bootstrap (pull_request) Failing after 9s
Test / build-and-test (pull_request) Successful in 5m53s

Pull request closed

Sign in to join this conversation.
No reviewers
No labels
urgent
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_ledger!36
No description provided.