Skip to content

docs: simplify installation and operator guidance - #326

Merged
flowcool merged 12 commits into
mainfrom
simplify-user-onboarding
Oct 28, 2026
Merged

flowcool merged 12 commits into
mainfrom
simplify-user-onboarding

Conversation

@flowcool

@flowcool flowcool commented Oct 28, 2026 •

Copy link
Copy Markdown
Owner

Behavior

One account by default. One setup guide. Separate guides for configuration, blocked trades and maintenance.

Docker examples now persist state. Compose forwards private notification settings. Flex fields use one checklist. Old links still work.

Release impact

Existing two-account installs must switch to compose.multi-account.yaml before updating.

Keep the project name, ENV and state paths. Set COMPOSE_FILE for CLI use. Pause automatic Git stack updates first. Check Portainer file-selection support. Follow the migration steps.

No runtime change or image release. Rollback restores the previous checkout and configuration. It does not undo financial writes. Repeat the migration warning in future release notes.

Verification

  • 48 targeted checks pass: documentation, Compose and Docker guidance.
  • Five strict OpenSpec specifications pass.
  • Synthetic Compose checks verify mounts, schedules, network and notification settings.
  • Commands and old headings are preserved. No real account was accessed.

AI assistance

Codex implemented the change. External Claude reviewed the plan and implementation. Confirmed findings were fixed. This revision shortens the prose and splits long sentences.

Pullfrog review

Pullfrog review: no new issues at f82d290.
CI: all technical checks pass.

Manual operator review and merge. Auto-merge stays disabled.

@coderabbitai

coderabbitai Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Important

Review skipped

Ignore keyword(s) in the title.

⛔ Ignored keywords: 2
  • docs:
  • docs(

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

Run configuration

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
Finishing Touches: 💡 1
🛠️ Fix failing CI checks: 💡
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Oct 28, 2026

@pullfrog pullfrog 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.

✅ No new issues found.

Reviewed changes

Reviewed the PR at f0a1114, with full attention to the shipped Compose/ENV examples and tests, which operators run as-is. The docs/ and openspec/ regions are documentation, so I read them only selectively.

  • Single-account compose.yaml: only ibkr-sync-individual remains. It keeps the hardening (read_only, cap_drop, 10001:10001, tmpfs) and the ${VAR:?...} credential interpolation. It adds LOG_LEVEL, APPRISE_URLS and APPRISE_TIMEOUT pass-through and a configurable external network name.
  • compose.multi-account.yaml: carries the previous two-service layout with separate state directories and staggered CRON defaults. CRON never resolves empty.
  • .env.example, .dockerignore, .gitignore: the notification and network defaults are valid for config.py (blank or [] APPRISE_URLS means off). DRY_RUN=true stays the default. The Dockerfile copies no .env* file, so the .dockerignore additions are safe.
  • Docs restructure: new getting-started, corporate-actions and maintenance/* guides, a shorter README, and a CHANGELOG that points to GitHub Releases. The anchors I spot-checked (#user-action-required, #cycle-result, #limitations, #4-add-currencies) exist.
  • Tests: test_compose_example.py is parametrized over both Compose files. test_documentation.py covers the new guides.
  • OpenSpec: the change is archived and the specs are synced. No runtime or helper code changed, so nothing needs downstream DEGIRO propagation.

ℹ️ Default Compose file changes from two accounts to one

The deployment migration is documented in the README, CHANGELOG and docs/getting-started.md#existing-two-service-installations. Carry that warning into the release notes if a release is published, as the PR description already states.

Technical details
# Two-account to one-account default

## Affected sites
- compose.yaml — no longer defines `ibkr-sync-joint`; an auto-updating Git stack would orphan that service.

## Required outcome
- Release notes repeat the migration warning if a release is published.

Pullfrog  | Fix it ➔ | View workflow run | Using claude-sonnet-5-5 | 𝕏

@pullfrog pullfrog 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.

✅ No new issues found.

Reviewed changes

Reviewed the delta since the prior Pullfrog review (a4afffb → f82d290). It is one docs-only commit that shortens operator prose. No runtime, Compose, .env.example or test files changed.

  • README prose shortened: the intro, Quick start, Docker image, Safety first, Limitations and corporate-action summaries use shorter sentences. The DRY_RUN, TZ, state and rollback guarantees are unchanged.
  • Getting-started guide restructured: the two-service migration is now a numbered list (pause Portainer auto-update, keep project name, .env and state paths, select compose.multi-account.yaml, verify both services). It keeps the "do not remove orphans without review" warning.
  • Corporate-actions and activity-review guides condensed: retention (30 days, .references.yaml, .rotation), native-split prerequisites (Ghostfolio 3.91.0+), state-loss and rollback steps keep their original meaning.
  • Configuration, troubleshooting and IBKR setup guides tightened: the dividend and payment-key rules are split into shorter paragraphs without changing the conditions.
  • Doc-content checks still hold: I replicated the test_documentation.py link, anchor and README-retention assertions offline and they pass for every listed document. The README still contains the Python 3.14 strings that test_dockerfile.py expects and has no 3.12. The only image reference is :latest, as test_compose_example.py requires.

Pullfrog  | Fix it ➔ | View workflow run | Using claude-sonnet-5-5 | 𝕏

@flowcool
flowcool merged commit cd7ed58 into main Oct 28, 2026
14 checks passed
@flowcool
flowcool deleted the simplify-user-onboarding branch October 28, 2026 11:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant