Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions src/services/__tests__/spendAnalytics.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,11 @@ describe('spendAnalytics data layer', () => {
const result = await fetchSpendNarrative({ summary: { total: 100 } })
expect(result).toEqual({ available: true, narrative: 'Spend is up 12%.' })
const [url, body] = axios.post.mock.calls[0]
// @stale-fleet-app-id exclude this pins the path the caller deliberately
// leaves stale. integriq publishes no `/api/sources/{source}/call` under
// either name (re-verified 2026-09-10 by git log -S over its full history),
// so the assertion moves in the same change that gives REQ-SAW-006 a real
// integriq endpoint to call. See fetchSpendNarrative in spendAnalytics.js.
expect(url).toContain('/apps/openconnector/')
expect(url).not.toContain('11434')
// Conduction local-LLM defaults.
Expand Down
9 changes: 9 additions & 0 deletions src/services/spendAnalytics.js
Original file line number Diff line number Diff line change
Expand Up @@ -244,6 +244,15 @@ export async function fetchSpendNarrative({ summary, timeoutMs = 5000 }) {
// `POST /api/datasource/{sourceId}/resolve`, a read-only dashboard value
// resolver that dispatches a GET, which is not an inference call. This needs
// an integriq-side endpoint before the name here means anything.
//
// @stale-fleet-app-id exclude the route exists under NEITHER name. Re-verified
// 2026-09-10 against integriq `development`: SourcesController publishes only
// test, logs, tripCircuitBreaker and resetCircuitBreaker, and
// `git log -S "sources/{source}/call"` and `git log -S "sources#call"` over its
// full 3,960-commit history, which spans the whole openconnector era, both
// return nothing. The app has no inference endpoint at all. REQ-SAW-006 waits
// on an integriq surface that has never been built, so repointing the segment
// would turn one 404 into another while hiding that gap.
const url = generateUrl('/apps/openconnector/api/sources/{source}/call', {
source: LLM_SOURCE_ALIAS,
})
Expand Down
Loading