Files
zopu-code/packages/backend/convex
-Puter c644ec8d01 feat(git): thin project onboarding, provider integration, and AgentOS repository access
Effect primitives:
- git-provider: GitProvider, connection states, normalized errors, URL
  normalization, host compatibility, credential freshness window
- git-provisioning: validated Puter commands, migration states, idempotency
  keys, safe replacement rules, owner-safe guards
- git-webhook: supported events, signature verification, delivery states
- host-repository: provider-neutral credential-safe clone via GIT_ASKPASS

Normalized Convex schema:
- gitProviderAccounts, refined gitConnections, gitProviderOrganizations,
  gitRepositories, gitMigrations, gitWebhookDeliveries
- projects: gitRepositoryId + instructions fields
- Schema fields optional for backward compatibility, with backfill cron

Backend:
- Connection health: verify action, hourly reconciliation (covers stale
  active + reauth-required + undefined-state legacy connections)
- Puter provisioning: createPuterUser/Organization/Repository with owner
  binding, startGithubMigration (durable via scheduler), getMigration
- Org ownership: explicit member add with admin role + verification
- Webhook HTTP actions: HMAC verification, delivery persistence with
  idempotency, repository resolution, byte-length payload limit
- Automatic Puter webhook creation after repo creation/migration with
  fail-loud state tracking
- Repository sync after connection (Gitea + GitHub)
- AgentOS execution resolves gitRepositoryId for real clone URL
- Credential gating: state + freshness checks before execution and
  project creation
- listForOrganization for cross-project Work filtering

Frontend:
- /projects onboarding page with GitHub OAuth (linkSocial) and Puter PAT
- Zero-project redirect, repository selection, context editor
- Provider-aware settings panel (no serverUrl for Puter)
- Project selection via ?project= query param
- GitHub scopes: repo + read:org

Agent runtime:
- Clones user repository with GIT_ASKPASS credential helper (no token in
  URL, args, or git config), provider-aware username
- Removed fixed Zopu source path and .env copy
2026-07-31 14:36:56 +05:30
..
2026-07-19 02:46:47 +05:30
2026-07-19 02:46:47 +05:30

Convex Backend

Convex is the only application API used by web, desktop, and mobile clients. The active backend covers the durable control plane through Slice 4: tenancy, projects, conversation turns, Signals, Work planning, approved Design slices, simulated Runs and Attempts, artifacts/delivery metadata, and Flue persistence.

Domain relations

  • organizations and organizationMembers own tenancy.
  • projects owns the single v0 Git source; projectContextDocuments stores repository context.
  • conversations, conversationTurns, conversationMessages, and conversationAttachments own chat admission and reactive history.
  • signals, signalConstraints, and signalSources preserve structured intent and exact evidence.
  • works, signalWorkAttachments, and workEvents own proposed Work and provenance.
  • workDefinitions, workQuestions, and workApprovals own versioned outcome contracts and approvals.
  • designPackets and workSlices preserve versioned implementation intent and executable slice order.
  • workRuns, workAttempts, workAttemptEvents, and resolverDecisions own bounded simulated execution and recovery.
  • workArtifacts and workDeliveries preserve evidence and delivery metadata without performing Git or sandbox work.

The flue* tables are infrastructure tables required by Flue's persistence contract. They are deliberately separate from the product relations.