ticket: close profile feature flags
This commit is contained in:
parent
c71a27275d
commit
264dfce3c5
|
|
@ -1,8 +1,8 @@
|
||||||
---
|
---
|
||||||
title: 'Profile feature flagsでtool surfaceを制御する'
|
title: 'Profile feature flagsでtool surfaceを制御する'
|
||||||
state: 'inprogress'
|
state: 'closed'
|
||||||
created_at: '2026-06-09T08:22:09Z'
|
created_at: '2026-06-09T08:22:09Z'
|
||||||
updated_at: '2026-06-09T12:42:04Z'
|
updated_at: '2026-06-09T12:46:06Z'
|
||||||
assignee: null
|
assignee: null
|
||||||
queued_by: 'workspace-panel'
|
queued_by: 'workspace-panel'
|
||||||
queued_at: '2026-06-09T10:31:11Z'
|
queued_at: '2026-06-09T10:31:11Z'
|
||||||
|
|
|
||||||
35
.yoi/tickets/20260609-082209-001/resolution.md
Normal file
35
.yoi/tickets/20260609-082209-001/resolution.md
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
Merged and closed.
|
||||||
|
|
||||||
|
Implementation:
|
||||||
|
- Added explicit Profile/resolved Manifest `feature` configuration for Task, Memory, Web, Pods, Ticket, and Ticket orchestration tool surfaces.
|
||||||
|
- Disabled features omit tools from the Worker tool schema instead of registering them and denying later.
|
||||||
|
- Core filesystem/process tools remain outside this feature grouping and continue to be controlled by scope/policy.
|
||||||
|
- Ticket lifecycle access and Ticket orchestration surfaces are separable.
|
||||||
|
- Web, Memory, Ticket, and Pod tools retain their existing fail-closed / authority / scope checks when enabled.
|
||||||
|
- Project role profiles now set explicit feature defaults:
|
||||||
|
- Orchestrator: Ticket lifecycle, Ticket orchestration, and Pods enabled; Task disabled.
|
||||||
|
- Intake: basic Ticket enabled; Ticket orchestration, Pods, and Task disabled.
|
||||||
|
- Coder/Reviewer/Companion: Ticket orchestration, Pods, and Task disabled; Ticket disabled in the current chosen defaults.
|
||||||
|
|
||||||
|
Commits:
|
||||||
|
- `f0f6cc9 feat: gate built-in tools by profile features`
|
||||||
|
- `2fd37af fix: align pod feature flag naming`
|
||||||
|
- `507863f fix: lock project role feature surfaces`
|
||||||
|
- `656048a test: cover project role feature profiles`
|
||||||
|
- merge: `c71a272 merge: gate tool surfaces by profile features`
|
||||||
|
|
||||||
|
Review:
|
||||||
|
- Earlier reviews requested `feature.pods` naming, project role Task-disable defaults, and actual project role profile coverage.
|
||||||
|
- Final review approved after `656048a`; merge-ready with only small residual E2E coverage risk noted.
|
||||||
|
|
||||||
|
Post-merge validation:
|
||||||
|
- `cargo test -p manifest actual_project_role_profiles_resolve_explicit_feature_defaults --lib`
|
||||||
|
- `cargo test -p manifest feature --lib`
|
||||||
|
- `cargo test -p pod project_role_tool_surfaces_keep_task_disabled_and_pods_role_scoped --test controller_test`
|
||||||
|
- `cargo test -p pod feature --tests`
|
||||||
|
- `cargo test -p tools --test integration`
|
||||||
|
- `cargo fmt --check`
|
||||||
|
- `git diff --check`
|
||||||
|
- `cargo run -q -p yoi -- ticket doctor`
|
||||||
|
- `cargo check --workspace`
|
||||||
|
- `nix build .#yoi`
|
||||||
|
|
@ -374,3 +374,54 @@ Residual risks:
|
||||||
- The project role coverage is compositional rather than a single E2E test that launches via `project:<role>` selectors and asserts each actual role's live tool schema. Given the current controller path uses resolved manifest feature flags directly, this is acceptable for this Ticket; an E2E selector/schema test can be added later if the role launcher path gains additional behavior.
|
- The project role coverage is compositional rather than a single E2E test that launches via `project:<role>` selectors and asserts each actual role's live tool schema. Given the current controller path uses resolved manifest feature flags directly, this is acceptable for this Ticket; an E2E selector/schema test can be added later if the role launcher path gains additional behavior.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
<!-- event: state_changed author: hare at: 2026-06-09T12:46:06Z from: inprogress to: closed reason: closed field: state -->
|
||||||
|
|
||||||
|
## State changed
|
||||||
|
|
||||||
|
Ticket を closed にしました。
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- event: close author: hare at: 2026-06-09T12:46:06Z status: closed -->
|
||||||
|
|
||||||
|
## 完了
|
||||||
|
|
||||||
|
Merged and closed.
|
||||||
|
|
||||||
|
Implementation:
|
||||||
|
- Added explicit Profile/resolved Manifest `feature` configuration for Task, Memory, Web, Pods, Ticket, and Ticket orchestration tool surfaces.
|
||||||
|
- Disabled features omit tools from the Worker tool schema instead of registering them and denying later.
|
||||||
|
- Core filesystem/process tools remain outside this feature grouping and continue to be controlled by scope/policy.
|
||||||
|
- Ticket lifecycle access and Ticket orchestration surfaces are separable.
|
||||||
|
- Web, Memory, Ticket, and Pod tools retain their existing fail-closed / authority / scope checks when enabled.
|
||||||
|
- Project role profiles now set explicit feature defaults:
|
||||||
|
- Orchestrator: Ticket lifecycle, Ticket orchestration, and Pods enabled; Task disabled.
|
||||||
|
- Intake: basic Ticket enabled; Ticket orchestration, Pods, and Task disabled.
|
||||||
|
- Coder/Reviewer/Companion: Ticket orchestration, Pods, and Task disabled; Ticket disabled in the current chosen defaults.
|
||||||
|
|
||||||
|
Commits:
|
||||||
|
- `f0f6cc9 feat: gate built-in tools by profile features`
|
||||||
|
- `2fd37af fix: align pod feature flag naming`
|
||||||
|
- `507863f fix: lock project role feature surfaces`
|
||||||
|
- `656048a test: cover project role feature profiles`
|
||||||
|
- merge: `c71a272 merge: gate tool surfaces by profile features`
|
||||||
|
|
||||||
|
Review:
|
||||||
|
- Earlier reviews requested `feature.pods` naming, project role Task-disable defaults, and actual project role profile coverage.
|
||||||
|
- Final review approved after `656048a`; merge-ready with only small residual E2E coverage risk noted.
|
||||||
|
|
||||||
|
Post-merge validation:
|
||||||
|
- `cargo test -p manifest actual_project_role_profiles_resolve_explicit_feature_defaults --lib`
|
||||||
|
- `cargo test -p manifest feature --lib`
|
||||||
|
- `cargo test -p pod project_role_tool_surfaces_keep_task_disabled_and_pods_role_scoped --test controller_test`
|
||||||
|
- `cargo test -p pod feature --tests`
|
||||||
|
- `cargo test -p tools --test integration`
|
||||||
|
- `cargo fmt --check`
|
||||||
|
- `git diff --check`
|
||||||
|
- `cargo run -q -p yoi -- ticket doctor`
|
||||||
|
- `cargo check --workspace`
|
||||||
|
- `nix build .#yoi`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user