feat: bridge OpenSpec context into Superpowers plans#12
Merged
Conversation
…ty fixes - Add src/core/workflow-status.ts: programmatic status tracking, conflict detection, and dashboard rendering for active OpenSpec changes - Add src/core/workflow-status.test.ts: 15 tests covering findActiveChanges, synthesizeWorkflowStatus, loadWorkflowStatus, detectWorkflowConflicts, renderWorkflowDashboard - Rewrite src/cli/status.ts to render workflow dashboard per active change - Update templates/SKILL.md: replace simple status table with status-first routing via workflow-status.md, conflict detection, and dashboard spec - Add workflow-status.md maintenance instructions to all 6 phase templates - Fix ensureOpenSpecProjectContext called unconditionally when user skips OpenSpec initialization (P0) - Replace regex-based YAML key detection with yaml.parse() (P0) - Unify fs.existsSync calls to use project fileExists/dirExists (P2) - Bump version to 0.4.1-beta.1
Add a dedicated /openflow init phase that scans project context, captures stack and rule constraints, and lets proposal prompt users to opt into initialization instead of hard-blocking when config.yaml is missing. Constraint: preserve non-implementation write boundaries for init and proposal phases Rejected: keep missing config.yaml as a hard gate | would block adoption in real projects Confidence: high Scope-risk: moderate Directive: Treat config.yaml as recommended project context, not a mandatory gate, unless a later workflow change says otherwise Tested: openspec validate add-openflow-init-phase --strict; npm run check Not-tested: interactive init against a live heterogeneous project tree
Advance the package version so the new /openflow init workflow can be published as a distinct beta after validation. Constraint: preserve the existing beta dist-tag lane Rejected: reuse 0.4.1-beta.1 | already published to beta Confidence: high Scope-risk: narrow Directive: keep version bumps isolated from feature commits when publishing beta releases Tested: npm run check; openspec validate add-openflow-init-phase --strict Not-tested: downstream consumer install behavior after publish
Strengthen generated phase aliases and proposal instructions so /openflow-proposal checks openspec/config.yaml before reading project files or creating changes. Existing config continues without prompting; missing config prompts for /openflow init or allows an explicit skip. Constraint: preserve optional initialization behavior rather than making config.yaml mandatory Rejected: rely only on proposal.md step ordering | Claude alias invocation skipped the guard before scanning a real project Confidence: high Scope-risk: narrow Directive: Keep alias templates explicit about pre-scan guards because some tools expose aliases as the primary instruction surface Tested: npm run check Not-tested: live Claude retry in wmflight after package install
Advance the beta package version so the strengthened pre-scan init guard ships as a distinct testable release. Constraint: npm beta dist-tag already points at 0.4.1-beta.2 Rejected: republish existing version | npm versions are immutable Confidence: high Scope-risk: narrow Directive: publish this version with the beta dist-tag for wmflight validation Tested: npm run check; npm pack --dry-run Not-tested: post-publish global install in Claude
The branch now ships project-context initialization and status-first workflow routing as stable behavior, so the public README, diagrams, and package metadata need to describe the released contract instead of the beta line. Constraint: npm latest was 0.4.0 before publishing 0.4.1 Rejected: Leave README links on 0.4.0-beta.3 | published docs would point users at stale diagrams and beta assets Confidence: high Scope-risk: narrow Directive: Keep README diagram URLs aligned with package.json before every npm publish Tested: npm run check; npm pack --dry-run; npm publish --access public; npm view @lininn/openflow@0.4.1 version dist-tags.latest Co-authored-by: OmX <omx@oh-my-codex.dev>
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Verification