Skip to content

fix: honest Blueprint-gated states, enforced pause, real A9 storage prices - #24

Open
Gift-Stack wants to merge 6 commits into
mainfrom
fix/blueprint-honest-states
Open

Gift-Stack wants to merge 6 commits into
mainfrom
fix/blueprint-honest-states

Conversation

@Gift-Stack

Copy link
Copy Markdown
Contributor

Closes out the remaining honesty gaps: every feature that needs the (not-yet-built) Blueprint project pipeline now says so explicitly, and no handler fabricates data. Four atomic commits.

Bridge

  • workspace.open no longer ignores its path. Demo/example paths map to their own sandbox workspaces; any other path fails honestly: "Opening a Blueprint project from disk is not supported by this bridge build yet…". Previously a dead ternary silently returned the demo workspace as if it were your project.
  • account.revealMnemonic no longer fabricates a 24-word phrase. Sandbox treasuries are seed-derived; it now throws "…have no mnemonic to reveal."
  • contract.abi returns available: false + a note ("needs an open Blueprint project (.abi.json)…") instead of a bare empty list; mocks in lockstep with available: true.
  • test.subscribe emits a run-end with an unavailable payload instead of a fake test failure.
  • time.setPaused is now enforced. Paused pins blockchain.now; running time flows as wall clock + offset (re-pinned before every execution path); advance/setNow while paused move the frozen point; unpause resumes forward with no backwards jump.
  • Socket close no longer leaks subscriptions (dead sub ids are removed from every workspace).

App

  • A1 open-project dialog surfaces the bridge error inline (was swallowed).
  • A2 reveal-mnemonic renders the honest state; the mainnet warning only shows next to an actual phrase.
  • A3 ABI section explains the degraded state; A20 shows a "No test project attached" EmptyState instead of a red failed run (real failures still render as failures).
  • A9 projects storage fees from real config p18 prices ((cells·cell_price_ps + bits·bit_price_ps)·seconds / 2^16, bigint) over a clearly-labeled reference footprint — replacing the invented 10 nanoTON/s constant. Honest "prices unavailable" note when p18 isn't decoded.
  • Removed the stale RATIFY_IN_A6_SPIKE list (field names long since ratified against the live bridge).

Verification

  • pnpm tsc + pnpm lint green; bridge smoke ALL OK.
  • Live checks: fake path → honest error; demo/example paths open; mnemonic → honest error; pause froze now across 1.6s, +3600 advance moved it exactly, unpause resumed flowing; contract.abi returns the degraded shape.

This branch has not been deployed

No deployments
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