Skip to content

Set provider name to "Intel Perf Platform" and remove unimplementable persist-anonymous-user capability#11

Merged
hortison merged 1 commit into
masterfrom
provider/intel-perf-platform-name-and-anon-capability-cleanup
May 26, 2026
Merged

Set provider name to "Intel Perf Platform" and remove unimplementable persist-anonymous-user capability#11
hortison merged 1 commit into
masterfrom
provider/intel-perf-platform-name-and-anon-capability-cleanup

Conversation

@hortison

Copy link
Copy Markdown
Contributor

Summary

  • Set provider_name to Intel Perf Platform so Meshery's provider chooser shows a recognizable, branded label instead of the generic "Meshery". Meshery's chooser reads provider_name from the capabilities document and falls back to the URL host until the capabilities probe succeeds, after which it displays this value.
  • Remove the persist-anonymous-user capability (endpoint /api/identity/users/anonymous). This static GitHub Pages site does not implement that endpoint, so advertising it caused Meshery to fail every login.

Why the cleanup matters

When Meshery saw persist-anonymous-user advertised, InitiateLogin (server/models/remote_provider.go:642-645) routed the login through InterceptLoginAndInitiateAnonymousUserSession, which POSTed to /api/identity/users/anonymous expecting an AnonymousFlowResponse JSON envelope. Because no such endpoint exists, Fastly returned a 405 HTML page; the JSON decoder choked on the leading < and the server logged:

ERRO ... invalid character '<' looking for beginning of value
       | Short Description: Unable to unmarshal the : .user flow response
       | caller=remote_provider.go:548

With the capability removed, InitiateLogin falls through to redirecting the user to <provider>/login, which this repo already serves via login.html (verified: GET https://perf.smp-spec.io/login -> 200 HTML).

Test plan

  • python3 -m json.tool capabilities passes (JSON well-formed)
  • curl -s https://perf.smp-spec.io/login returns 200 with login.html
  • After deploy, hit a Meshery instance configured against this provider and confirm:
    • Provider chooser shows "Intel Perf Platform"
    • /user/login redirects to https://perf.smp-spec.io/login instead of /error
    • No invalid character '<' unmarshal errors in Meshery logs

Watch for

Every other capability in this file (/api/identity/users/preferences, /api/performance/results, /api/events, /api/integrations/connections, etc.) is also unreachable on a static host. None are exercised during login, so this PR is intentionally scoped to the login break and the rename. The remaining endpoints will exhibit the same HTML-instead-of-JSON failure mode when their features are first invoked against this provider; that is a separate cleanup once those flows are actually exercised.

… capability

Two related changes to how this static site identifies itself to Meshery:

- Set provider_name to "Intel Perf Platform" so Meshery's provider chooser
  shows a recognizable, branded label instead of the generic "Meshery".
  The chooser displays whatever provider_name the capabilities document
  returns (server/models/remote_provider.go:147 falls back to the URL
  host until the capabilities probe succeeds and overwrites it).

- Remove the persist-anonymous-user capability. The static site has no
  /api/identity/users/anonymous endpoint, so when Meshery saw the
  capability it routed login through InterceptLoginAndInitiateAnonymousUserSession
  and POSTed there expecting JSON. Fastly answered with an HTML 405 page,
  and Meshery logged "invalid character '<' looking for beginning of
  value | Unable to unmarshal the : .user flow response" on every login.
  With the capability gone, InitiateLogin falls through to redirecting
  the user to <provider>/login, which this repo already serves via
  login.html.

Signed-off-by: Lee Calcote <lee.calcote@layer5.io>
Copilot AI review requested due to automatic review settings May 26, 2026 20:43

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the provider capabilities document so Meshery displays a branded provider label and avoids attempting an unsupported anonymous-user persistence flow against this static provider site.

Changes:

  • Set provider_name to Intel Perf Platform for clearer identification in Meshery’s provider chooser.
  • Removed the persist-anonymous-user capability that pointed to an unimplemented endpoint and broke login.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread capabilities
"provider_name": "Meshery",
"provider_name": "Intel Perf Platform",
"provider_description": [
"Intel Performance Platform for use on internal networks in assessment of cloud native traffic with a specific focus on efficiencies in the configuraiton of Envoy, Nighthawk, Meshery and Intel hardware tuning."
@hortison hortison merged commit 5ac99b3 into master May 26, 2026
1 check passed
@hortison hortison deleted the provider/intel-perf-platform-name-and-anon-capability-cleanup branch May 26, 2026 20:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants