Skip to content

v1.3.0 follow-up: a failed first activation leaves no sub.html behind - #7

Merged
iitzSeriZdev merged 2 commits into
mainfrom
release/v1.3.0
Sep 26, 2026
Merged

iitzSeriZdev merged 2 commits into
mainfrom
release/v1.3.0

Conversation

@iitzSeriZdev

Copy link
Copy Markdown
Owner

Follow-up to #6, which was merged at ea71ca2 just before 2131bcc was pushed. This PR carries only that commit and the CHANGELOG line that documents it.

Changes

  • 2131bcc fix(activate): a failed first activation leaves no sub.html behind. ea71ca2 made rt_activate put the previous sub.html back when the PasarGuard/Rebecca refresh fails. When there was no sub.html before, it left the new one behind; now it removes it. The regression test in tests/installer-panel-rebecca.test.mjs covers both cases and fails without the fix. The commit also adds a CHANGELOG "Changed" note: a scripted fresh install on a server with more than one supported panel needs RT_PANEL.
  • fda15c8 docs(changelog): the matching "Fixed" bullet now covers the first-activation case.

3 files: installer/lib/row-template.sh, tests/installer-panel-rebecca.test.mjs, CHANGELOG.md.

Validation on fda15c8 (clean Linux clone)

  • npm test: 761/761 passed, 0 skipped.
  • npm run verify: all checks passed.
  • npm run lint:sh: all 12 scripts clean.
  • npm run build:panels: 51 shells.
  • Release artifact: two independent builds are byte-identical, row-template-1.3.0.tar.gz sha256 48bc29fde7ddf0207d1cf035a916d948ca6137ba2a3cb6d69cd21c9c6adaf5ca. This matches 2131bcc; the CHANGELOG isn't in the release package.

Not tagged, not released.

🤖 Generated with Claude Code

iitzSeriZ and others added 2 commits September 26, 2026 19:36
Raised in the second review of PR #6: when there was no sub.html before and
the PasarGuard/Rebecca refresh failed, rt_activate restored nothing and left
the new file behind. It now removes it, so the previous state -- including
"no page yet" -- is exactly what remains. The test covers both cases.

CHANGELOG: a scripted fresh install on a server with more than one supported
panel now needs RT_PANEL (1.2 installed for 3X-UI there, as the only panel it
supported). Re-runs and updates keep the install's own panel.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@graphify-labs graphify-labs Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Graphify reviewed this change.

Looks safe to merge — no coupling regressions and no blocking issues, checked against the code graph (not a self-assessment).


Graphify review — findings

Cleans up after a failed first activation: when rt_activate finds no existing sub.html and the panel refresh fails, it now removes the staged page instead of leaving a sub.html newer than what the panel serves. Requires RT_PANEL=3xui|pasarguard|rebecca for scripted fresh installs on servers with more than one supported panel rather than guessing; interactive installs prompt, and re-runs or row-template update keep the existing install's panel.

No blocking issues surfaced. 1 lower-confidence candidate did not survive cross-model review.

Analysis details — impact, health, verification

Impact & health

Graphify review

Impact — 226 functions depend on the 226 functions this change touches.

Health — this change adds coupling hotspots:

  • new: rt_repair_template_store() — 4 callers, 10 callees
  • new: rt_complete_install() — 4 callers, 9 callees
  • new: rt_activate() — 7 callers, 4 callees
  • new: rt_restore_from_backup() — 3 callers, 9 callees
  • new: rt_set_dist() — 5 callers, 5 callees
  • new: rt_render_report() — 6 callers, 4 callees
  • new: rt_backup_snapshot_check() — 3 callers, 7 callees
  • new: rt_apply_branding() — 4 callers, 5 callees
  • …and 20 more — each is listed as a finding

Verification — 226 functions in the blast radius were not formally verified this run (proofs are advisory here).

Gate & verification

graphify gate

PASS — objectively clean (no health regressions, tests not run — proofs not run this pass (advisory)). Grounded, not self-assessed.

Advisory (not blocking):

  • verification_scope: 226 function(s) in the blast radius were not formally verified this run

· 28 more finding(s) on lines outside this diff (see the check run).

@iitzSeriZdev
iitzSeriZdev merged commit 5d7cade into main Sep 26, 2026
1 check passed
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