Skip to content

sci v2026.08.29

Choose a tag to compare

@github-actions github-actions released this 29 Aug 04:59
· 7 commits to main since this release

Breaking

  • the module says where it lives — sciminds/sci, and the sqlite reader joins the shared surface
  • zot: doctor becomes read-only reporting, and bib's answer is the unresolved list
  • zot: Phase 3 — sci shrinks to the public local read surface
  • a flag's value belongs to the invocation, not to the package
  • zot: help text stops pointing at verbs that refuse
  • zot: the Zotero surface is local, read-only, and needs no credential
  • the reader stops carrying what the shrink stranded
  • pkg/ keeps only what sci itself imports
  • pkg/ becomes internal/, because sci publishes nothing
  • local: the search API drops the hook nothing supplied
  • uikit: the progress runner goes with the work it reported on
  • uikit: the toast overlay goes; its severity vocabulary stays
  • uikit: the unadopted layout primitives go
  • uikit: the generic async command wrapper goes
  • uikit: the uncalled layout and router helpers go
  • cli: every failure path speaks the --json envelope
  • zot: a redirected bibliography is a bibliography
  • db: a command that reads stops rewriting the file
  • doctor: --json diagnoses instead of silently upgrading the machine
  • cli: --json stops answering "yes" on your behalf
  • zot: setup --json stops rewriting a config nobody consented to

Features

  • zot: produce the reference title pool from the works just fetched
  • zot: drive the paper pipeline unattended, gated on a mirror that can see the paper
  • zot: fetch the paper that arrived, not the library again
  • zot-pipeline: let the metered stage spend, inside a bound it prices first
  • zot: repair an item's type and creators, and say what the type change cost
  • proj: scaffold, detect, and render pure-Typst manuscript projects
  • zot-pipeline: let the slow cadence start and stop GROBID, and stop only what it started
  • zot: doctor pdfs --missing — compute the PDF-less predicate locally, don't outsource it
  • zot: crossref works — fetch each DOI-holding item's own record into staging
  • help: the help TUI shows how to call a command, and every demo is reachable
  • cloud: retry the Hub's transient failures, never its refusals

Fixes

  • zot: recognize eLife, PeerJ and OUP subobject DOIs, and Wiley article sections
  • zot: project every field a remote read returns, not two of them
  • zot-pipeline: ship with flags openrsync accepts, because mbp has no GNU rsync
  • zot-pipeline: test a journal's header, not its size, and let a gate hold be an answer
  • zot-pipeline: guard BASHPID, because mbp's bash is 3.2 and set -u makes a bare reference fatal in the EXIT trap
  • zot-pipeline: make preflight check that sci CAN do the job, not that it exists
  • proj: track the typst refs.bib the gitignore was swallowing
  • zot: noChildren means top-level-only, not childless — delete the numChildren post-filter
  • cli: the explanation reaches whoever asked for it
  • local: a merged handle refuses a single-library query instead of answering it
  • zot: --library all info answers instead of quoting Go at the user
  • cli: help refuses politely instead of crashing, and stops painting pipes
  • scripts: doc-coverage stops checking a glob that matches nothing
  • proj: route post-step warnings to stderr
  • uikit: advance md search scan by lowered-needle length
  • zot: share one DOI-prefix list; add dx.doi.org to bib resolution
  • cmdutil,doctor: drain the pipe in stdout-capture test helpers
  • local,store,cass: match sentinel errors with errors.Is
  • cass,doctor,zot: make map-driven output deterministic
  • zot,local: rune-safe truncation for previews and labels
  • selfupdate: stop background update checks in dev builds
  • cloud: keep the Hugging Face token on the Hub's own origin
  • cloud: stop reporting every token-read failure as "not logged in"
  • lab: stop reporting a truncated rsync stream as a clean transfer
  • doctor: explain a failed install, and let the scenario runners update brew first

Improvements

  • zot: the link writes retire, and rule 18 learns to read the client's verbs
  • local: symbols exported only for the departed consumer go unexported
  • uikit: one severity vocabulary instead of three
  • dbtui: the blank rows say what they are
  • delete 20 unreachable symbols, justify the 14 that stay
  • cloud: read identity and bucket listings from the Hub API
  • dbtui: unshadow lo, dedupe the read-only-tab predicate
  • uikit: constrain Router's model type to tea.Model
  • cass: delete the github client's inert semaphore
  • lab: move SSHBackend out of the TUI package
  • db: extract openStore from RunTUI

Documentation

  • the prose catches up with the shrink
  • the demos stop teaching commands that fail
  • the documentation describes a standalone local reader
  • zot: sci's reasons stop citing a project sci no longer knows
  • the guides stop naming symbols sci no longer has
  • the guidance describes the rules that actually run
  • the prompt rules record that --json is not consent
  • readme: normalize headings and tables, drop the retired Cloudflare note

Commit: 4a3b540

SHA256(sci-darwin-amd64): 5b6201cd59f386b74ceeb8546e01bce37005a42e863bf5972c1ccf97f023b6b0
SHA256(sci-darwin-arm64): 4215ccf9c445955eee9e72711fa23ce74677d5d7f7d322a4bdc4cc496798a152
SHA256(sci-linux-amd64): 212544bb9fbf33774f44308b616a8c8b43a7bb65c8a7b8b60410e853e64e0c17
SHA256(sci-linux-arm64): 0b30b0d03d505ee9625a62b3ab96f3b407f08cf0653520ddfae21356f8e60de5

Install: curl -fsSL https://raw.githubusercontent.com/sciminds/sci/main/install.sh | sh