Skip to content

chore(physics): downgrade INV-OBSERVER-BANDWIDTH EXTRAPOLATED→SPECULATIVE, P1→P2 (inference flaw #4)#421

Merged
neuron7xLab merged 1 commit intomainfrom
fix/inflaw-4-bandwidth-downgrade
Apr 26, 2026
Merged

chore(physics): downgrade INV-OBSERVER-BANDWIDTH EXTRAPOLATED→SPECULATIVE, P1→P2 (inference flaw #4)#421
neuron7xLab merged 1 commit intomainfrom
fix/inflaw-4-bandwidth-downgrade

Conversation

@neuron7xLab
Copy link
Copy Markdown
Owner

Summary

Honest tier downgrade for INV-OBSERVER-BANDWIDTH (PR #410, refs tightened in #415).

Self-audit: the inequality Γ ≤ Σ̇ rests entirely on the ansatz 1 bit/s ↔ 1 Hz of resolvable events. Cited references provide adjacent context, not direct derivation:

  • Zurek 2003 anchors the decoherence framework but does not derive an observer-bandwidth ceiling on Γ.
  • Lieb-Robinson 1972 bounds info-propagation speed in lattice systems but does not derive the bandwidth-observer-decoherence claim.

Honest tier therefore = SPECULATIVE. Per validator check 5, SPECULATIVE → max P2. Both tier and priority change.

Changes (atomic across both physics-contract layers)

  • core/physics/observer_bandwidth.py
    • PROVENANCE_TIER: "EXTRAPOLATED" → "SPECULATIVE"
    • Module docstring header (P1, conditional, EXTRAPOLATED) → (P2, conditional, SPECULATIVE)
    • Explicit schema-only honesty note added (ansatz + adjacent-context call-out)
  • tests/unit/physics/test_observer_bandwidth.py
    • test_provenance_tier_is_extrapolated → test_provenance_tier_is_speculative (asserts "SPECULATIVE")
    • Module docstring updated to (P2, conditional, SPECULATIVE)
  • .claude/physics/INVARIANTS.yaml observer_bandwidth: block
    • priority: P1 → P2
    • provenance: EXTRAPOLATED → SPECULATIVE
    • statement: appended with schema-only ansatz + adjacent-references disclaimer

Test plan

  • pytest tests/unit/physics/test_observer_bandwidth.py -v — 13/13 pass
  • ruff check clean on both files
  • ruff format --check clean
  • black --check clean
  • mypy --strict clean
  • .claude/physics/validate_tests.py --self-check PASSED (check 5 still admits SPECULATIVE@P2)

🤖 Generated with Claude Code

…TIVE, P1→P2 (inference flaw #4)

Self-audit of INV-OBSERVER-BANDWIDTH (PR #410, refs tightened in #415):
the inequality Γ ≤ Σ̇ relies entirely on the ansatz "1 bit/s ↔ 1 Hz of
resolvable events". Zurek 2003 anchors the decoherence framework but does
not derive an observer-bandwidth ceiling on Γ; Lieb-Robinson 1972 bounds
info-propagation in lattice systems but not the bandwidth-observer-decoherence
claim. Both are adjacent context, not direct derivation.

Honest tier therefore = SPECULATIVE. Per validator check 5, SPECULATIVE
caps priority at P2.

Changes (atomic across both physics-contract layers):
  - core/physics/observer_bandwidth.py:
      PROVENANCE_TIER = "EXTRAPOLATED" → "SPECULATIVE"
      Module docstring header updated; explicit schema-only honesty note added.
  - tests/unit/physics/test_observer_bandwidth.py:
      test_provenance_tier_is_extrapolated → test_provenance_tier_is_speculative.
  - .claude/physics/INVARIANTS.yaml observer_bandwidth block:
      priority: P1 → P2; provenance: EXTRAPOLATED → SPECULATIVE;
      statement appended with schema-only ansatz disclaimer.

Quality gates: 13/13 pytest pass, ruff (check+format) clean, black clean,
mypy --strict clean, .claude/physics/validate_tests.py --self-check PASSED
(check 5 still admits SPECULATIVE@P2).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@neuron7xLab neuron7xLab merged commit 9fcfcbd into main Apr 26, 2026
9 checks passed
@neuron7xLab neuron7xLab deleted the fix/inflaw-4-bandwidth-downgrade branch April 26, 2026 10:01
neuron7xLab added a commit that referenced this pull request Apr 26, 2026
…modules (#425)

Single-file integration test proving the seven runtime-evaluable physics
invariant modules from this session produce non-contradictory verdicts
on a deterministic synthetic substrate state.

ANCHORED ingredients composed:
  - core.physics.arrow_of_time           (PROVENANCE_TIER = "ANCHORED")
  - core.physics.anchored_substrate_gate (PROVENANCE_TIER = "ANCHORED")
  - core.physics.thermodynamic_budget.bekenstein_cognitive_ceiling
    (registered ANCHORED via INV-BEKENSTEIN-COGNITIVE in INVARIANTS.yaml)

EXTRAPOLATED ingredients composed (independent witnesses, do not veto):
  - core.physics.cosmological_compute_bound
  - core.physics.jacobson_observer_coherence

SPECULATIVE ingredient composed (does not veto anchored composite):
  - core.physics.observer_bandwidth (downgraded in PR #421)

REGISTRY-ONLY (point-eval only, no state-eval):
  - core.physics.simulation_falsification — exercised via
    FalsificationLadder shape + reasoning_tier per signature.

Six scenarios:
  1. admissible baseline — all axes pass
  2. Bekenstein violation — composite inadmissible, BEKENSTEIN named
  3. Arrow violation — composite inadmissible, ARROW named
  4. both anchored axes fail — failure_axes == ("BEKENSTEIN", "ARROW")
     (deterministic ordering per anchored_substrate_gate.py:144)
  5. SPECULATIVE bandwidth violation — anchored composite still admissible
     (tier separation explicit; bandwidth result reported separately)
  6. same-state consistency — every runtime-evaluable axis evaluated on
     baseline; tier metadata cross-checked; registry ladder shape +
     reasoning_tier asserted

Negative verification: locally inverted composite logic in
anchored_substrate_gate.py (`admissible = bekenstein_holds and arrow_holds`
→ `admissible = bekenstein_holds`); scenario 3 failed with
`is_thermodynamically_admissible=True` despite `arrow_axis_holds=False`,
proving the integration test catches a compositional regression that
unit tests on individual modules cannot. Source restored before commit.

Quality gates:
  pytest tests/integration/test_substrate_gate_chain.py    6/6 PASS
  pytest tests/unit/physics/ + integration                 all green
  ruff check                                               clean (after one auto-fix for import sorting)
  ruff format --check                                      clean
  black --check                                            clean
  mypy --strict tests/integration/test_substrate_gate_chain.py
                                                           clean (1 file, 0 issues)
  validate_tests.py --self-check                           PASS 8/8

No mocked physics. No hidden randomization. No Hypothesis — deterministic
fixture only. Single substrate fixture; each scenario mutates exactly one
field except scenario 4 (intentional double-mutation, documented).

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.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