-
Notifications
You must be signed in to change notification settings - Fork 3
feat(cli,docs): generate provider-form workflows #764
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
4b079c7
feat(cli): generate provider-form workflows
e5f1ba2
docs: document provider configuration reloads
e1ba129
test(cli): cover provider-form Linear init
5ad37e0
chore(cli): add provider workflow changeset
2148c65
fix(cli): align provider workflow templates
9e900b5
fix(cli): correct provider template reload docs
40d682d
docs(cli): clarify provider reload boundary
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| --- | ||
| "@gh-symphony/cli": patch | ||
| --- | ||
|
|
||
| Generate provider-form tracker configuration in new workflows and document migration from deprecated flat tracker keys (#710). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,42 @@ | ||
| # ADR: Retain flat tracker keys as deprecated provider aliases | ||
|
|
||
| - **Date**: 2026-08-29 | ||
| - **Status**: Accepted | ||
| - **Related Issues**: #669, #679, #710 | ||
| - **Related Spec**: `docs/symphony-spec.md` §5.3.1, §6.1 (read-only) | ||
|
|
||
| ## Context | ||
|
|
||
| The upstream configuration model places adapter-owned tracker settings in the | ||
| opaque `tracker.provider` object. Existing GitHub Symphony workflows used flat | ||
| `tracker.*` keys such as `project_id`, `endpoint`, `state_field`, `priority`, | ||
| and `pickup_labels`. Removing those keys immediately would break committed | ||
| workflows and installed repository runtimes. | ||
|
|
||
| ## Decision | ||
|
|
||
| New generated workflows, reference workflows, and skill templates use | ||
| `tracker.provider`. The parser continues to promote supported flat tracker keys | ||
| into that provider object as deprecated, non-breaking aliases. Diagnostics from | ||
| `gh-symphony workflow validate` and `gh-symphony repo doctor` identify the | ||
| aliases and print a copyable normalized provider block. | ||
|
|
||
| The aliases are scheduled for removal in the next major release. The removal | ||
| work is tracked separately in #679 and must not begin before its required sign | ||
| off. | ||
|
|
||
| ## Upstream conformance and divergence | ||
|
|
||
| Provider-form configuration aligns with the upstream specification. Retaining | ||
| flat aliases is an intentional, time-bounded repository compatibility extension | ||
| rather than an upstream-spec change. `docs/symphony-spec.md` remains | ||
| unchanged. | ||
|
|
||
| ## Consequences | ||
|
|
||
| - Newly initialized repositories follow the provider-owned configuration | ||
| boundary without migration work. | ||
| - Existing repositories keep working while operators migrate using doctor | ||
| output. | ||
| - Documentation consistently labels flat keys as deprecated and directs new | ||
| configuration to `tracker.provider`. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nit, 비블로킹 — 제 3회차 제안문의 오류입니다]
state_field를 core로 분류한 건 제가 틀렸습니다. 그대로 적용해 주신 건 맞고, 문장 안의 분류만 어긋납니다.state_field는 provider 소유 키입니다:provider:아래 4칸으로 emit —generate-workflow-md.ts:106(provider.state_field = input.stateFieldName),generate-reference-workflow.ts:89,skills/templates/gh-symphony.ts:117DEPRECATED_TRACKER_PROVIDER_KEYS(packages/core/src/workflow/parser.ts:459)에"state_field"가 들어 있음 = flattracker.state_field가 deprecated alias:336-337이 이미tracker.state_field를 flat alias 목록에 올려두어, 지금:45와 한 파일 안에서 상충합니다reload 타이밍(next tick) 자체는 맞습니다 —
dependencies.workflowLifecycle.stateFieldName으로 매 tick 넘어가는 것 확인했습니다. provider 소유이면서 tick마다 리로드되는blocker_check_states/planning_states와 같은 부류이므로, 문장에서 core 목록이 아니라 provider-owned 목록으로 옮기면 됩니다.approve를 막지 않습니다. 머지 전에 한 줄만 적용해 주시면 되고, 넘어가셔도 재차 제기하지 않겠습니다.
Generated by Claude Code