Skip to content

release: Building Apps concept pages (#28) and published-locales fix (#29) to main - #31

Merged
33imattei33 merged 2 commits into
mainfrom
dev
Oct 26, 2026
Merged

33imattei33 merged 2 commits into
mainfrom
dev

Conversation

@33imattei33

Copy link
Copy Markdown
Contributor

Promotes dev to main. It brings in two PRs:

main has one commit dev lacks, #26 (CI path filters, pip cache, Renovate grouping). The merge keeps it, and it merges cleanly.

After merge, the Pages deploy should show INFO: Publishing languages: en es in its log. /pt/main/ (and the other unpublished locales) should then return 404, and /es/main/ should show the banner.

🤖 Generated with Claude Code

33imattei33 and others added 2 commits October 25, 2026 01:17
…accounts, smart assets, Blockchain Updates) (#28)

* docs: add Building Apps concept pages for smart contracts, dApps, smart accounts, smart assets and Blockchain Updates

Closes the WP3 concept gap (ECO-19) with five original pages in
04_building-apps/, numbered 07-11 so prefixes stay unique next to the
existing 05_node-grpc and 06_data-service-api:

- 07 Smart Contracts Overview: the three script types, compile/deploy
  flow, limits, fees, Testnet vs Mainnet differences, common mistakes
- 08 Creating and Launching a dApp: pledge-drive walkthrough
- 09 Smart Accounts: 2-of-3 multisig and escrow walkthroughs
- 10 Smart Assets: allowlist-token walkthrough and asset script rules
- 11 Blockchain Updates: enabling the extension, API, event model,
  reliable-consumer rules

Every fact is traced to node-scala v1.8.0 source; fees were confirmed
with POST /transactions/calculateFee on the Testnet and Mainnet nodes.
Each page carries a "Verified against" stamp.

Samples: four Ride scripts in docs/_samples/ride/ (compiled on both
public nodes by the new docs/scripts/check_ride_samples.py) and seven
TypeScript samples typechecked by the existing samples job
(@types/node added for readFile).

Also corrects 05_node-grpc.md (enabling the gRPC server does not
enable BlockchainUpdates), 02_node-extensions.md (min-keep-alive
meaning, both extension classes), links the glossary entries and
records the final numbering in PLAN-docs-expansion.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs: fix review findings in the Building Apps concept pages and samples

Escrow sample (09_smart-accounts):
- The timeout was a fixed height (120000) that Mainnet has already
  passed and the Testnet soon will, letting the buyer reclaim funds at
  once. It is now written to the account's data before locking,
  computed from the current height.
- Payouts were not limited, so a signer could send the funds away as a
  huge fee or in many small pieces. A payout must now move exactly the
  escrowed amount, also stored in data, with exactly the 0.005 DCC fee,
  so the funds can leave once.

Other fixes:
- pledge-drive refund() now decrements total.
- Pages show samples with {literalinclude} instead of pasted copies, so
  the published code is the typechecked and compiled code. The install
  snippet checker now parses directive fences that carry an argument;
  without that it silently skipped the install line after an include.
- compileRide and check_ride_samples.py handle non-JSON and network
  errors instead of crashing.
- The limits table adds the per-invocation complexity cap (26,000 for
  V5, 52,000 for V6+) next to the per-callable cap it was confused with.
- Set Asset Script's 1 DCC is stated to include the smart asset
  surcharge; the Testnet's highest active feature is 26, not 25.
- Walkthroughs tell readers to replace the example keys and addresses.
- Updated script sizes, complexities and fees, confirmed with the
  Testnet node's calculateFee.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: 33imattei33 <fabriziomattey2@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…artial translation (ECO-179) (#29)

buildDocs.sh built `en` plus every dir under docs/locales/. docs/locales/en is
a catalog dir too, so English was built twice, and nine locales with 0%
translated strings were published. conf.py filled the language switcher the
same way, so it linked to all of them.

- docs/locales/PUBLISHED lists the translated locales to publish (today
  `es partial`). docs/scripts/published_locales.py turns it into the one
  language list (English first); buildDocs.sh builds exactly that list and
  conf.py renders the switcher from it. A typo, duplicate, unknown flag or
  listed `en` fails the build.
- A `partial` locale shows as `es (partial)` in the switcher and gets a
  "Partial translation" banner linking to the English docs on every page.
- PR check: unit-test the helper and check the built switcher. Deploy: assert
  the built site holds only the published languages, each with the right
  switcher and banner, before uploading.
- AGENTS.md and CONTRIBUTING.md: a new locale is published by listing it in
  PUBLISHED, not by its catalog dir existing.

Co-authored-by: 33imattei33 <fabriziomattey2@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@33imattei33
33imattei33 merged commit 9cbef06 into main Oct 26, 2026
8 checks passed
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