zero_one_beta() defines a one-response distribution for continuous
proportions on [0, 1] when exact zeroes or ones are structural outcomes
rather than binomial denominator outcomes.
Details
The implemented fixed-effect contract is logit(mu) = eta_mu,
log(sigma) = eta_sigma, logit(zoi) = eta_zoi, and
logit(coi) = eta_coi. Here zoi is the probability that an observation
is exactly 0 or 1, and coi is the conditional probability of an exact 1
given that the observation is on the boundary. Interior observations follow
the same beta mean-scale contract as beta(), with internal precision
phi = 1 / sigma^2.
fitted() returns the unconditional response mean
(1 - zoi) * mu + zoi * coi. Ordinary unlabelled random intercepts and
independent numeric slopes such as (1 | id) and (0 + x | id) may enter
mu. The point-fit-only q1 gates additionally admit one ordinary
intercept-only random effect in sigma, zoi, or coi, separately, plus
one ordinary slope-only effect in any one of those parameters when the fixed
and random terms use the same raw symbol. Examples are
zoi ~ x + (0 + x | id) and coi ~ x + (0 + x | id). The exact coi
admissions are that slope form and coi ~ 1 + (1 | id), both with fixed
sigma ~ 1 and zoi ~ 1. All of these routes carry point-fit recovery
evidence only. The two sigma routes now admit direct profiling, so
confint(method = "profile") reaches their SD target; that makes an
interval computable, not calibrated, and no interval, coverage, or broader
recovery claim is established for them. For the zoi and coi routes,
direct profiling, intervals, coverage, and broader recovery claims remain
unavailable. In the retained coi recovery rung (M = 64, 50 observations
per group), population-level point recovery remained stable when a few groups
had fewer than two observed zeroes or ones, but those groups can have weakly
identified conditional modes; inspect the within-group atom counts before
interpreting individual modes. Correlated or labelled effects,
intercept-plus-slope atom effects, transformed or mismatched zoi or coi
slope symbols, structured atom effects,
covariance blocks, and denominator syntax remain unsupported. One further
point-fit-only structured route is
available: an unlabelled q1 phylo(1 | group, tree = tree) intercept in
mu. It does not license other providers, slopes, labels, covariance,
q2-plus structured effects, profiling, intervals, coverage, or inference
claims.