# riverbed — findings Built and tested 2026-08-06/07 on one box: RTX 4090, `huihui_ai/mistral-small-abliterated:24b` as both generator and navigator, ollama at 8192 ctx. Written for posterity, which means the retractions and the null results are in here at the same volume as the wins. Three claims were confirmed under pre-registration, two earlier results were retracted as artifacts, one claim was falsified, and one bug was found that had silently disabled the system's most novel mechanism. --- ## 1. What riverbed is A persistent weighting field around an LLM. Shapes, propositions, metaphors, observations and operators as typed nodes; typed edges; per-node weight meaning **current navigational salience given accumulated overlap** — explicitly not probability-of-truth. The model rotates and proposes; deterministic code moves weight. Nothing is deleted; broken shapes erode to residue. Contradictions are held open as generative rather than resolved. Two model calls per turn (generator hot and unranked, navigator cold and JSON-bound), with `weights.py` — not the model — performing REWEIGHT in between. ## 2. Confirmed, pre-registered Decision rules were fixed in writing before data was seen in all three. **Weighting steers traversal.** Two clones with identical nodes and edges, differing only in which shapes carried weight. Traversals attached to a shape 16/23 runs when promoted vs 0/23 when not. Fisher exact one-sided, p = 2.5e-07. Both fields significant independently. **Erosion steers traversal** — the actual thesis, since hand-setting a weight is turning a knob and the claim is that the knob turns itself. Two fields from a flat seed, divergent erosion histories, targets restricted to nodes present in both so vocabulary cannot explain a hit: 18/20 vs 7/20, p = 0.00039. **That replicates with target base-rate controlled.** Four unrelated passages (rhythm, law, ecology, tide), none about any target shape: 18/24 vs 5/24, p = 0.0002. All four passages point the same way; both target sets clear independently. A behaviour nobody designed for: a high-weight shape (`alluvial`) persisted through 21/23 perturbed traversals while lesser shapes redirected attention locally. Strong orientation surviving perturbation while weak ones steer is what "navigational salience" is supposed to mean, and it fell out of the weighting rather than being specified. Also striking: the erosion separations that produced this were **+0.75 to -0.60 on a flat seed**. Very little weight movement was needed. ## 3. Retracted Both were reported as encouraging before the control existed. Kept here because the wrong turns are the more instructive half. **"80% divergence between differently-eroded fields" — vocabulary, not orientation.** Three of five attachments were to nodes that existed in only one of the two fields. A graph with different nodes gives different answers; that is trivially true and shows nothing. **"67% divergence with vocabulary held constant" — sampling noise.** The generator runs at temperature 1.15, so two runs of the *same* field disagree too. Measured: within-field divergence 63%, between-field 66%. A +3% effect. **The methodological lesson generalises.** Set-Jaccard over whole attachment sets buries a sharp effect under the noisy tail of incidental attachments. More data would not have found the real effect; changing the instrument did. Measure the targeted claim. ## 4. RETRACTED — the "fabrication" finding was an invalid experiment **Read section 4b first. The claim below does not stand.** It is kept in full because the error is more instructive than the result would have been, and because a posterity document that quietly deletes its mistakes is worthless. The adversarial test. An anchor shape (`path-dependence`: "repeated flow deposits sediment and carves a channel in the bed; the channel then directs where later flow runs"), then: - **6 real probes** — same relational topology, alien domains (immunology, linguistics, law, metallurgy, urbanism, neurology), deliberately zero anchor vocabulary. - **6 fake probes** — 3-6 of the anchor's distinctive words each (channel, flow, deposit, bed, current) but a *different* relational topology: intermediation, conservation, dilution, capacity. Verified before running: every fake used 3-6 anchor terms, no real used any. Result: credited as independent cross-domain recurrence in **5/6 real vs 3/5 fake**, p = 0.42. **Not distinguished.** What it credited the fakes *for* is the important part: hydraulics fake, verbatim text: "...Nothing is deposited and the pipe is unchanged." riverbed: ~overlap non-depositional-flow -> path-dependence [independent] +1.69 acoustics fake, verbatim: "...the passage of the current deposits nothing in the walls" riverbed: ~overlap acoustic-carving -> path-dependence [independent] +1.69 ~overlap acoustic-deposition -> linguistic-erosion [independent] +1.69 It invented *deposition* out of passages that explicitly deny deposition, and credited the invention as independent evidence. `non-depositional-flow` credited as a recurrence of path-dependence is the negation of the anchor being scored as confirmation of it. That is `generated-pseudo-information` — a node in our own seed — caught in the act. **The architectural insight, which is worth more than the null:** domain-independence and structural genuineness are *orthogonal*, and only the first was built. The check verifies that a domain label is new. It cannot verify that the resemblance is real. A fabricated resemblance arriving from a genuinely new domain passes trivially, because it *is* from a new domain. Secondary (pre-registered as secondary, not decisive, underpowered — reported for direction only): mean anchor weight delta was +3.46 real vs +1.08 fake, a 3.2x gap, because real probes generated several overlaps each while fakes generated one shallow claim. Not sufficient to rescue the primary and not treated as if it were. ## 4b. Why section 4 is retracted, and what replaced it Kieran read the acoustics case and said: sound *does* deposit energy and cause deformation, the same way an alluvial process does. He is right, and checking the rest of the "fakes" made it worse: - **acoustics** — acoustic fatigue cracks aircraft panels; cavitation erosion physically carves metal; acoustic streaming deposits momentum; Chladni figures are sound depositing structure. `acoustic-deposition` was a good coining, not a fabrication. - **banking** — relationship lending, credit histories, regulatory scar tissue. Banks are saturated with path-dependence. - **logistics** — established lanes and contracts are worn channels; routes learn. - **electronics** — real capacitors show dielectric absorption ("soakage"); electrolytics reform their oxide layer according to use history. - **hydraulics** — real pipes scale, corrode and grow biofilm; roughness accumulates and changes flow. So the six "fake" probes were six passages *asserting* the absence of path-dependence in six domains that all exhibit it. **Ground truth was stipulated, not established, and the experiment then measured obedience to the stipulation.** The system disagreeing with my assertion was not fabrication; it was rotation finding something true. The sharpest form of the error: induction rule 01 reads *"When the interlocutor supplies non-binding information: do not infer endorsement."* The system was explicitly instructed not to treat supplied assertions as authoritative, then graded as failing for not treating them as authoritative. **The fix built in response was therefore also wrong.** Evidence grounding requires a quote from the passage supporting the structure, which enforces textual deference and punishes ROTATE — the core operation. The data is unambiguous: with grounding on, real credits fell from 5/6 to **2/5** while fakes fell to 1/6, and the verification layer rejected **3 real claims**. Fisher p=0.42 either way. It bought fake-rejection by destroying true-positive rate. **What survives from §4:** the orthogonality observation — domain-novelty does not verify structural realness — is still true by inspection of the code. But it has no demonstration behind it any more, because every case offered as a demonstration may have been a correct judgement. Logic intact, evidence gone. **What replaces the design.** If path-dependence really does appear in banking, acoustics, hydraulics, electronics, logistics and chemistry once you look properly, clean negatives may barely exist, and "does the field over-credit this shape" is not answerable by counterexample at all. The frame was wrong, not just the probes. The replacement is **discrimination among competing anchors** rather than presence/absence of one: seed several shapes (path-dependence, conservation, equilibrium, coupling) and test whether an experience attaches most strongly to the one that actually dominates it. That stays measurable even when every shape is faintly present. Definitionally memoryless processes (radioactive decay — the exponential is the unique memoryless continuous distribution) remain valid as a sanity probe, because there the absence is physics rather than assertion. **Open design fork, Kieran's call.** When the model claims a resemblance its priors supply rather than the arriving experience, is that a new independent observation? Crediting it lets priors inflate weight without anything being observed; refusing it makes the field a stenographer and forbids rotation. Current lean: credit it, but mark experience-sourced and rotation-sourced claims distinctly so they can be compared later. ## 5. The bug: a guard that blocked everything and never paged Found only because the falsification test above used that guard's output as its outcome variable. Before the fix: 50 overlap events across 12 probes. 0 credited as independent. 32 of them carried a genuinely new domain (immunology, ecology, machine-learning, psychology, phonology, law, engineering, physics, sociology, astrophysics...). The cross-domain recurrence mechanism — the one claim a prior-art sweep found unclaimed — was **inert**, and nothing surfaced it. Not in `status`, not in turn output. Cause was a design error in the direction of the whole architecture. The principle is *the model claims, the code verifies*; then the model was handed the adjudication — "independence is a high bar, when in doubt, false." A 24B navigator always doubts. Fix: the navigator's job is now factual, not evaluative. It reports `domains` and flags only the narrow answerable case `same_route` ("is this the same phenomenon renamed, or arrived by the route this node already came by?"). The code decides independence. And the guard pages when it denies every opportunity in a turn. Both under regression test. Post-fix the mechanism is live (5/6 real credited) — which is what made section 4's falsification possible at all. The first run of that test was uninterpretable: 0/6 vs 0/6, zero variance, no power. ## 6. Prior art Verified by grepping paper text, not summaries. Full detail and URLs in the session record. | claim | verdict | |---|---| | salience explicitly ≠ truth | **well-trodden.** Memory as Metabolism (arXiv 2604.12034, Apr 2026) rejects the truth reading explicitly; AGM epistemic entrenchment did it in 1988; Engram already ships salience and confidence as separate fields | | cross-domain recurrence + independence verification | **no prior art for the conjunction.** Memory as Metabolism flags "source diversity weighting… candidate defenses we flag without currently implementing"; GovMem (2607.02579) says "repetition is not evidence" but detects shared prompts/tools, not domain difference, and only penalises correlation, never credits independence | | contradictions preserved as generative | **partial.** StateFuse (2607.05844, Jul 2026) does conflict-preserving memory for CRDT correctness; CD-AI (2507.08804) has the stance without a memory. "Preserved *because* generative" unclaimed | | perturbation falsifiability incl. survival-of-negation-is-bad | **partial, and a naming risk.** The criterion is literally called *vacuity* in formal verification — Beer et al., CAV 1997. Applying it to a stored memory item is unclaimed. Kassner & Schütze (ACL 2020) observed the identical signal and attributed it to model negation-insensitivity; our attribution is inverted from theirs | | persistent weighted agent-memory graph + learned graph-encoder adapter | **no prior art found.** Every graph agent memory serialises to text (Zep, Mem0, A-Mem, HippoRAG, GAM). GraphToken/G-Retriever are static-benchmark-only. LPM (2606.20911, Jun 2026) is this architecture with a flat matrix where we want a graph | Skeptical note to carry: *Does Memory Need Graphs?* (2601.01280) finds graph memory does not universally beat flat text on long-term dialog. If the adapter gets built, the bar is beating LPM's flat slot matrix, not beating text RAG. ## 7. What follows **The fix section 4 implies:** overlap claims should be *probed*, not merely domain-checked. The perturbation harness already exists and its inversion test would catch `non-depositional-flow` instantly, because that node *is* an inversion of the shape it claims to recur with. Gate independent credit on surviving an inversion probe. This joins two mechanisms that were built separately and is the highest-value next change. **Ana.** riverbed is an organ, not an organism: no drives, sensors, body or continuity, one capability only — it develops a perspective from what it has been through. anamnesis is close to its complement, and has no cross-domain recurrence weighting anywhere in the code, contradiction handling declared but never implemented (`CONTRADICTION_THRESHOLD` defined and referenced nowhere), and a standing identity that is authored rather than earned. Her REM already finds cross-cluster pairs, writes them at flat charge, and then down-weights them at recall — it does the hard half and discards the result. That is the mount point, and riverbed's ~2 min/turn cost suits a sleep pass rather than inline chat. Blocking that: `sense_desire` calls `brain.recall()` every 300s with two hardcoded strings lacking heartbeat markers, so they are classified as user-facing and increment `retrieval_count` on whatever sits nearest them, permanently. That count is 20% of right-brain resonance. Fix before mounting anything that reads salience. --- ## 8. Overnight, 2026-08-07 — what changed, including three retractions Kieran's standing order was to leave a better *field*, not a more finished theory. What follows is written to that instruction: measurements, retractions, competing generators still standing, and the next discriminating perturbation. ### Built Drives as pressures toward operations (zoom / overlay / perturb / rotate / ground), each an asymmetry already in the schema, so a firing names its own traversal instead of naming a feeling. Dreaming — a firing composes an experience from its own asymmetry and the ordinary turn machinery integrates it, which is the REWEIGHT step anamnesis's REM performs and discards. Gravity, splitting "salient" from "load-bearing". AUDIT — suspend and read, never judge. Sleep-consolidation that links near-duplicates rather than merging them. Metric history with growth-relative nulls. Routing surprise separated from field surprise. A readings ledger where the narrator is a node. Field checkpoints. ### Retracted **"migratory-path is being metabolised into the field."** Load fell 0.674 -> 0.585 while redundancy rose. Against a degree-preserving null, growth alone predicts -0.319 and observed was -0.101: an excess of +0.218 at z=+3.93. It was *concentrating against dilution*, the opposite reading. The channel had already shipped and told the model the wrong story for roughly ten turns. **The `flat` replay branch measured the wrong thing.** Equalising weights made the tie-break the slate order (reverse insertion), so alluvial sat at position 15 of 15 — invisible — while substrate sat at 4 and won. That is "hub hidden, rival promoted", close to the `absent` manipulation, not "no head start". Caught at turn 20/30, recorded before the result landed. The first fix was also wrong: `last_touched = created_at` preserves the same insertion order. **"Something flow-shaped precipitated even with alluvial hidden."** The flat branch's hub, `fluid-dynamics`, has body-cosine 0.4747 to alluvial. Random node pairs in this field average **0.479, sd 0.066** — embedding spaces are anisotropic — so that is **z = -0.06**: indistinguishable from a random pair. Raw cosine was uninterpretable and every homology figure reported before this null was meaningless. `replay.py` now computes the baseline and z-scores against it. ### The alluvial question, still open, with live generators Control reproduces the star (alluvial, w=44.13, degree 50, 80% connectivity cost), so branches are interpretable. Generators still standing: - **coordinate system** — the transform through which unrelated things become mutually legible. Predicts identical salience and load to the monopoly reading. - **seeded artifact** — genesis gave it 5.0 while most nodes entered at 1.0-2.0, and orientations rank by weight. Weakened but not dead: `dynamic-equilibrium`, coined mid-run at 0.5 with no head start, has since overtaken it (134.6 vs 116.9). That may equally mean the loop is indifferent to *which* node it captures. - **presentation artifact** — the navigator may attach to what is printed FIRST rather than what is heaviest. Untested until `flat_first` / `flat_last` and `order_invariance` land. If this one holds, every weight reading here is confounded, including the entropy figures and the star diagnosis itself. ### Standing distinction, tracked and not answered *Did the field reveal this structure, or did the instrument create the conditions under which it became visible?* For at least one case the answer is the second: the load-bearing channel put previously invisible nodes in front of the navigator mid-run. `REGIMES.md` timestamps every such change. Whether it altered behaviour or only observation is recorded as **UNDETECTABLE** — no A/B exists and both regimes live inside one contaminated sequence. --- ## 9. The overnight arc, honestly — four retractions and one surviving result Written at 04:30 against Kieran's standing order: leave a better field, not a finished theory. The arc is not flattering and that is the useful part. ### What was chased, and what happened to it The night's animating question was whether `alluvial` — the field's dominant hub — is a **coordinate system** (the transform through which unrelated things become mutually legible) or an **accidental monopoly**. Four generators were live. Here is where each died or stalled. **presentation artifact — REMOVED by evidence.** Under shuffled channel order the top-ranked shape drew 5/6 attachments while whatever occupied position 1 drew 0/6. Fisher p = 0.008. Attachment follows content, not print order. This is the only result of the night that survived scrutiny, and it protects every weight reading from being a display artifact. **lexically advantaged — weakened, then made uninterpretable.** `replay/renamed` stripped every riverine word and the same body still became the hub, more strongly than control (56.8 vs 44.1). Then the whole replay experiment was retracted for running at n=1 per branch. **seeded artifact — untested.** `flat_first` and `flat_last` both produced `alluvial`, which reads as "content wins". But `flat` and `flat_last` are the SAME condition and produced DIFFERENT hubs (fluid-dynamics vs alluvial). That accidental replicate is larger than every between-branch difference in the design. **coordinate system — the instrument could not have detected it.** Latent redundancy 0.417 against explicit 0.0629 looked like the exact signature. At n=60 per arm the direction REVERSED: hub-bridged 23/60 (38%) vs random 31/60 (52%), p = 0.951. The design forbids alluvial's vocabulary, but the hub arm IS alluvial's neighbours — the nodes written in riverine terms — so the ban blocks them specifically and a block scores as failure. Leak rates 38% vs 25%. Excluding leaks: 62% vs 69%, p = 0.81. Flat. ### The pattern worth carrying Four retractions, and every one came from the same place: **the null, not the measurement.** homology 0.47 = the field-wide baseline exactly (z = -0.06) homology 0.62 = inflated by the wrong comparison set (+2.19 vs +1.30) "domain inflation" = alarming in prose, 9% when measured latent 0.417 = an apparatus confounded with its own hypothesis replay branches = n=1, and the within-condition variance exceeded every between-condition difference At n=12 the reconnection test read "unsupported but directionally right". Three times the data revealed it was structurally incapable of answering. More samples did not sharpen the estimate; they exposed the design. ### What arrived sideways and is real - **Leak rate**: `alluvial`'s neighbours are lexically bound to it more than random pairs are (38% vs 25%). Measured by an experiment aimed elsewhere. - **The field heals**: `joke-compression` cost 39% of connectivity at 91 nodes and 2% at 143. `alluvial`'s explicit redundancy rose 0.004 -> 0.063 over the run. Centralisation here is not permanent. - **Load is dynamic, not intrinsic**, and any metric shown as a scalar misleads. Against a growth null, `migratory-path` was CONCENTRATING (z=+3.93) while its raw slope said it was dissolving. - **The drives work.** OVERLAY fired unprompted on `dynamic-equilibrium || alluvial` — the field's two hubs, 57 shared neighbours, no edge between them. ### The corpus 597 nodes, 834 edges, **181 preference pairs** — from 2 when the drift into instrument-building was caught. 94% of credited cross-domain overlaps are rotation-sourced rather than experience-sourced, which is either the field accumulating a 24B's priors about analogy or the marker undercounting. Not separable from this data; the discriminator is a shuffled-corpus run. ### What NOT to conclude Nothing here shows riverbed works or does not. It shows that the mechanism moves weight (three pre-registered results from the first session, still standing), and that almost every interpretation layered on top of that during the night failed its own null. The distinction between "the field revealed this" and "the instrument created the conditions for it" remains tracked and unanswered, with one case recorded as permanently UNDETECTABLE. ### Addendum, 05:30 — the variance estimate, and what it does to section 9 Five runs of ONE condition (byte-identical seeds, same 30 experiences, same order) produced five different hubs: fluid-dynamics w=33.1 deg=34 alluvial w=54.5 deg=71 stress-driven-remodeling w=51.9 deg=52 manifestation w=26.7 deg=23 substrate w=47.4 deg=53 Hub weight ranges 26.7-54.5 (sd 10.9), degree 23-71 (sd 17). Every between-branch difference reported earlier is smaller than this. The successor hypothesis — that a stable ROLE exists even though the label varies — was tested with baselines chosen by provenance: mean z = +0.60 against a pre-registered bar of z > 2.0. NOT SUPPORTED. The winners are not one shape under five names. **This retroactively voids every replay branch comparison in section 9**, not merely the ones already retracted. `renamed` beating control, `flat_first` and `flat_last` both landing on alluvial, `absent` producing recurrence — all single draws from a distribution whose spread exceeds the effects claimed. What survives untouched: `order_invariance` (p=0.008), because it is a within-field design running six experiences against one field rather than one whole run per condition. The design shape, not the discipline, is what protected it — and that is the transferable lesson. The only viable version of replay runs each branch to 200+ turns with 3+ repeats: roughly 10 GPU-hours per branch. Recorded, not started. That is a spend decision, not a research one. ### Addendum, 07:45 — the coordinate-system question, answered on a capable instrument Four attempts, three of which could not have detected the effect. The fourth could, and found none. vocabulary ban confounded with hub membership; arms flat at p=0.81 whole-field replay five runs of one condition, five hubs; inoperative relation-asserted 20/20 vs 20/20; a ceiling, not a null ATTACHMENT REACH visible 1.94 hops, hidden 1.93 hops, n=116/85 Attachment reach is unsaturated — distances span 0-4 with sd 0.79 — so it could have moved in either direction. The difference is **+0.010 hops**. A coordinate transform should let the navigator attach FURTHER into the graph when it is available. It does not. Meanwhile the hub IS used: 12/20 pairs attached to it when visible. So it receives traffic without enabling it. Stated at the strength the evidence supports: on this field, at this scale, with this measure, `alluvial` is **where traversal routes, not what makes routing possible**. Two generators remain live — that graph distance is the wrong operationalisation (semantic distance untested), and that 20 pairs is thin — though the second is weak against a difference of +0.010 on sd 0.79. A methodological note that outlasts the result: the attachment COUNT measure flipped direction between two runs of the identical experiment (run 1 favoured hidden, run 2 favoured visible), while REACH held at 1.94 vs 1.93 across the same variation. Prefer measures that survive a repeat. ### Addendum, 08:20 — three measures agree, and the question is closed at this scale The coordinate-system reading predicted the hub would ENABLE something. Three independent, unsaturated measures, all computed from stored data with zero new model calls: topological reach 1.94 vs 1.93 hops (+0.01 sd) semantic reach 0.4845 vs 0.4833 cosine (+0.01 sd) explanation cost 20.8 vs 22.6 words (-0.15 sd) Every one could have moved. None did meaningfully. Meanwhile the hub IS used — 12/20 pairs attached to it when visible. **`alluvial` receives traversal without enabling it.** That is the answer at this field size, with these instruments, and it is a negative result reached by an apparatus that had already failed three times in ways that could not have produced one. Only the compression measure leaned the predicted way (-0.15 sd, cheaper with the hub available), and it is the single candidate worth n>=60 if anyone wants to push. Recorded, not started. **Rule 14 paid for itself inside one iteration.** Storing raw replies and anchor identities — rather than the counts I would have kept an hour earlier — made both the semantic and compression analyses computable from data already on disk. Two follow-up questions answered for free that would each have cost a 40-minute run. ## 2026-09-11 — rotation credit, replayed (experiments/rotation_credit.py) The first hooked deposit (delta, 11 experiences, turns 45–55) moved weight through 11 overlaps, every one rotation-sourced; 29 of 41 overlaps landed on `alluvial`. Question: what should a rotation-sourced overlap earn? Method: fork the field as it stood before the deposit, replay the 11 recorded verdicts through `weights.apply` under five rules, no model. Predictions, written first: P1 full credit gives alluvial +10 or more. P2 fuzzy anchoring at 0.6 rescues fewer than a quarter of the 41. P3 "no quote, no weight" leaves alluvial under +2 and the head order unchanged. P4 half credit gives alluvial +4..6. Results: A full credit +10.52 (P1 held). A~ fuzzy 0.6 rescued **0 of 41** (P2 held, harder than predicted: the navigator's `evidence` strings are projections, not paraphrases of any span). B strict +4.35, head order unchanged (**P3 wrong**: not under 2). H half credit +7.44 (**P4 wrong**). What the retractions teach: the monopoly has two engines, and the credit rule only touches one. 29 epsilon overlaps × 0.15 is +4.35 on the heaviest node with zero independent credit — volume of attachment is salience even when every attachment is "no new domain". The evidence marker is toothless as long as the navigator never copies a span. So the lever is upstream of the weights: make the navigator ground or withdraw (evidence repair round, `[llm] evidence_repair = true`, experiments/evidence_repair.py), then decide credit with grounded data in hand. The weights knobs (`rotation_sourced_credit`, `evidence_fuzzy`) stay at their defaults until that run says something. Open, not decided: whether epsilon should be capped per node per turn. ## 2026-09-11 — evidence repair, live (experiments/evidence_repair.py) Prediction: told exactly which evidence strings failed, the 24B navigator grounds at least half of the surviving overlaps and withdraws the rest. Result on three of the day's experiences: without repair 2/11 grounded; with repair **1/6** grounded, 6 withdrawn. **Prediction wrong.** The repair round is a volume reducer, not a grounding fixer: this navigator cannot reliably copy a span even when asked twice. It stays off by default (`[llm] evidence_repair`), kept as a knob. Consequence for the credit question: with this navigator, "no quote, no weight" freezes the field, and full credit feeds the monopoly. The bottleneck is the navigator, not the arithmetic — the same conclusion riverbed.toml already records for the judge. Next, pre-registered: run experiments/evidence_repair.py with a stronger navigator through the hosted path (`kind = "openai"`, `api_key_env`), prediction: a frontier-class model grounds more than half without a repair round. Until that run, the credit rule does not change.