Commit Graph
5 Commits
Author SHA1 Message Date
SatoshiQaziMuhammed 1914388d2b docs: API reference and getting-started guide for developers.pezkuwichain.io (#21)
* docs: generate the API reference for developers.pezkuwichain.io

Add TypeDoc (0.28.20) and `yarn docs`, which builds the reference for the
nine public API packages from src/ into build-docs/, with a landing page
and a getting-started guide whose examples were run against the live
network. The PR workflow builds it so a broken doc comment or config is
caught before merge.

docs/ held only a redirect to polkadot.js.org; it now holds the guide
sources. The README, packages/api/README.md and three CHANGELOG entries
linked to js.pezkuwichain.app, a domain that is not ours and is listed
for sale; they now point to developers.pezkuwichain.io, the Pezkuwi
Portal, or the upstream polkadot.js.org pages the entries came from.

* ci(docs): deploy the reference to developers.pezkuwichain.io

On every master push that changes the generated reference, build it with
`yarn docs` and publish it to the web host the same way pezkuwi-apps
publishes the portal: an approved production environment holds the deploy
key, the bundle is unpacked into releases/<sha>, and going live is one
rename of the current symlink. The switch is checked through nginx for the
public name (deploy sha, index, main.js, search index) and rolled back if
the new release is not served. workflow_dispatch with rollback_to makes an
earlier release live again.

Release-bot version bumps ([CI Skip]) and changes that cannot affect the
output do not ask for an approval.
2026-11-12 22:32:28 +04:00
SatoshiQaziMuhammed 67dbb67ddc ci: give every workflow an explicit least-privilege GITHUB_TOKEN (#16)
CodeQL actions/missing-workflow-permissions: lock.yml, pr-any.yml, push-master.yml had no permissions block, so their jobs received the repository default token. Read-only where nothing writes through GITHUB_TOKEN; lock-threads gets the issues/pull-requests/discussions write it documents; workflows that write do it with a separate bot or app token, so GITHUB_TOKEN stays read-only.
2026-10-20 23:00:03 +04:00
SatoshiQaziMuhammed e3c72817fb chore(papi): commit the sources behind the four polkadot-api packages (#15)
* chore(papi): commit the sources behind the four polkadot-api packages

papi-utils, bizinikiwi-bindings, metadata-builders and merkleize-metadata
held only dist/ builds, and no repository held their source. Every
source map in dist/ embeds the TypeScript it was compiled from; that is
now committed as src/ (59 files), and it matches upstream polkadot-api
(MIT) exactly once @polkadot-api/* imports are renamed:

  papi-utils           @polkadot-api/utils 0.2.0
  bizinikiwi-bindings  @polkadot-api/substrate-bindings 0.16.6
  metadata-builders    @polkadot-api/metadata-builders 0.13.0-0.13.2
  merkleize-metadata   @polkadot-api/merkleize-metadata 1.1.21-1.1.23

scripts/check-papi-sources.mjs, run in the lint job, fails unless the
source embedded in dist/ is exactly the committed src/. tsconfig.json
excludes these src/ trees; ESLint already skipped the packages. Each
README now states the upstream package and version.

* chore(papi): keep the upstream sources in upstream-src/

The pezkuwi-dev build treats any package with a src/ directory as its
own: it requires our license header on every file and builds it. These
are upstream files that must stay byte-identical to the source embedded
in dist/, so they live in upstream-src/ instead, which neither the build
nor the root tsconfig picks up.
2026-10-19 22:50:59 +04:00
Satoshi Qazi Muhammed c228f3b56c Make the PR workflow a real gate
- every matrix step (lint, test, build) must pass; nothing is allowed
  to fail silently
- after build, scripts/check-built-manifests.py checks the package.json
  each build/ directory holds, which is what npm receives: entry points
  must exist, no ./build/ or ./cjs/cjs/ paths, no string spread into
  exports, no workspace:/link: ranges
- the tree must be unchanged after the step: `yarn lint` runs
  eslint --fix and `yarn build` regenerates the augment interfaces, so
  both used to pass on a tree they had rewritten
- the dot-notation exclusion had been renamed from kusama to zagros
  (no such directory) instead of dicle; with the dicle augmentation in
  the lint program, eslint --fix rewrote api.query['registrar'] style
  accesses that the build cannot compile
- the four compiled-only packages (bizinikiwi-bindings,
  merkleize-metadata, metadata-builders, papi-utils) have no sources
  here and are not linted
- the auto-approve and auto-merge bots are removed
- .prettierrc.cjs uses @pezkuwi/dev
2026-10-08 03:23:10 +04:00
Kurdistan Tech Ministry d5f038faea Rebrand: polkadot → pezkuwi, substrate → bizinikiwi, kusama → dicle 2026-01-07 02:29:40 +03:00