Set provider name to "Intel Perf Platform" and remove unimplementable persist-anonymous-user capability#11
Merged
hortison merged 1 commit intoMay 26, 2026
Conversation
… 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>
Contributor
There was a problem hiding this comment.
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_nametoIntel Perf Platformfor clearer identification in Meshery’s provider chooser. - Removed the
persist-anonymous-usercapability that pointed to an unimplemented endpoint and broke login.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "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." |
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
provider_nameto Intel Perf Platform so Meshery's provider chooser shows a recognizable, branded label instead of the generic "Meshery". Meshery's chooser readsprovider_namefrom the capabilities document and falls back to the URL host until the capabilities probe succeeds, after which it displays this value.persist-anonymous-usercapability (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-useradvertised,InitiateLogin(server/models/remote_provider.go:642-645) routed the login throughInterceptLoginAndInitiateAnonymousUserSession, which POSTed to/api/identity/users/anonymousexpecting anAnonymousFlowResponseJSON envelope. Because no such endpoint exists, Fastly returned a 405 HTML page; the JSON decoder choked on the leading<and the server logged:With the capability removed,
InitiateLoginfalls through to redirecting the user to<provider>/login, which this repo already serves vialogin.html(verified:GET https://perf.smp-spec.io/login-> 200 HTML).Test plan
python3 -m json.tool capabilitiespasses (JSON well-formed)curl -s https://perf.smp-spec.io/loginreturns 200 withlogin.html/user/loginredirects tohttps://perf.smp-spec.io/logininstead of/errorinvalid character '<'unmarshal errors in Meshery logsWatch 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.