{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":348461407,"defaultBranch":"main","name":"SMSwithoutborders-BE","ownerLogin":"smswithoutborders","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2021-03-16T19:01:43.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/80779069?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1717075967.0","currentOid":""},"activityList":{"items":[{"before":"25ea11d2dd9e8ddb3fde7e99e204bb004357b614","after":"33ed070ea707152a4086804b3eed2930817685cf","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-13T00:12:28.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"docs(grpc): add reference for StoreEntityToken function","shortMessageHtmlLink":"docs(grpc): add reference for StoreEntityToken function"}},{"before":"d1023fe374a0df33f41999e3b074eff908f62a62","after":"05017d842b6101a69fd7c1f71df3e818b95cbc79","ref":"refs/heads/staging","pushedAt":"2024-06-12T08:59:00.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"Merge pull request #102 from smswithoutborders/feature/grpc_api\n\nfeat: add device_id field and compute_device_id integration","shortMessageHtmlLink":"Merge pull request #102 from smswithoutborders/feature/grpc_api"}},{"before":"9d2638d58db2016926d79227abe301e6706fba92","after":"25ea11d2dd9e8ddb3fde7e99e204bb004357b614","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-11T20:19:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat: add device_id field and compute_device_id integration","shortMessageHtmlLink":"feat: add device_id field and compute_device_id integration"}},{"before":"6cadc0e74d06226b8320a04919dbc566149b2322","after":"d1023fe374a0df33f41999e3b074eff908f62a62","ref":"refs/heads/staging","pushedAt":"2024-06-11T09:22:39.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"Merge pull request #101 from smswithoutborders/feature/grpc_api\n\nfeat(api): add ListEntityStoredTokens service to gRPC API","shortMessageHtmlLink":"Merge pull request #101 from smswithoutborders/feature/grpc_api"}},{"before":"720a12772d3fc7793954812dfd78f7eaaf086630","after":"9d2638d58db2016926d79227abe301e6706fba92","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-11T08:55:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"doc(grpc): add references of ListEntityStoredTokens function","shortMessageHtmlLink":"doc(grpc): add references of ListEntityStoredTokens function"}},{"before":"6cadc0e74d06226b8320a04919dbc566149b2322","after":"720a12772d3fc7793954812dfd78f7eaaf086630","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-11T00:12:02.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat(api): add ListEntityStoredTokens service to gRPC API","shortMessageHtmlLink":"feat(api): add ListEntityStoredTokens service to gRPC API"}},{"before":"ddda68730c3fc4229d568299f5d402028c0a26d4","after":"6cadc0e74d06226b8320a04919dbc566149b2322","ref":"refs/heads/staging","pushedAt":"2024-06-08T00:11:36.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat(grpc): add X25519 public key validation in gRPC entity service\n\n- Added validation for X25519 public keys in gRPC entity service requests.\n- Implemented a function `is_valid_x25519_public_key` to check the validity of X25519 public keys encoded in base64.\n- Updated `validate_request_fields` function to include validation for X25519 public keys.\n- Added tests for entity creation and authentication with invalid X25519 public keys.\n\nFixes: #99","shortMessageHtmlLink":"feat(grpc): add X25519 public key validation in gRPC entity service"}},{"before":"8209947273e65b95a190c4e43ce77bcba3fa62b3","after":"6cadc0e74d06226b8320a04919dbc566149b2322","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-08T00:03:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat(grpc): add X25519 public key validation in gRPC entity service\n\n- Added validation for X25519 public keys in gRPC entity service requests.\n- Implemented a function `is_valid_x25519_public_key` to check the validity of X25519 public keys encoded in base64.\n- Updated `validate_request_fields` function to include validation for X25519 public keys.\n- Added tests for entity creation and authentication with invalid X25519 public keys.\n\nFixes: #99","shortMessageHtmlLink":"feat(grpc): add X25519 public key validation in gRPC entity service"}},{"before":"113801ff7785a29184193de8fc97b557cb148e47","after":"8209947273e65b95a190c4e43ce77bcba3fa62b3","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-07T10:47:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"docs: add device id specifications to README","shortMessageHtmlLink":"docs: add device id specifications to README"}},{"before":"944e787ad8323077f4f06d35e63559fbff4f4a48","after":"113801ff7785a29184193de8fc97b557cb148e47","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-07T10:09:43.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"docs: add specifications section to README","shortMessageHtmlLink":"docs: add specifications section to README"}},{"before":"d9ebf34f1973dc4611fa09f94c766c7b0d22a889","after":"ddda68730c3fc4229d568299f5d402028c0a26d4","ref":"refs/heads/staging","pushedAt":"2024-06-06T21:04:01.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat: add GRPC_HOST to env","shortMessageHtmlLink":"feat: add GRPC_HOST to env"}},{"before":"4d64ad007828bc33fc0e420d75a931e2b5956e8f","after":"d9ebf34f1973dc4611fa09f94c766c7b0d22a889","ref":"refs/heads/staging","pushedAt":"2024-06-06T20:41:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"refactor: changed models.py to db_models.py to avoid module name conflicts","shortMessageHtmlLink":"refactor: changed models.py to db_models.py to avoid module name conf…"}},{"before":"e3447412093e47b30040f877bdc9411cd68d9baf","after":"4d64ad007828bc33fc0e420d75a931e2b5956e8f","ref":"refs/heads/staging","pushedAt":"2024-06-06T19:35:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"build(Makefile): update syntax","shortMessageHtmlLink":"build(Makefile): update syntax"}},{"before":"f208e5075ea0ce03aea39f8a9695e58e996a3596","after":"e3447412093e47b30040f877bdc9411cd68d9baf","ref":"refs/heads/staging","pushedAt":"2024-06-06T19:27:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"build(Makefile): update syntax","shortMessageHtmlLink":"build(Makefile): update syntax"}},{"before":"18f8c8f0107b3678b6b284a013f86a78e66f32cf","after":"f208e5075ea0ce03aea39f8a9695e58e996a3596","ref":"refs/heads/staging","pushedAt":"2024-06-06T19:09:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat(supervisord): update command execution method","shortMessageHtmlLink":"feat(supervisord): update command execution method"}},{"before":"be8837f15e2bb67a34912fb7b5013bd279f5525f","after":"18f8c8f0107b3678b6b284a013f86a78e66f32cf","ref":"refs/heads/staging","pushedAt":"2024-06-06T18:56:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"build(Dockerfile): update Dockerfile configuration for supervisor and pip installation","shortMessageHtmlLink":"build(Dockerfile): update Dockerfile configuration for supervisor and…"}},{"before":"ff04f754432cfc625adda04f199d5f1fb91f474e","after":"be8837f15e2bb67a34912fb7b5013bd279f5525f","ref":"refs/heads/staging","pushedAt":"2024-06-06T16:47:00.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"Merge branch 'feature/grpc_api' into staging","shortMessageHtmlLink":"Merge branch 'feature/grpc_api' into staging"}},{"before":"ad2a3f888deac96dae3dd36053ac87f48a1ae8af","after":"944e787ad8323077f4f06d35e63559fbff4f4a48","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-06T16:46:03.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"build(Dockerfile): upgrade pip before install","shortMessageHtmlLink":"build(Dockerfile): upgrade pip before install"}},{"before":"88594b9e5af82c1babbbdf25550b9f28b8854530","after":"ff04f754432cfc625adda04f199d5f1fb91f474e","ref":"refs/heads/staging","pushedAt":"2024-06-06T16:30:01.000Z","pushType":"pr_merge","commitsCount":16,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"Merge pull request #98 from smswithoutborders/feature/grpc_api\n\n[Feature] Implement gRPC server (alpha release)","shortMessageHtmlLink":"Merge pull request #98 from smswithoutborders/feature/grpc_api"}},{"before":"74bed4275a07975bb575b23b0542a78e7defb16f","after":"ad2a3f888deac96dae3dd36053ac87f48a1ae8af","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-06T16:23:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat: Add supervisor for process management in Dockerfile and refactor Makefile and gRPC server","shortMessageHtmlLink":"feat: Add supervisor for process management in Dockerfile and refacto…"}},{"before":"8e6a3063aafa838adca4a65fdcb780f86dae8ff7","after":"74bed4275a07975bb575b23b0542a78e7defb16f","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-06T14:15:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"docs: update installation section","shortMessageHtmlLink":"docs: update installation section"}},{"before":"6e8b809583a935f69ac9755124e52dd0af12cd4e","after":"8e6a3063aafa838adca4a65fdcb780f86dae8ff7","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-06T14:03:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"refactor(otp_service): use get_configs for Twilio credentials","shortMessageHtmlLink":"refactor(otp_service): use get_configs for Twilio credentials"}},{"before":"b1cad050488538365adba820be6a3466da35e216","after":"6e8b809583a935f69ac9755124e52dd0af12cd4e","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-06T13:55:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"chore: update .gitignore, add quick start guide for gRPC, and remove default SQLite in-memory path","shortMessageHtmlLink":"chore: update .gitignore, add quick start guide for gRPC, and remove …"}},{"before":"abe6b18c1481806b1601ad3dad33cb1b3797d197","after":"b1cad050488538365adba820be6a3466da35e216","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-06T12:40:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat: add llt functionality","shortMessageHtmlLink":"feat: add llt functionality"}},{"before":"46b6117690315f44e00425930c67c30fa827ff0b","after":"abe6b18c1481806b1601ad3dad33cb1b3797d197","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-05T22:45:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat(crypto): add load_crypto_metadata function","shortMessageHtmlLink":"feat(crypto): add load_crypto_metadata function"}},{"before":"99a6a10f393eb98d6d9623bda2bc54b6e17bf01d","after":"46b6117690315f44e00425930c67c30fa827ff0b","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-05T15:03:16.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"refactor(models): rename key fields to clarify client and server roles","shortMessageHtmlLink":"refactor(models): rename key fields to clarify client and server roles"}},{"before":"82c1f29b3f241aa317534fc36cf27aebbb75a9b9","after":"99a6a10f393eb98d6d9623bda2bc54b6e17bf01d","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-02T13:43:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"feat(crypto): Upgrade HMAC algorithm to SHA-512","shortMessageHtmlLink":"feat(crypto): Upgrade HMAC algorithm to SHA-512"}},{"before":"1c9875679a2d7704fc383bb3cf82defda700e51f","after":"82c1f29b3f241aa317534fc36cf27aebbb75a9b9","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-02T13:00:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"docs(gRPC): refactor the docs layout","shortMessageHtmlLink":"docs(gRPC): refactor the docs layout"}},{"before":"2e3c87ad92f768c072baab25728d03fcc8b91925","after":"1c9875679a2d7704fc383bb3cf82defda700e51f","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-02T12:53:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"docs(gRPC): refactor the docs layout","shortMessageHtmlLink":"docs(gRPC): refactor the docs layout"}},{"before":"ee45750f00cda2ecd092eea7895ccb99e43dbc6a","after":"2e3c87ad92f768c072baab25728d03fcc8b91925","ref":"refs/heads/feature/grpc_api","pushedAt":"2024-06-02T12:41:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"PromiseFru","name":"Promise Fru","path":"/PromiseFru","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33162641?s=80&v=4"},"commit":{"message":"docs(gRPC): update docs","shortMessageHtmlLink":"docs(gRPC): update docs"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEY9p87gA","startCursor":null,"endCursor":null}},"title":"Activity · smswithoutborders/SMSwithoutborders-BE"}