Skip to content

docs: shared policy spec for the wrong-science fix wave - #101

Merged
guijacquemet merged 3 commits into
mainfrom
claude/spec-wrong-science
Oct 12, 2026
Merged

guijacquemet merged 3 commits into
mainfrom
claude/spec-wrong-science

Conversation

@guijacquemet

@guijacquemet guijacquemet commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Adds docs/SPEC_WRONG_SCIENCE.md (docs only, no code) and aligns related docs with the maintainers' decisions. Known-answer fixtures are data, meant for conformance.json key wrong_science and the conformance suite (#87). Spec status: v1 is 2D; N-D and the QuPath resolution choice follow in Wave 2.

Themes: 1 coordinate frame, 2 calibration, 3 retention, 4 run identity, 5 async ChoicesFrom lookups, 6 number limits.

What changed in the latest update

  • Retention: hosts never prune and never delete under results/ or runs/. Hosts only write .lc-owner.json and .lc-done.json, then start labconstrictor-tools prune in a detached subprocess. Only Tools prunes (labconstrictor_tools.retention, CLI prune). GUI-only users get cleanup through that CLI. Removed: host-side prune, Java line-by-line port, cross-language lock text. RET-01..07 are now "prune eligibility" fixtures against the Tools reference; RET-08 is CLI-only concurrent prunes; new HRET-01..04 assert hosts never delete. The FileOut move before temp-folder deletion is kept (not pruning). Windows note: junction via mklink /J, plain symlinks need admin.
  • Calibration: _calibration is per axis (x, y, z, t each {value, unit, source} plus overall provenance); phase 1 fills x, y. New fixtures: TIFF INCH 72/96 dpi = unknown, micro-sign spellings (U+00B5, U+03BC, U+FFFD), Angstrom. Anisotropic rule (>1e-3) stated as a behaviour change with a release-note line.
  • Coordinate frame: frame is {source, shape, axes_offset (t,z,y,x), plane, downsample, transform}. One placement formula: c = x0 + (x + 0.5) * downsample. Results with no t/z land on the exported plane (not plane 0). QuPath whole-image and viewport export use the same plane. Fixture CF-14 (downsample 2 and 4) added; Wave 2 fixtures needed are listed in the spec.
  • Number limits (new section 6): form integers up to +-(2^53-1), floats +-1e15; beyond is refused, never clamped. Fixtures NUM-01..05 per host.

Related docs edited for consistency

  • SPEC_WAVE2.md: 1.4 calibration rules rewritten (unknown, blank field, run blocked, no default stand-in, per-axis _calibration; example drops the = 1.0 defaults); 1.5 and open question 6 now say "exported plane", not plane 0; calibration_prefill case updated.
  • HOST_PARITY.md: C19 (bare scale = unknown, not assumed um), A06, A07, C01, D05 (limits), L02, L03 (hosts never prune), fix rows FJ-4, QP-18, NB-7, NB-1, QP-2c, and the conformance.json sketch (form_integer_max, unbounded_float).
  • HOST_FEATURES.md: PixelSizeOf row. OPERATIONS.md, AUTHORING.md: cleanup is done by labconstrictor-tools prune.
  • Consistency grep over the specs, HOST_*, PROTOCOL, OPERATIONS, AUTHORING for assumed / prune / flock / RET-08 / plane 0: remaining hits are intentional.

Section 8 of the spec lists decided items and the working decisions marked "default, not yet confirmed". Not merged; for review.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Y2SN8SuEakTdiWy3F2WUqN

… wave)

Host-neutral rules and known-answer fixtures for coordinate frame,
calibration, retention under LC_HOME, run identity and async ChoicesFrom
lookups. Docs only.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y2SN8SuEakTdiWy3F2WUqN
…AVE2 1.4

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y2SN8SuEakTdiWy3F2WUqN
…-axis calibration, frame with downsample, number limits)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y2SN8SuEakTdiWy3F2WUqN
@guijacquemet
guijacquemet merged commit b0de9bf into main Oct 12, 2026
14 checks passed
@guijacquemet
guijacquemet deleted the claude/spec-wrong-science branch October 14, 2026 16:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants