Skip to content

fix: correct command tab completion - #179

Merged
ryanbarlow97 merged 1 commit into
mainfrom
fix/command-tab-completion-20261015
Oct 15, 2026
Merged

ryanbarlow97 merged 1 commit into
mainfrom
fix/command-tab-completion-20261015

Conversation

@ryanbarlow97

Copy link
Copy Markdown
Contributor

Correct command suggestions to match the arguments accepted by SimpleFactions, including the current prefix and applicable permission or sender context.

  • SF-01: Added missing faction/guild member, leader and administrator root actions with membership, bank and province gates.
  • SF-02: Root actions remain the current token until a separating space creates the nested argument.
  • SF-03: Merged espionage reload into ordinary root candidates, preserving every authorized prefix match.
  • SF-04: Guild setleader and appoint complete eligible character names, including offline members and remaining words.
  • SF-05: Leaderless forceleader uses living realm members who lead no guild; occupied seats retain their guild roster.
  • SF-06: Company invite and vehicle give/handover include supported online account and character names with suffix completion and eligibility gates.
  • SF-07: Company offer and mercenaries hire complete the untyped suffix of multiword display names.
  • SF-08: Company administration suggests guild IDs and single-token company names accepted by the existing parser.
  • SF-09: Company contracts is discoverable to ordinary company guild members while leader actions stay leader-gated.
  • SF-10: Added permission-gated admin/quarantine/list/assign grammar and unresolved record IDs from an in-memory snapshot refreshed by migration and staff reads/writes; unsupported character-ID enumeration is empty.
  • SF-11: Admin delbank, startelection, endelection and province-enabled unclaim complete known faction IDs.
  • SF-12: Administrator faction and warband delete completion enumerates targets outside the caller's membership/leadership.
  • SF-13: Added warband join root and joinable IDs, checking invitations, membership, mounting, campaign schedule and eligibility through shared read-only signup validation.
  • SF-14: Guild decline merges and deduplicates offered leaderless guild IDs with ordinary invitations.
  • SF-15: Faction, guild, warband and battle completion consistently filters the actual current token case-insensitively, retaining suffix semantics.
  • SF-16: Forceregiment excludes both levy and company-owned mercenary regiments.
  • SF-17: Faction kick suggestions exclude the leader and members who must be managed through a subguild.
  • SF-18: Unknown/exhausted positions explicitly return empty; exact root tokens do not advance early. Removed literal hints and arbitrary numeric examples, including nested title hints, and reject saving old culture/religion placeholders.
  • SF-19: Console discovers supported faction staff roots with permission and province gates.

Validation: tfmc-mvn -o -B --no-transfer-progress clean verify passed (8179 tests, zero failures, errors or skips), including command-completion regressions. git diff --check passed.

Documentation: TF-Minecraft/Docs#266.

@coderabbitai

coderabbitai Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 53 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 01111ec9-d408-4d0e-a437-02c579fa30a7
📥 Commits

Reviewing files that changed from the base of the PR and between 8f62813 and 80d3413.

📒 Files selected for processing: 14
  • src/main/java/net/tfminecraft/simplefactions/managers/CommandManager.java
  • src/main/java/net/tfminecraft/simplefactions/managers/MercenaryCommandManager.java
  • src/main/java/net/tfminecraft/simplefactions/migration/Quarantine.java
  • src/main/java/net/tfminecraft/simplefactions/migration/QuarantineCommands.java
  • src/main/java/net/tfminecraft/simplefactions/tiers/admin/TitleAdminCommand.java
  • src/main/java/net/tfminecraft/simplefactions/utils/TabCompletion.java
  • src/main/java/net/tfminecraft/simplefactions/war/battle/campaign/warband/CampaignWarbandSignupService.java
  • src/main/java/net/tfminecraft/simplefactions/war/battle/ui/BattleTabCompletion.java
  • src/test/java/net/tfminecraft/simplefactions/managers/CommandManagerCoverageTest.java
  • src/test/java/net/tfminecraft/simplefactions/managers/MercenaryCommandsCoverageTest.java
  • src/test/java/net/tfminecraft/simplefactions/managers/TabCompletionCoverageTest.java
  • src/test/java/net/tfminecraft/simplefactions/managers/TitleManagementCoverageTest.java
  • src/test/java/net/tfminecraft/simplefactions/migration/QuarantineCommandsTest.java
  • src/test/java/net/tfminecraft/simplefactions/war/battle/ui/BattleCommandsCoverageTest.java
  • 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 size:L 100-499 effective changed lines (tests excluded in mixed PRs). label Oct 15, 2026
@ryanbarlow97
ryanbarlow97 marked this pull request as ready for review October 15, 2026 18:44
@ryanbarlow97
ryanbarlow97 merged commit a616022 into main Oct 15, 2026
4 checks passed
@ryanbarlow97
ryanbarlow97 deleted the fix/command-tab-completion-20261015 branch October 15, 2026 18:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L 100-499 effective changed lines (tests excluded in mixed PRs).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant