Skip to content

feat(analysis): exact multiplicative zero replacement, TSS offsets, and epistemic receipts - #59

Merged
hyperpolymath merged 1 commit into
mainfrom
arena/01a0d269-metamanifold-webui
Sep 24, 2026
Merged

hyperpolymath merged 1 commit into
mainfrom
arena/01a0d269-metamanifold-webui

Conversation

@arena-ai-coding-agent

Copy link
Copy Markdown

Summary

Tests & Hygiene

  • check-spdx.sh: OK (279 files covered)
  • check-format.sh: OK (326 files checked)
  • check-blob-hygiene.sh: OK
  • New comprehensive unit tests added to test/unit/test_execution.jl and test/unit/test_analysis_config.jl.

@coderabbitai

coderabbitai Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: f61b533d-5a90-4691-a146-5e1917cc4731

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

- Implement exact Martín-Fernández (2003) multiplicative replacement and
  Martín-Fernández (2015) Bayesian Dirichlet replacement, strictly preserving
  total sample depth and subcompositional ratios (Refs #21)
- Implement exact TSS offsets for NB_GLM, preserving raw count response tables
  and providing log(lib_sizes) offsets without double-normalization (Refs #16)
- Add Standpoint, TaxonWarrant, ProjectionY, and SHA-256 Receipt verification
  to Epistemic.jl with URI encoding for the avec_fibre column, integrating with
  EpistemicTypes.jl, Protoctist.jl, and echo-types
- Add disambiguate_zero (Val(:true_absence) vs Val(:undetected)), formalizing
  the boundary between biological absence and detection limits (Refs #18, absolute-zero)
- Add comprehensive unit tests in test_execution.jl and test_analysis_config.jl

Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com>
@arena-ai-coding-agent
arena-ai-coding-agent Bot force-pushed the arena/01a0d269-metamanifold-webui branch from 2a870f2 to e31e559 Compare September 24, 2026 08:14
@hyperpolymath
hyperpolymath merged commit 4315683 into main Sep 24, 2026
3 of 4 checks passed
@hyperpolymath
hyperpolymath deleted the arena/01a0d269-metamanifold-webui branch September 24, 2026 08:17
hyperpolymath added a commit that referenced this pull request Oct 17, 2026
… work (#178)

## Purpose

Make the fork's anticipated upstream state concrete while Joshua's
reviews/merges remain pending. This is a **draft baseline proposal**,
not evidence that upstream has merged anything.

The proposed file tree is exactly JoshuaJewell/main at
`52feb605176a4b140f4b40c2b74d2f18adec1f72` plus:
- upstream #59 at `3c9d352e1f6c85353c2d78ef1ebf28e5fb64c263`
- upstream #60 at `ea974a2328f7f44ad9afeb2f10e5803cd4e31e62`
- upstream #61 at `d9ea982dc97c958405e1ff6f57f1b0d8d9b221d1`

Resulting tree: `b27daa7f1aa5fa84f320ddae522fa5f2a15ebef5`.

## Effect on fork main

This deliberately removes fork-only content from the proposed active
baseline: 74 files differ from current main. The existing main commit
`491a3e0702ca8ca40e411860d6166523b298b3ac` is the first parent, and all
three repair heads are additional parents, preserving the work in
history. No existing branch is deleted or rewritten. Do not submit this
integration branch upstream.

**Before merging:** decide whether main should be the upstream-aligned
baseline, with unfinished work isolated onto feature branches. This PR
removes real fork features from the active tree, not just stale merge
metadata. Recheck upstream and repair heads after Joshua's final
decisions; their eventual file tree may change.

## Branch audit

There were seven total branches when inspected: main and six additional
branches.

| Branches | Finding | Disposition |
| --- | --- | --- |
| repair/permanova-proofs | Clean pending upstream #59 | Keep until
merged |
| repair/documentation | Clean pending upstream #60 | Keep until merged
|
| repair/dada2-base-r | Clean pending upstream #61 | Keep until merged |
| upstream/permanova-proofs, upstream/docs-community,
upstream/dada2-base-r | All three have identical tree
2361ab8; old contaminated submissions,
not independent WIP | Retire after baseline decision; no unique feature
work needs completing on these branches |
| main | Contains additional work beyond the repaired upstream
contributions | Preserve and isolate selected changes |

Compared with the old three branches, main changes only .gitignore, the
differential fixture, the restored deferred-issues specification and
removal of the duplicate root code of conduct. Their substantive work is
preserved.

## Genuine work to isolate and finish

These are code-review findings, not claims that the features have passed
a fresh full validation.

| Work | Evidence / remaining work |
| --- | --- |
| glmGamPoi dispersion | Actual implementation and configuration exist,
but glmGamPoi is absent from renv.lock. Existing tests do not establish
successful reference fits through this path. Pin dependencies and
validate against trusted R fits before treating it as complete. |
| Significance proof model | The Agda model makes noncomputed numbers
unrepresentable, while the Julia documentation explicitly permits
retained pairwise rows after an omnibus failure. Reconcile model and
implementation; do not claim the proof establishes the Julia
representation's behavior. |
| Canonical JSON/JCS | Utility and fixtures exist; no production callers
found beyond module inclusion/export. Establish conformance and choose
an actual integration point before claiming end-to-end provenance. |
| Memory occupancy | Measurement, algebra/proof integration, tests and
scripts exist. Isolate the work, verify sibling dependency pins and real
runtime measurements. This is distinct from biological occupancy
modelling in issue #18. |
| Wildcard-IP origin handling | Separate behavioral change in server
middleware. Review address/port parsing and trust assumptions, then run
host/origin, DNS-rebinding and CSRF regressions before submission. |
| Plot title markup stripping | Small independent helper and usage
change; suitable for a focused bugfix after checking its tests and
behavior. |

Repository layout changes, frontend major upgrades, community policies,
automation and other tooling are separate fork-maintenance decisions,
not prerequisites for the three upstream repairs. Do not carry forward
the obsolete claim in fork AGENTS.md that locked ggplot2 requires
tibble: the retained tibble dependency is used by installation/CI
tooling.

Open planning issues are not evidence of implemented branch WIP; several
overlap or describe functionality already upstream.

## Validation

- All six repair commits applied together without conflicts.
- git diff --cached --check passes.
- Local combined tree and GitHub-created tree match exactly.
- Latest individual PR CI runs passed: #59 run 38976014775; #60 run
38998820680; #61 run 38998823755.
- Combined baseline CI is separate and must be inspected before merging.

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Joshua Jewell <developer@joshuajewell.dev>
Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com>
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.

1 participant