Skip to content

Add profile configs, support reports, and upgrade highlights for 3.8.0 - #52

Merged
Crosis47 merged 2 commits into
masterfrom
codex/profiles-support-report
Oct 17, 2026
Merged

Crosis47 merged 2 commits into
masterfrom
codex/profiles-support-report

Conversation

@Crosis47

@Crosis47 Crosis47 commented Oct 17, 2026 •

Copy link
Copy Markdown
Owner

Summary

Mod profiles can now optionally save selected configuration files along with their Workshop selection. Loading a profile stages its config snapshots for the existing review-and-restart flow; it does not write live files. Users can also load only the mod selection. After the game stops, apply checks disk revisions, restores the exact saved bytes, and keeps the previous file version for editor undo. Failed batches attempt rollback while preserving newer external edits.

Add Overview → Preview support report to collect container and tModLoader versions, confirmed loaded mods (or enabled filenames when loading is unconfirmed), and bounded recent error lines. The server removes known sensitive values and common private log details before returning the preview. Users can review, edit, and copy it; nothing is submitted automatically. The bug report template now accepts an optional support report and retains manual logs as a fallback.

Add a What's new popup after authenticated sign-in following a container upgrade. Dismissal is saved in /data/admin/release-notice.json with the container version and pending: false. Clicking Got it or pressing Escape saves it for all dashboard users. It survives browser changes and container replacement using the same data volume; a newer version queues a fresh notice. Fresh setup records a baseline; existing installations are recognized by their saved admin credential when notice tracking is first introduced. Highlights wait for other dialogs to close and can be reopened from the overview.

Bump the container from 3.7.5 to 3.8.0 and move the accumulated editor, profile, and support-report notes into the dated 3.8.0 changelog section. The earlier editor implementation is already merged and is not duplicated in this branch.

Related issues

None.

Validation

  • All 287 dashboard Python tests passed inside the built Linux AMD64 image.
  • Upgrade-highlight browser tests passed: authenticated display, safe text, persisted dismissal, failure/retry, Escape, reload, manual reopening, dialog deferral, and mobile layout. The live 3.8.0 container showed all four highlights after sign-in.
  • Profile browser tests passed: config selection, optional restore, review/cancellation, apply, rename, preserved choices, read-only behavior, and mobile layout.
  • Support-report browser tests passed: preview, user edits, copy, clipboard fallback, safe text rendering, cleanup, request failure, and mobile layout. Editor regression browser tests also passed during feature validation.
  • Built the final 3.8.0 AMD64 container successfully. JavaScript syntax and Git whitespace checks passed.
  • Release metadata/release-note generation tests passed for the new version. Parsed and checked the updated issue form YAML.
  • A real local container test captured a profile config, changed the disk file, verified staging left it untouched, confirmed apply/restart, and verified exact BOM/CRLF restoration, undo history, draft cleanup, and healthy game startup. Temporary fixtures were removed.
  • Simulated error lines appeared in the live support preview; the fake API key, IP address, and private path were removed before the response.
  • Native ARM64 was not tested locally. Remote CI validation is separate from these local results.

Risks and compatibility

Existing profiles remain usable without config snapshots. Snapshot restore currently requires target files to exist; missing files must first be generated by their mods. Invalid snapshots and newer disk edits block apply. As with the existing settings workflow, an apply failure can leave the game stopped for recovery.

Profiles can contain up to 64 config files and 16 MiB of raw config data each, with a 32 MiB shared serialized catalog limit. Snapshots persist in the profile catalog; deferred restores use pending-profile-configs.json and are removed when the draft is discarded or successfully applied. Snapshots can contain private mod settings and stay in the server's data storage. Older container versions with the previous 64 KiB catalog limit may not read a catalog that has grown beyond that limit.

Support reports include up to 40 selected error lines from the latest 128 KiB of each current log. Redaction covers known credentials/private values and common sensitive log patterns, addresses, and paths; users still review the preview before sharing. Config contents, environment dumps, and player rosters are excluded. Report generation makes no external request and stores no report.

README, inline help, the code map, issue template, and changelog are updated. No new runtime dependencies.

Screenshots

Profile/report screenshots use synthetic fixture data; the upgrade popup shows packaged release highlights.

Before profile configs:
Previous profile page

After profile configs:
Profile config selection and optional restore

Support report preview:
Sanitized support report preview

Upgrade highlights:
What's new in 3.8.0

Checklist

  • I have read CONTRIBUTING.md and CODE_OF_CONDUCT.md.
  • I have completed the applicable validation and noted any gaps above.
  • I have updated documentation and changelog entries where needed, or explained why they are not needed.
  • I have removed secrets and private data from the changes, logs, and screenshots.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-17T07:13:38.899672Z e20597f PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@Crosis47 Crosis47 changed the title Add profile config snapshots and support reports for 3.8.0 Add profile configs, support reports, and upgrade highlights for 3.8.0 Oct 17, 2026
@Crosis47
Crosis47 merged commit ba370c7 into master Oct 17, 2026
4 checks passed
@Crosis47
Crosis47 deleted the codex/profiles-support-report branch October 17, 2026 07:45
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