Skip to content

[P0] Reclassify Zotero literature for CWL ontology libraries #8

Open

Description

@seonghobae

Live research baseline

  • The recorded Zotero campaigns are research/source evidence, not semantic authority. Query/classifier output remains discovery/proposal evidence only.
  • Historical Zotero 9.0.6 / API v3 read-only snapshot evidence and later Zotero 10.x capture evidence remain immutable historical coordinates; do not silently mix generations or backfill old approvals.
  • Zotero live-write paths remain separately gated by explicit reviewed authority, exact server/item/library/snapshot/proposal preconditions, reversible receipts, provider transport boundaries and rollback/reconciliation evidence.
  • Zotero-Server-ID is database-instance continuity/precondition evidence, not cryptographic peer authentication. Loopback HTTP confidentiality remains an explicit threat-model boundary for live-write claims.

Current root authority — 2026-09-10

Foundation #1 is exact 60f14a6e85a83d56c2eea43b34d52b3366bb1735, OPEN Draft/mergeable. Research Intake #9 is exact a67d9d66b35024d6f2155f50ee5c9fb7d2e1dbe9, OPEN Draft/mergeable on exact Foundation. Pending-source resolution #40 is exact 4efe15c6318d8cb65c52a974a2c105363a4c82a5, OPEN Draft/mergeable on current #9.

The old 2026-09-05 head list is no longer current authority. Golden-set #10 is exact fdf8b8d70c05bcb76c55cb6336c9bf31b5e42ce4, OPEN Draft/non-mergeable from historical #9 merge base 51c7df6d03f072449422fd58ca24b2f9d6026f07; it is 35 commits ahead and 81 behind current #9. Both lineages changed Zotero core/integrity tests and the active gap baseline, so whole-tree ours/theirs, force rebase, close/reopen substitution or selective file copying would discard valid owner work.

The required #10 semantic reconciliation must preserve current #9's private/constructor-bound ClassificationReport with read-only accessors. Do not reopen trusted aggregate fields merely to satisfy old golden-set tests. Corruption cases belong behind an internal test-only or explicitly untrusted wire/fixture seam. #10's mandatory public ZoteroItem.source_record: Option<serde_json::Value> also cannot become a source-breaking caller-owned authenticity field; raw-provider binding needs a backward-compatible capture/wire boundary.

Classification Audit #11 is exact 6dff8c2ee42cfeb7bf8688c1f7e95989b61be266, OPEN Draft/mergeable on the stale #10 head. It and every later descendant remain dependent on the repaired #10 successor and must adopt it through ordinary non-force integration before claiming readiness. Predecessor/local GREEN never transfers across that adoption.

Later steward/full-text stack state

The later steward-review branches retain valid functionality but are not independent substitutes for the broken root. #33 is exact 93faf6ab750a99469196cf71567498be83c22a6b, OPEN Draft/mergeable. #34 is exact c51330e61bf5b3d2b18a561830151ba874b17a4c, OPEN Draft/mergeable on #33; its authority was repaired after live ancestry showed that merged #36 full-text-capture work had already advanced the #34 branch beyond historical 9eb89b8.... Current #34 therefore preserves completed-review context validation and the normally carried full-text capture/proxy-isolation delta; merged #36 is historical carryover, not an open “next successor.”

Terminal open full-text/write PR #39 remains exact aca2fe603477453fee071679a8aefef0cd784dd3, OPEN Draft/mergeable on #38 7678236ed3ec467e93b97bb2ad7ad26b3dc0e5b9. Its serialized source-tree attribution recorded 451/451 native functions, 4,752/4,752 production-normalized regions and 784/784 production-normalized branch outcomes, but later documentation movement means those results are not exact-current execution evidence for aca2fe....

The preserved steward/full-text contracts still include exact report/proposal/pending-source identity, deterministic bounded batches, strict owner-only artifacts, complete displayed-context validation before patch conversion, full-text capture separated from approval, write-preparation admission, failure/recovery receipts and rollback/reconciliation evidence. Capture availability, deterministic classification, local tests or byte-identical replay never grant steward approval or semantic publication authority.

Protected Product prerequisite

Product bootstrap #35 is exact 22709ec9b4d969bf67ec74db402813e74d11f7ca, OPEN/non-Draft/mergeable, but its CodeQL lane remains blocked by the central owner path. Protected .github/main is 7fd571dbcdbae6acf29d8f4ee704d7ba6297e4db; broad current central successor .github#2040@6706c231ab06a3c91c43fdb5b989cfcd79fff593 is OPEN Ready/non-Draft/mergeable and has terminal CodeQL failure 34251822255 at attempt 7. Current repair requires a protected-handler-authenticated pre-cutover direct-evidence bridge plus bounded required-job-set rereads; #2051/#2056 retain useful stricter identity/versioned-rollout and complete-failed-job-set/atomic-wake deltas for later non-force reconciliation.

Do not no-op/manual-rerun Zotero leaves around that owner defect or infer protected acceptance from historical local GREEN.

Acceptance sequence

  1. Semantically reconcile feat(research): add steward golden-set evaluation #10 onto current feat: classify Zotero research snapshot #9 without weakening the private aggregate or public item compatibility boundary.
  2. Propagate the repaired root forward through feat(research): add Zotero classification audit evidence #11 and every still-relevant downstream Draft by ordinary non-force integration, preserving each valid delta and resetting exact-head evidence.
  3. Repair/integrate the central CodeQL owner chain, then obtain fresh chore(ci): bootstrap Product pull-request workflow #35 exact-head protected evidence and normal chore(ci): bootstrap Product pull-request workflow #35 integration.
  4. On each unchanged current research/write head, obtain locked Rust 1.98 workspace/fmt/strict Clippy/warnings-denied rustdoc/release, owned-production 100% coverage, applicable hosted checks, qualifying independent review and zero valid unresolved findings.
  5. Complete steward review against one immutable top-level bibliographic generation. Keep proposal count, unverified worksheet decisions, externally approved labels and unresolved-source denominator explicit; never substitute sampling for complete review when publication claims full-corpus governance.
  6. Only after exact authority/precondition/transport/reversibility gates may a Zotero mutation or governed immutable semantic release occur.

No force push, destructive rebase, self-approval, review dismissal, gate weakening, source-copy/cross-service SQL, mutable supplier dependency, fabricated approval, live Zotero mutation or premature semantic publication is authorized by this issue.

Activity

  1. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    2026-09-04 successor/progress correction

    PR #9 now carries the first executable read-only Zotero classification slice at exact head 5cda60e2b218034dd5abde9bc527bcc271e92eb9, stacked on Foundation a379c7230253c3aaa0c6fc8486cc39be421eca35. The branch incorporates the valid CodeRabbit/Codex findings: deterministic abstention reasons, replayable matched metadata, legacy dx.doi.org normalization, conflicting-family abstention, injectable/tested snapshot-reader core, Local API v3/schema-42 pinning and drift checks, whole-snapshot item/byte budgets, temp-only create-new output with explicit flush, Zotero ACL entry in the Context Map, and source-coordinate coverage accounting. All currently returned inline review threads are resolved after current-head verification.

    The PR is intentionally Draft again because Foundation is still non-terminal. Product run 33877322525, job 101037300401, is exact-head queued before runner assignment (ubuntu-24.04, runner_id=0, steps=[]), so local verification is not hosted GREEN.

    Issue #8 remains open. No Zotero mutation/write-back has been implemented. The next repository-owned RED after Foundation terminal evidence is a steward-reviewed golden set for disposition precision/recall and multilingual coverage without weakening abstention safety. Zotero 10+ write-back still requires authenticated server identity, fresh object/library-version preconditions, item-by-item before/after receipts and rollback evidence.

  2. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    2026-09-04 research-stack correction: #9/#10/#11 have all been returned to Draft because Foundation is not integrated. #10 current head is d5ccd73ae3b23154305d2ec51d24a00c71f23f6d; #11 current head is c28fccaa592d6cbb0dcf9d86d0558bdb28d43842. Fresh #11 review triage rejected one invalid P1 request to mix derived audit_summary into the raw Zotero source-snapshot digest; TRD §11 and the public API define that digest as canonical raw-item content identity, so the thread was resolved with contract rationale. A second P2 finding was valid: provenance-complete proposals could retain a linked child with a blank Zotero key. Test-only b836db... encoded the parent+blank-child regression but was cancelled before execution when concurrent successor c28fcc... added the minimal predicate requiring nonblank parent and every retained child key. That repair is adopted without claiming executed RED->GREEN; #11 Product 33883722090 is queued and the P2 thread remains unresolved until exact-head verification. No Zotero mutation or authority promotion was introduced.

  3. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    2026-09-05 successor evidence update

    The active stack now preserves and extends every Zotero reclassification delta without closing predecessors:

    Local verification on the #16 head passed workspace fmt, clippy, tests, and the repository coverage gate with owned Rust source coordinates at 1381/1381 regions and 250/250 branches. Protected-main integration is not claimed: Foundation remains review-required with queued required jobs, and stacked successors are not independently mergeable before their parents. AC4 still needs real steward decisions for all 49 live duplicate groups. AC6 still needs an authenticated Zotero 10+ adapter and approved live write/partial-failure/rollback evidence; the installed runtime remains Zotero 9.0.6.

  4. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    2026-09-05 exact-head correction

    The active Zotero stack remains open and delta-preserving. PR #13 is now bd855ef7c85c67f8026480743b7540c50dcf55c3; its reviewed write plan binds Zotero version plus the complete item-key/item-version snapshot, rejects detached revisions and unsupported tag types, and canonicalizes manual tag markers. PR #15 is now 2dfdf0c8f49601ab95958a216258099874dbbd22; it reconciles failed or invalid write responses through the same read boundary, includes proven committed-but-response-lost items in rollback evidence, marks unprovable state indeterminate, and seals all execution-critical plan fields against post-validation forgery. PR #16 is now 6dada71a17446a77be8c55e23a1cc67ef2d145b8; every Korean, Japanese, Chinese, Vietnamese, Spanish, German, and French fixture must produce the explicit unsupported-vocabulary abstention, with English retained as the positive control.

    On the current #16 head, workspace tests, clippy with warnings denied, CI contract validation, and the repository coverage gate pass; owned Rust source coordinates are 1484/1484 regions and 264/264 branches. Independent exact-object reviews report no remaining finding for current #13 and #15. Hosted Codex review is currently quota-limited and does not supply current-head approval. No protected merge is claimed: Foundation #1 remains REVIEW_REQUIRED with required jobs queued, so the stack cannot yet integrate. AC4 still needs steward decisions for all 49 live duplicate groups; AC6 still needs an authenticated Zotero 10+ transport and approved live write/rollback evidence.

  5. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    2026-09-05 successor update

    Draft PR #17 (01c7fa5bc7edac2f2b6ad47030062ffab7ebb956) now carries the missing owner-owned Zotero 10+ authenticated Local API transport on top of PR #16. Independent exact-object review first found that single-item Last-Modified-Version had been misread as a library version and that PATCH could not atomically enforce both library and item freshness. The repaired transport performs a stable library-version/read/item-version/read/library-version sequence and uses one-item POST /api/users/0/items with library If-Unmodified-Since-Version plus the item key/version in the body. It validates the server partition, exact returned key, advanced versions, complete collections/tags, bounded response, and keeps the API key private and absent from errors/serialization.

    Fresh local evidence on #17: workspace tests, strict clippy, CI contract validation, and coverage pass; owned Rust source coordinates are 1736/1736 regions and 294/294 branches. Final independent re-review found no remaining issue. This is transport contract evidence only: the installed Zotero remains 9.0.6, so approved live Zotero 10 write, partial-failure, and rollback proof remains incomplete. #17 is Draft behind the unintegrated stack; no protected-main merge is claimed.

  6. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    PR #18 now carries the Zotero 10 Local API authorization lifecycle at exact head 6e333aea4bdfa8b0b2d40a623ed7c69bb7bfb4a8, stacked on PR #17 exact head 01c7fa5bc7edac2f2b6ad47030062ffab7ebb956.

    Independent review found and the branch repaired two root defects before publication: a write 412 now verifies the response server before classifying library staleness, and authorization 403 is treated as user denial only when the exact server matches and bounded JSON proves {"denied":true}. Full Rust 1.98 workspace tests, strict Clippy, CI contract, and owned coverage (1,866/1,866 regions; 310/310 branches) pass.

    Still not claimed: a live Zotero 10 approval prompt, remembered key behavior, approved write, partial-failure recovery, or rollback execution. PR #18 remains Draft while the parent and protected gates remain unresolved.

  7. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    PR #18 advanced to exact head ec116a45102d774db236684a48bdd704188ec338. CodeRabbit identified that read-path 412 responses could hide a Zotero database switch; the library preflight and item GET now bind response server identity before generic status handling, with both stages covered by regression fixtures. Full Rust 1.98 validation and owned 100% region/branch coverage pass. Live approval, write, partial-failure, and rollback evidence remain open.

  8. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    Correction: the authoritative PR #18 exact head is ec116a404b32717f08b93c9f84a9af0c7cf0de64. The previous issue comment expanded the short SHA incorrectly; its described code and validation evidence are unchanged.

  9. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    PR #18 is now at final exact head c8727498cf8636a572cc7c7199cd26d40aab9c3a. The read-path database-switch repair remains fully verified, and PRD, TRD, ADR 0007, and the Gap baseline now describe the same server-before-status invariant. Rust 1.98 workspace tests and the CI contract pass at this head; the immediately preceding code head also passed strict Clippy and owned coverage at 1,866/1,866 regions and 310/310 branches. No live Zotero authorization or mutation is claimed.

  10. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    PR #18 advanced to exact head cf1832461c0b22e92afc3fe671c977964bf06ac4. Official Zotero Local API documentation specifies a 32-character local key; both authorization responses and direct credential injection now share that exact validation, and invalid values fail before any request. Rust 1.98 workspace tests, strict Clippy, CI contract, and owned coverage (1,868/1,868 regions; 310/310 branches) pass. Live authorization and mutation evidence remain open.

  11. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    Draft PR #19 adds the missing reviewed-plan to authenticated Zotero 10 execution boundary at exact head 11d1eec178bad6b09a4163cddd0bf165728c8a94, stacked on PR #18 exact head cf1832461c0b22e92afc3fe671c977964bf06ac4. It delegates to the existing dry-run, complete-preflight, reconciliation, and reverse-rollback core rather than creating parallel mutation logic. Mock Local API execution, full Rust 1.98 tests, strict Clippy, CI contract, owned coverage (1,878/1,878 regions; 310/310 branches), and independent review pass. Live authorization/write/rollback evidence remains open.

  12. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    Draft PR #20 adds the verified reverse rollback execution successor on exact head 70c1a85. It rejects mixed-server evidence before reads, preflights all operations at one library version, reconciles failed inverse writes, excludes indeterminate state from automatic retry while retaining complete operator evidence, and fixes partial-request capture in the mock transport. Rust 1.98 workspace tests, clippy, CI contract, and owned coverage (2092/2092 regions; 346/346 branches) pass. Independent exact-head re-review found no actionable findings. No live Zotero authorization, write, partial-failure, or rollback ran; AC6 remains open and PR #20 stays Draft behind PR #19.

  13. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    Draft PR #21 adds delayed, read-only reconciliation for indeterminate rollback evidence on exact head 6d57abd. It performs one logical stable read and no write, distinguishes restored/unchanged/indeterminate with exact server, item revision, and complete metadata, tolerates unrelated library-version advancement, and emits retry evidence only for a proven unchanged item. Rust 1.98 workspace tests, clippy, CI contract, and owned coverage (2154/2154 regions; 370/370 branches) pass; independent exact-head review found no findings. A fresh full Local API read also reconfirmed Zotero 9.0.6, API v3/schema 42, library version 12341, 8,326 observed records, 3,715 bibliographic classifications, 3,658 abstentions, and 49 duplicate candidates with zero read failures. The aggregate matches the prior baseline. Zotero 10 write authorization remains the live AC6 gate, so #21 stays Draft behind #20.

  14. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    Security-boundary restack update: PR #20 advanced to c45e4cb with explicit same-host loopback credential-confidentiality limits. PR #21 adopted it non-force at exact head 6221c72. Full Rust 1.98 verification and owned coverage remain GREEN; independent re-review found no findings. Zotero 10 availability alone will not be treated as enterprise-secure live write proof until the residual transport risk has an approved security/governance disposition or Zotero provides protected transport.

  15. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    Successor PR #22 is open as Draft at exact head 0a606c6 on base PR #21 head 6221c7266b61def787e88355dc8e288f9bb28dbb. The read-only classifier now retains a nonempty abstention abstract exactly once: in matched evidence when a rule conflict used it, otherwise in the review-only field. Rust 1.98 tests/Clippy/CI contract pass; owned coverage is 2163/2163 regions and 374/374 branches. A live read-only Zotero 9.0.6 rerun observed 8,326 records at library version 12341, 3,658 abstentions, 2,665 review-only abstracts, zero duplicate copies, zero decided-item copies, and zero read failures. The sensitive report remains outside the repository. No Zotero record was changed; steward approval and the secure Zotero 10 transport gate remain open.

  16. 25 remaining items

  17. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    PR #33 exact-head reconciliation: PR #32 advanced concurrently to 123efcf7d0032f7d327f34493a45697d9a2f8054 with the private-artifact coverage contract inherited from PR #30. PR #33 non-force merged that base as 89d03bf, reproduced the contract RED because write_all_and_flush and allowed_output_parents were still excluded, removed both production coverage exemptions in 8d6dece, and covered the real write-error path in f6086bb.

    Current PR #33 head is f6086bb15c18823a8dec7532b72207ce7f5e550b; exact base is 123efcf7d0032f7d327f34493a45697d9a2f8054. Workspace tests, rustdoc, fmt, strict clippy, and the repository coverage gate pass at 2,955/2,955 normalized regions, 562/562 branches, and 303/303 functions. Final independent exact-range review found no issue. CodeRabbit is pending on this exact head; that pending external state is not counted as approval.

  18. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    2026-09-05 canonical-owner repair and exact-head reconciliation

    The active Draft stack remains delta-preserving and was advanced without force:

    The new test-first security finding showed that read_private_json authorized a canonicalized parent but then reused the raw pathname for metadata and open. A same-host parent-directory symlink substitution could redirect the read outside the allowed parent despite final-component no-follow protection. The root repair was made once in canonical owner PR #30: retain the resolved authorized parent, append only the validated filename, and use that reconstructed path for metadata and O_NOFOLLOW open. A missing filename fails closed. PRs #31–#33 incorporated the repair through non-force merges.

    Exact-head local verification passed at every repaired stage: #30 2755/2755 regions, 514/514 branches, 292/292 functions; #31 2814/2814, 538/538, 295/295; #32 2846/2846, 542/542, 296/296; #33 2967/2967, 562/562, 304/304. Workspace tests, rustdoc with warnings denied, fmt, and strict Clippy passed. Independent review of final range a51f912c091c7cb1ec1f27de1bc7f9b3fa5906ff..03dafd3cb47fa0568dd9fa0ac8f7b565c3b07d0b found no actionable issue.

    GitHub currently reports all four PRs open, Draft, and CLEAN, with exact bases aligned. Their review decisions remain empty. CodeRabbit status contexts are successful, but PR #33 has no submitted review object; its comments only record skipped/rate-limited draft review attempts. These states are not approval and do not authorize merge.

    The real 25-record owner-only review batch remains unchanged: library version 12341, snapshot sha256:c49b08066c4526e520a5f85416543ea20a620a06170e1e15f563088f6bc9e162, exact 0600, 32,940 bytes, SHA-256 7d1a77bd6913bd8c0c826ab60c1a4fa31afede7f7e7e694aad351c31c710b921. No item data was printed or committed. Unverified worksheet decisions and externally approved labels both remain 0/3,715; no Zotero mutation, approval, protected merge, or release is claimed.

  19. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    Exact-head repair update (2026-09-05)

  20. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    PR #34 (a84e6d49aba2a4fd0b0ef303a342922c4ce909bb) repairs a review-evidence integrity gap found after PR #33. A completed batch can no longer be deserialized as a context-free patch, and its root, decision, evidence, and tag objects reject unknown fields. The new --apply-review-batch path rederives and compares the exact displayed context before reusing the atomic worksheet update.

    Exact-head local evidence is GREEN: CI contract, rustfmt, rustdoc and clippy with warnings denied, full workspace tests, and owned coverage at regions 3120/3120, branches 582/582, functions 308/308. Independent exact-head review found no actionable findings after the repair. PR #34 remains Draft/open on #33; hosted protected checks and external approval are not claimed. Real steward progress remains 0/3715 and no live Zotero write occurred.

  21. seonghobae commented on Sep 4, 2026

    @seonghobae
    ContributorAuthor

    PR #34 final exact-head update: a84e6d49aba2a4fd0b0ef303a342922c4ce909bb. Independent review reproduced and then verified closure of the permissive-JSON P2: unknown fields now fail at batch root, decision row, evidence, tag, and patch root boundaries; CLI tests verify no output at every boundary. Final local exact-head CI contract, fmt, rustdoc, clippy, workspace tests, and owned coverage are GREEN (3120/3120 regions, 582/582 branches, 308/308 functions).

    The real 25-record owner-only batch remains unchanged at 32,940 bytes with 0 filled decisions. Running --apply-review-batch against that real incomplete artifact failed with InvalidReport and created no output, as required. PR #34 remains Draft/open/CLEAN on #33; hosted protected workflows and one external approval remain unfulfilled, so no merge is claimed.

  22. seonghobae commented on Sep 8, 2026

    @seonghobae
    ContributorAuthor

    Fresh read-only replay from current ConceptWeave owner executable (2026-09-08): Zotero 10.0.1/API 3/schema 44, library version 2; 8,326 observed records = 3,715 classified proposals + 4,611 retained nonbibliographic records; 4 pending sources. Private 0600 report SHA-256: sha256:5b2d81bddf09475de76ce18efa9fb5b486c44b794c9db6b697d183da5c268b48. Decisions and independently approved labels remain 0/3,715. This is aggregate evidence only; no Zotero mutation or semantic authority claim.

  23. seonghobae commented on Sep 8, 2026

    @seonghobae
    ContributorAuthor

    2026-09-09 00:47 KST exact-head evidence update

    A release-mode Zotero Local API replay completed read-only. The owner-only report was 0600, 8,132,756 bytes, SHA-256 8e533d4d4b27d93bce8e1223528b109f07ba69ff19d1e41cf58a3245b02545cc. Aggregate: 8,326 observed, 3,715 classified proposals, 4,611 unclassified, 4 pending sources, 49 duplicate candidates, 0 failures. Discovery-only title signals: ontology 27, OWL 23, RDF 20.

    The repeated digest confirms observation reproducibility only; no steward decision, approval, semantic publication, or Zotero write occurred. The next implementation Gap remains the exact report-bound source-resolution envelope across full-text worksheet, finalization, evaluation, and write admission after protected owner integration.

  24. seonghobae commented on Sep 8, 2026

    @seonghobae
    ContributorAuthor

    2026-09-09 06:31 KST live evidence: Zotero 10.0.1 was listening on 127.0.0.1:23119. Pinned Rust 1.98 release CLI completed another read-only full-library replay to a new 0600 /tmp report, reproducing SHA-256 8e533d4d4b27d93bce8e1223528b109f07ba69ff19d1e41cf58a3245b02545cc and aggregate counts 8,326 observed / 3,715 classified / 4,611 unclassified / 4 pending source keys / 49 duplicate candidates. This confirms replay continuity only; steward decisions, approvals and Zotero writes remain 0/3,715, and no protected merge or release is claimed.

  25. seonghobae commented on Sep 8, 2026

    @seonghobae
    ContributorAuthor

    2026-09-09 current-stack recheck: PR37 exact head 9e2e3d5, PR39 c88c5f0, and PR40 26d088f remain OPEN with stacked bases; PR40 is Draft and retains raw coverage deficits, while PR39/37 expose no hosted run or independent approval on their exact heads. The next implementation gate remains owner repair/integration of the source-resolution and full-text write envelope. Current Zotero Local API replay continuity does not change the steward-approved denominator (0/3,715) or authorize writes.

  26. seonghobae commented on Sep 8, 2026

    @seonghobae
    ContributorAuthor

    2026-09-09 fresh release replay: pinned Rust 1.98 owner executable read the live Zotero Local API into a private direct-child /tmp report (0600, 8,132,756 bytes). SHA-256 8e533d4d4b27d93bce8e1223528b109f07ba69ff19d1e41cf58a3245b02545cc; aggregate 8,326 observed / 3,715 classified / 4,611 unclassified / 4 pending sources / 49 duplicate candidates. The digest matches the bound baseline, confirming deterministic replay continuity only; no decisions, approval, publication or Zotero write occurred.

  27. seonghobae commented on Sep 8, 2026

    @seonghobae
    ContributorAuthor

    2026-09-09 exact-head recheck: PR39 remains OPEN non-Draft CLEAN/MERGEABLE at c88c5f0 (base 7678236); only CodeRabbit skip/pass is visible and no hosted run exists for the exact head. PR40 remains OPEN Draft CLEAN/MERGEABLE at 26d088f (base b98ba39); its only check is the expected draft skip and no hosted run exists for the exact head. Protected merge/release is therefore not evidenced; retain the stack and wait for central workflow/review receipts. Visual inspection was attempted but the Mac was locked, so no layout claim is made.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions