diff --git a/LOTUS_TODO.md b/LOTUS_TODO.md index 4d936ae14..03953922b 100644 --- a/LOTUS_TODO.md +++ b/LOTUS_TODO.md @@ -376,7 +376,7 @@ Fork = `LotusGuild/element-call` (branch `lotus`, upstream base **v0.25.0** sinc **Toolchain (upstream-driven, accepted 2026-09):** Node ≥ 22.13 (`.node-version` = 24) and **pnpm 11**, installed directly (`npm i -g pnpm@`, currently 11.21.0) — **not** via `corepack enable`: `matrix-js-sdk` is a git dependency pnpm builds from source, and its own devEngines pins pnpm 11.9.0; a corepack-shimmed pnpm refuses to switch for that nested install and `pnpm install` fails (fork CI run #1854). pnpm 10 rejects the lockfile and Node 20 cannot build. Lint is **oxlint + oxfmt** (upstream dropped eslint/prettier in v0.25.0): `pnpm lint` (tsc + oxlint + knip) and `pnpm format:check` / `pnpm format`. `matrix-js-sdk` is pinned to a `matrix-org/matrix-js-sdk#develop` commit in the lockfile, as upstream ships it. Fork CI (`.gitea/workflows/ci.yml`) hard-gates lint + format + `pnpm test:unit` before build, with `concurrency: cancel-in-progress`. -**Publish a new version (CI on tag push; needs the `GITEA_NPM_TOKEN` secret):** the published version is derived from the git tag — bump `embedded/web/package.json` (currently `0.25.0-lotus.1`, tag `v0.25.0-lotus.1` created locally, unpublished until pushed), push `lotus`, then `git push lotus v0.25.0-lotus.1`; the `publish` job builds and publishes to the Gitea registry. Always push (never delete) the annotated `vX.Y.Z-lotus.N` tag for every published version. Then in cinny bump the `@lotusguild/element-call-embedded` pin (currently `0.20.1-lotus.1`) → `npm install` → build. Manual fallback: `pnpm run build:embedded && cd embedded/web && npm version --no-git-tag-version && npm publish`. +**Publish a new version (CI on tag push; needs the `GITEA_NPM_TOKEN` secret):** the published version is derived from the git tag — bump `embedded/web/package.json` (currently `0.25.0-lotus.1`, published by CI 2026-09-12 — the first CI publish; the secret is `NPM_PUBLISH_TOKEN`, names starting `GITEA_` are reserved), push `lotus`, then `git push lotus v0.25.0-lotus.1`; the `publish` job builds and publishes to the Gitea registry. Always push (never delete) the annotated `vX.Y.Z-lotus.N` tag for every published version. Then in cinny bump the `@lotusguild/element-call-embedded` pin (currently `0.25.0-lotus.1`) → `npm install` → build. Manual fallback: `pnpm run build:embedded && cd embedded/web && npm version --no-git-tag-version && npm publish`. **`io.lotus.*` widget actions** (add new toWidget actions to the enum + `LOTUS_TO_WIDGET_ACTIONS` in `src/lotus/lotusActions.ts`; only send AFTER call-join or a 10s timeout fires): diff --git a/README.md b/README.md index 30c76d686..87059152d 100644 --- a/README.md +++ b/README.md @@ -196,7 +196,7 @@ The dev server defaults to **port 8080** (`vite.config.js`); if 8080 is already ### 🔱 Element Call fork ("Lotus Call") — LIVE Voice/video channels embed **Element Call**, which is now our **self-built fork** -(`@lotusguild/element-call-embedded` `0.20.1-lotus.1`; `0.25.0-lotus.1` is built and tagged on the fork, pending publish — source at +(`@lotusguild/element-call-embedded` `0.25.0-lotus.1`, upstream base v0.25.0, source at `LotusGuild/element-call`), published to our private Gitea npm registry and served same-origin. We no longer depend on the upstream prebuilt bundle, so in-call behavior is editable source instead of fragile DOM/widget hacks. diff --git a/package-lock.json b/package-lock.json index cbc0207b5..46a2446c8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -80,7 +80,7 @@ "workbox-precaching": "7.4.1" }, "devDependencies": { - "@lotusguild/element-call-embedded": "0.20.1-lotus.1", + "@lotusguild/element-call-embedded": "0.25.0-lotus.1", "@rollup/plugin-inject": "5.0.5", "@rollup/plugin-wasm": "6.2.2", "@types/chroma-js": "3.1.2", @@ -2694,9 +2694,9 @@ "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" }, "node_modules/@lotusguild/element-call-embedded": { - "version": "0.20.1-lotus.1", - "resolved": "https://code.lotusguild.org/api/packages/LotusGuild/npm/%40lotusguild%2Felement-call-embedded/-/0.20.1-lotus.1/element-call-embedded-0.20.1-lotus.1.tgz", - "integrity": "sha512-hy1KEnFw4MuwvlactUFPPvvtPZh1y56JMK/ehnficUmJNwdJsOhSwThaYp35RZ/ar6RCuiW86yQqlQBOSpZJVQ==", + "version": "0.25.0-lotus.1", + "resolved": "https://code.lotusguild.org/api/packages/LotusGuild/npm/%40lotusguild%2Felement-call-embedded/-/0.25.0-lotus.1/element-call-embedded-0.25.0-lotus.1.tgz", + "integrity": "sha512-tiVC7SD3cS1MMc9GZgzl6H7jvllHhOMvTivYqQT7pRaU4vP2M7IQNqL8KNCyXnXKaZAMIn7OnbI4thnQAC9p8Q==", "dev": true }, "node_modules/@matrix-org/matrix-sdk-crypto-wasm": { diff --git a/package.json b/package.json index 866493a44..8ffb8480a 100644 --- a/package.json +++ b/package.json @@ -105,7 +105,7 @@ "workbox-precaching": "7.4.1" }, "devDependencies": { - "@lotusguild/element-call-embedded": "0.20.1-lotus.1", + "@lotusguild/element-call-embedded": "0.25.0-lotus.1", "@rollup/plugin-inject": "5.0.5", "@rollup/plugin-wasm": "6.2.2", "@types/chroma-js": "3.1.2",