-
Notifications
You must be signed in to change notification settings - Fork 175
fix(deps): update dependency @supabase/supabase-js to v2.57.4 #3559
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
|
🤖 Agent Deep Modeling ExecutionProcessing time: 6m 21s Command Output
RUN v3.2.4 /home/runner/work/liam/liam/frontend/internal-packages/agent (node:7544) ExperimentalWarning: WASI is an experimental feature and might change at any time ✅ [INFO] 2025-10-01T04:15:02.802Z ⏺ (pm): Saving the finalized Business Requirements Document to the artifact store for DB and QA teams. 🧠 Thinking (pm)... Organizing requirements for tool I need to use the saveRequirementsToArtifactTool, which requires specific inputs: a businessRequirement string and a functionalRequirements object. I'll categorize these into areas like User Accounts, Authentication, and Reporting. It's important to phrase everything as "User can..." or "System manages..." while avoiding non-functional details unless they contribute to business processes. Though I might want to include some priority tags or MVP suggestions, it seems okay since the tool can only take arrays of requirements and doesn't need web.run. Constructing the requirements process I need to use the saveRequirementsToArtifactTool with both the BRD summary and object. At the start, I'll include a concise checklist, probably around 3 to 7 bullets. While there's minimal prior conversation, I'll note assumptions. Then I'll present the BRD, detailing business objectives, actors, scope, and possibly out-of-scope items. The tool only needs businessRequirement and functionalRequirements, but the user desires a full BRD. So, I’ll share the comprehensive BRD in the message while saving the summarized requirements for effective use. I should keep my verbosity moderate but ensure the content is structured for QA or DB agents. Compiling the checklist for requirements I plan to include several key elements like a checklist, assumptions and scope, actors and roles, and use cases. I'll also define entities and key fields to assist the DB Agent, and I need to organize functional requirements by category. Additionally, I'll incorporate a data dictionary with entity fields, relationships, and acceptance criteria for critical flows like sign-up and login. However, I want to avoid non-functional requirements, keeping only relevant acceptance criteria and drafting categories under User Accounts, like user registration and system validations. Detailing authentication and profile management For authentication, users can log in using their email and password, with the system supporting email verification via tokens. It also allows password changes when logged in. In terms of password and credential recovery, users can request a password reset through email, receiving a time-limited token that invalidates older tokens and sessions when setting a new password. As for authorization and roles, an admin can create roles and manage permissions, while users may belong to multiple roles. I'll also outline profile management, allowing users to view and update their personal information and validating the provided data. Structuring session management and requirements In session and access control, the system will create sessions with configurable expiration. Users can choose to stay signed in, extend their sessions, and view or revoke active sessions. The system will also log session details like IP addresses and user agents. For administration and audit, admins will manage users, maintain an immutable audit trail, and export user lists. Notifications for events like sign-up verification and password resets will be automated. I'll also outline a thorough data model and establish clear acceptance criteria for core processes, ensuring the requirements are functional and organized into specified categories for use. Finalizing acceptance criteria format I realize the tool might not mind the length for acceptance criteria, which will focus on key flows: registration, login, password reset, role assignment, user export, and account deletion. I can combine these into single strings for the tool's input while keeping clarity with semicolons separating each item. I’ll ensure verbosity remains manageable. After producing the main content for the BRD, I’ll call the saveRequirementsToArtifactTool and confirm the successful operation. Let's proceed with this implementation! 🔧 saveRequirementsToArtifactTool(businessRequirement: "Deliver a simple,...", functionalRequirements: {14 keys}) ⎿ unknown: Requirements saved successfully to artifact 🧠 Thinking (db)... Planning database schema I need to start with a Planning Checklist and clearly state the operation's purpose and minimal inputs. I'll call the schema design tool to set up the required tables like users, roles, permissions, etc. It’s important to ensure I include the necessary columns, constraints, and descriptive comments along with primary and foreign keys. Then, I’ll craft a JSON patch for adding these operations while using UUIDs and timestamps. Finally, I'll validate the tool's success and confirm the changes! 🔧 schemaDesignTool() 🔧 schemaDesignTool() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() ⏺ (qa): I will generate a comprehensive functional test case for the password reset flow and save it via the required tool. Note: All IDs use gen_random_uuid() per instructions. The test covers:
Proceeding to save the test case now. 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() ⏺ (qa): I see the error. PostgreSQL does not allow LIMIT in UPDATE syntax that way, and I attempted a multi-step flow that included an invalid construct. I’ll provide a corrected, fully executable DML sequence that:
I’ve reorganized to avoid problematic constructs and ensure compatibility with standard PostgreSQL. Please save this as a test case. { ⏺ (qa): I see the issue: the script attempted to use an INSERT ... SELECT with a trailing ON CONFLICT DO NOTHING in the middle of a statement sequence, and also included a stray "RETURNING" after the first insert which may not align with the subsequent statements in a single WITH/INSERT flow. I will provide a corrected, production-ready DML script that:
All UUIDs use gen_random_uuid() and no hard-coded IDs are used. Important: The test case must be saved via the saveTestcase tool. I will provide a single, corrected DML block and ensure it’s executable in PostgreSQL. If you want the unique constraint test to actually fail (to be captured by a test harness), you’d wrap it in a DO block with exception handling in your environment; I’ve provided a commented-out variant for safety. Now, the corrected test case payload: { 🔧 saveTestcase() ⏺ (qa): I’ll correct the SQL, ensure it uses gen_random_uuid() for UUIDs, and structure it as a safe, executable DML script. I’ll also wrap operations in a single DO block where appropriate and avoid hard-coded string payload issues. Important: For the test case, we must use the saveTestcase tool. I’ll present a corrected test case payload you can ship to the tester. Proposed fixed test case (to be saved via saveTestcase): { Notes and considerations:
If you’d like, I can generate an alternative variant with:
Would you like me to add those variants as additional test cases? 🔧 saveTestcase() ⏺ (qa): I see the error: the DML included a LIMIT clause inside an UPDATE statement, which is not allowed in PostgreSQL without a FROM clause or a subquery. I’ll provide a corrected, production-ready DML block that avoids LIMIT in UPDATE and remains safe and valid. I’ll also ensure we use gen_random_uuid() for IDs as requested. I will submit a corrected test case via the required saveTestcase tool structure. Here is the corrected DML content to use in the test case:
Test case to save: { Important note: The previous version included an invalid UPDATE ... LIMIT clause. PostgreSQL does not support LIMIT in UPDATE without a FROM subquery. In a production-ready test, the UPDATE to set last_login_at for a subset should be implemented with a subquery that selects a sample of user ids. Here is the fully corrected, executable SQL block you should actually run in PostgreSQL to avoid syntax errors: Correct executable DML (standalone, ready to execute): -- Setup: insert users across the last 30 days with varied statuses -- Promote a subset to have last_login_at within last 30 days (active users) -- Older users outside the 30-day window ⏺ (qa): You're right—the previous SQL used LIMIT in places where PostgreSQL won't accept it in an UPDATE. I'll provide a corrected, production-ready test case SQL that:
Then I’ll save it via the required saveTestcase tool structure. Here is the corrected test case payload: { Notes and rationale:
If you want, I can tailor the token_hash values to a specific hash format you expect (e.g., a real hash string) and adjust the final verification queries to assert the resulting state. 🔧 saveTestcase() 🔧 saveTestcase() ⏺ (qa): { 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase()_random_uuid(), 'old2@example.com', 'en-US', 'active', 'UTC', now() - INTERVAL '45 days', now() - INTERVAL '45 days', 0); -- Recently suspended user within 30 days -- Edge case: user with no last_login_at within window -- Edge case: soft-deleted user older than 30 days -- Ensure emails are verified for completeness If you want, I can generate another version of the test case with this corrected, fully self-contained SQL block and then wrap it with the exact saveTestcase call structure. Admin role to the admin user, and simulates a role assignment by an admin. It logs the actions in audit_logs and assigns the User role to a target user, verifying that the assignment is recorded. It also includes a negative path log entry to indicate blocked actions. Includes verification queries to validate that roles are applied and logs exist. All IDs use gen_random_uuid()." ⏺ (qa): You're right—the previous SQL included a string construction error inside the SQL text. Below is a corrected, production-ready DML test case that satisfies the requirement: self-register a user with email and password, using UUIDs via gen_random_uuid(), ensuring constraints (non-nullable fields, unique email), initializing required fields, and setting password_hash field to a placeholder value to reflect password storage. It also demonstrates a baseline positive path for the self-registration flow. Important notes:
Provide this via the saveTestcase tool as requested. { 🔧 saveTestcase() 🔧 saveTestcase() ⏺ (qa): I see the issue: using RETURNING ... INTO variable syntax is PL/pgSQL, not plain SQL. In a single DML script intended to run as plain SQL, we should avoid PL/pgSQL-specific constructs like INTO into a variable. We can instead perform steps separately or capture IDs via a CTE or by re-selecting. Here is a corrected, production-ready DML script that:
Notes:
Proposed DML (plain SQL, ready to run): -- Ensure the pgcrypto extension is available for gen_random_uuid() -- Create default roles with generated UUIDs and timestamps -- Basic check: ensure the two roles exist by selecting their ids If you need to wrap this into a single executable string for the saveTestcase tool, you can paste the SQL body as shown above (without the trailing semicolon at the end of the script, depending on your runner). If your environment requires distinct steps, we can split into separate statements with explicit IDs captured via a temporary table. Next steps
⏺ (qa): You're right—my previous DML included comma-leading clauses in the WITH/CTE sequence that PostgreSQL cannot parse. I'll provide a corrected, executable DML block that uses proper CTE chaining without stray commas, and then wrap it in the required saveTestcase payload. Important notes:
Now the corrected payload: { If you prefer, I can break this into smaller insert steps (or use DO blocks with explicit CTEs) to aid in debugging, but the above is a cohesive, single-INSERT DML payload aligned with PostgreSQL capabilities and your schema. 🔧 saveTestcase() 🔧 saveTestcase() 🔧 saveTestcase() ⏺ (qa): { 🔧 saveTestcase()WithDml": { ⏺ (qa): { 🔧 saveTestcase()ml": { 🔧 saveTestcase()requirerequirementmentType":Category "functional", 🔧 saveTestcase() records Ret immutable auditention & Privacy logs", 🔧 saveTestcase() rolesn-, Setup of authentication, and a retention configuration exports. It covers: user value via a settings-like table or variable creation, updates simulation., statusn- In changes, soft deletion; rolesertion creation of/update a/de userletion; with role soft-delete assignments timestamp in the and past revocations beyond; successful retention window.\ andn failed- login Attempt to attempts hard; logout-delete within retention; password reset window (should requests and fail).\ successes;n- Hard and user-delete export once events. retention window It uses gen has passed (_random_uuid() for IDsshould succeed and includes).\n- asserts via audit_logs entries Verification that the selection to user row is removed and ensure correct action keys, timestamps, actor related audit fields/logs are, and kept metadata consistent presence (.soft All/deleted operations references are).\ compliant withn- the given schema and constraints Ensures.", ⏺ (qa): { 🔧 saveTestcase()\n--Login: valid email_logs (id/password, action 2), target Insert a configuration_id, created and active status required; after_at, for retention period ip_address in days\n 10 failed, target attempts within_type, actorINSERT INTO settings_user 15 minutes_id (key,, sign-in metadata_json blocked)\n , value_jsonb for VALUES () VALUESgen15 minutes_random\n_uuid (), (' 'userretention.create; success creates_period_days',', NULL a, session '{" and now(),days": updates last NULL, 'user_login_at30}')\n ; logout invalidates the ON current CON session.", ⏺ (qa): { 🔧 saveTestcase()leted beyond now", 🔧 saveTestcase() 0;\nBEGIN\n WHILE i < 10 LOOP\n -- Each failed attempt increments failed: expires_at in the past\nINSERT INTO password_reset_tokens (\n id,\n _address, target_type, actor_user_id, metadata_json)\n VALUES (gen_random\n _login_count user_id,\n _uuid(), ' and recordsrole.delete created_at timestamp',\n,\ UPDATEn NULL, expires users now\n(),_at NULL ,\n SET -- failed , token_hash '\n)\role',_login_count ( = failed_loginn swallowSELECTSELECT id\n FROM gen_count users + WHERE_random email_uuid(), =1 ',\adminn @example failed_login.com'), json_last_at\nb _build (SELECT_object id = now()\ FROM(' usersrolen WHERE WHERE', email = ' 'Temptest.user@example id = u error.com'),Role'));\n _id;\n\n--n Export i users now(), := action i + audit for\n INSERT INTO1;\n audit_logs END (\id, LOOP;\n action,nEND $$ target test_id;\n,\n created_at--, 6 ip now_address logs(), target) - interval_type ', Create a session for Alice1 actor_user hour upon successful login',_id (after,n metadata passing checks_json ); ')\hashnINSERT_ofn_exp INTO VALUES sessionsired_token'\n (genRETURN in (\nING id AS_random expired_token_uuid_id(),;\ 'n\n idexport,--.users 5)', realn Validation NULL user-like_id,\ query, now to demonstrate(), expiry NULL status, (no constraint 'export,n but', persisted test ( harness can,\n SELECT id evaluate FROM)\ tests users WHEREn created_atSELECT email\n =,\ 'n pr.idadmin expires_at,@examplen.com '),,\ pr jsonn .userb_id_build,_objectn ip_address pr(',.exscopepires_at,',n ',\n all revoked_at_users pr.used,', '_atn format\nFROM', you'd password_reset user_agent_tokens pr '\n,\ORDER BYcsv'))n ;\ pr last_activityn.created assert\n_at_at--\n DESC\n Password resetLIMIT 5) VALUES request (;\ andnn success", 🔧 saveTestcase() AS for bob ( beyondinactive_exists metadata);\ andn--_json Check)\ then that rollback then within to-ret reflect failure VALUESention ( user\nINSERTgen_random still exists_uuid(), INTO sessions '\nSELECT EXISTS (\passwordn (.reset_success', id,\ (SELECTn SELECT id user FROM_id,\ users1 FROM users WHEREn WHERE email = email persisted,\ = 'n 'johnret created_atention.d_testoe@example.com'),_within@example.com'),\n expires now AS_at(), within NULL_exists,\n;\ ,n\n '-- ipuser_address Cleanup:', drop NULL,\ helpern, objects to json keep revoked_at environmentb clean,_buildn_object (('optionalmethod', user in real tests '_agent),\nemailnDROP ')) FUNCTION last_activity;\ IF EXISTSn_at\n\n hard_delete--_user Auth successful(UUID);\ loginnDROP with TABLE audit) IF EXISTS VALUES settings (;\nnnINSERT ", ❌ Test Case: User email format validation and uniqueness enforcement1. Error:
|
96e57ac
to
c3f623c
Compare
c3f623c
to
6977926
Compare
Important Review skippedBot user detected. To trigger a single review, invoke the You can disable this status message by setting the Comment |
6977926
to
2769f84
Compare
e5760bc
to
490b40f
Compare
490b40f
to
47fbd26
Compare
47fbd26
to
72c6f8b
Compare
72c6f8b
to
e6bb550
Compare
Note
Mend has cancelled the proposed renaming of the Renovate GitHub app being renamed to
mend[bot]
.This notice will be removed on 2025-10-07.
This PR contains the following updates:
2.49.8
->2.57.4
Release Notes
supabase/supabase-js (@supabase/supabase-js)
v2.57.4
Compare Source
Bug Fixes
v2.57.3
Compare Source
Bug Fixes
v2.57.2
Compare Source
Bug Fixes
v2.57.1
Compare Source
Bug Fixes
v2.57.0
Compare Source
Features
userStorage
option to facilitate lower cookie sizes (#1545) (4ae856c)v2.56.1
Compare Source
Bug Fixes
v2.56.0
Compare Source
Features
v2.55.0
Compare Source
Features
v2.54.0
Compare Source
Features
v2.53.1
Compare Source
Bug Fixes
v2.53.0
Compare Source
Features
v2.52.1
Compare Source
Bug Fixes
v2.52.0
Compare Source
Features
v2.51.0
Compare Source
Features
v2.50.5
Compare Source
Bug Fixes
v2.50.4
Compare Source
Bug Fixes
v2.50.3
Compare Source
Bug Fixes
v2.50.2
Compare Source
Bug Fixes
v2.50.1
Compare Source
Bug Fixes
v2.50.0
Compare Source
Bug Fixes
Features
v2.49.10
Compare Source
Bug Fixes
v2.49.9
Compare Source
Bug Fixes
Configuration
📅 Schedule: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.