Commit Graph

247 Commits

Author SHA1 Message Date
ba25659647 chore(specs): move clean-repo-enterprise spec from 020 to 023 2026-03-03 19:50:53 +03:00
ab7f1d0b59 dev-preprod-prod logic 2026-03-01 14:39:25 +03:00
73cd29a237 slug first logic 2026-03-01 13:17:05 +03:00
0a09fb5e6d git list refactor 2026-03-01 12:13:19 +03:00
a3a127b590 fix(dashboards): lazy-load git status for visible rows 2026-02-28 11:21:37 +03:00
4aba3df734 причесываем лог 2026-02-28 10:47:19 +03:00
68b6ed2cd8 fix(dashboards): stabilize grid layout and remove owners N+1 fallback 2026-02-28 10:46:47 +03:00
e4ed1af64c feat(dashboards): show owners and improve grid actions UI 2026-02-28 10:04:56 +03:00
a116ba77d8 workflows update 2026-02-28 00:04:55 +03:00
efce41b0c5 dry run migration 2026-02-27 20:48:18 +03:00
af6ebef243 semantic protocol update 2026-02-27 20:48:06 +03:00
7f96a983a9 [
{
    "file": "backend/src/api/routes/__tests__/test_dashboards.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "All 9 previous findings remediated. @TEST_FIXTURE data aligned, all @TEST_EDGE scenarios covered, all @PRE negative tests present, all @SIDE_EFFECT assertions added. Full contract compliance."
  },
  {
    "file": "backend/src/api/routes/__tests__/test_datasets.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "All 6 previous findings remediated. Full @PRE boundary coverage including page_size>100, empty IDs, missing env. @SIDE_EFFECT assertions added. 503 error path tested."
  },
  {
    "file": "backend/src/core/auth/__tests__/test_auth.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "All 4 previous findings remediated. @SIDE_EFFECT last_login verified. Inactive user @PRE negative test added. Empty hash edge case covered. provision_adfs_user tested for both new and existing user paths."
  },
  {
    "file": "backend/src/services/__tests__/test_resource_service.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "Both prior recommendations implemented. Full edge case coverage for _get_last_task_for_resource. No anti-patterns detected."
  },
  {
    "file": "backend/tests/test_resource_hubs.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "Pagination boundary tests added. All @TEST_EDGE scenarios now covered. No anti-patterns detected."
  },
  {
    "file": "frontend/src/lib/components/assistant/__tests__/assistant_chat.integration.test.js",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "No changes since previous audit. Contract scanning remains sound."
  },
  {
    "file": "frontend/src/lib/components/assistant/__tests__/assistant_confirmation.integration.test.js",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "No changes since previous audit. Confirmation flow testing remains sound."
  }
]
2026-02-27 09:59:57 +03:00
1bf7b53bae test contracts 2026-02-26 19:40:00 +03:00
de5fb74921 new test contracts 2026-02-26 19:29:07 +03:00
eb512a63a0 test now STANDARD tier 2026-02-26 18:38:26 +03:00
bf6f82b750 update test data 2026-02-26 18:38:02 +03:00
03a494c8e1 test semantic harden 2026-02-26 18:26:11 +03:00
6ab2ea6f1c +ai update 2026-02-26 17:54:23 +03:00
817b6c65e7 Improve dashboard LLM validation UX and report flow 2026-02-26 17:53:41 +03:00
62818c733e codex specify 2026-02-25 21:19:48 +03:00
96f57fdedc feat(search): add grouped global results for tasks and reports 2026-02-25 21:09:42 +03:00
74573a2d32 feat(search): implement global navbar search for dashboards and datasets 2026-02-25 21:07:51 +03:00
74f452dd1c fix(ui): use global environment context on datasets page 2026-02-25 20:59:24 +03:00
b1c14619b3 fix(auth): defer environment context fetch until token is available 2026-02-25 20:58:14 +03:00
f01e35f36f fix(logging): suppress per-request belief scope spam in API client 2026-02-25 20:52:12 +03:00
44afb02785 feat(env): add global production context and safety indicators 2026-02-25 20:46:00 +03:00
6e73292340 + git config 2026-02-25 20:27:29 +03:00
6be33b06ee feat: Implement recursive storage listing and directory browsing for backups, and add a migration option to fix cross-filters. 2026-02-25 20:01:33 +03:00
31341d083f i18 cleanup 2026-02-25 18:31:50 +03:00
31cdc7958d { "verdict": "APPROVED", "rejection_reason": "NONE", "audit_details": { "target_invoked": true, "pre_conditions_tested": true, "post_conditions_tested": true, "test_data_used": true }, "feedback": "The test suite robustly verifies the
MigrationEngine
 contracts. It avoids Tautologies by cleanly substituting IdMappingService without mocking the engine itself. Cross-filter parsing asserts against hard-coded, predefined validation dictionaries (no Logic Mirroring). It successfully addresses @PRE negative cases (e.g. invalid zip paths, missing YAMLs) and rigorously validates @POST file transformations (e.g. in-place UUID substitutions and archive reconstruction)." }
2026-02-25 17:47:55 +03:00
6fb31c75e4 sync worked 2026-02-25 15:20:26 +03:00
cd259a8292 feat: Enhance ID mapping service robustness, add defensive guards, and expand migration engine and API testing. 2026-02-25 14:44:21 +03:00
94691ed1a5 ready for test 2026-02-25 13:35:09 +03:00
196262f96e workflow agy update 2026-02-25 13:29:14 +03:00
ab0b916643 tasks ready 2026-02-25 13:28:24 +03:00
8b52714298 +md 2026-02-25 10:34:30 +03:00
8706e8f740 speckit update 2026-02-25 10:31:48 +03:00
f850d5d28d { "verdict": "APPROVED", "rejection_reason": "NONE", "audit_details": { "target_invoked": true, "pre_conditions_tested": true, "post_conditions_tested": true, "test_data_used": true }, "feedback": "Both test files have successfully passed the audit. The 'task_log_viewer.test.js' suite now correctly imports and mounts the real Svelte component using Test Library, fully eliminating the logic mirror/tautology issue. The 'test_logger.py' suite now properly implements negative tests for the @PRE constraint in 'belief_scope' and fully verifies all @POST effects triggered by 'configure_logger'." } 2026-02-24 21:55:13 +03:00
cbf9135db6 semantic update 2026-02-24 21:08:12 +03:00
89c1534133 chore(gitignore): unignore frontend dashboards routes and track pages 2026-02-24 16:16:41 +03:00
fffcc73fb9 fix(validation): respect settings-bound provider and correct multimodal heuristic 2026-02-24 16:04:14 +03:00
4bc023c2fa fix(llm-validation): accept stepfun multimodal models and return 422 on capability mismatch 2026-02-24 16:00:23 +03:00
8699ded112 fix(llm): skip unsupported json_object mode for openrouter stepfun models 2026-02-24 14:22:08 +03:00
dfe682d5ea feat(assistant-chat): add animated thinking loader while waiting for response 2026-02-24 14:15:35 +03:00
db4ad207cf fix(task-drawer): keep drawer above assistant dim overlay 2026-02-24 14:12:34 +03:00
9c698f43b8 fix(task-drawer): render as side column without modal overlay when opened from assistant 2026-02-24 14:09:34 +03:00
08cbeef9f4 fix(assistant): resolve dashboard refs via LLM entities and remove deterministic parser fallback 2026-02-24 13:32:25 +03:00
f39549ef37 fix(assistant-chat): prevent stale history response from resetting selected conversation 2026-02-24 13:27:09 +03:00
51b1fbb247 generate semantic clean up 2026-02-24 12:51:57 +03:00
e97e19fc31 feat(assistant): add multi-dialog UX, task-aware llm settings, and i18n cleanup 2026-02-23 23:45:01 +03:00