Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ jobs:
- run: npm ci
- name: Validate candidate XPI/update closure
run: PLC_DIST_DIR="$PWD/compare/ubuntu/dist" PLC_UPDATES_FILE="$PWD/compare/ubuntu/dist/candidate-updates.json" npm run validate:candidate-updates
- name: Verify v0.3.0 release history and current v0.4.0 published update manifest
- name: Verify v0.3.0 release history and current v0.4.1 published update manifest
shell: bash
env:
GH_TOKEN: ${{ github.token }}
Expand All @@ -181,4 +181,4 @@ jobs:
--output "$RUNNER_TEMP/published.zip"
echo "91331ef1bcee06c34bbcadaaf956866b5c06125999da630f48f0f6837234ef59 $RUNNER_TEMP/published.xpi" | sha256sum -c -
echo "ef69fec94e4ac8bb9de87b4b1c6ab42b226c50d895a6df893150da2f07dc9bd5 $RUNNER_TEMP/published.zip" | sha256sum -c -
echo "57700df0e04a08b6494e96ed1644859803076c97247bacce43d5e5fd7c63693f updates.json" | sha256sum -c -
echo "cff17b678e450cdc067d526f48c2ee6045b4cccc9ce268b122cb19e1918590c6 updates.json" | sha256sum -c -
8 changes: 6 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,16 @@ Versioning while remaining pre-1.0.

## [Unreleased]

No changes yet.

## [0.4.1] - 2026-08-24

- Adds an original, provenance-documented extension icon and production icon
declarations without changing browser permissions.
- Prepares bilingual Chrome Web Store listing, privacy, permission, reviewer,
submission, screenshot, and promotional materials.
- Prepares deterministic 0.4.1 candidate artifacts while leaving the tracked
published Zotero update manifest on v0.4.0.
- Aligns the popup `Not saved` status color with the existing page status blue.
- Publishes deterministic 0.4.1 artifacts and the matching Zotero update metadata.

## [0.4.0] - 2026-08-20

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -190,9 +190,9 @@ ScienceDirect and MDPI pages with `citation_doi` normally use the generic extrac
<details>
<summary>Release verification and SHA-256 checksums</summary>

Version 0.4.0 is the current public alpha. Its canonical build, targeted Zotero runtime smoke, persistent Edge installation, toolbar popup, manual page check, and bilingual UI gates passed. The exact tested desktop target is Zotero 9.0.6 within the supported Zotero 9.0.x range. Microsoft Edge 151.0.4129.78 is the primary release-tested browser; Chrome remains experimental.
Version 0.4.1 is the current public alpha. Its canonical build and targeted Chrome/Zotero smoke passed, including connection, index readiness, saved and not-saved page checks, and the Options connection test. The exact broader runtime target from the 0.4.0 qualification remains Zotero 9.0.6 within the supported Zotero 9.0.x range and Microsoft Edge 151.0.4129.78; Chrome is the target browser for the planned Chrome Web Store submission.

Download the canonical artifacts and [`SHA256SUMS.txt`](https://github.com/he-chun/paper-library-checker/releases/download/v0.4.0/SHA256SUMS.txt) from the [v0.4.0 GitHub Release](https://github.com/he-chun/paper-library-checker/releases/tag/v0.4.0). The repository-root [`updates.json`](updates.json) is the Zotero update manifest. The public [0.3.0 release qualification](docs/verification/release-qualification-0.3.0.md) remains the historical record for the initial alpha. ScienceDirect is not claimed as a passed live-site capability because a publisher access challenge replaced the normal article DOM.
Download the canonical artifacts and [`SHA256SUMS.txt`](https://github.com/he-chun/paper-library-checker/releases/download/v0.4.1/SHA256SUMS.txt) from the [v0.4.1 GitHub Release](https://github.com/he-chun/paper-library-checker/releases/tag/v0.4.1). The repository-root [`updates.json`](updates.json) is the Zotero update manifest. The public [0.3.0 release qualification](docs/verification/release-qualification-0.3.0.md) remains the historical record for the initial alpha. ScienceDirect is not claimed as a passed live-site capability because a publisher access challenge replaced the normal article DOM.

</details>

Expand Down
4 changes: 2 additions & 2 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -190,9 +190,9 @@ Zotero Connector 用于把条目保存到 Zotero。Paper Library Checker 不会
<details>
<summary>Release 验证与 SHA-256 校验和</summary>

0.4.0 是当前公开 alpha 版本。规范构建、定向 Zotero 运行时冒烟测试、Edge 持久安装、工具栏弹窗、手动页面检查和双语界面门槛均已通过。精确实测桌面目标是受支持的 Zotero 9.0.x 范围内的 Zotero 9.0.6Microsoft Edge 151.0.4129.78 是主要发布测试浏览器,Chrome 仍为实验性
0.4.1 是当前公开 alpha 版本。规范构建和定向 Chrome/Zotero 冒烟测试均已通过,包括连接、索引就绪、已保存与未保存页面检查,以及 Options 连接测试。0.4.0 完整资格验证的精确运行时目标仍是受支持的 Zotero 9.0.x 范围内的 Zotero 9.0.6Microsoft Edge 151.0.4129.78;Chrome 是计划提交 Chrome Web Store 的目标浏览器

请从 [v0.4.0 GitHub Release](https://github.com/he-chun/paper-library-checker/releases/tag/v0.4.0) 下载规范构建产物及 [`SHA256SUMS.txt`](https://github.com/he-chun/paper-library-checker/releases/download/v0.4.0/SHA256SUMS.txt)。仓库根目录的 [`updates.json`](updates.json) 是 Zotero 更新清单。公开的 [0.3.0 发布资格报告](docs/verification/release-qualification-0.3.0.md)继续作为首个 alpha 的历史记录。由于发布者访问验证页面替代了正常文章 DOM,ScienceDirect 不被声明为已通过真实站点验证的功能。
请从 [v0.4.1 GitHub Release](https://github.com/he-chun/paper-library-checker/releases/tag/v0.4.1) 下载规范构建产物及 [`SHA256SUMS.txt`](https://github.com/he-chun/paper-library-checker/releases/download/v0.4.1/SHA256SUMS.txt)。仓库根目录的 [`updates.json`](updates.json) 是 Zotero 更新清单。公开的 [0.3.0 发布资格报告](docs/verification/release-qualification-0.3.0.md)继续作为首个 alpha 的历史记录。由于发布者访问验证页面替代了正常文章 DOM,ScienceDirect 不被声明为已通过真实站点验证的功能。

</details>

Expand Down
4 changes: 2 additions & 2 deletions store-assets/chrome-web-store/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ extension ZIP.

The minimal Chrome/Zotero smoke used while capturing the English screenshots
passed. Chrome Web Store upload and review submission have not started. The
reviewer XPI link remains pending until GitHub Release v0.4.1 is published and
its checksum is verified.
reviewer XPI is available from GitHub Release v0.4.1 and its checksum has been
verified against the published `SHA256SUMS.txt`.

Paper Library Checker is an independent project and is not affiliated with or
endorsed by Zotero, Google Chrome, Microsoft Edge, or their publishers.
Expand Down
2 changes: 1 addition & 1 deletion store-assets/chrome-web-store/reviewer-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ maintainer-operated server requirement. It requires Zotero 9.0.x and the
companion Paper Library Checker Zotero add-on.

1. Install Zotero 9.0.x.
2. From the future [GitHub v0.4.1 Release](https://github.com/he-chun/paper-library-checker/releases/tag/v0.4.1), download the companion XPI.
2. From the [GitHub v0.4.1 Release](https://github.com/he-chun/paper-library-checker/releases/tag/v0.4.1), download the companion XPI.
3. In Zotero, open **Tools → Plugins**, choose **Install Plugin From File**, and install and enable the XPI.
4. Restart Zotero.
5. In Zotero's **Tools** menu, choose **Paper Library Checker: Copy pairing token**.
Expand Down
8 changes: 4 additions & 4 deletions store-assets/chrome-web-store/submission-checklist.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,15 @@ Repository-prepared evidence:
- [x] Three reviewed English screenshots from the real UI are present at 1280 x 800.
- [x] The minimal Chrome/Zotero smoke completed without an unhandled error.
- [ ] Optional Simplified Chinese screenshots may be added as a later localization enhancement.
- [ ] GitHub Release v0.4.1 and its reviewer XPI do not exist until the GitHub release step completes.
- [x] GitHub Release v0.4.1 and its reviewer XPI are public and hash-verified.
- [ ] No browser ZIP has been uploaded to the Chrome Web Store dashboard.

- [ ] Chrome Web Store developer account is registered.
- [ ] Contact email is verified.
- [ ] Account security settings are complete.
- [ ] GitHub Release v0.4.1 exists.
- [ ] Reviewer XPI link is accessible and its SHA-256 matches the release checksum.
- [ ] The 0.4.1 Chrome ZIP SHA-256 has been checked.
- [x] GitHub Release v0.4.1 exists.
- [x] Reviewer XPI link is accessible and its SHA-256 matches the release checksum.
- [x] The 0.4.1 Chrome ZIP SHA-256 has been checked.
- [ ] Manifest name, version, description, and icons are correct.
- [ ] `manifest.json` is at the ZIP root.
- [ ] Production icons 16, 32, 48, and 128 are in the ZIP.
Expand Down
4 changes: 2 additions & 2 deletions test/readme-localization.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,10 @@ test("README language switchers are reciprocal and mark the current language", (
assert.match(chinese, /^# Paper Library Checker\r?\n\r?\n\[English\]\(README\.md\) \| \*\*简体中文\*\*/);
});

test("localized READMEs preserve the published version while the package is a candidate", () => {
test("localized READMEs point to the current published version", () => {
const addon = updateManifest.addons["paper-library-checker@he-chun.github.io"];
assert.equal(currentVersion, "0.4.1");
assert.equal(addon.updates.at(-1).version, "0.4.0");
assert.equal(addon.updates.at(-1).version, "0.4.1");
for (const content of [english, chinese]) {
for (const fact of canonicalFacts) assert(content.includes(fact), fact);
}
Expand Down
10 changes: 5 additions & 5 deletions test/zotero-update-manifest.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,15 @@ import { inspectZip } from "../scripts/zip.mjs";

const root = fileURLToPath(new URL("..", import.meta.url));

test("published manifest points to v0.4.0 while preserving v0.3.0 qualification evidence", async () => {
test("published manifest points to v0.4.1 while preserving v0.3.0 qualification evidence", async () => {
const published = await readFile(path.join(root, "updates.json"));
const qualification = JSON.parse(await readFile(path.join(root, "docs", "verification", "release-qualification-0.3.0.json"), "utf8"));
const updates = JSON.parse(published);
const item = updates.addons["paper-library-checker@he-chun.github.io"].updates[0];
assert.equal(item.version, "0.4.0");
assert.equal(item.update_link, "https://github.com/he-chun/paper-library-checker/releases/download/v0.4.0/paper-library-checker-zotero-0.4.0.xpi");
assert.equal(item.update_hash, "sha256:85cc29a5129092a759528e2ca63a6700877c3cedb1b5fe58872f52d3e1c765e7");
assert.equal(createHash("sha256").update(published).digest("hex"), "57700df0e04a08b6494e96ed1644859803076c97247bacce43d5e5fd7c63693f");
assert.equal(item.version, "0.4.1");
assert.equal(item.update_link, "https://github.com/he-chun/paper-library-checker/releases/download/v0.4.1/paper-library-checker-zotero-0.4.1.xpi");
assert.equal(item.update_hash, "sha256:69857a35cf619f4fc7992c4b16d694894b1d7070f0806c06adc4506b0d5c9676");
assert.equal(createHash("sha256").update(published).digest("hex"), "cff17b678e450cdc067d526f48c2ee6045b4cccc9ce268b122cb19e1918590c6");
assert.equal(qualification.artifactSha256.xpi, "91331ef1bcee06c34bbcadaaf956866b5c06125999da630f48f0f6837234ef59");
assert.equal(qualification.artifactSha256.extensionZip, "ef69fec94e4ac8bb9de87b4b1c6ab42b226c50d895a6df893150da2f07dc9bd5");
});
Expand Down
6 changes: 3 additions & 3 deletions updates.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
"paper-library-checker@he-chun.github.io": {
"updates": [
{
"version": "0.4.0",
"update_link": "https://github.com/he-chun/paper-library-checker/releases/download/v0.4.0/paper-library-checker-zotero-0.4.0.xpi",
"update_hash": "sha256:85cc29a5129092a759528e2ca63a6700877c3cedb1b5fe58872f52d3e1c765e7",
"version": "0.4.1",
"update_link": "https://github.com/he-chun/paper-library-checker/releases/download/v0.4.1/paper-library-checker-zotero-0.4.1.xpi",
"update_hash": "sha256:69857a35cf619f4fc7992c4b16d694894b1d7070f0806c06adc4506b0d5c9676",
"applications": {
"zotero": {
"strict_min_version": "9.0",
Expand Down
Loading