Skip to content

feat: add federated support for keys#57

Merged
jaxxstorm merged 2 commits intomainfrom
key_types
Mar 29, 2026
Merged

feat: add federated support for keys#57
jaxxstorm merged 2 commits intomainfrom
key_types

Conversation

@jaxxstorm
Copy link
Copy Markdown
Owner

Signed-off-by: Lee Briggs lee@leebriggs.co.uk

Signed-off-by: Lee Briggs <lee@leebriggs.co.uk>
Copilot AI review requested due to automatic review settings February 25, 2026 17:25
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds support for creating federated credentials via the existing tscli create key command, along with spec-driven change documentation and regenerated command docs so the new --type federated workflow is discoverable.

Changes:

  • Extend tscli create key --type to accept federated, including federated-specific flags and request payload handling.
  • Add unit tests covering federated creation and validation errors.
  • Add spec-driven change docs (proposal/design/spec/tasks) and regenerate CLI command documentation to include federated usage.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
cmd/tscli/create/key/cli.go Implements --type federated support, validation, and POST payload construction for federated keys.
cmd/tscli/create/key/cli_test.go Adds tests for federated key creation and validation error cases.
docs/commands/tscli_create_key.md Regenerated command docs reflecting federated options/flags.
docs/commands/tscli_create.md Updates the create-command index entry description for create key.
docs/README.md Adds contributor-facing documentation on federated credentials and OpenAPI coverage mapping workflow.
openspec/changes/federated-tailnet-keys/.openspec.yaml Declares a new spec-driven change set.
openspec/changes/federated-tailnet-keys/design.md Design notes/goals for adding federated key support.
openspec/changes/federated-tailnet-keys/proposal.md Motivation and scope for the federated key support change set.
openspec/changes/federated-tailnet-keys/specs/federated-key-support/spec.md Requirements/spec scenarios for federated key creation and coverage expectations.
openspec/changes/federated-tailnet-keys/tasks.md Task checklist for implementing/testing/documenting federated key support.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docs/README.md
Comment on lines 21 to +39
Contributors:

- [Command Reference](command-reference.md) for generation/check workflow
- [Configuration](configuration.md) for precedence and profile behavior

## Federated credentials

Use `tscli create key --type federated` to provision federated identities that mirror an OIDC issuer/subject pair. Provide `--scope` plus `--issuer` and `--subject`, and optionally `--audience`, `--tags`, and `--claim` to express custom claim rules.

After adding new key types or CLI verbs, keep the OpenAPI coverage mappings in sync by editing `pkg/contract/openapi/command-operation-map.yaml` and rerunning `make coverage-gaps-check`. The generated waterfall is saved in `coverage/coverage-gaps.*` so CI can detect regressions.

For references to the updated create-key documentation, see the generated [tscli create key](commands/tscli_create_key.md) command page.

Contributors, refer back to this file when you need to refresh the docs site or cover new CLI surface area.

Contributors:

- [Command Reference](command-reference.md) for generation/check workflow
- [Configuration](configuration.md) for precedence and profile behavior
Copy link

Copilot AI Feb 25, 2026

Choose a reason for hiding this comment

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

Contributors: is now duplicated (lines 21–25 and again at 36–39), which makes the landing page harder to maintain and can confuse readers. Consolidate to a single Contributors section and remove the extra paragraph/list.

Copilot uses AI. Check for mistakes.
Comment thread docs/README.md Outdated
Comment thread openspec/changes/federated-tailnet-keys/proposal.md
Comment thread cmd/tscli/create/key/cli_test.go
Comment thread cmd/tscli/create/key/cli_test.go
Comment thread cmd/tscli/create/key/cli_test.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@jaxxstorm jaxxstorm merged commit 94cf753 into main Mar 29, 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.

2 participants