Game Framework
Troubleshooting

Common Errors

Solutions to frequently encountered errors.

Authentication Errors

"Unauthorized" (401)

Error:

Error: 401 Unauthorized - authentication required

Causes:

  1. Token not set or expired
  2. Invalid token format
  3. Token lacks permissions

Solutions:

# Check token is set
echo $GF_PUB_TOKEN

# Verify token format (should start with gf_live_ or gf_test_)
echo $GF_PUB_TOKEN | cut -d'_' -f1-2

# Test token
curl -H "Authorization: Bearer $GF_PUB_TOKEN" \
  https://registry.yourcompany.com/v1/me

Package Errors

"Package not found" (404)

Error:

Error: Package 'my_package' not found

Causes:

  1. Package name misspelled
  2. Wrong registry URL
  3. No access to package

Solutions:

# Check package exists
curl https://registry.yourcompany.com/v1/packages/my_package \
  -H "Authorization: Bearer $TOKEN"

# Verify pubspec.yaml
dependencies:
  my_package:
    hosted:
      name: my_package  # Check spelling
      url: https://registry.yourcompany.com
    version: ^1.0.0

"Version already exists"

Error:

Error: Version 1.0.0 of my_package already exists

Solution: Increment version in pubspec.yaml:

version: 1.0.1  # or 1.1.0, or 2.0.0

"Version solving failed"

Error:

Because package_a depends on http ^0.13.0 and package_b depends on http ^1.0.0,
package_a is incompatible with package_b.

Solutions:

# See dependency tree
flutter pub deps

# Try latest versions
flutter pub upgrade --major-versions

# Use dependency override (temporary)
dependency_overrides:
  http: ^1.0.0

Publishing Errors

"Forbidden" (403)

Error:

Error: 403 Forbidden - insufficient permissions

Causes:

  1. Lack packages.create permission
  2. Not workspace member
  3. Billing limit reached

Solutions:

# Check permissions
curl https://registry.yourcompany.com/v1/me/permissions \
  -H "Authorization: Bearer $TOKEN"

# Check workspace membership
curl https://registry.yourcompany.com/v1/workspaces/ws_ID/members/me \
  -H "Authorization: Bearer $TOKEN"

"Payment Required" (402)

Error:

Error: 402 Payment Required - package limit reached

Solution: Upgrade workspace plan:

curl -X POST https://registry.yourcompany.com/v1/workspaces/ws_ID/subscription \
  -H "Authorization: Bearer $TOKEN" \
  -d '{"plan": "pro"}'

Connection Errors

"Connection refused"

Error:

Error: Connection refused to https://registry.yourcompany.com

Causes:

  1. Registry down
  2. Network issues
  3. Firewall blocking

Solutions:

# Check registry health
curl https://registry.yourcompany.com/health

# Check DNS
nslookup registry.yourcompany.com

# Check connectivity
ping registry.yourcompany.com

"SSL certificate verify failed"

Error:

Error: SSL certificate verify failed

Solutions:

# Check certificate
openssl s_client -connect registry.yourcompany.com:443

# Update CA certificates
# macOS
brew install ca-certificates

# Ubuntu
sudo apt-get install ca-certificates

Configuration Errors

"pub-tokens.json not found"

Error:

Error: Could not find pub-tokens.json

Solution:

mkdir -p ~/.pub-cache
cat > ~/.pub-cache/pub-tokens.json << EOF
{
  "version": 1,
  "hosted": [
    {
      "url": "https://registry.yourcompany.com",
      "token": "\${GF_PUB_TOKEN}",
      "env": "GF_PUB_TOKEN"
    }
  ]
}
EOF

"Invalid pubspec.yaml"

Error:

Error: pubspec.yaml is invalid

Common issues:

# ✗ Bad - no version
name: my_package
description: My package

# ✓ Good - complete
name: my_package
version: 1.0.0
description: My package with description over 60 characters long

environment:
  sdk: '>=3.0.0 <4.0.0'

CI/CD Errors

"GF_PUB_TOKEN not set"

In CI/CD, ensure secret is configured:

GitHub Actions:

  • Settings → Secrets → Actions → New secret
  • Name: GAME_FRAMEWORK_TOKEN

GitLab CI:

  • Settings → CI/CD → Variables
  • Key: GAME_FRAMEWORK_TOKEN
  • Check "Masked"

Getting Help

If you're still stuck:

  1. Check status page: https://status.gameframework.dev
  2. Search docs: Use search bar
  3. Check FAQ: FAQ
  4. Contact support: support@gameframework.dev
  5. Community Slack: https://gameframework.dev/community

Still having issues? Email support@gameframework.dev with error details.

Next Steps