sync: merge upstream/main (v1.3.1 + workspace foundation)#12
Open
stanleykao72 wants to merge 22 commits intomainfrom
Open
sync: merge upstream/main (v1.3.1 + workspace foundation)#12stanleykao72 wants to merge 22 commits intomainfrom
stanleykao72 wants to merge 22 commits intomainfrom
Conversation
* docs: split workspace initiatives from repo-local changes * docs: align roadmap and explore ux with initiatives
…ission-AI#990) * fix: handle XDG_CONFIG_HOME and %APPDATA% in telemetry config path * fix: migrate telemetry config to resolved path * fix: address telemetry config review feedback --------- Co-authored-by: TabishB <tabishbidiwale@gmail.com>
* fix: escape glob-special chars in directory paths (Fission-AI#974) Parentheses and square brackets in project directory paths broke fast-glob matching, causing glob-based artifact outputs to silently return empty results. Escape these characters in the directory portion before passing to fast-glob, preserving glob semantics in the generates pattern. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: use cwd for artifact output globs --------- Co-authored-by: furao <furao@didiglobal.com> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: Tabish Bidiwale <30385142+TabishB@users.noreply.github.com> Co-authored-by: TabishB <tabishbidiwale@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat: add Kimi CLI skills-only support * test: relax Kimi adapterless log assertion
* docs: propose workspace reimplementation slices * docs: add workspace reimplementation roadmap readme * docs: add workspace poc reference guide * docs: add workspace reimplementation entrypoint
* docs: sync tool ID lists with AI_TOOLS source of truth Fixes missing tool IDs in docs/cli.md and docs/supported-tools.md that drifted from src/core/config.ts (AI_TOOLS). - docs/cli.md: add bob, forgecode, junie, lingma (25 -> 29) - docs/supported-tools.md: add lingma, align order with config.ts (28 -> 29) Follow-up to Fission-AI#1003. * docs: address AICR feedback on tool ID ordering and table entry Address review comments from Copilot and CodeRabbit on PR Fission-AI#1027: - docs/cli.md: reorder lingma to match AI_TOOLS position (between qoder and qwen) - docs/supported-tools.md: same reordering in the --tools list - docs/supported-tools.md: add missing Lingma row to Tool Directory Reference table (inserted alphabetically between Kiro and OpenCode, matching existing table convention) Verified all three documentation surfaces against AI_TOOLS (29 tools): - cli.md list: order matches src/core/config.ts - supported-tools.md list: order matches src/core/config.ts - supported-tools.md table: set equals AI_TOOLS (alphabetical-by-display-name order preserved per existing convention).
* Include sync in core workflow defaults * Add old core custom profile sync hint * Update workflows sync default docs
* fix: make requirement header parsing case-insensitive * fix: add tests and cover the rest of requirement header places
* docs: define workspace foundation and setup specs * Complete workspace foundation * Document workspace beta status * Address workspace PR review comments
Adds a "Community Schemas" section to docs/customization.md cataloging community-maintained schema bundles distributed via standalone repositories. Modeled after github/spec-kit's community extension catalog (https://github.com/github/spec-kit/tree/main/extensions). The first entry is `superpowers-bridge` from JiangWay/openspec-schemas — born from the proposal in PR Fission-AI#970 and now maintained externally. Also adds a brief 4-line "Community schemas" introductory section in README.md (between Docs and Why OpenSpec) pointing readers to the catalog. Documentation only; no code or schema changes. Refs: Fission-AI#970 Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…m-v1.3.1 Resolves CORE_WORKFLOWS to union both verify (fork) and sync (upstream). Nests fork's getChangesDir() inside upstream's canonicalizeExistingPath(). Mechanically applies 6-entry CORE list to test fixtures. Constraint: fork has v1.3.0 base + 26 commits ahead, upstream landed workspace foundation Rejected: rebase (linear history) | 26 commit replay would hit same conflict each time Confidence: medium Scope-risk: moderate Reversibility: clean (merge commit, can revert) Tested: pnpm install + test + build + validate (Stage 12 follow-up) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…WS union After merging upstream/main, CORE_WORKFLOWS now contains both verify and sync. The 'extra workflow' test scenario (project has artifacts beyond configured workflows) needed a workflow that's truly non-core. Switched helper from openspec-verify-change/verify.md to openspec-new-change/new.md since 'new' is in ALL_WORKFLOWS but not CORE_WORKFLOWS. Constraint: warning test requires a non-core workflow artifact to trigger Tested: pnpm test test/commands/config-profile.test.ts → 18/18 pass Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 task
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
Merges
upstream/main(Fission-AI/OpenSpec) into forkmain, picking up:setup / list / link / relink / doctorTotal upstream commits: 20. After merge, fork is 22 ahead of fork/main (20 upstream + 1 merge + 1 follow-up fix), 0 behind.
Conflict Resolution
9 files conflicted, 32 hunks total. 4 files had real semantic decisions:
src/commands/workflow/instructions.tspath.join(getChangesDir(...))was redundant afterloadChangeContext()refactor. Removed unused import.src/commands/workflow/templates.tsgetLoadedPluginsfrom fork plugin system +FileSystemUtilsfrom upstream canonical path work).src/core/artifact-graph/instruction-loader.tsgetChangesDir()inside upstream'scanonicalizeExistingPath()— preserves both behaviors.src/core/profiles.ts['propose', 'explore', 'apply', 'verify', 'sync', 'archive']. Fork addedverify, upstream addedsyncfor workspace path. Both now default-active.Remaining 28 hunks across 5 test files were mechanical: applying the 6-entry CORE list to fixture expectations.
Follow-up Fix
The CORE_WORKFLOWS union broke 1 test (
config-profile.test.ts:347): theaddExtraVerifyWorkflowArtifactshelper was designed to add a non-core workflow to trigger a warning, butverifyis now in core. Renamed toaddExtraNonCoreWorkflowArtifactsand switched toopenspec-new-change(inALL_WORKFLOWSbut notCORE_WORKFLOWS). Commit:bbee45c.Test Plan
pnpm install— cleanpnpm test— 1719/1719 passpnpm build— TypeScript compilespnpm lint— no warningsnode bin/openspec.js validate --all --strict— 51 pass / 7 fail; the 7 failures are pre-existing inupstream/main(PR [codex] Archive workspace foundation Fission-AI/OpenSpec#1045 itself notes this) and affect upstream's own active changes, not fork contentSmoke Tests on Real Production Content
Beyond unit tests, ran the merged CLI against live fork-daily-driver content (Odoo 18 EE project, custom
changesDirpointing to Obsidian vault, plugin-bundledodoo-sddschema):validateagainst real changes (mix ofspec-driven,odoo-sdd,odoo-trivialschemas with customchangesDir)init --profile coreproduces 6-entry COREverifyANDsyncskills + commands both generatedchangesDir: ./custom-changeslookupcanonicalizeExistingPath(getChangesDir(...))resolves correctlyinstructions applyonodoo-sddplugin schema[domain: ...]tags preservedupdateregenerates corrupted skill--teams/--sequentialorchestration flagsUpstream added
syncto defaultCORE_WORKFLOWS. After this merge, fork's CORE is the union:['propose', 'explore', 'apply', 'verify', 'sync', 'archive'].If your global config (
~/.config/openspec/config.json) was set before this merge, it likely still has the old 5-entry workflows list (nosync). Runningopenspec updatein any project will removeopenspec-sync-specsskill +sync.mdcommand because user config takes precedence over default CORE.To opt into the new 6-entry default after pulling this merge, do one of:
openspec config profile, reselectcore— picks up the new 6-entry default"sync"to theworkflowsarray in~/.config/openspec/config.jsonsyncskill installedThis is intended behavior (user config respected), not a regression — but it's surprising enough to flag here.
Implications for Upstream Contribution Strategy
workspace-foundationoverlaps with our planned T2/T4 PRs. Strategy revision tracked inopenspec/changes/upstream-contribution/(separate commit on main).🤖 Generated with Claude Code