Remove all Solana wallet / Web3 / NFT references sitewide#117
Remove all Solana wallet / Web3 / NFT references sitewide#117DarkModder33 merged 2 commits intomainfrom
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Agent-Logs-Url: https://github.com/DarkModder33/main/sessions/323d1ab2-a584-4779-b497-551f35bb562a Co-authored-by: DarkModder33 <254196519+DarkModder33@users.noreply.github.com>
🔗 Link AuditStatus: ❌ Failed Top findings
|
Reviewer's GuideThis PR removes the entire Solana/Web3/NFT wallet system (frontend, backend, copy, and types) and retargets the product toward generic trading, gaming, and AI/digital services, replacing token/$HAX concepts with neutral credits/points and upgrading CTAs toward pricing/scheduling flows. Sequence diagram for updated Hyperborea artifact claim flow (no wallet/Web5)sequenceDiagram
actor Player
participant HyperboreaGame
participant ClaimAPI as api_game_claim_artifact
participant Queue as ArtifactQueue
Player->>HyperboreaGame: Collect artifact in level
HyperboreaGame->>HyperboreaGame: Build ArtifactCollectionEvent
note right of HyperboreaGame: No web5Collection
HyperboreaGame->>ClaimAPI: POST /api/game/claim-artifact
ClaimAPI->>ClaimAPI: Validate rate limit and payload
ClaimAPI->>Queue: Enqueue claimRecord
note right of Queue: settlement.mode = preclaim
note right of Queue: settlement.networkHint = staging
Queue-->>ClaimAPI: Enqueue success
ClaimAPI-->>HyperboreaGame: 200 OK (queued status)
HyperboreaGame-->>Player: Show queued reward pts update
Sequence diagram for AINeuralHub free usage and upgrade CTA flowsequenceDiagram
actor User
participant AINeuralHub
participant UsageHook as useUsageLimit
participant PricingPage as Pricing
participant SchedulePage as Schedule
User->>AINeuralHub: Open Neural Hub
AINeuralHub->>UsageHook: Get usageCount
loop Free sessions
User->>AINeuralHub: Start chat session
AINeuralHub->>UsageHook: incrementUsage
UsageHook-->>AINeuralHub: Updated usageCount
end
User->>AINeuralHub: Start 4th session
UsageHook-->>AINeuralHub: usageCount >= FREE_USAGE_LIMIT
AINeuralHub-->>User: Show Neural Limit Reached modal
User->>AINeuralHub: Click Upgrade_to_Premium
AINeuralHub->>PricingPage: Navigate /pricing
User->>AINeuralHub: Click Contact_for_Enterprise
AINeuralHub->>SchedulePage: Navigate /schedule
Updated class diagram for game leaderboard and level token config (wallet removed)classDiagram
class LevelTokenConfig {
+boolean enabled
+string claimEndpoint
+string l2TokenSymbol
+string l2Network
}
class ArtifactCollectionEvent {
+string levelId
+string artifactId
+string artifactName
+number tokenRewardUnits
+number utilityPointsAfterEvent
+number utilityTokenBonusUnits
+boolean lockedAtPickup
+string claimEndpoint
+string collectedAt
+ElderFutharkRune rune
+string runeSymbol
+number runeBonus
+string gameSessionId
}
class LeaderboardSubmission {
+string displayName
+OAuthProvider oauthProvider
+string oauthUserId
+RunSummary run
}
class LeaderboardEntry {
+string id
+string displayName
+OAuthProvider oauthProvider
+string oauthUserId
+string levelId
+number score
+number combo
+number cloversCollected
+number utilityPoints
+number projectedTokenUnits
+string createdAt
}
class RunSummary {
+string sessionId
+string levelId
+number score
+number combo
+number cloversCollected
+number utilityPoints
+number projectedTokenUnits
}
class GameHUDProps {
+number cloversCollected
+number score
+number combo
+number utilityPoints
+number projectedTokenUnits
+string tokenSymbol
+number elapsedSeconds
+ObjectiveProgress objectiveProgress
+PowerUpState[] activePowerUps
}
LevelTokenConfig "1" o-- "*" ArtifactCollectionEvent : configures
ArtifactCollectionEvent --> LevelTokenConfig : uses_claimEndpoint
LeaderboardSubmission --> RunSummary : has_run
LeaderboardEntry --> RunSummary : derives_from
GameHUDProps --> RunSummary : displays_metrics
Updated class diagram for Investor Academy rewards and economy (HAX → credits)classDiagram
class AcademyModule {
+string id
+string title
+string description
+AcademyDifficulty difficulty
+number estimatedMinutes
+number xpReward
+number creditReward
+string[] lessons
+AcademyQuizQuestion[] quiz
}
class AcademyScoreBreakdown {
+number compositeScore
+number totalXp
+number totalCredits
+number streakScore
+number questScore
+number taskCompletionScore
+number bonusXp
+number bonusHax
}
class AcademyFeatureSpendQuote {
+string feature
+string label
+number unitCostHax
+number usedToday
+number projectedDailyUse
}
class AcademyEconomySnapshot {
+string userId
+AcademyScoreBreakdown score
+number creditsEarned
+number creditsCreditTotal
+number creditsSpentTotal
+number creditsSpentToday
+number creditsAvailable
+AcademyFeatureSpendQuote[] featureSpendQuotes
+string generatedAt
}
class AcademySeasonPayoutHistoryEntry {
+string id
+string seasonId
+string executedBy
+boolean dryRun
+number creditedCount
+number alreadyCreditedCount
+number totalCreditedCredits
+string note
+string createdAt
}
class AcademySeasonPayoutOutcomeSummary {
+string seasonId
+string status
+string health
+object lastRun
}
AcademySeasonPayoutOutcomeSummary --> AcademySeasonPayoutHistoryEntry : summarizes
AcademyEconomySnapshot --> AcademyScoreBreakdown : has_score
AcademyEconomySnapshot --> AcademyFeatureSpendQuote : quotes_costs
AcademyScoreBreakdown --> AcademyModule : derived_from_modules
class InvestorAcademyStore {
+getModuleRewardTotals(completedModuleIds string[]) RewardTotals
}
class RewardTotals {
+number moduleXp
+number moduleHax
}
InvestorAcademyStore ..> RewardTotals : returns
RewardTotals --> AcademyModule : aggregates_creditReward
Updated class diagram for AI kernel, queries, and training benchmarksclassDiagram
class NeuralQuery {
+string text
+string tier
+string mode
+QueryContext context
}
class QueryContext {
+number playerScore
+number relics
}
class ResponseTemplates {
+string[] REWARD_YIELD
+string[] UNCENSORED
}
class TrainingBenchmarkStage {
+TrainingBenchmarkStageId id
+string title
+string description
+number targetScore
+number score
+string status
+string updatedAt
+string[] metrics
}
class TrainingBenchmarkStageId {
<<enumeration>>
onboarding_success
signal_quality
response_quality
execution_safety
personalization_lift
game_integration
live_chart_readiness
}
class TrainingBenchmarksService {
+TrainingBenchmarkStage[] stages
+updateStage(id TrainingBenchmarkStageId, score number, notes string) void
}
NeuralQuery --> QueryContext : has
TrainingBenchmarksService --> TrainingBenchmarkStage : manages
TrainingBenchmarkStage --> TrainingBenchmarkStageId : uses_id
ResponseTemplates ..> NeuralQuery : used_by_processNeuralCommand
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Hey - I've found 1 issue, and left some high level feedback:
- In
lib/social-preview.ts, theSHARE_TITLEstring still references "Web3" even though the rest of the copy has been de-crypto-ified—consider updating this title to match the new non-Web3 branding. - The
featureFlags["auth.web3-wallet"]entry has been repurposed to generic chain auth but still uses the old Web3-specific key name; renaming this flag (and its usages) to something likeauth.chain-accountwould make its intent clearer and avoid future confusion.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- In `lib/social-preview.ts`, the `SHARE_TITLE` string still references "Web3" even though the rest of the copy has been de-crypto-ified—consider updating this title to match the new non-Web3 branding.
- The `featureFlags["auth.web3-wallet"]` entry has been repurposed to generic chain auth but still uses the old Web3-specific key name; renaming this flag (and its usages) to something like `auth.chain-account` would make its intent clearer and avoid future confusion.
## Individual Comments
### Comment 1
<location path="components/dashboard/NeuralVault.tsx" line_range="5-7" />
<code_context>
- alert("LIQUIDITY_PROVISION_SUCCESSFUL: NEURAL_BRIDGE_ACTIVE");
- }, 2000);
- };
+ const [projectedApy] = useState(12.5);
return (
</code_context>
<issue_to_address>
**suggestion:** Remove or repurpose `projectedApy` since it's no longer used in the UI.
This state is initialized but never used. Please either remove it or hook it into the new Intelligence UI if you still intend to display a performance metric.
```suggestion
return (
```
</issue_to_address>Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
There was a problem hiding this comment.
Pull request overview
Removes the (non-functional) Solana/Web3 wallet-driven UX and related token/NFT references across the Next.js app, replacing them with account/credits/premium-oriented flows to reduce friction for non-crypto visitors.
Changes:
- Deleted wallet/token/NFT components and a staking API route, and removed wallet fields from related types/APIs.
- Updated onboarding/landing/game/UI copy and CTAs to be non-Web3 (credits/points, premium upgrades, booking/contact).
- Renamed/reworked several internal identifiers and content entries to remove Web3/NFT terminology.
Reviewed changes
Copilot reviewed 64 out of 64 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| lib/wallet-provider.tsx | Deleted simulated wallet provider/context. |
| lib/trading/hax-token.ts | Deleted $HAX token utility/manager code. |
| lib/social-preview.ts | Updated share copy (but still has a Web3 title reference). |
| lib/service-conversions.ts | Renamed book_web3_consult conversion id to book_ai_consult. |
| lib/investor-academy/store.ts | Switched module reward aggregation from haxReward to creditReward. |
| lib/investor-academy/modules.ts | Renamed module reward field haxReward → creditReward. |
| lib/game/level-types.ts | Removed Web5 collection fields and loosened tokenConfig validation. |
| lib/game/level-generator.ts | Changed in-game token symbol defaults (THX → pts). |
| lib/game/leaderboard-types.ts | Removed wallet/web5 fields from leaderboard submission/entry types. |
| lib/feature-flags.ts | Disabled wallet auth flag and renamed labels/descriptions (keys still mention web3/nft). |
| lib/content/blog-posts.ts | Rewrote Web3-oriented blog entries/categories to chain-agnostic equivalents. |
| lib/ai/training-benchmarks.ts | Renamed benchmark stage id web5_game_integration → game_integration. |
| lib/ai/smart-environment.ts | Removed walletAddress from UserProfile. |
| lib/ai/kernel.ts | Removed wallet-connected context and replaced SOL/HAX/Web5 references in responses. |
| lib/ai/data-ingestion.ts | Updated bootstrap responses to remove Web3/RPC/$HAX references. |
| lib/ai/credit-system.ts | Removed token settlement integration and token balance field. |
| lib/affiliates.ts | Removed Phantom affiliate entry. |
| components/ui/NeuralConsole.tsx | Replaced $HAX display/CTA text with points/details. |
| components/ui/LiveActivity.tsx | Replaced staking/wallet/chain activity strings with neutral platform activity. |
| components/ui/ConnectWalletBtn.tsx | Deleted wallet connect button component. |
| components/trading/TradehaxBotDashboard.tsx | Updated default crypto symbol/copy (HAX → BTC, pairs text). |
| components/shamrock/ShamrockFooter.tsx | Updated footer copy/link (introduced a /ai-consulting link). |
| components/onboarding/GamifiedOnboarding.tsx | Replaced “connect wallet” step with booking CTA. |
| components/music/TokenRoadmap.tsx | Reframed token roadmap as platform roadmap; replaced token/NFT references. |
| components/monetization/AffiliateBanner.tsx | Removed Phantom banner from recommended tools. |
| components/landing/ServiceGrid.tsx | Removed $HAX/NFT arcade copy and prize pool language. |
| components/landing/Roadmap.tsx | Updated roadmap milestones to non-token/platform language. |
| components/landing/hub/HubMetricsRail.tsx | Replaced staking-based premium pitch with upgrade messaging. |
| components/landing/hub/HubMarketWorkspace.tsx | Removed HAX-specific UI flair and Web3-ish signal copy. |
| components/landing/HowItWorksSection.tsx | “Connect wallet” → “Create account” step and icon swap. |
| components/landing/HeroBackground.tsx | Updated docstring to remove “blockchain node” wording. |
| components/landing/GamingNFTSection.tsx | Removed NFT card/copy; reframed as general features (incl. music lessons). |
| components/landing/FeaturesSection.tsx | Wallet integration → account management language. |
| components/landing/AINeuralHub.tsx | Removed on-chain payment wall + chain session state; replaced with premium/contact CTAs; updated defaults (HAX/SOL → BTC). |
| components/intro/HyperboreaIntroOverlay.tsx | Replaced crypto roadmap pillar/scene copy with digital consulting copy. |
| components/game/SpadesGame.tsx | Removed wallet dependency and wallet-gated wager simulation step. |
| components/game/NFTMintPanel.tsx | Deleted NFT minting UI panel. |
| components/game/HyperboreaGame.tsx | Removed web5Collection from artifact collection events. |
| components/game/HaxHub.tsx | Replaced $HAX purchase label with points label. |
| components/game/GameHUD.tsx | Removed walletConnected prop and wallet CTA; token symbol default pts. |
| components/game/CommunityLeaderboard.tsx | Replaced wallet-address leaderboard mock data with player names. |
| components/education/InvestorAcademyExperience.tsx | Updated UI text/types from $HAX to credits; adjusted feature names. |
| components/dashboard/NeuralVault.tsx | Removed staking controls UI; reframed as “Intelligence” stats/core. |
| components/dashboard/Navbar.tsx | Replaced wallet button with “Book a Session” link. |
| components/counter/WalletButton.tsx | Repurposed wallet button component into a booking link. |
| components/counter/hooks/useProgram.tsx | Removed wallet integration; hardcoded connected=false/publicKey=null. |
| components/ai/ImageGeneratorComponent.tsx | Renamed image style option nft → creative. |
| components/ai/ConsentCenter.tsx | Removed “wallet keys” wording from consent copy. |
| components/ai/ChatStreamPanel.tsx | Renamed image style option nft → creative. |
| components/admin/InvestorAcademyAdminPanel.tsx | Renamed admin payout fields/labels from HAX to credits. |
| app/web3-token-roadmap-consulting/page.tsx | Rewrote content to product roadmap consulting, but kept /web3-... path. |
| app/tokenomics/page.tsx | Replaced tokenomics page content with services overview content. |
| app/services/page.tsx | Updated services copy/conversion ids; still includes “smart contracts” keyword. |
| app/portfolio/page.tsx | Updated specific project card copy away from wallet/NFT tech list. |
| app/page.tsx | Updated homepage bullet copy away from blockchain phrasing. |
| app/layout.tsx | Removed ChainSessionProvider/WalletProvider wrappers; updated site metadata copy. |
| app/investor-academy/page.tsx | Removed $HAX wording from hero pill. |
| app/game/GamePageClient.tsx | Removed wallet + NFT minting UI and wallet-linked leaderboard fields; updated reward copy. |
| app/crypto-project/page.tsx | Reframed “crypto project” hub page away from wallet/mint language. |
| app/api/staking/pool-v2/route.ts | Deleted staking pool endpoint. |
| app/api/game/leaderboard/route.ts | Removed wallet address validation/storage from leaderboard API. |
| app/api/game/claim-artifact/route.ts | Removed Web5 collection validation/persistence; renamed settlement mode. |
| app/api/environment/init/route.ts | Removed walletAddress from environment init payload/response. |
| app/api/ai/admin/benchmarks/route.ts | Updated benchmark stage id union (web5_game_integration → game_integration). |
Comments suppressed due to low confidence (1)
app/tokenomics/page.tsx:26
- Although the page content has been rewritten, the route remains under "/tokenomics" (folder name and URL). If the goal is to remove token-related references sitewide, consider relocating this page to a services-oriented route and adding a redirect from "/tokenomics" to the new URL.
export default function ServicesOverviewPage() {
return (
<main className="min-h-screen bg-black px-4 py-14 sm:px-6 sm:py-20 font-sans relative overflow-hidden">
<div className="absolute inset-0 bg-cyber-grid opacity-10 pointer-events-none" />
<div className="container mx-auto max-w-6xl relative z-10">
<Link href="/" className="text-xs sm:text-sm text-zinc-500 hover:text-white font-mono mb-10 sm:mb-12 inline-block transition-colors">
< RETURN_TO_SYSTEM
| const SHARE_MESSAGE = | ||
| "TradeHax AI: web development, tech repair, music lessons, and Web3 services."; | ||
| "TradeHax AI: web development, tech repair, music lessons, and digital services."; | ||
| const SHARE_TITLE = "TradeHax AI | Digital Services and Web3"; | ||
|
|
| "auth.web3-wallet": { | ||
| enabled: true, | ||
| label: "Web3 Wallet Auth", | ||
| description: "Solana wallet connection", | ||
| enabled: false, | ||
| label: "Chain Auth", | ||
| description: "Chain-agnostic account authentication (disabled)", | ||
| completedDate: "2025-09-05", | ||
| } as FeatureFlag, |
| "gaming.nft-rewards": { | ||
| enabled: false, // DISABLED: DAO frame exists but no NFT contract integration | ||
| label: "NFT Reward System", | ||
| description: "Earn and trade NFT badges (BETA)", | ||
| enabled: false, // DISABLED: No NFT contract integration | ||
| label: "Achievement Reward System", | ||
| description: "Earn in-game achievement badges (BETA)", | ||
| betaUntil: "2026-06-01", | ||
| } as FeatureFlag, |
| description: | ||
| "Plan token utility phases, governance milestones, and measurable rollout KPIs with a practical consulting roadmap.", | ||
| "Plan product utility phases, growth milestones, and measurable rollout KPIs with a practical consulting roadmap for your digital business.", | ||
| path: "/web3-token-roadmap-consulting", |
| <Link href="/beginner-ai-crypto-trading-assistant" className="text-[#9cadcc] hover:text-[#8fffb6] transition-colors"> | ||
| Beginner AI Crypto Assistant | ||
| </Link> | ||
| </li> | ||
| <li> | ||
| <Link href="/web3-token-roadmap-consulting" className="text-[#9cadcc] hover:text-[#8fffb6] transition-colors"> | ||
| Web3 Token Roadmap Consulting | ||
| <Link href="/ai-consulting" className="text-[#9cadcc] hover:text-[#8fffb6] transition-colors"> | ||
| AI Strategy Consulting | ||
| </Link> |
|
@copilot apply changes based on the comments in this thread |
Wallet-driven onboarding (
CONNECT_SYSTEM → Neural_Link_Active → CONNECT_WALLET),$HAXtoken gating, NFT copy, and dead Solana backend code were creating friction for non-crypto visitors and cluttering the codebase with non-functional flows.Deleted
lib/wallet-provider.tsx— Solana wallet providercomponents/ui/ConnectWalletBtn.tsx— wallet connect buttoncomponents/game/NFTMintPanel.tsx— NFT minting UIlib/trading/hax-token.ts— $HAX token utilitiesapp/api/staking/pool-v2/route.ts— staking backend endpointUI / Onboarding
ChainSessionProviderwrapper fromapp/layout.tsx(was unused no-op)HowItWorksSection: "Connect Your Wallet" → "Create Your Account" (UserCircleicon replacesWallet)FeaturesSection: "Secure Wallet Integration" → "Secure Account Management"AINeuralHub: replaced$HAX/SOL payment wall (pay-to-continue) with upgrade/contact CTAs; removedconnected,chainAccountId,isPayingstate andhandlePaymentServiceGrid/GamingNFTSection: removed NFT arcade card and "decentralized gaming" copyAffiliateBanner+lib/affiliates.ts: removed Phantom Wallet affiliate entryCopy & Content
$HAX,HAX/USDC, wallet address leaderboard entries,$HAX reward tiersreplaced with neutral equivalents (credits,pts,BTC/USD, player names)ShamrockFooter: "Web3 consulting" → "AI consulting"; Web3 Token Roadmap footer link → AI Strategy Consultinglib/content/blog-posts.ts:"Web3"category →"AI"; Solana trading guide and Web3 wallet security checklist rewritten to chain-agnostic equivalentslib/social-preview.ts,lib/feature-flags.ts,lib/service-conversions.ts: removed/renamed all Web3/NFT/wallet identifiersBackend & Types
lib/ai/kernel.ts: removedwalletConnectedfromNeuralQuery; replaced SOL/HAX/Web5 referenceslib/ai/training-benchmarks.ts:web5_game_integration→game_integration(was causingTrainingBenchmarkStageIdtype error)lib/service-conversions.ts:book_web3_consult→book_ai_consult(union type updated throughout)lib/investor-academy/modules.ts+store.ts:haxReward→creditRewardapp/services/page.tsx: "Web3 Development" and "Blockchain & Web3 Systems" service cards rewritten to "Custom Development" and "AI & Tech Systems"Original prompt
This pull request was created from Copilot chat.
Summary by Sourcery
Remove all Solana/Web3 wallet functionality and rebrand token/NFT language to neutral credits and services across the app.
New Features:
Bug Fixes:
Enhancements:
Documentation:
Chores: