Skip to content

0.7.0

Latest

Choose a tag to compare

@ramanse ramanse released this 15 Oct 14:52

Added

  • Two ways to try Clew with nothing installed. A Codespace opens with
    Nextflow, Docker and two recorded nf-core/demo runs already in the
    image, and docker run -p 8770:8770 ghcr.io/quietflare/clew serves the
    page with the same runs. docs/try.md walks through both.
    In a Codespace, triage and the agent go through a proxy QuietFlare runs
    unless you set your own keys.
  • Drift and Reclaim tabs on the page. Drift compares two runs of the
    picked record, roots with their causes and the rest by cause. Reclaim
    weighs the run's work directories from the record and the disk, with
    the proof and the causes that withheld the rest, and deletes nothing.
    "Explain in words" has a model read the plan on the page and say what
    it reports, never whether it matters.
  • Browse on the page uploads a run from your own machine: a launch
    folder, a .lineage folder, or a zip or tgz of either, in every
    browser.
  • The Nextflow lineage extractor reads the copies publishDir made, with
    their checksums, into the graph's published files. On a store recorded
    with NXF_CACHE_MODE=DEEP, clew reclaim proves a work directory
    redundant from the record alone, with no clew digest pass.
  • Each command ends with the next one: --list-runs with extract,
    extract with impact, impact with seal, seal with verify.
  • The agreed design lives in spec/: a module diagram, the rules and a
    module map, reviewed on every pull request.
  • examples/weblog_receiver.py collects the events the nf-weblog
    plugin posts into the JSONL file clew extract nextflow-work reads, so
    a run made without the lineage store still gets a graph from its work
    tree. docs/try.md walks through it: receiver up, then
    the run, then the extractor.
  • The plan table on the page shows each task's hash beside its process
    and tag, so three rows of one process read apart, as they do in the
    terminal.

Changed

  • clew demo is gone. The recorded runs and docs/try.md replace it.

Fixed

  • from clew.provider.nextflow import NextflowAdapter, SheetKind, the
    import the providers guide shows, now works; the package exported only
    NextflowAdapter.

  • A .history entry Nextflow did not write, such as a macOS ._* file
    left by a tarball, is skipped with a warning instead of crashing the
    extractor.

  • A content-mode checksum label in a Nextflow lineage store is believed
    only when the run record names Nextflow 26.09.0-edge or later. Earlier
    versions wrote a standard-mode value under whatever label
    NXF_CACHE_MODE gave (nextflow-io/nextflow#7579), and the extractor
    took the label at its word. The coverage note names the version that
    wrote the store and what to do.

  • The store's sha256 mode is Nextflow's own 128-bit hash over the
    content, not a SHA-256 of the file. Its digests are now labelled
    nextflow-sha256: beside nextflow-deep:, so they never read as
    comparable with a clew digest value.

  • The sources doc said process.cache = 'deep' makes the store record
    content checksums. It does not; the environment variable does, on the
    fixed versions.