Commit Graph

55 Commits

Author SHA1 Message Date
TPTBusiness 732361bb90 fix(security): resolve path-injection, B701, B101, B112 Bandit alerts
- Path injection (B614): centralized safe_resolve_path in core/utils.py,
  refactored 6 UI modules to use it with safe_root validation
- B701: added explicit autoescape=select_autoescape() to Jinja2
  Environment() calls in 3 files
- B101: replaced assert statements with proper if/raise patterns in
  12+ files (partial)
- B112: added logger.warning() to bare except:continue blocks in
  5 files
2026-05-01 13:42:59 +02:00
TPTBusiness 23b2518c74 fix(security): resolve path-injection and add nosec for safe temp paths (B108, py/path-injection)
- ds_trace.py: resolve() user-provided save path and use Path.name for filenames
  to prevent directory traversal in the local workspace save UI
- rl/finetune UI data_loaders: nosec B614 where paths are already validated
  against safe_root via realpath() before use
- Temp paths (/tmp/sample, /tmp/full, /tmp/mock/*, /tmp/predix_loop.pid,
  /tmp/autorl_output): nosec B108 — fixed Docker volume mount points or
  single-process admin files, not user-writable attack surface

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-30 19:26:38 +02:00
TPTBusiness 2126062edf fix(security): nosec for B608/B701 false positives in UI and template code
B608: Bandit flags any f-string containing "select" as potential SQL
injection. All four cases (app.py, ds_trace.py, llm_st.py, merge.py)
are Streamlit UI labels or log messages — not database queries.

B701: Jinja2 autoescape=False warnings in coder.py and utils.py are
false positives — these render Python code and plain-text templates,
not HTML. Enabling autoescape would corrupt the rendered code.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-30 09:35:09 +02:00
TPTBusiness 30c0a9166e chore: initial Predix state (RD-Agent fork + EURUSD setup) 2026-03-22 21:20:02 +01:00
Linlang 6196ba31f2 fix: preserve null end_time when rendering dataset segments template (#1326)
* fix: preserve null end_time when rendering dataset segments template

* deps(qlib): bump qlib revision to 2fb9380

* fix: lint error
2026-02-13 10:50:46 +08:00
Linlang 32ecf92afc fix: handle mixed str and dict types in code_list (#1279)
* fix: handle mixed str and dict types in code_list

* fix: handle missing token_costs entry for loop 0 in summarize_win
2025-11-03 21:52:41 +08:00
you-n-g 35a7ae5e1f feat: show the summarized final difference between the final workspace and the base workspace (#1281) 2025-11-03 17:59:46 +08:00
you-n-g 70fd91cd05 feat: ui, support disable cache (#1217)
* fix: (drop) add cache_enable for functions in ui.utils

* fix: (drop) handle no logging, rename sota_exp to last_sota_exp for clarity in running_win
2025-09-01 15:58:05 +08:00
XianBW 215db05656 chore: ui updates (#1209)
* show a workspace path string for easier copy, only percent existing columns when percent summary dataframe

* catch summary exception

* fix a bug

* fix ci
2025-08-29 15:05:15 +08:00
XianBW 70fdfc89b0 fix ui bug (#1207) 2025-08-28 14:18:58 +08:00
XianBW 3df94e920c chore: refine get_summary_df and sota exp stat in log utils (#1201)
* add best valid selector to get sota exp stat

* remove unused in summary & refine get_summary_df

* fix hypothesis table bug in trace
2025-08-26 18:31:21 +08:00
XianBW 04878f9e70 fix: kaggle competition metric direction (#1195)
* fix leaderboard and competition direction

* ui fix
2025-08-20 16:40:53 +08:00
XianBW 2f8261f82b fix: ui bug (#1192)
* small bug

* fix ci
2025-08-18 17:48:49 +08:00
XianBW 2c0702a4ac fix ui bugs (#1190) 2025-08-18 10:56:51 +08:00
Tim e0f713c7d3 chore: add merge statistics (#1176)
* chore: add stat for merge
* use best selector
* use trace.hist
2025-08-13 22:59:34 +08:00
XianBW 6f1a8c63e0 add auto sota selector llm log in trace (#1169) 2025-08-08 16:26:48 +08:00
XianBW 7f90253c4c add parent & root node in trace page (#1164) 2025-08-07 15:02:46 +08:00
XianBW d771b26a26 chore: show timeline and change load_times (#1161)
* show timeline, deperacate old load_times

* fix bug
2025-08-06 18:42:17 +08:00
XianBW c2bde6dcc3 save more time info (#1151) 2025-08-04 17:28:25 +08:00
XianBW c985e34531 change something for ui compatiblity (#1149) 2025-08-04 12:40:35 +08:00
XianBW d0832eb5ff bug fix (#1145) 2025-08-01 18:07:19 +08:00
XianBW 38aa6eb046 use popover instead of expander (#1138) 2025-07-31 18:14:38 +08:00
XianBW 0ccb6e6d56 log time duration when call LLM and show timeout ratio of coding & running in trace UI (#1128) 2025-07-29 17:54:29 +08:00
XianBW 4cee886c80 fix current_selection maybe empty (#1125) 2025-07-29 11:56:59 +08:00
XianBW e19fe4b233 fix find last SOTA diff (#1124) 2025-07-29 10:56:41 +08:00
XianBW 59a2d7f91d fix curve (#1118) 2025-07-24 19:15:01 +08:00
XianBW e92cd99450 chore: some ui features change (#1117)
* add some todos

* fix bug

* fix leaderboard download function

* summary stat fix

* show medal

* show SOTA Loop

* fix CI
2025-07-24 18:50:29 +08:00
Tim 9f7a4280dc chore: show merge loop in figure (#1105) 2025-07-22 17:02:56 +08:00
XianBW c326aa52b9 chore: add response format in chatbot (#1099)
* add response format in chatbot

* fix CI
2025-07-21 12:19:05 +08:00
XianBW 3b57264d2c fix ui bugs (#1090) 2025-07-18 16:01:39 +08:00
XianBW 221fea1e15 chore: add a simple chatbot in LLM_LOG window in DataScience UI (#1088)
* refine time show

* updates

* add chatbot in llm_log_win

* use newest litellm
2025-07-17 19:29:25 +08:00
you-n-g 5496168d07 feat: add enable_cache toggle for UI data caching (#1075) 2025-07-15 22:26:06 +08:00
you-n-g 6fdf63370f feat: add only success filter toggle for traces (#1047) 2025-07-10 12:35:03 +08:00
XianBW e1d6dc2dec chore: show llm filter calls info, remove redundant remove_timestamp param in Env (#1040)
* show llm calls info

* remove `remove_timestamp` param in Env

* use cache default
2025-07-09 14:20:33 +08:00
XianBW 3f9c1afea8 ui updates (#1033) 2025-07-08 18:20:27 +08:00
XianBW c1e99c13a8 add trace DAG in trace, make exp show compatible with old versions (#1018) 2025-07-04 15:47:45 +08:00
XianBW ef6b5866c7 feat: show first evo round codes diff (#1009)
* log settings

* add first diff in evolving

* save dict settings

* load settings in data science ui
2025-07-03 19:21:14 +08:00
XianBW cbab4830c3 add code diff in evolving window (#1008) 2025-06-30 20:10:34 +08:00
Yuante Li 7e77a44e11 fix: improve log folder sorting and selection UX (#993)
* fix ui

* update
2025-06-27 11:38:05 +08:00
XianBW 4ec3561c60 fix LLM log bug (#985) 2025-06-25 10:38:20 +08:00
XianBW 2ffeb9e3e2 some update (#934) 2025-06-05 10:56:54 +08:00
Tim 7518ab66fa fix: ds trace (#929)
* fix: remove_ansi_codes
* chore: rename function
2025-06-04 18:30:29 +08:00
XianBW a12b2fe9ee chore: organize the tool functions related to trace and summary (#889)
* provide get metric direction in kaggle_crawler.py

* move utils function

* move statistics logic

* fix CI

* fix CI

* fix CI

* fix CI

* move some tool functions

* fix CI

* move curves win

* add compare tool

* change function name

* fix CI
2025-05-21 17:20:31 +08:00
XianBW 5e1292974b fix debug_tpl and debug_llm saving method(#874) 2025-05-15 18:37:51 +08:00
you-n-g e1d08cfe73 fix: adjust ds_trace lookup and add stderr redirect to mlebench command (#853)
* fix: adjust ds_trace lookup and add stderr redirect to mlebench command

* style: reformat SOTA experiment lookup in ds_trace.py

* feat: add DS_RD_SETTING pipeline to MergeExpGen success message
2025-05-08 02:40:49 +08:00
XianBW 0047114a09 fix bug (#845) 2025-05-06 18:15:20 +08:00
Tim 46dec7b624 feat: custom data (#810)
* custom data

* fix: simplify competition check and log local description file

* no sample data

* feat: add test evaluation module with error handling support

* fix: update eval path to use eval_sub_dir and add valid_check TODO

* refactor: add MLETestEval check to conditionally run grading steps

* avoid blank stdout

* valid in testeval

* rename test.csv to avoid conflict

* Support Disabling sample submission

* refactoring

* fix: remove DS_KAGGLE_DATA and update prompt instructions

* add try for grade

* ignore submission

* fix: remove tee from eval command and warn about pipeline exit code detection

* optional to use raw description

* support old data

* add execution result to stdout

* add metric to raw description

* custom data explain

* add debug_path

* rst update

---------

Co-authored-by: Young <afe.young@gmail.com>
2025-05-06 16:00:13 +08:00
XianBW eda4a2a807 chore: ui change (#844)
* ui change

* ui change
2025-05-06 11:34:21 +08:00
you-n-g fd98d29982 fix: adapting UI to mock trace (#841)
* fix: return first index if 'SOTA Exp Score (valid)' is empty

* feat: add get_state_data_range helper for loops and slider bounds

* fix: exclude batch embedding tag from log filtering

* feat: add feedback support in sota_experiment and adjust merge flow

* fix: use fb function for merging experiments

* style: remove extra whitespace and reformat code
2025-05-04 15:51:32 +08:00
XianBW b95154c99d catch llm_data pkl read exception (#774) 2025-04-09 12:21:54 +08:00