Commit Graph
9 Commits
Author SHA1 Message Date
Satoshi Qazi Muhammed 0321454dc7 ci: let Dependabot keep the workflow actions current
Nothing proposes updates to the workflow actions: several still declare
the Node 20 runtime, which runners already force to Node 24 with a warning
on every run. Dependabot now checks them monthly and groups all action
updates into one pull request.
2026-10-09 08:08:50 +04:00
Satoshi Qazi Muhammed e6787a9eb5 CI: drop the chmod step that the tree check flags
The scripts it made executable are run as `sh ./scripts/diff.sh` and
`node scripts/postbuild-cleanup.cjs`; the mode change only left the
tree dirty, and the new tree check fails on that.
2026-10-08 09:07:34 +04:00
Satoshi Qazi Muhammed a4a77d0ede CI: check what npm receives, keep the tree stable, stop the VPS1 deploy
- pr-any: after each step the tree must be unchanged (yarn lint runs
  eslint --fix, yarn build rewrites packageInfo.ts), and after build
  scripts/check-built-manifests.py checks the package.json of each
  package in scripts/published-packages.txt: entry points exist, no
  ./build/ or ./cjs/cjs/ paths, no workspace: ranges.
- push-main bumped the patch version on every push, pushed that commit
  to main as a bot, and copied the zips as root to 37.60.230.9, a host
  that has been retired; js.pezkuwichain.io no longer serves them and
  the extension is distributed through the stores. It now builds,
  checks the manifests and keeps the Chrome and Firefox packages as
  artifacts of the commit. The version is set in the release PR.
- The auto-approve and auto-merge bots are removed.
- ff-diff/, the output of yarn diff, is ignored by git and eslint.
2026-10-08 09:07:34 +04:00
Kurdistan Tech Ministry 758d346078 Make the Firefox source build reproducible, and let its check fail
The diff step rebuilds the extension from master-ff-src.zip (the source
archive AMO reviews) and compares the result with our build. It had never
worked, which the removed continue-on-error was hiding:

- The source zip left out .yarn/releases (yarnPath points there, so yarn
  could not start in the unpacked source) and scripts/ (build:ff runs
  scripts/postbuild-cleanup.cjs). Both are now included.
- diff.sh used `[ a || b ]`, which is not valid test syntax, and piped
  `diff -qr` into `sort`, so the check exited 0 whatever diff found. It now
  goes by diff's own exit status; with a file altered it fails.
- With those fixed, the builds still differed: webpack inlined
  import.meta.url from @pezkuwi/* packageInfo.js as the absolute file://
  path of the build machine, which also put our build directory into the
  published extension. DefinePlugin now gives it a fixed value; it is only
  shown in duplicate-version warnings.

Also fail-fast: false on the matrix. Without continue-on-error, the first
red step cancelled the others, so their results were lost.

Checked locally with node_modules as locked: "Builds are identical".
2026-10-08 09:07:34 +04:00
Kurdistan Tech Ministry 865bce54ae Make the PR checks able to fail, and fix what they had been hiding
pr-any.yml ran lint, test and build with continue-on-error: true, so every
PR showed success while main had 41 lint errors and 19 of 61 tests failing.
The flag is removed and the failures are fixed:

- TypeScript 5.5.4 -> 5.9. @pezkuwi/util and friends ship declarations
  with Uint8Array<ArrayBufferLike>, which 5.5 cannot read, so every such
  value was typed `any` here (the 16 wrapBytes errors). The pin dates from
  a styled-components declaration problem that went away with the move
  back to styled-components 5; build and lint pass on 5.9.
- State.ts: the stored security log is parsed through a function that
  returns an empty log for anything that is not a JSON array, instead of
  letting `any` flow on; fire-and-forget logging uses .catch(console.error)
  like the rest of the codebase; object keys sorted.
- buildHierarchy.spec.ts: a rename had replaced the genesis hashes with
  0x..01 / 0x..02, which resolve to no network name, so sorting by network
  had nothing to sort on. The test now takes two real entries from
  chains.ts by name.
- scripts/*.cjs is in the lint project (it failed to parse); header and
  key order fixed in postbuild-cleanup.cjs.
- temp_ff_validate/ (43 build files) and pezkuwi-chrome-0.62.22.zip were
  committed by accident in f5495f7; removed and ignored.

16 of the 19 failing tests are not fixed here: they fail because
@pezkuwi/wasm-crypto 7.5.18 stubs ed25519, secp256k1 and sr25519
derivation. With the 7.5.19 build from pezkuwi-wasm#2 installed locally,
lint is clean and all 61 tests pass. Until 7.5.19 is published and
picked up here, those 16 stay red on this PR, which is the point.
2026-10-08 09:07:34 +04:00
Kurdistan Tech Ministry bf6df8fc94 ci: add automatic version bump and VPS1 deployment 2026-02-06 05:40:14 +03:00
SatoshiQaziMuhammed 868937ad12 Add CodeQL analysis workflow configuration
This workflow file sets up CodeQL analysis for the repository, defining triggers for push and pull request events, as well as a scheduled run. It includes a matrix for analyzing multiple languages and initializes the CodeQL tools for scanning.
2026-01-08 02:16:11 +03:00
Kurdistan Tech Ministry 0884ab2ce9 chore: update README and workflows for PezkuwiChain rebrand
- Update README with Dijital Kurdistan Tech Institute author
- Fix lock.yml to use github.token instead of GH_PAT_BOT
- Rename push-master.yml to push-main.yml for main branch
- Add workflow_dispatch triggers for manual runs
2026-01-07 03:14:34 +03:00
Kurdistan Tech Ministry c2913a65d9 Update domain references to pezkuwichain.app and rebrand from polkadot 2026-01-06 12:21:11 +03:00