Commit Graph
21 Commits
Author SHA1 Message Date
kjanat d82be93da2 feat(data-integration): add Jumbo API setup tools
Adds a management command and helper script to configure the Jumbo API external data source and fetch chat sessions.
Ensures idempotent creation and linkage to the Jumbo company while reading API credentials from environment variables.
Prints data source details and a post-fetch summary to ease setup and verification.
2025-11-05 20:43:35 +01:00
kjanat 45f003eafa refactor(test): clean up unused import and param
Removes an unused assertion import and aliases the unused test parameter to suppress linter warnings.
Keeps the test scaffold clean without changing behavior.
2025-11-05 20:27:27 +01:00
kjanat 2236eeb9a5 feat: Add uv Docker, Postgres, and company linking
Introduces uv-based Docker workflow with non-root runtime, cached installs, and uv-run for web and Celery. Updates docker-compose to Postgres + Redis, loads .env, and removes source bind mount for reproducible builds.

Switches settings to use Postgres when env is present with SQLite fallback; broadens allowed hosts for containerized development. Adds psycopg2-binary and updates sample env for Redis in Docker.

Adds company scoping to external data models and links sessions during ingestion; provides management commands to seed a Jumbo company/users and sync external chat data into the dashboard.

Includes .dockerignore, TypeScript config and typings, and minor template/docs tweaks.

Requires database migration.
2025-11-05 20:22:07 +01:00
kjanat 81d1469e18 feat(qa): add Playwright MCP test agents & config
Introduces Playwright testing agents (planner, generator, healer) powered by MCP to plan, generate, and heal end-to-end tests.

Configures the MCP server and integrates agent workflows into OpenCode and GitHub chat modes to enable AI-assisted testing.

Adds Playwright test dependency and updates lockfile; adjusts markdown lint ignores to reduce noise.

Adds contributor guidance for Claude Code to streamline local development.

Normalizes shell script shebangs to use /usr/bin/env bash for portability.

Enables automated browser testing workflows and resilient test maintenance within AI-enabled tooling.
2025-11-05 17:25:01 +01:00
kjanat 00bb994160 fix: skip prettier and tombi hooks in pre-commit.ci
- Skip prettier-jinja and prettier-all (require bunx not available in CI)
- Skip tombi-format and tombi-lint (network issues fetching schema catalog)
- Hooks still run locally where dependencies are available
- Resolves pre-commit.ci failures
2025-11-05 17:05:44 +01:00
kjanat 5ab48e9b19 fix: use proper multi-ecosystem-groups configuration
- Add top-level 'multi-ecosystem-groups' section
- Move schedule to group level for single consolidated schedule
- Add 'patterns: ["*"]' at ecosystem level (required)
- All ecosystems assigned to 'all-dependencies' group
- Results in single monthly PR with updates across all ecosystems
2025-11-05 16:59:54 +01:00
kjanat 1adf44f29a fix: correct dependabot.yml groups configuration
- Replace 'multi-ecosystem-group' with proper 'groups' syntax
- Add required 'patterns' property with wildcard matcher
- Group all dependencies per ecosystem for cleaner PRs
- Fixes dependabot configuration validation error
2025-11-05 16:59:19 +01:00
kjanat aec574bf62 chore(lint): update markdownlint-cli2 schema ref
Points the config to the correct CLI2 schema and removes the outdated nested schema key.
Improves editor validation and IntelliSense by aligning with the current tool schema.
2025-11-05 16:58:22 +01:00
kjanat 4c5cffc786 chore(deps): Adds monthly Dependabot updates
Enables automated dependency updates across uv, bun, GitHub Actions, Docker, Compose, and devcontainers
Groups updates across ecosystems to reduce PR noise
Schedules monthly runs to balance freshness and maintenance effort
2025-11-05 16:57:37 +01:00
kjanat fe847a3d4e fix: configure markdownlint-cli2 properly
- Wrap config in 'config' key for markdownlint-cli2
- Use MD013 rule name instead of 'line-length' alias
- Disable MD013 line-length checks
- Add allowed languages: sh, python, csv, tree
- Fix broken link reference in TODO.md
- All markdown linting now passes (37 errors -> 0)
2025-11-05 16:51:23 +01:00
kjanat 04705bdcb2 chore(deps): bump minimum versions, refresh lock
Updates minimum versions for core runtime deps (Django, Celery, NumPy/Pandas, Plotly, Requests, Redis, SQLAlchemy, etc.).
Refreshes lockfile to align with pyproject.
Targets recent security/bugfix releases and improves compatibility with latest Python/Django.
No functional changes expected.
2025-11-05 15:25:01 +01:00
kjanat b70535a2a8 lint: Enable oxc for JS/TS and add strict lint
Configure oxc LSP initialization options: run set to "onType", typeAware
enabled, unusedDisableDirectives set to "allow", and
configPath/tsConfigPath left null.
2025-11-05 15:17:57 +01:00
kjanat e67dd629d9 refactor: move functions to outer scope for better performance
- Move setupAjaxPagination to outer scope in ajax-pagination.js
- Move setupAjaxNavigation, reloadScripts, initializePageScripts to outer scope in ajax-navigation.js
- Move updatePlotlyTheme, resizeCharts, updateDashboardStats, updateDashboardCharts to outer scope in dashboard.js
- Move handleSidebarOnResize, setTheme, getSystemPreference to outer scope in main.js
- Avoid recreating functions on every DOMContentLoaded call
- All oxlint strict checks now pass (11 warnings -> 0)
2025-11-05 15:09:55 +01:00
kjanat dc6fc35b06 chore: add oxlint pre-commit hook
- Add oxc-project/mirrors-oxlint hook
- Enable verbose output for better debugging
- Complements existing ruff checks for JavaScript linting
2025-11-05 15:06:15 +01:00
kjanat e47df43337 fix: wrap setTimeout callback in arrow function
- Fix typescript-eslint(no-implied-eval) warning
- Use arrow function instead of direct function reference
- All oxlint type-aware checks now pass (1 warning -> 0)
2025-11-05 15:03:35 +01:00
kjanat 8ca7ad14d5 fix: remove unused variables in main.js
- Remove unused tooltipList and popoverList variables
- Remove unused event parameters in change/click handlers
- All oxlint checks now pass (4 warnings -> 0)
2025-11-05 15:03:00 +01:00
kjanat fdcec7eb84 feat: add ty type checking support and fix type issues
- Add ty.toml configuration with Django project root
- Add py.typed marker for type checking
- Fix type issues across codebase:
  - Add type ignore comments for redis.exceptions imports
  - Fix django.db.models.functions imports in utils
  - Fix getattr usage in accounts/forms
  - Remove unnecessary type annotations in dashboard/forms
- Configure ty to exclude migrations and respect ignore files
- All ty checks now pass (29 diagnostics -> 0)
2025-11-05 14:56:13 +01:00
kjanat 6e0ea8943d ci(pre-commit): disable CI skip configuration
- ci: comment out pre-commit.ci skip directives
- Django check hooks already disabled in hook definitions
- Removes redundant CI-level skip configuration
2025-11-05 14:45:10 +01:00
kjanat 239fb01292 ci: upgrade GitHub Actions to latest versions
- ci(bandit): upgrade actions/checkout v4 → v5
- ci(codacy): upgrade actions/checkout v4 → v5
- ci(codacy): upgrade codacy-analysis-cli-action from pinned SHA to @master
- ci(codacy): upgrade codeql-action/upload-sarif v3 → v4
2025-11-05 14:38:10 +01:00
kjanat c106792e78 chore(deps): update pre-commit config and apply bulk formatting
- build(pre-commit): upgrade hooks (django-upgrade 1.29.1, uv 0.9.7, ruff 0.14.3, bandit 1.8.6)
- build(pre-commit): add uv-lock hook, tombi TOML formatter, prettier-plugin-packagejson
- build(pre-commit): disable Django check hooks (commented out)
- build(pre-commit): switch npx → bunx for prettier execution
- build(node): add bun.lock, update prettier config with schema + packagejson plugin
- style: apply ruff format to all Python files (comments, spacing, imports)
- style: apply prettier format to all JS/CSS files (comment styles, spacing)
- style: apply tombi format to pyproject.toml (reordered sections, consistent formatting)
- chore: remove emoji from bash script comments for consistency

BREAKING CHANGE: Django check and migration check hooks disabled in pre-commit config
2025-11-05 14:34:08 +01:00
kjanat 897159739b Update dependabot.yml 2025-06-13 04:24:36 +02:00