Commit Graph

318 Commits

Author SHA1 Message Date
b17b5333c7 log refactor 2026-05-12 19:30:15 +03:00
1d59df2233 refactor 2026-05-12 14:52:27 +03:00
9f995f22ae refactor: migrate translate engine to GRACE-Poly v2.6 semantic protocol
- Convert all 84 contracts from legacy [DEF:] to #region/#endregion syntax
- Fix complexity tiers: 14 modules re-tiered (6 C4 route modules, 7 C4→C5 plugin services)
- Remove forbidden tags: @RATIONALE/@REJECTED stripped from C1–C4 contracts
- Add required tags: @PRE/@POST/@SIDE_EFFECT on C4, @RELATION on C3, @DATA_CONTRACT/@INVARIANT on C5
- Add belief runtime markers (reason/reflect/explore) to 7 service.py functions
- Fix @LAYER: route files → UI, plugins → Domain, superset_executor → Infra
- Fix pre-existing test mock_service fixture in test_orchestrator.py
- 196/196 translation tests pass, zero regressions
2026-05-12 14:32:28 +03:00
fefdee98d0 agents 2026-05-11 22:58:01 +03:00
2abba06e52 feat: add job status display and 'Mark as READY' button to Run tab
- Add status badge (DRAFT/READY/RUNNING/COMPLETED/FAILED) in Run tab
- Add 'Mark as READY' button to transition from DRAFT to READY
- Include status field in save payload to prevent reverting on save
- Disable Run button when job is in DRAFT status
2026-05-09 23:19:46 +03:00
dbb8bd6c4e fix: persist environment selection, support Kilo AI provider, resolve Superset virtual columns for translation preview
- Add environment_id to TranslationJob model/schema/API + DB migration
- Pass environmentId from page to TranslationPreview and fetchPreview
- Fix _fetch_sample_rows: use result_type='samples' to include virtual cols
- Add 'kilo' and 'openrouter' to supported LLM provider types
- Make response_format conditional (skip for non-OpenAI upstream providers)
- Remove source_table field from form (redundant with datasource)
- Restore datasourceSearch display from saved job on page load
- Add request/response logging for LLM API calls
2026-05-09 23:10:15 +03:00
67ba04d4ff feat: implement LLM table translation service with searchable datasource dropdown, i18n, sidebar, and RBAC
- Add backend plugin modules: preview, executor, orchestrator, events, sql_generator, superset_executor, dictionary, scheduler, metrics
- Add API routes for translate jobs, runs, dictionaries, preview, schedule, metrics, corrections
- Add ORM models (12 tables) and Pydantic schemas (15 DTOs)
- Register translate router in app.py with RBAC permission guards
- Add frontend pages: job list, job config, dictionary list/editor, history
- Add 7 reusable Svelte 5 components: Preview, RunProgress, RunResult, TermCorrection, BulkCorrection, ScheduleConfig, MetricsDashboard
- Add searchable datasource dropdown with Superset API integration
- Add i18n (en/ru) with ~300 keys across common, config, jobs, dictionaries, preview namespaces
- Add Translation sidebar category with Jobs/Dictionaries/History sub-items
- Hide health monitor error toast via suppressToast API option
- Add 69 backend tests and 44 frontend test files
- Fix: SupersetClient env resolution (string -> Environment object)
- Fix: Dataset detail API returns proper database dict
- Fix: Database dialect extraction fallback when metadata incomplete
2026-05-09 19:34:25 +03:00
bf82e17418 chore: add comprehensive log patterns to gitignore, purge logs from history
- Add *.log.* and logs/ patterns to .gitignore
- Remove duplicate backend/logs and logs/app.log.1 entries
- Purge all log files, backend/logs/, and .axiom/runtime/ from
  entire git history via git-filter-repo
2026-05-09 10:17:26 +03:00
201886eeb0 refactor: decompose 6 monolithic modules (>1000 LOC) into domain packages
Decompose 6 large modules into packages with <400-line modules to satisfy INV_7:

- superset_client.py (2145->0) -> superset_client/ package (12 modules)
- assistant.py (2683->0) -> assistant/ package (12 modules)
- git_service.py (2101->11 shim) -> services/git/ package (9 modules)
- git.py (1757->0) -> routes/git/ package (11 modules)
- dashboards.py (1619->0) -> routes/dashboards/ package (8 modules)
- translate.py (1587->0) -> routes/translate/ package (11 modules)
- superset_context_extractor.py (1397->0) -> utils/superset_context_extractor/ (7 modules)

All modules <400 lines (INV_7). All 80 tests pass.
All external imports preserved via __init__.py re-exports or shim.
Semantic [DEF] contracts with @LAYER/@SEMANTICS added to all Module types.
2026-05-09 10:13:07 +03:00
344b47ca23 tasks ready 2026-05-08 18:01:49 +03:00
1b15fd3fa7 semantic cleanup 2026-05-08 10:07:05 +03:00
54ce6a8126 fix(git): replace git diff --cached with git status --porcelain in get_status
repo.is_dirty() and repo.index.diff("HEAD") internally call git diff --cached,
which fails with exit 129 (unknown option) in some environments.

Introduce _parse_status_porcelain() using git status --porcelain,
a self-contained command that avoids --cached entirely.

All 25 git route tests continue to pass.
2026-05-08 09:55:10 +03:00
0b227a307c refactor 2026-04-24 17:10:02 +03:00
b7a9ef71b2 agents + semantic 2026-04-21 11:30:41 +03:00
e04bddcc4a refactor(dashboards): extract dashboard detail components
Split the large dashboard detail page into smaller, focused components: DashboardHeader, DashboardGitManager, DashboardLinkedResources, and DashboardTaskHistory to improve maintainability.
2026-04-21 08:36:48 +03:00
7a84716322 refactor: extract EnvironmentsTab to smaller semantic boundary 2026-04-20 19:18:19 +03:00
277ce7b3b3 skills + agents 2026-04-19 20:05:45 +03:00
2228a00035 semantics 2026-04-02 12:12:23 +03:00
80ec0c5eb1 prune contracts 2026-04-01 22:31:10 +03:00
89924afa8e + 2026-04-01 22:04:19 +03:00
f5c90af287 semantics 2026-04-01 21:57:51 +03:00
ace77ed64c semantics update 2026-04-01 15:30:13 +03:00
03d46cb32a semantic 2026-04-01 14:51:45 +03:00
af61096ddb root update 2026-04-01 14:25:52 +03:00
68b5b8d505 configs update 2026-04-01 14:07:02 +03:00
d4d212fd35 mcp tuning 2026-04-01 13:29:41 +03:00
d1d18df898 agents ADR promts 2026-03-27 22:00:37 +03:00
7901ce0f39 semantics 2026-03-27 21:27:31 +03:00
202823aba5 feat(ui): add chat-driven dataset review flow
Move dataset review clarification into the assistant workspace and
rework the review page into a chat-centric layout with execution rails.

Add session-scoped assistant actions for mappings, semantic fields,
and SQL preview generation. Introduce optimistic locking for dataset
review mutations, propagate session versions through API responses,
and mask imported filter values before assistant exposure.

Refresh tests, i18n, and spec artifacts to match the new workflow.

BREAKING CHANGE: dataset review mutation endpoints now require the
X-Session-Version header, and clarification is no longer handled
through ClarificationDialog-based flows
2026-03-26 13:33:12 +03:00
c56b8dad92 + clean 2026-03-22 13:00:17 +03:00
b8447e9beb some cleaning in promts 2026-03-22 13:00:06 +03:00
8847a99209 standards clean 2026-03-22 12:40:02 +03:00
a6b4c4ab59 swarm update 2026-03-21 18:34:24 +03:00
1f904a6321 promts 2026-03-21 16:09:13 +03:00
10c15d0e93 feat(ui): surface review readiness and blockers
Add readiness hints, blocker summaries, and progress cues across
the dataset review workspace to clarify partial recovery and
launch gating states.

Highlight read-only preview snapshots, pending semantic review,
clarification queue status, and unresolved validation blockers to
guide the next recommended action.

Document known limitations in backend test doubles so permission,
task dispatch, and uncovered persistence branches are explicit.
2026-03-21 15:48:28 +03:00
c76f75785e subagents promts 2026-03-21 15:48:07 +03:00
e86204df6c test semantics 2026-03-21 15:23:06 +03:00
2da548fd71 fix: finalize semantic repair and test updates 2026-03-21 15:07:06 +03:00
c827c2f098 fix: resolve missing ENCRYPTION_KEY in assistant route tests 2026-03-21 12:19:47 +03:00
81406bc2e2 fix: commit semantic repair changes 2026-03-21 11:22:25 +03:00
b11e35b451 add grace_schema.yaml 2026-03-21 11:06:48 +03:00
cf601a717e fix: commit verified semantic repair changes 2026-03-21 11:05:20 +03:00
6262347acd swarm promts 2026-03-21 10:34:25 +03:00
fa753b633d opencode + kilo promts 2026-03-20 22:41:41 +03:00
1c8cd1c072 agent promt polish 2026-03-20 20:17:10 +03:00
4d4f204f1c semantics 2026-03-20 20:01:58 +03:00
62d7c660ef subagents 2026-03-20 17:20:24 +03:00
f721b59248 Add primary subagent-only orchestrator 2026-03-20 16:46:16 +03:00
9feabfb08d Add custom subagent role duplicates 2026-03-20 16:36:18 +03:00
7cff6bdcf8 semantic 2026-03-18 08:45:15 +03:00