Skip to content

Commit 80edd61

Browse files
committed
feat: use prefixed ULIDs for query log and token IDs
Replace uuid4 with gr-ulid prefixed IDs (qlog_, qtk_) to match the convention used across other Mapache services.
1 parent b1056c1 commit 80edd61

4 files changed

Lines changed: 16 additions & 4 deletions

File tree

query/pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ dependencies = [
2323
"pyjwt[crypto]>=2.11.0,<3.0.0",
2424
"mapache-py>=3.0.1,<4.0.0",
2525
"rincon>=1.0.0,<2.0.0",
26+
"gr-ulid>=1.1.2,<2.0.0",
2627
]
2728

2829
[dependency-groups]

query/query/service/log.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from datetime import datetime, timezone
2-
import uuid
2+
import ulid
33
from query.database.connection import get_db
44
from query.model.log import QueryLog
55
from sqlalchemy.orm import Session
@@ -17,7 +17,7 @@ def get_log_by_id(log_id: int) -> QueryLog:
1717
return db.query(QueryLog).filter(QueryLog.id == log_id).first()
1818

1919
def create_log(log: QueryLog) -> QueryLog:
20-
log.id = uuid.uuid4()
20+
log.id = ulid.make().prefixed("qlog")
2121
log.created_at = datetime.now(timezone.utc)
2222
with get_db() as db:
2323
db.add(log)

query/query/service/token.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from datetime import datetime, timezone
2-
import uuid
2+
import ulid
33
from query.database.connection import get_db
44
from query.model.token import QueryToken
55
from sqlalchemy.orm import Session
@@ -18,7 +18,7 @@ def get_token_by_id(token_id: int) -> QueryToken:
1818

1919
def create_token(user_id: str, expires_at: datetime) -> QueryToken:
2020
token = QueryToken(
21-
id=uuid.uuid4(),
21+
id=ulid.make().prefixed("qtk"),
2222
user_id=user_id,
2323
expires_at=expires_at
2424
)

query/uv.lock

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)