Team setup: install and configure for any team

Open
#24 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
cli, release

Research direction

Read the team-setup OpenSpec change linked in the issue and inspect release.yml plus its pypi and testpypi environments. The remaining work includes PyPI trusted publisher setup, a TestPyPI dry run, a first tagged release, and a clean-laptop walkthrough; start with the PyPI organization dependency and follow the listed steps. Done means the install works from PyPI and a new team can complete setup.

Written by the indexing model from the issue text.

Description

roadmap

Size: L · Depends on: IgniteRobotics/flashpoint#17, IgniteRobotics/flashpoint-private#71 · OpenSpec: team-setup (archived 2026-11-01)

Status

Update 2026-11-01: archived (PR #41), 26/28 tasks. Specs synced to openspec/specs/team-setup and openspec/specs/config-editor. Open, tracked in #13: 4.3 first release (tag v0.2.0, clean pipx install) and 9.4 [HUMAN] new-team walkthrough. Close this once both pass.

Update 2026-10-23: in progress, 24/28 tasks. Implemented and merged: packaging, config home, init and setup checks (IgniteRobotics/flashpoint-private#88), then the Setup view, editor, fix actions and robot draft (IgniteRobotics/flashpoint-private#89, ADR-0017). PyPI metadata, BSD-3-Clause license and release workflow merged (#2); new-season setup docs (#1). The repo went public 2026-10-22 with a rewritten history (owlet binaries and personal emails removed); 1.1, 1.3 and 1.4 ticked (#29).

Left:

  • 1.2 [HUMAN] Claim the PyPI name and add the trusted publisher (release.yml, environments pypi / testpypi). Waiting on the PyPI organization setup.
  • 2.2 Dry run to TestPyPI and pipx install --index-url https://test.pypi.org/simple/ flashpoint (after 1.2).
  • 4.3 First release: tag v0.2.0 (the pypi environment asks for approval), pipx install flashpoint on a clean machine.
  • 9.4 [HUMAN] New-team walkthrough on a clean laptop.

Scope

Make Flashpoint usable by any FRC team with an easy install.

  • Public install: repo public, published to PyPI with trusted publishing, so pipx install flashpoint works (ADR-0009 finally holds). Bundled defaults ship in the package; Ignite's robots and units stay in the repo's config/, out of the wheel.
  • Config home: per-user folder (~/.config/flashpoint, %APPDATA%\flashpoint). flashpoint init creates it with the team number and lake folder and never overwrites. Breaking: no more fallback to a checkout's config/. Fixes IgniteRobotics/flashpoint-private#54.
  • Team number drives robot addresses (10.TE.AM.2, roborio-TEAM-frc.local, USB) instead of 6829's.
  • Setup view: shows the whole configuration (team and connection, robots and slots, thresholds, units) and every setup check. doctor uses the same checks and exits non-zero on a problem.
  • Edit configuration in the UI: validated with the loading rules, comments kept, conflict check, last 20 versions backed up. Read-only when shared on the network.
  • Draft a robot from a log: devices from the hoots, serials from the CAN inventory, bus names from bus status. The fast path for a new team.
  • Fix actions: guarded (ADR-0015 style, new ADR-0017) buttons for create config, download/verify owlet, AdvantageScope path, install/start the acquire service. Anything else shows the exact command.
  • Non-goals: a no-Python installer, hosting or accounts, editing lake data from the UI, a robot-side vendordep (samples only), macOS acquire service.
Dominant language
Python
Stars
0
Forks
1
Avg merge
18h 37m
Merged PRs (30d)
15

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from IgniteRobotics/flashpoint

All issues in IgniteRobotics/flashpoint

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.