Skip to content

feat(functions): add storage-confirm-upload function#69

Open
theothersideofgod wants to merge 10 commits into
mainfrom
feat/storage-confirm-upload
Open

feat(functions): add storage-confirm-upload function#69
theothersideofgod wants to merge 10 commits into
mainfrom
feat/storage-confirm-upload

Conversation

@theothersideofgod

Copy link
Copy Markdown
Contributor

Summary

  • Add storage-confirm-upload function for deferred upload confirmation via HeadObject check
  • Add minio service to docker-compose for local S3 testing
  • Fix db-setup image (was pointing to wrong image)
  • Update API configuration for tenant support

Changes

  • functions/storage-confirm-upload/ - new function
  • docker-compose.yml - add minio, fix images, update config
  • skaffold.yaml - add profile for storage-confirm-upload

Test plan

  • Provision database with storage_module has_confirm_upload=true
  • Upload file as tenant user
  • Verify file status changes to 'uploaded'

🤖 Generated with Claude Code

@socket-security

socket-security Bot commented Jun 10, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addednpm/​@​pgsql/​quotes@​17.1.07710010080100
Addednpm/​@​aws-sdk/​client-s3@​3.1060.09910010098100

View full report

@socket-security

socket-security Bot commented Jun 10, 2026

Copy link
Copy Markdown

All alerts resolved. Learn more about Socket for GitHub.

This PR previously contained dependency changes with security issues that have been resolved, removed, or ignored.

View full report

theothersideofgods and others added 5 commits June 16, 2026 15:06
Handles deferred upload confirmation via HeadObject check.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add minio service for local S3 testing
- Fix db-setup image (was pointing to wrong image)
- Add S3/MinIO environment variables
- Update API configuration for tenant support

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@theothersideofgod theothersideofgod force-pushed the feat/storage-confirm-upload branch from b45414b to dbdb3d4 Compare June 16, 2026 07:07
theothersideofgods and others added 3 commits June 16, 2026 15:31
- Change template from node-graphql to node-sql for connection pooling
- Add pool and withUserContext support to mock-context helper

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Query metaschema_modules_public.storage_module for schema/table names
- Use QuoteUtils.quoteQualifiedIdentifier for SQL identifier quoting
- Remove string manipulation for schema derivation
- Use connection pool from context instead of manual PgClient
- Standardize env vars (CDN_ENDPOINT, AWS_ACCESS_KEY, AWS_REGION)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Mock storage_module query responses
- Use pool mock instead of pg.Client mock
- Add tests for storage_module lookup and schema validation
- Test bucket resolution using storage_module schema names

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@theothersideofgod theothersideofgod force-pushed the feat/storage-confirm-upload branch from 9b3c461 to 8d37364 Compare June 16, 2026 07:32
theothersideofgods and others added 2 commits June 16, 2026 15:38
- Fix @pgsql/quotes version to ^17.1.0 (was incorrectly ^0.0.4)
- Update lockfile to match node-sql template dependencies

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add CDN_ENDPOINT, S3_ENDPOINT, and AWS credentials to sharedEnv
so storage-confirm-upload and other S3-dependent functions work
in local dev mode (make dev-fn).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
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.

2 participants