Feed of "Faiz Jazadi"https://codeberg.org/fj2026-05-18T04:20:45+02:00<p dir="auto">I code in Python (mostly), currently trying to explore more about FOSS and some low-level things.</p>
fj pushed to main at fj/hledger-analyst2026-04-28T18:00:28+02:00129582713: https://codeberg.org/fj/hledger-analyst/commit/ecf86ccd49592a4379e80e77d1045da2bfe25384<a href="https://codeberg.org/fj/hledger-analyst/commit/ecf86ccd49592a4379e80e77d1045da2bfe25384" rel="nofollow">ecf86ccd49592a4379e80e77d1045da2bfe25384</a>
Remove pydantic llms.txt<a href="https://codeberg.org/fj/hledger-analyst/commit/ecf86ccd49592a4379e80e77d1045da2bfe25384">ecf86ccd49592a4379e80e77d1045da2bfe25384</a>
Remove pydantic llms.txtfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-panel2026-03-17T17:10:38+01:00111396972: https://codeberg.org/fj/hledger-panel/commit/b60b688f042f50322db8c43f75ae54a1514e09bc<a href="https://codeberg.org/fj/hledger-panel/commit/b60b688f042f50322db8c43f75ae54a1514e09bc" rel="nofollow">b60b688f042f50322db8c43f75ae54a1514e09bc</a>
Initial commit: hledger-panel financial dashboard<a href="https://codeberg.org/fj/hledger-panel/commit/b60b688f042f50322db8c43f75ae54a1514e09bc">b60b688f042f50322db8c43f75ae54a1514e09bc</a>
Initial commit: hledger-panel financial dashboardfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-panel2026-03-17T17:01:34+01:00111393957: https://codeberg.org/fj/hledger-panel/commit/ea937260593c41e300d1d7730a5e80d82637affa<a href="https://codeberg.org/fj/hledger-panel/commit/ea937260593c41e300d1d7730a5e80d82637affa" rel="nofollow">ea937260593c41e300d1d7730a5e80d82637affa</a>
Initial commit: hledger-panel financial dashboard<a href="https://codeberg.org/fj/hledger-panel/commit/ea937260593c41e300d1d7730a5e80d82637affa">ea937260593c41e300d1d7730a5e80d82637affa</a>
Initial commit: hledger-panel financial dashboardfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-panel2026-03-17T17:00:43+01:00111393318: https://codeberg.org/fj/hledger-panel/commit/9a006b75cd4f700f4393ed2f59384d3fecd1b3ad<a href="https://codeberg.org/fj/hledger-panel/commit/9a006b75cd4f700f4393ed2f59384d3fecd1b3ad" rel="nofollow">9a006b75cd4f700f4393ed2f59384d3fecd1b3ad</a>
Initial commit: hledger-panel financial dashboard<a href="https://codeberg.org/fj/hledger-panel/commit/9a006b75cd4f700f4393ed2f59384d3fecd1b3ad">9a006b75cd4f700f4393ed2f59384d3fecd1b3ad</a>
Initial commit: hledger-panel financial dashboardfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-panel2026-03-17T16:58:34+01:00111392610: https://codeberg.org/fj/hledger-panel/commit/c3f4340eb04709ae227d264e588187b9dd0811ea<a href="https://codeberg.org/fj/hledger-panel/commit/c3f4340eb04709ae227d264e588187b9dd0811ea" rel="nofollow">c3f4340eb04709ae227d264e588187b9dd0811ea</a>
Initial commit: hledger-panel financial dashboard<a href="https://codeberg.org/fj/hledger-panel/commit/c3f4340eb04709ae227d264e588187b9dd0811ea">c3f4340eb04709ae227d264e588187b9dd0811ea</a>
Initial commit: hledger-panel financial dashboardfjfj@noreply.codeberg.orgfj created branch main in fj/hledger-panel2026-03-17T16:58:34+01:00111392607: https://codeberg.org/fj/hledger-panel/src/branch/mainfjfj@noreply.codeberg.orgfj created repository fj/hledger-panel2026-03-16T23:09:38+01:00111095361: https://codeberg.org/fj/hledger-panelfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-03-12T10:04:20+01:00109100428: https://codeberg.org/fj/hledger-analyst/commit/07b56c276a47678be8cb9a4370a1e2031ce00c78<a href="https://codeberg.org/fj/hledger-analyst/commit/07b56c276a47678be8cb9a4370a1e2031ce00c78" rel="nofollow">07b56c276a47678be8cb9a4370a1e2031ce00c78</a>
KISS/DRY cleanup: flatten config, remove boilerplate, type-safe bot.main<a href="https://codeberg.org/fj/hledger-analyst/commit/07b56c276a47678be8cb9a4370a1e2031ce00c78">07b56c276a47678be8cb9a4370a1e2031ce00c78</a>
KISS/DRY cleanup: flatten config, remove boilerplate, type-safe bot.mainfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-03-12T08:49:39+01:00109078039: https://codeberg.org/fj/hledger-analyst/compare/7fad6fda1beac1072038f4d59cc8e60cf3923416...8787437691e62bda13216679c4710ee0ee97845f<a href="https://codeberg.org/fj/hledger-analyst/commit/8787437691e62bda13216679c4710ee0ee97845f" rel="nofollow">8787437691e62bda13216679c4710ee0ee97845f</a>
Restructure config with nested TOML sections, fix env var loading
<a href="https://codeberg.org/fj/hledger-analyst/commit/0394df2aee0a7607afb11000f7694773e41ccfff" rel="nofollow">0394df2aee0a7607afb11000f7694773e41ccfff</a>
Generic pydantic-ai model support, fix markdownify compat, fix CLI hints<a href="https://codeberg.org/fj/hledger-analyst/commit/8787437691e62bda13216679c4710ee0ee97845f">8787437691e62bda13216679c4710ee0ee97845f</a>
Restructure config with nested TOML sections, fix env var loading
<a href="https://codeberg.org/fj/hledger-analyst/commit/0394df2aee0a7607afb11000f7694773e41ccfff">0394df2aee0a7607afb11000f7694773e41ccfff</a>
Generic pydantic-ai model support, fix markdownify compat, fix CLI hintsfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-03-11T17:11:16+01:00108817009: https://codeberg.org/fj/hledger-analyst/compare/aa66b0964037bf774ceab85e3ac3d3d000f2ebca...7fad6fda1beac1072038f4d59cc8e60cf3923416<a href="https://codeberg.org/fj/hledger-analyst/commit/7fad6fda1beac1072038f4d59cc8e60cf3923416" rel="nofollow">7fad6fda1beac1072038f4d59cc8e60cf3923416</a>
Refactor: pydantic-ai idioms, type-safety, friendly CLI
<a href="https://codeberg.org/fj/hledger-analyst/commit/01a4be5e5c3c089eb81b7e7713ea6a05046db34c" rel="nofollow">01a4be5e5c3c089eb81b7e7713ea6a05046db34c</a>
Remove global config singleton; make run_hledger configurable via create_run_hledger(app_config)
<a href="https://codeberg.org/fj/hledger-analyst/commit/8bc81b28736c52147aaa811e140177035a99eab7" rel="nofollow">8bc81b28736c52147aaa811e140177035a99eab7</a>
Print default config as TOML and improve ALLOWED_TARGET handling
<a href="https://codeberg.org/fj/hledger-analyst/commit/04c922e24e9f27b228299f503aaddadbf7a797e6" rel="nofollow">04c922e24e9f27b228299f503aaddadbf7a797e6</a>
Migrate to Pydantic AI with Gemini and Copilot provider support<a href="https://codeberg.org/fj/hledger-analyst/commit/7fad6fda1beac1072038f4d59cc8e60cf3923416">7fad6fda1beac1072038f4d59cc8e60cf3923416</a>
Refactor: pydantic-ai idioms, type-safety, friendly CLI
<a href="https://codeberg.org/fj/hledger-analyst/commit/01a4be5e5c3c089eb81b7e7713ea6a05046db34c">01a4be5e5c3c089eb81b7e7713ea6a05046db34c</a>
Remove global config singleton; make run_hledger configurable via create_run_hledger(app_config)
<a href="https://codeberg.org/fj/hledger-analyst/commit/8bc81b28736c52147aaa811e140177035a99eab7">8bc81b28736c52147aaa811e140177035a99eab7</a>
Print default config as TOML and improve ALLOWED_TARGET handling
<a href="https://codeberg.org/fj/hledger-analyst/commit/04c922e24e9f27b228299f503aaddadbf7a797e6">04c922e24e9f27b228299f503aaddadbf7a797e6</a>
Migrate to Pydantic AI with Gemini and Copilot provider supportfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-02-15T17:04:48+01:0099356216: https://codeberg.org/fj/hledger-analyst/compare/3ce10002a0db040aee4e04b1ee205628a1bab237...aa66b0964037bf774ceab85e3ac3d3d000f2ebca<a href="https://codeberg.org/fj/hledger-analyst/commit/aa66b0964037bf774ceab85e3ac3d3d000f2ebca" rel="nofollow">aa66b0964037bf774ceab85e3ac3d3d000f2ebca</a>
Change default config to increase limit
<a href="https://codeberg.org/fj/hledger-analyst/commit/20d20e93b140916440ec31655489e091f83638f2" rel="nofollow">20d20e93b140916440ec31655489e091f83638f2</a>
Implement proper formatting on reply for one shot prompt<a href="https://codeberg.org/fj/hledger-analyst/commit/aa66b0964037bf774ceab85e3ac3d3d000f2ebca">aa66b0964037bf774ceab85e3ac3d3d000f2ebca</a>
Change default config to increase limit
<a href="https://codeberg.org/fj/hledger-analyst/commit/20d20e93b140916440ec31655489e091f83638f2">20d20e93b140916440ec31655489e091f83638f2</a>
Implement proper formatting on reply for one shot promptfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-02-13T18:46:30+01:0098803352: https://codeberg.org/fj/hledger-analyst/commit/3ce10002a0db040aee4e04b1ee205628a1bab237<a href="https://codeberg.org/fj/hledger-analyst/commit/3ce10002a0db040aee4e04b1ee205628a1bab237" rel="nofollow">3ce10002a0db040aee4e04b1ee205628a1bab237</a>
Better default system instruction<a href="https://codeberg.org/fj/hledger-analyst/commit/3ce10002a0db040aee4e04b1ee205628a1bab237">3ce10002a0db040aee4e04b1ee205628a1bab237</a>
Better default system instructionfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-02-13T18:45:26+01:0098803190: https://codeberg.org/fj/hledger-analyst/commit/8cfd42061de7f684acc40acd788b4857a8a2a5e2<a href="https://codeberg.org/fj/hledger-analyst/commit/8cfd42061de7f684acc40acd788b4857a8a2a5e2" rel="nofollow">8cfd42061de7f684acc40acd788b4857a8a2a5e2</a>
Better default system instruction<a href="https://codeberg.org/fj/hledger-analyst/commit/8cfd42061de7f684acc40acd788b4857a8a2a5e2">8cfd42061de7f684acc40acd788b4857a8a2a5e2</a>
Better default system instructionfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-02-13T18:42:16+01:0098802662: https://codeberg.org/fj/hledger-analyst/compare/41880243e0313cb09a26a1ddc04c424b6742307b...a28504af35533a332d19947cb0984b7d73620d51<a href="https://codeberg.org/fj/hledger-analyst/commit/a28504af35533a332d19947cb0984b7d73620d51" rel="nofollow">a28504af35533a332d19947cb0984b7d73620d51</a>
Move hledger to tools module and added max remote calls as config
<a href="https://codeberg.org/fj/hledger-analyst/commit/6b96785aa2d5d586f4f6296107d7fb2ccc462b64" rel="nofollow">6b96785aa2d5d586f4f6296107d7fb2ccc462b64</a>
Improved function docstring<a href="https://codeberg.org/fj/hledger-analyst/commit/a28504af35533a332d19947cb0984b7d73620d51">a28504af35533a332d19947cb0984b7d73620d51</a>
Move hledger to tools module and added max remote calls as config
<a href="https://codeberg.org/fj/hledger-analyst/commit/6b96785aa2d5d586f4f6296107d7fb2ccc462b64">6b96785aa2d5d586f4f6296107d7fb2ccc462b64</a>
Improved function docstringfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-02-13T17:55:27+01:0098788640: https://codeberg.org/fj/hledger-analyst/commit/41880243e0313cb09a26a1ddc04c424b6742307b<a href="https://codeberg.org/fj/hledger-analyst/commit/41880243e0313cb09a26a1ddc04c424b6742307b" rel="nofollow">41880243e0313cb09a26a1ddc04c424b6742307b</a>
Use telegram-markdownify to wrap Gemini output<a href="https://codeberg.org/fj/hledger-analyst/commit/41880243e0313cb09a26a1ddc04c424b6742307b">41880243e0313cb09a26a1ddc04c424b6742307b</a>
Use telegram-markdownify to wrap Gemini outputfjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-02-13T09:30:11+01:0098664372: https://codeberg.org/fj/hledger-analyst/compare/e0742bd9ce34a1dc938ca97014322da7499f62fe...cbacabd78b74a8805d31539cfd753068ce1fbe86<a href="https://codeberg.org/fj/hledger-analyst/commit/cbacabd78b74a8805d31539cfd753068ce1fbe86" rel="nofollow">cbacabd78b74a8805d31539cfd753068ce1fbe86</a>
Add one-shot mode (for cronjob)
<a href="https://codeberg.org/fj/hledger-analyst/commit/110a3fa9116d06ff3e9c5534602ee94b410df7a1" rel="nofollow">110a3fa9116d06ff3e9c5534602ee94b410df7a1</a>
Update Dockerfile to fix wrong script name<a href="https://codeberg.org/fj/hledger-analyst/commit/cbacabd78b74a8805d31539cfd753068ce1fbe86">cbacabd78b74a8805d31539cfd753068ce1fbe86</a>
Add one-shot mode (for cronjob)
<a href="https://codeberg.org/fj/hledger-analyst/commit/110a3fa9116d06ff3e9c5534602ee94b410df7a1">110a3fa9116d06ff3e9c5534602ee94b410df7a1</a>
Update Dockerfile to fix wrong script namefjfj@noreply.codeberg.orgfj pushed to main at fj/hledger-analyst2026-02-13T08:35:27+01:0098655800: https://codeberg.org/fj/hledger-analyst/commit/e0742bd9ce34a1dc938ca97014322da7499f62fe<a href="https://codeberg.org/fj/hledger-analyst/commit/e0742bd9ce34a1dc938ca97014322da7499f62fe" rel="nofollow">e0742bd9ce34a1dc938ca97014322da7499f62fe</a>
Initial commit<a href="https://codeberg.org/fj/hledger-analyst/commit/e0742bd9ce34a1dc938ca97014322da7499f62fe">e0742bd9ce34a1dc938ca97014322da7499f62fe</a>
Initial commitfjfj@noreply.codeberg.orgfj created repository fj/hledger-analyst2026-02-11T14:09:32+01:0098246892: https://codeberg.org/fj/hledger-analystfjfj@noreply.codeberg.orgfj pushed to main at fj/pykeris2025-11-20T11:41:48+01:0074151432: https://codeberg.org/fj/pykeris/commit/22a9dc4890470eb9c84479d5984068e4db7f945c<a href="https://codeberg.org/fj/pykeris/commit/22a9dc4890470eb9c84479d5984068e4db7f945c" rel="nofollow">22a9dc4890470eb9c84479d5984068e4db7f945c</a>
Fix incorrect checksum on example and test_mpm<a href="https://codeberg.org/fj/pykeris/commit/22a9dc4890470eb9c84479d5984068e4db7f945c">22a9dc4890470eb9c84479d5984068e4db7f945c</a>
Fix incorrect checksum on example and test_mpmfjfj@noreply.codeberg.orgfj pushed to main at fj/pykeris2025-11-20T09:59:10+01:0074128617: https://codeberg.org/fj/pykeris/commit/c7e12bb74689fcc2e6961c1ede5f68c488428580<a href="https://codeberg.org/fj/pykeris/commit/c7e12bb74689fcc2e6961c1ede5f68c488428580" rel="nofollow">c7e12bb74689fcc2e6961c1ede5f68c488428580</a>
Initial commit<a href="https://codeberg.org/fj/pykeris/commit/c7e12bb74689fcc2e6961c1ede5f68c488428580">c7e12bb74689fcc2e6961c1ede5f68c488428580</a>
Initial commitfjfj@noreply.codeberg.orgfj created repository fj/pykeris2025-11-18T05:50:28+01:0073510620: https://codeberg.org/fj/pykerisfjfj@noreply.codeberg.orgfj pushed to main at fj/skom-thesis2025-07-23T07:27:37+02:0048227521: https://codeberg.org/fj/skom-thesis/commit/537046b44ea09637d24ecc1aeba137b529c480e2<a href="https://codeberg.org/fj/skom-thesis/commit/537046b44ea09637d24ecc1aeba137b529c480e2" rel="nofollow">537046b44ea09637d24ecc1aeba137b529c480e2</a>
Final selesai done yeay<a href="https://codeberg.org/fj/skom-thesis/commit/537046b44ea09637d24ecc1aeba137b529c480e2">537046b44ea09637d24ecc1aeba137b529c480e2</a>
Final selesai done yeayfjfj@noreply.codeberg.orgfj pushed to main at fj/skom-thesis2025-07-06T12:13:17+02:0044616248: https://codeberg.org/fj/skom-thesis/commit/3cfa54cb308144fbf5b62bc4b9aa5bf53c20a81c<a href="https://codeberg.org/fj/skom-thesis/commit/3cfa54cb308144fbf5b62bc4b9aa5bf53c20a81c" rel="nofollow">3cfa54cb308144fbf5b62bc4b9aa5bf53c20a81c</a>
Skripsi final after revisi<a href="https://codeberg.org/fj/skom-thesis/commit/3cfa54cb308144fbf5b62bc4b9aa5bf53c20a81c">3cfa54cb308144fbf5b62bc4b9aa5bf53c20a81c</a>
Skripsi final after revisifjfj@noreply.codeberg.orgfj pushed to main at fj/tdsmitm2025-07-06T10:49:26+02:0044604986: https://codeberg.org/fj/tdsmitm/commit/16565c2b56bc895b8fd6021060a84b66b3a26b24<a href="https://codeberg.org/fj/tdsmitm/commit/16565c2b56bc895b8fd6021060a84b66b3a26b24" rel="nofollow">16565c2b56bc895b8fd6021060a84b66b3a26b24</a>
update perftest results<a href="https://codeberg.org/fj/tdsmitm/commit/16565c2b56bc895b8fd6021060a84b66b3a26b24">16565c2b56bc895b8fd6021060a84b66b3a26b24</a>
update perftest resultsfjfj@noreply.codeberg.orgfj pushed to main at fj/tdsmitm2025-06-24T12:25:01+02:0042017783: https://codeberg.org/fj/tdsmitm/commit/30fc2f26158d61507a4c4f8f7d6c55f5458020c1<a href="https://codeberg.org/fj/tdsmitm/commit/30fc2f26158d61507a4c4f8f7d6c55f5458020c1" rel="nofollow">30fc2f26158d61507a4c4f8f7d6c55f5458020c1</a>
Addm modified_tds.diff<a href="https://codeberg.org/fj/tdsmitm/commit/30fc2f26158d61507a4c4f8f7d6c55f5458020c1">30fc2f26158d61507a4c4f8f7d6c55f5458020c1</a>
Addm modified_tds.difffjfj@noreply.codeberg.orgfj pushed to main at fj/tdsmitm2025-06-21T19:27:54+02:0041446325: https://codeberg.org/fj/tdsmitm/commit/9b2d647792e78b12cdab8d9496a84469631b1623<a href="https://codeberg.org/fj/tdsmitm/commit/9b2d647792e78b12cdab8d9496a84469631b1623" rel="nofollow">9b2d647792e78b12cdab8d9496a84469631b1623</a>
Use REQ instead of ON in test_client.py<a href="https://codeberg.org/fj/tdsmitm/commit/9b2d647792e78b12cdab8d9496a84469631b1623">9b2d647792e78b12cdab8d9496a84469631b1623</a>
Use REQ instead of ON in test_client.pyfjfj@noreply.codeberg.orgfj pushed to main at fj/tdsmitm2025-06-21T13:17:09+02:0041386511: https://codeberg.org/fj/tdsmitm/compare/305a7debcd60a64566924627720c162b6f1bb3ad...8ffea861b2f4882d862e24a8e1a17589b9279453<a href="https://codeberg.org/fj/tdsmitm/commit/8ffea861b2f4882d862e24a8e1a17589b9279453" rel="nofollow">8ffea861b2f4882d862e24a8e1a17589b9279453</a>
Handle bad state when TDS packet read failed and polish stuff
<a href="https://codeberg.org/fj/tdsmitm/commit/7bbb7b48dd824847c8984ceaa1f83081bb3a90d6" rel="nofollow">7bbb7b48dd824847c8984ceaa1f83081bb3a90d6</a>
Update perftest results<a href="https://codeberg.org/fj/tdsmitm/commit/8ffea861b2f4882d862e24a8e1a17589b9279453">8ffea861b2f4882d862e24a8e1a17589b9279453</a>
Handle bad state when TDS packet read failed and polish stuff
<a href="https://codeberg.org/fj/tdsmitm/commit/7bbb7b48dd824847c8984ceaa1f83081bb3a90d6">7bbb7b48dd824847c8984ceaa1f83081bb3a90d6</a>
Update perftest resultsfjfj@noreply.codeberg.orgfj pushed to main at fj/tdsmitm2025-06-19T19:09:55+02:0041074893: https://codeberg.org/fj/tdsmitm/commit/305a7debcd60a64566924627720c162b6f1bb3ad<a href="https://codeberg.org/fj/tdsmitm/commit/305a7debcd60a64566924627720c162b6f1bb3ad" rel="nofollow">305a7debcd60a64566924627720c162b6f1bb3ad</a>
Update results to be more accurate<a href="https://codeberg.org/fj/tdsmitm/commit/305a7debcd60a64566924627720c162b6f1bb3ad">305a7debcd60a64566924627720c162b6f1bb3ad</a>
Update results to be more accuratefjfj@noreply.codeberg.orgfj pushed to main at fj/tdsmitm2025-06-19T18:51:10+02:0041070603: https://codeberg.org/fj/tdsmitm/commit/cf4a3d891baa56ebc8901d176989e55a92991a35<a href="https://codeberg.org/fj/tdsmitm/commit/cf4a3d891baa56ebc8901d176989e55a92991a35" rel="nofollow">cf4a3d891baa56ebc8901d176989e55a92991a35</a>
Revert normal functionality on connection.c and add mssql-cli example capture<a href="https://codeberg.org/fj/tdsmitm/commit/cf4a3d891baa56ebc8901d176989e55a92991a35">cf4a3d891baa56ebc8901d176989e55a92991a35</a>
Revert normal functionality on connection.c and add mssql-cli example capturefjfj@noreply.codeberg.orgfj pushed to main at fj/skom-thesis2025-06-18T18:54:37+02:0040880406: https://codeberg.org/fj/skom-thesis/commit/c4094582eb9417e301b7e6e39c140fd3ec688f68<a href="https://codeberg.org/fj/skom-thesis/commit/c4094582eb9417e301b7e6e39c140fd3ec688f68" rel="nofollow">c4094582eb9417e301b7e6e39c140fd3ec688f68</a>
Skripsi bab 5<a href="https://codeberg.org/fj/skom-thesis/commit/c4094582eb9417e301b7e6e39c140fd3ec688f68">c4094582eb9417e301b7e6e39c140fd3ec688f68</a>
Skripsi bab 5fjfj@noreply.codeberg.org