Commit Graph

3 Commits

Author SHA1 Message Date
Phil Larson
c1bc95c1db fix(dashboard): honor forced GraphQL transport (#2353)
## Summary
- honor `forceMode` for GraphQL queries and mutations
- keep token-backed Discussion operations on the selected token
transport even when `gh` is authenticated
- add regression coverage for forced-token category lookup, errors, and
Discussion creation

## Test plan
- `CI=true pnpm --filter @fusion/dashboard exec vitest run
src/__tests__/github-discussions.test.ts
src/__tests__/github-forced-mode.test.ts
src/__tests__/github-pr-threads.test.ts`
- `CI=true pnpm build`


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Bug Fixes**
* GitHub Discussions GraphQL operations now consistently honor the
selected transport/authentication mode.
* Forced token-based transport correctly applies to discussion queries
and mutations (including discussion creation).
* Missing required authentication is now reported instead of falling
back to an unauthenticated path.
* **Tests**
* Added a test covering discussion creation using forced token-based
GraphQL transport.
* **Release**
  * Shipped as a patch release of the Fusion library.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-07-20 08:49:28 -07:00
gsxdsm
a11f789b0c FN-8327: fall back to issues when Discussions are disabled
Reports can select a Discussion category and reliably file to Issues when Discussions are unavailable.

- Add Discussion-disabled detection across GitHub GraphQL operations.
- Let report submission select a category and disclose the actual filing destination.
- Preserve duplicate handling and document the fallback behavior.

Files changed:
 .changeset/fn-8327-discussion-fallback.md          |  7 +++
 docs/dashboard-guide.md                            |  4 +-
 packages/dashboard/app/api/report.ts               | 22 +++++--
 packages/dashboard/app/components/ReportModal.tsx  |  7 ++-
 .../app/components/__tests__/ReportModal.test.tsx  | 13 ++++
 .../src/__tests__/github-discussions.test.ts       | 29 +++++++--
 .../src/__tests__/report-pipeline.test.ts          | 63 ++++++++++++++-----
 .../dashboard/src/__tests__/report-routes.test.ts  | 15 +++--
 packages/dashboard/src/github.ts                   | 71 ++++++++++++++++------
 packages/dashboard/src/report-pipeline.ts          | 54 +++++++++++-----
 .../dashboard/src/routes/register-report-routes.ts | 12 +++-
 11 files changed, 227 insertions(+), 70 deletions(-)

Fusion-Task-Id: FN-8327

Fusion-Task-Lineage: 510d3d4f-ffc9-4167-bee8-7043e0ddbd9c

Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
2026-07-19 20:42:05 -07:00
gsxdsm
18f1cb743a FN-8308: add selectable GitHub Discussions report targets
Enable configurable GitHub Issue or Discussion destinations for in-app reports.

- Add report target and Discussion category settings with localized controls.
- Validate target overrides before Help shortcuts and route them through report filing.
- Discover and validate GitHub Discussion categories through GraphQL.
- Cover target validation on both draft and file routes.

Files changed:
 .changeset/fn-8308-report-discussions.md           |  7 +++
 docs/dashboard-guide.md                            |  7 +++
 .../core/src/__tests__/settings-parity.test.ts     |  9 +++
 packages/core/src/index.gate.ts                    |  2 +-
 packages/core/src/index.ts                         |  2 +-
 packages/core/src/settings-schema.ts               |  4 ++
 packages/core/src/types.ts                         | 10 ++++
 packages/dashboard/app/api/report.ts               | 13 +++-
 packages/dashboard/app/components/ReportModal.tsx  |  9 ++-
 .../__tests__/SettingsModal.general.test.tsx       | 18 ++++++
 .../settings/sections/GeneralSection.tsx           | 16 ++++-
 .../src/__tests__/github-discussions.test.ts       | 44 ++++++++++++++
 .../src/__tests__/report-pipeline.test.ts          | 70 +++++++++++++++++++++-
 .../dashboard/src/__tests__/report-routes.test.ts  | 19 ++++++
 packages/dashboard/src/github.ts                   | 37 ++++++++++--
 packages/dashboard/src/index.ts                    |  4 +-
 packages/dashboard/src/report-pipeline.ts          | 41 +++++++++----
 .../dashboard/src/routes/register-report-routes.ts | 32 ++++++++--
 packages/i18n/locales/en/app.json                  | 26 +++++++-
 packages/i18n/locales/es/app.json                  | 26 +++++++-
 packages/i18n/locales/fr/app.json                  | 26 +++++++-
 packages/i18n/locales/ko/app.json                  | 26 +++++++-
 packages/i18n/locales/zh-CN/app.json               | 26 +++++++-
 packages/i18n/locales/zh-TW/app.json               | 26 +++++++-
 24 files changed, 453 insertions(+), 47 deletions(-)

Fusion-Task-Id: FN-8308

Fusion-Task-Lineage: f5ac1b67-ecbc-4765-88c7-c524c7e943bf

Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
2026-07-19 18:37:45 -07:00