Ruslan Bakiev
41064339ea
Update geo submodule - fix supplier query
2026-01-23 11:24:06 +07:00
Ruslan Bakiev
dd1e9ce960
Update geo and webapp - offersCount, map default on catalog
2026-01-22 17:22:39 +07:00
Ruslan Bakiev
75f4506549
Add navigation from offer cards to offer detail page
2026-01-21 14:36:25 +07:00
Ruslan Bakiev
966e9d8fe4
Add KYC company monitoring system with MongoDB integration
...
- Rename KYC models: KYCRequest → KYCApplication, KYCMonitoring → KYCProfile
- Add public GraphQL API for company data (teaser/full by profileUuid)
- Add kyc_profile_uuid field to SupplierProfile
- Add Temporal activity create_kyc_profile for post-approval monitoring
- Add Dagster assets for MongoDB data collection
- Add SupplierInfoBlock component for displaying company info
- Integrate company info into CalcResultContent
2026-01-21 09:19:58 +07:00
Ruslan Bakiev
e4b809d7d9
Update submodules
2026-01-16 17:33:10 +07:00
Ruslan Bakiev
e64dab7920
Update geo - fix deliveryToHub
2026-01-16 16:03:35 +07:00
Ruslan Bakiev
01be312dd8
Update geo - fix offers_to_hub
2026-01-16 15:56:39 +07:00
Ruslan Bakiev
026880f108
Update submodules - replace graph traversal with DISTANCE() queries
2026-01-16 15:40:14 +07:00
Ruslan Bakiev
fb9311d0a7
Add supplier_uuid to graph sync pipeline
2026-01-16 10:51:08 +07:00
Ruslan Bakiev
e247256e36
Update submodules - fix catalog navigation
2026-01-16 10:35:42 +07:00
Ruslan Bakiev
5714e8e3fd
chore: update geo and webapp submodules (catalog filtering)
2026-01-16 01:42:39 +07:00
Ruslan Bakiev
9a0a8e3d58
Update submodules
2026-01-15 23:02:56 +07:00
Ruslan Bakiev
6227d3c2e0
Update geo and webapp submodules
...
- geo: Filter offer edges from route stages
- webapp: Simplify OfferResultCard, use daisyUI Steps
2026-01-15 00:33:33 +07:00
Ruslan Bakiev
f10d9bee3a
fix: remove overflow-hidden from header (dropdowns should overlay map)
2026-01-14 22:42:42 +07:00
Ruslan Bakiev
a3c9c3e189
Store EGRUL JSON in Mongo and parse PDFs
2026-01-14 21:12:05 +07:00
Ruslan Bakiev
9b12bdd414
Add meltano tap-egrul + update submodules
...
- Add meltano/ with tap-egrul extractor for EGRUL data
- tap-egrul calls egrul-agent API for PDF scraping
- Update exchange, orders, webapp submodules
2026-01-11 16:14:41 +07:00
Ruslan Bakiev
9d05386337
Update exchange and orders submodules
2026-01-09 01:11:22 +07:00
Ruslan Bakiev
46eec3e06b
Update submodules (webapp, geo)
2026-01-08 16:49:47 +07:00
Ruslan Bakiev
77a345dfa6
Update submodules (UI improvements, backend filters)
2026-01-08 10:43:15 +07:00
Ruslan Bakiev
7121c69599
Add nearest_nodes tool for coordinate-based node search
2026-01-08 00:37:30 +07:00
Ruslan Bakiev
2605b1a3b4
refactor: use GEO search param instead of client-side filtering
2026-01-07 22:01:50 +07:00
Ruslan Bakiev
b93e7859e8
chore: update submodules (teams + webapp) - address edit page
2026-01-07 16:21:15 +07:00
Ruslan Bakiev
69ff0ffe5b
Update billing submodule (add Infisical env vars)
2026-01-07 10:06:56 +07:00
Ruslan Bakiev
6fba01ad51
Update billing submodule
2026-01-07 09:55:07 +07:00
Ruslan Bakiev
ac33950f87
Update submodules with webhook URLs
2026-01-07 09:45:46 +07:00
Ruslan Bakiev
e8c67b50bd
Convert webapp and backends to submodules from Gitea
2026-01-07 09:33:15 +07:00
Ruslan Bakiev and Claude Opus 4.5
582c3ccdd9
Allow finding offers at any search phase (rail not required)
...
Offers can be found at any stage of the search:
- Directly from destination (1 edge)
- After 1 auto edge
- At rail station
- After rail + 1 auto
Rail is not mandatory - search expands radius until offers found.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-06 12:41:51 +07:00
Ruslan Bakiev and Claude Opus 4.5
cc12895ab8
Fix findProductRoutes: limit auto segments to 1 edge each
...
Business rule: auto can only be 1 edge at start and end of route.
- end_auto → end_auto_done after 1 auto edge
- rail → start_auto_done after 1 auto edge
- Remove MAX_AUTO_DISTANCE_KM/MAX_AUTO_TIME_SECONDS constraints
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-06 12:18:18 +07:00
Ruslan Bakiev and Claude Opus 4.5
dfeba64305
Remove self from standalone helper functions
...
These functions are now called directly, not as class methods.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-06 12:03:31 +07:00
Ruslan Bakiev and Claude Opus 4.5
d348f80bbb
Fix self.method calls in Graphene resolver
...
Graphene can pass None as self for root queries. Call helper functions
directly instead of via self.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-06 11:46:21 +07:00
Ruslan Bakiev
52ebc53383
Skip migrations for geo Docker startup
2026-01-06 11:09:13 +07:00
Ruslan Bakiev
24fc5230da
Fix Django Dockerfile env and Poetry install
2026-01-06 11:04:41 +07:00
Ruslan Bakiev
c23efe0746
Unify Django Docker startup
2026-01-06 10:48:55 +07:00
Ruslan Bakiev
f4c2d65588
Add Dockerfiles for backends and webapp
2026-01-06 10:29:53 +07:00
Ruslan Bakiev
09033bb162
Fix findProductRoutes: add offer phase to find product offers
...
- Add 'offer' transport_type transition in allowed_next_phase()
- Include 'offer' in fetch_neighbors() types for start_auto phase
- Enables algorithm to traverse: destination → auto → rail → auto → offer
2026-01-06 10:10:12 +07:00
Ruslan Bakiev
2e7b5ac39e
Refine product route search for constrained auto-rail-auto paths
2026-01-05 19:55:52 +07:00
Ruslan Bakiev
e4aed8e7ff
Add --product filter to seed_exchange
2026-01-05 18:26:35 +07:00
Ruslan Bakiev
11e550977a
Fix seed_exchange: fetch all hubs and filter by country in Python
2026-01-05 17:17:53 +07:00
Ruslan Bakiev
450ff73dbe
Fix geo GraphQL URL in seed_exchange
2026-01-05 16:59:06 +07:00
Ruslan Bakiev
8c1bceb0b1
Fix seed_exchange: fetch product UUIDs from Odoo instead of hardcoded slugs
2026-01-05 16:45:52 +07:00
Ruslan Bakiev
f32a7d5b6e
Add OfferService for workflow-based offer creation
...
- Add offers/services.py with OfferService class
- Add Django admin action 'Sync to graph' for offers
- Update seed_exchange for African cocoa belt hubs
- Seed can now create offers via Temporal workflow
2026-01-05 10:30:54 +07:00
Ruslan Bakiev
1208ffc153
Rename Supplier to SupplierProfile in Exchange
...
- Rename model class Supplier → SupplierProfile (keep db_table='suppliers')
- Add backwards compatibility alias Supplier = SupplierProfile
- Rename GraphQL type SupplierType → SupplierProfileType
- Rename queries: getSuppliers → getSupplierProfiles, etc.
- Update admin, apps, management commands
2026-01-05 10:11:00 +07:00
Ruslan Bakiev and Claude Opus 4.5
5b40cde8da
Add codeName to teamTransactions from OperationCode table
...
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-05 09:25:29 +07:00
Ruslan Bakiev and Claude Opus 4.5
3dbd44fe82
Add teamTransactions from TigerBeetle
...
- Add get_account_transfers() to TigerBeetle client
- Update team_schema to return real transactions from TigerBeetle
- Include direction (credit/debit) and counterparty UUID
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-04 13:12:13 +07:00
Ruslan Bakiev and Claude Opus 4.5
dae2605fe2
Refactor billing: Django as wrapper for TigerBeetle
...
- Remove Operation and TransactionReason models (transactions in TigerBeetle only)
- Add OperationCode model (справочник кодов операций)
- Add ServiceAccount model (bank, revenue accounts)
- Simplify AccountType to USER/SERVICE only
- Update M2M schema: createTransaction mutation, operationCodes/serviceAccounts queries
- Update Team schema: teamBalance from TigerBeetle directly
- Add migration 0003_refactor_models
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-04 12:52:26 +07:00
Ruslan Bakiev
0219d95ec9
Fix TigerBeetle DNS resolution in Python client
2026-01-04 12:47:27 +07:00
Ruslan Bakiev
4d3e011740
Use poetry install --no-root in billing image
2026-01-04 12:00:11 +07:00
Ruslan Bakiev
655d8d3949
Fix billing Dockerfile README copy
2026-01-04 11:49:26 +07:00
Ruslan Bakiev
1bd87eb1b8
Fix K_SHORTEST_PATHS AQL syntax: add ANY direction modifier
...
The ArangoDB K_SHORTEST_PATHS function requires a direction modifier
(OUTBOUND/INBOUND/ANY) before the keyword. Without it, the query fails
with syntax error.
Ref: https://docs.arangodb.com/3.12/aql/graphs/k-shortest-paths/
2026-01-04 11:03:11 +07:00
Ruslan Bakiev
e36addef2c
Unify billing and tigerbeetle compose
2026-01-04 10:41:56 +07:00