Vadlamani Ravi

198 papers B 1C 5Misc 3Journal 121Unranked 66
YearRankTypeTitle / Venue / Authors
2026 J jnl
Quantum Mach. Intell.
Yelleti Vivek, Sri Krishna Vadlamani, Vadlamani Ravi, P. Radha Krishna
2026 J jnl
Appl. Soft Comput.
Yelleti Vivek, Vadlamani Ravi, P. Radha Krishna
2025 J jnl
ACM Comput. Surv.
Satyam Kumar, Yelleti Vivek, Vadlamani Ravi, Indranil Bose
2025 J jnl
Comput. Electr. Eng.
Pavan Venkata Sainadh Reddy, Yelleti Vivek, Gopi Pranay, Vadlamani Ravi
2025 Misc conf
COMSNETS
Yelleti Vivek, Vadlamani Ravi, Abhay Anand Mane, Laveti Ramesh Naidu
2025 J jnl
Comput. Electr. Eng.
Yelleti Vivek, Vadlamani Ravi, P. Radha Krishna
2025 J jnl
ACM Comput. Surv.
Sandarbh Yadav, Vadlamani Ravi, Shivaram Kalyanakrishnan
2025 J jnl
Swarm Evol. Comput.
Yelleti Vivek, Vadlamani Ravi, P. Radha Krishna
2025 J jnl
Quantum Inf. Process.
Yelleti Vivek, Vadlamani Ravi, P. Radha Krishna
2025 Misc conf
COMSNETS
Satyam Kumar, Vadlamani Ravi
2024 J jnl
J. Inf. Knowl. Manag.
Aravilli Atchuta Ram, Sandarbh Yadav, Yelleti Vivek, Vadlamani Ravi
2024 conf
CIFEr
Yelleti Vivek, Vadlamani Ravi, Abhay Anand Mane, Laveti Ramesh Naidu
2024 conf
CIFEr
Polaki Durga Prasad, Yelleti Vivek, Vadlamani Ravi
2024 J jnl
CoRR
Yelleti Vivek, Sri Krishna Vadlamani, Vadlamani Ravi, P. Radha Krishna
2024 conf
GECCO Companion
Vivek Yelleti, Vadlamani Ravi, P. Radha Krishna
2024 conf
GECCO Companion
Vivek Yelleti, Vadlamani Ravi, P. Radha Krishna
2024 J jnl
Clust. Comput.
Eduru Harindra Venkatesh, Yelleti Vivek, Vadlamani Ravi, Shiva Shankar Orsu
2024 J jnl
Swarm Evol. Comput.
Yelleti Vivek, Vadlamani Ravi, Ponnuthurai Nagaratnam Suganthan, P. Radha Krishna
2024 J jnl
CoRR
Yelleti Vivek, Vadlamani Ravi, P. Radha Krishna
2023 J jnl
CoRR
Yelleti Vivek, Vadlamani Ravi, Abhay Anand Mane, Laveti Ramesh Naidu
2023 J jnl
Expert Syst. Appl.
Sarveswararao Vangala, Vadlamani Ravi, Yelleti Vivek
2023 J jnl
CoRR
Satyam Kumar, Yelleti Vivek, Vadlamani Ravi, Indranil Bose
2023 J jnl
CoRR
Pavan Venkata Sainadh Reddy, Yelleti Vivek, Gopi Pranay, Vadlamani Ravi
2023 J jnl
CoRR
Polaki Durga Prasad, Yelleti Vivek, Vadlamani Ravi
2023 J jnl
Neural Comput. Appl.
Prateek Kate, Vadlamani Ravi, Akhilesh Gangwar
2023 J jnl
Clust. Comput.
Yelleti Vivek, Vadlamani Ravi, P. Radha Krishna
2022 J jnl
SN Comput. Sci.
Akhilesh Kumar Gangwar, Vadlamani Ravi
2022 J jnl
CoRR
Satyam Kumar, Vadlamani Ravi
2022 J jnl
CoRR
K. S. N. V. K. Gangadhar, B. Akhil Kumar, Yelleti Vivek, Vadlamani Ravi
2022 J jnl
CoRR
Yelleti Vivek, Vadlamani Ravi, Abhay Anand Mane, Laveti Ramesh Naidu
2022 J jnl
CoRR
Satyam Kumar, Vadlamani Ravi
2022 J jnl
CoRR
Satyam Kumar, Mendhikar Vishal, Vadlamani Ravi
2022 J jnl
CoRR
Yelleti Vivek, Vadlamani Ravi, Pisipati Radhakrishna
2022 J jnl
CoRR
Prateek Kate, Vadlamani Ravi, Akhilesh Gangwar
2022 J jnl
CoRR
Mohammad Arafat Ali Khan, Chandra Bhushan, Vadlamani Ravi, Vangala Sarveswara Rao, Shiva Shankar Orsu
2022 J jnl
Swarm Evol. Comput.
Sarveswararao Vangala, Vadlamani Ravi, Shaik Tanveer Ul Huq
2022 J jnl
CoRR
Eduru Harindra Venkatesh, Yelleti Vivek, Vadlamani Ravi, Shiva Shankar Orsu
2022 J jnl
CoRR
Yelleti Vivek, Vadlamani Ravi, P. Radha Krishna
2022 J jnl
CoRR
Syed Imtiaz Ahamed, Vadlamani Ravi
2022 J jnl
CoRR
Syed Imtiaz Ahamed, Vadlamani Ravi
2021 J jnl
SN Comput. Sci.
Sk. Kamaruddin, Vadlamani Ravi
2021 J jnl
SN Comput. Sci.
Tanveerulhuq Shaik, Vadlamani Ravi, Kalyanmoy Deb
2021 J jnl
Expert Syst. Appl.
Gutha Jaya Krishna, Vadlamani Ravi
2021 J jnl
CoRR
Sarveswararao Vangala, Vadlamani Ravi, Shaik Tanveer Ul Huq
2021 J jnl
CoRR
P. Shanmukh Kali Prasad, Vadlamani Madhav, Ramanuj Lal, Vadlamani Ravi
2021 J jnl
CoRR
Yelleti Vivek, Vadlamani Ravi, Pisipati Radhakrishna
2020 J jnl
CoRR
Akhilesh Kumar Gangwar, Vadlamani Ravi
2020 J jnl
Knowl. Based Syst.
Saptarshi Sengupta, Sanchita Basak, Pallabi Saikia, Sayak Paul, Vasilios Tsalavoutis, Frederick Ditliac Atiah, Vadlamani Ravi, Alan Peters
2020 J jnl
CoRR
Sarveswararao Vangala, Vadlamani Ravi
2020 J jnl
CoRR
Vishal Vyas, Kumar Ravi, Vadlamani Ravi, V. Uma, Srirangaraj Setlur, Venu Govindaraju
2020 conf
SSCI
Sarveswararao Vangala, Vadlamani Ravi
2020 conf
FICTA (2)
Basit Ali, Vadlamani Ravi
2020 conf
FICTA (1)
Akhilesh Kumar Gangwar, Vadlamani Ravi
2020 J jnl
CoRR
Shaik Tanveer Ul Huq, Vadlamani Ravi, Kalyanmoy Deb
2020 J jnl
CoRR
Shaik Tanveer Ul Huq, Vadlamani Ravi
2020 conf
FICTA (2)
Gopireddy Vishnuvardhan, Vadlamani Ravi, Amiya Ranjan Mallik
2020 conf
FICTA (1)
Bheemidi Vikram Reddy, Gutha Jaya Krishna, Vadlamani Ravi, Dipankar Dasgupta
2020 J jnl
Eng. Appl. Artif. Intell.
Gutha Jaya Krishna, Vadlamani Ravi
2020 J jnl
Commun. Assoc. Inf. Syst.
Sachithra Lokuge, Darshana Sedera, Thilini Ariyachandra, Saj Kumar, Vadlamani Ravi
2019 C conf
TENCON
Sk. Kamaruddin, Vadlamani Ravi
2019 J jnl
CoRR
Saptarshi Sengupta, Sanchita Basak, Pallabi Saikia, Sayak Paul, Vasilios Tsalavoutis, Frederick Ditliac Atiah, Vadlamani Ravi, Richard Alan Peters
2019 conf
SoCPaR
Gutha Jaya Krishna, Vadlamani Ravi
2019 J jnl
CoRR
Rohit Gavval, Vadlamani Ravi, Kalavala Revanth Harshal, Akhilesh Gangwar, Kumar Ravi
2019 ch.
Optimization in Industry
Gutha Jaya Krishna, Vadlamani Ravi
2019 conf
COMAD/CODS
Gutha Jaya Krishna, Vadlamani Ravi
2019 C conf
TENCON
Gutha Jaya Krishna, Vadlamani Ravi
2019 C conf
TENCON
Gutha Jaya Krishna, Harshal Jaiswal, P. Sai Ravi Teja, Vadlamani Ravi
2019 J jnl
CoRR
Gutha Jaya Krishna, Vadlamani Ravi
2019 J jnl
Int. J. Big Data Intell.
Ojha Manish Kumar, Kumar Ravi, Vadlamani Ravi
2019 J jnl
CoRR
B. Shravan Kumar, Vadlamani Ravi, Rishabh Miglani
2019 C conf
TENCON
Gutha Jaya Krishna, Vadlamani Ravi, Bheemidi Vikram Reddy, Mohammad Zaheeruddin, Harshal Jaiswal, P. Sai Ravi Teja, Rohit Gavval
2019 Misc conf
ICISS
Akhilesh Gangwar, Vadlamani Ravi
2018 conf
ICCI*CC
B. Shravan Kumar, Vadlamani Ravi
2018 J jnl
J. Netw. Comput. Appl.
Kumar Ravi, Yogesh Khandelwal, Boora Shiva Krishna, Vadlamani Ravi
2018 conf
ICCI*CC
Kumar Ravi, Srirangaraj Setlur, Vadlamani Ravi, Venu Govindaraju
2018 conf
ISDA (2)
Gutha Jaya Krishna, Meesala Smruthi, Vadlamani Ravi, Bhamidipati Shandilya
2018 conf
ISDA (2)
Gutha Jaya Krishna, Vadlamani Ravi
2018 conf
ICCI*CC
Kumar Ravi, Vadlamani Ravi
2018 J jnl
Appl. Soft Comput.
Gutha Jaya Krishna, Vadlamani Ravi, S. Nagesh Bhattu
2018 conf
ICCI*CC
Manish Yadav, Vadlamani Ravi
2018 conf
ICCI*CC
Kumar Ravi, Vadlamani Ravi, B. Shivakrishna
2018 conf
SSCI
Bhaskar Dhariyal, Vadlamani Ravi, Kumar Ravi
2018 J jnl
Comput. Oper. Res.
Dadabada Pradeepkumar, Vadlamani Ravi
2017 J jnl
Knowl. Based Syst.
Kumar Ravi, Vadlamani Ravi
2017 conf
BDA
Vadlamani Ravi, Sk. Kamaruddin
2017 J jnl
Swarm Evol. Comput.
Vadlamani Ravi, Dadabada Pradeepkumar, Kalyanmoy Deb
2017 J jnl
Appl. Soft Comput.
Dadabada Pradeepkumar, Vadlamani Ravi
2017 J jnl
Appl. Soft Comput.
Kumar Ravi, Vadlamani Ravi, P. Sree Rama Krishna Prasad
2017 conf
COMPUTE
B. Shravan Kumar, Vadlamani Ravi
2017 conf
FIRE
Nagesh Bhattu Sristy, N. Satya Krishna, Boora Shiva Krishna, Vadlamani Ravi
2017 conf
BDA
Sk. Kamaruddin, Vadlamani Ravi, Pritman Mayank
2017 conf
COMPUTE
Vadlamani Ravi, Vadali Tejasviram, Anurag Sharma, Rashmi Ranjan Khansama
2016 conf
RAIT
Rahul Ghosh, Kumar Ravi, Vadlamani Ravi
2016 J jnl
Knowl. Based Syst.
B. Shravankumar, Vadlamani Ravi
2016 conf
ICIA
Sk. Kamaruddin, Vadlamani Ravi
2016 conf
ICIIS
Amit Soni Arya, Vadlamani Ravi, Vadali Tejasviram, Neelava Sengupta, Nikola K. Kasabov
2016 J jnl
Concurr. Comput. Pract. Exp.
Manish Verma, G. R. Gangadharan, Nanjangud C. Narendra, Vadlamani Ravi, Vidyadhar Inamdar, Lakshmi Ramachandran, Rodrigo N. Calheiros, Rajkumar Buyya
2016 J jnl
Eng. Appl. Artif. Intell.
Gutha Jaya Krishna, Vadlamani Ravi
2016 conf
FICTA (1)
Dadabada Pradeepkumar, Vadlamani Ravi
2016 conf
RAIT
Dadabada Pradeepkumar, Vadlamani Ravi
2016 conf
SoCPaR
Kumar Ravi, Vadlamani Ravi
2016 conf
ICIA
Gutha Jaya Krishna, Vadlamani Ravi
2016 conf
ICIA
Kshitij Tayal, Vadlamani Ravi
2016 J jnl
Neurocomputing
Kancherla Jonah Nishanth, Vadlamani Ravi
2016 conf
RAIT
Kumar Ravi, Vadlamani Ravi
2016 conf
FICTA (1)
B. Shravan Kumar, Vadlamani Ravi
2015 J jnl
Eng. Appl. Artif. Intell.
G. Ganesh Sundarkumar, Vadlamani Ravi
2015 J jnl
Knowl. Based Syst.
Kumar Ravi, Vadlamani Ravi
2015 conf
ICDIM
Vadali Tejasviram, Harshvardhan Solanki, Vadlamani Ravi, Sk. Kamaruddin
2015 J jnl
Inf. Sci.
Chandan Gautam, Vadlamani Ravi
2015 J jnl
Neurocomputing
Chandan Gautam, Vadlamani Ravi
2015 conf
MIWAI
Vadlamani Srikrishna, Rahul Ghosh, Vadlamani Ravi, Kalyanmoy Deb
2015 conf
FIRE Workshops
S. Nagesh Bhattu, Vadlamani Ravi
2015 conf
CASE
G. Ganesh Sundarkumar, Vadlamani Ravi, Ifeoma Nwogu, Venu Govindaraju
2015 conf
ICHSA
Gutha Jaya Krishna, Vadlamani Ravi
2015 J jnl
Int. J. Inf. Decis. Sci.
Narravula Ankaiah, Vadlamani Ravi
2014 conf
SEMCCO
Dadabada Pradeepkumar, Maneesh Bhunwal, Vadlamani Ravi
2014 J jnl
Neurocomputing
Vadlamani Ravi, Mannepalli Krishna
2014 conf
MIWAI
Pradeep Ganghishetti, Vadlamani Ravi
2014 J jnl
Eur. J. Oper. Res.
Kamini Venkatesh, Vadlamani Ravi, Anita Prinzie, Dirk Van den Poel
2014 J jnl
Appl. Soft Comput.
M. A. H. Farquad, Vadlamani Ravi, S. Bapi Raju
2014 conf
ICSI (2)
Dadabada Pradeepkumar, Vadlamani Ravi
2014 conf
SEMCCO
Pradeep Ganghishetti, Vadlamani Ravi, Nandan Kaushik, B. L. Deekshatulu, Indranil Bose, A. Aditya
2014 conf
SEMCCO
Vadlamani Ravi, Ranabir De
2014 conf
SEMCCO
Vadlamani Ravi, Amit Yadav
2014 conf
MIWAI
Vadlamani Ravi, Anurag Sharma
2014 conf
SEMCCO
B. Shravankumar, Vadlamani Ravi
2013 J jnl
J. Inf. Process. Syst.
Kancherla Jonah Nishanth, Vadlamani Ravi
2013 J jnl
Int. J. Inf. Decis. Sci.
Sharma Nigib, Arun Nampally, Vadlamani Ravi
2013 J jnl
Eng. Appl. Artif. Intell.
K. N. V. D. Sarath, Vadlamani Ravi
2013 J jnl
Int. J. Inf. Syst. Soc. Chang.
Vishal Arora, Vadlamani Ravi
2013 J jnl
Knowl. Based Syst.
Kalam Narendar Reddy, Vadlamani Ravi
2013 J jnl
Int. J. Hybrid Intell. Syst.
Vadlamani Ravi, Nekuri Naveen, Mayank Pandey
2013 J jnl
Appl. Soft Comput.
Ramakanta Mohanty, Vadlamani Ravi, Manas Ranjan Patra
2013 J jnl
Comput. Biol. Medicine
Amit Kumar Banerjee, Vadlamani Ravi, U. S. N. Murty, Anirudh P. Shanbhag, V. Lakshmi Prasanna
2013 J jnl
Int. J. Inf. Syst. Serv. Sect.
Mahil Carr, Vadlamani Ravi, G. Sridharan Reddy, D. Veranna
2013 conf
ICETET
Mayank Pandey, Vadlamani Ravi
2013 conf
ICETET
Uppala Shivakumar, Vadlamani Ravi, T. R. Venkateswaran
2013 B conf
FUZZ-IEEE
Uppala Shivakumar, Vadlamani Ravi, G. R. Gangadharan
2013 conf
SEMCCO (2)
Mayank Pandey, Vadlamani Ravi
2012 C conf
ISDA
Vadlamani Ravi, Nekuri Naveen, Manideepto-Das
2012 conf
SEMCCO
Kalam Narendar Reddy, Vadlamani Ravi
2012 conf
SEMCCO
Vadlamani Ravi, Nekuri Naveen, Manideepto-Das
2012 J jnl
Int. J. Data Min. Model. Manag.
Paramjeet, Vadlamani Ravi, Nekuri Naveen, Chillarige Raghavendra Rao
2012 conf
SEMCCO
Nekuri Naveen, Vadlamani Ravi, Chillarige Raghavendra Rao
2012 J jnl
Expert Syst. Appl.
Kancherla Jonah Nishanth, Vadlamani Ravi, Narravula Ankaiah, Indranil Bose
2011 conf
MIWAI
Yeturu Maheshkumar, Vadlamani Ravi
2011 J jnl
Int. J. Data Min. Model. Manag.
Madireddi Vasu, Vadlamani Ravi
2011 J jnl
Int. J. Data Anal. Tech. Strateg.
Paramjeet, Vadlamani Ravi
2011 J jnl
Expert Syst. Appl.
Ashwinikumar Kulkarni, B. S. C. Naveen Kumar, Vadlamani Ravi, Upadhyayula Suryanarayana Murthy
2011 J jnl
Decis. Support Syst.
Pediredla Ravisankar, Vadlamani Ravi, G. Raghava Rao, Indranil Bose
2011 conf
MIWAI
Nekuri Naveen, Vadlamani Ravi, Chillarige Raghavendra Rao
2011 J jnl
Int. J. Inf. Decis. Sci.
Mohammad Abdul Haque Farquad, Vadlamani Ravi, S. Bapi Raju
2010 J jnl
Int. J. Appl. Evol. Comput.
Ramakanta Mohanty, Vadlamani Ravi, Manas Ranjan Patra
2010 conf
CISIM
Ramakanta Mohanty, Vadlamani Ravi, Manas Ranjan Patra
2010 conf
KES (1)
Nekuri Naveen, Vadlamani Ravi, C. Raghavendra Rao
2010 conf
SEMCCO
Vadlamani Ravi, Nupur Aggarwal, Nikunj Chauhan
2010 J jnl
Int. J. Bio Inspired Comput.
Nikunj Chauhan, Vadlamani Ravi
2010 J jnl
Int. J. Bio Inspired Comput.
Nekuri Naveen, Vadlamani Ravi, C. Raghavendra Rao, Nikunj Chauhan
2010 J jnl
Inf. Sci.
Pediredla Ravisankar, Vadlamani Ravi, Indranil Bose
2010 J jnl
Knowl. Based Syst.
Pediredla Ravisankar, Vadlamani Ravi
2010 J jnl
Int. J. Inf. Decis. Sci.
Vadlamani Ravi, Chelimala Pramodh
2010 conf
KES (1)
M. A. H. Farquad, Vadlamani Ravi, S. Bapi Raju
2010 J jnl
Int. J. Data Min. Model. Manag.
Devulapalli Karthik Chandra, Vadlamani Ravi, Pediredla Ravisankar
2010 J jnl
Expert Syst. Appl.
M. A. H. Farquad, Vadlamani Ravi, S. Bapi Raju
2010 J jnl
Int. J. Inf. Decis. Sci.
Ramakanta Mohanty, Vadlamani Ravi, Manas Ranjan Patra
2010 J jnl
Expert Syst. Appl.
Ramakanta Mohanty, Vadlamani Ravi, Manas Ranjan Patra
2009 J jnl
Int. J. Inf. Decis. Sci.
Nekuri Naveen, Vadlamani Ravi, Dudyala Anil Kumar
2009 conf
RSFDGrC
M. A. H. Farquad, Vadlamani Ravi, S. Bapi Raju
2009 J jnl
Expert Syst. Appl.
Nikunj Chauhan, Vadlamani Ravi, Devulapalli Karthik Chandra
2009 conf
NaBIC
E. V. Gopal, Munaga V. N. K. Prasad, Vadlamani Ravi
2009 conf
NaBIC
Pediredla Ravisankar, Vadlamani Ravi
2009 J jnl
Expert Syst. Appl.
Devulapalli Karthik Chandra, Vadlamani Ravi, Indranil Bose
2009 J jnl
Int. J. Inf. Decis. Sci.
Devulapalli Karthik Chandra, Vadlamani Ravi
2009 J jnl
Int. J. Data Anal. Tech. Strateg.
Kunta Ramu, Vadlamani Ravi
2009 conf
CASE
Nekuri Naveen, Vadlamani Ravi, C. Raghavendra Rao
2009 conf
NaBIC
Jankisharan Pahariya, Vadlamani Ravi, Mahil Carr
2009 conf
RSFDGrC
Ramakanta Mohanty, Vadlamani Ravi, Manas Ranjan Patra
2009 J jnl
Int. J. Comput. Intell. Appl.
Vadlamani Ravi, Nikunj Chauhan, N. Raj Kiran
2008 J jnl
Int. J. Inf. Decis. Sci.
Chelimala Pramodh, Vadlamani Ravi, T. Nagabhushanam
2008 J jnl
Int. J. Data Anal. Tech. Strateg.
Dudyala Anil Kumar, Vadlamani Ravi
2008 J jnl
Appl. Soft Comput.
Vadlamani Ravi, H. Kurniawan, Peter Nwee Kok Thai, P. Ravi Kumar
2008 J jnl
J. Syst. Softw.
K. Vinay Kumar, Vadlamani Ravi, Mahil Carr, N. Raj Kiran
2008 J jnl
J. Syst. Softw.
N. Raj Kiran, Vadlamani Ravi
2008 J jnl
Appl. Soft Comput.
Vadlamani Ravi, Chelimala Pramodh
2007 J jnl
Eur. J. Oper. Res.
P. Ravi Kumar, Vadlamani Ravi
2007 ch.
Intelligence in Reliability Engineering
Vadlamani Ravi
2006 conf
ICDIM
P. Ravi Kumar, Vadlamani Ravi
2006 J jnl
Int. J. Uncertain. Fuzziness Knowl. Based Syst.
Vadlamani Ravi, Bin Ma, P. Ravi Kumar
2005 J jnl
Comput. Ind. Eng.
Vadlamani Ravi, Ravi Shankar, M. K. Tiwari
2004 J jnl
Asia Pac. J. Oper. Res.
Vadlamani Ravi
2001 J jnl
Soft Comput.
Vadlamani Ravi, Hans-Jürgen Zimmermann
2001 J jnl
Fuzzy Sets Syst.
Vadlamani Ravi, P. J. Reddy, Hans-Jürgen Zimmermann
2000 J jnl
IEEE Trans. Fuzzy Syst.
Vadlamani Ravi, P. J. Reddy, Hans-Jürgen Zimmermann
2000 J jnl
Eur. J. Oper. Res.
Vadlamani Ravi, Hans-Jürgen Zimmermann
2000 J jnl
Eur. J. Oper. Res.
Vadlamani Ravi, P. J. Reddy, Hans-Jürgen Zimmermann
1999 J jnl
Fuzzy Sets Syst.
Vadlamani Ravi, P. J. Reddy
1998 J jnl
Fuzzy Sets Syst.
Vadlamani Ravi, P. J. Reddy
sql/redb_js_tables.sql
← Index sql/redb_js_tables.sql sql
-- JavaScript malware analysis tables
-- Engine: ReplacingMergeTree(analysis_date) — latest analysis wins on re-processing
--
-- File order:
--   1. redb_js_features
--   2. redb_js_suspicious_apis
--   3. redb_js_deobfuscation
--   4. code_text_content              (generic text-content table; JS today,
--                                      PowerShell / Python / email / extracted
--                                      PDF / Office text in the future)
--   5. redb_iocs source_type ALTER    (extends Enum8 with text_raw/text_normalized
--                                      so JS — and any future text-based pipeline —
--                                      can distinguish IOCs found in the raw vs
--                                      normalised surface)
--   6. redb_iocs ioc_type ALTER       (adds registry_key=42 so HKLM/HKCU/HKEY_*
--                                      keys are extracted alongside file paths)
--
-- Decoded strings from JS still go into the shared code_binja_strings_raw
-- table (same schema used by DecompileBinja and DecompileAPK). JS
-- string_encoding values: hex, unicode, charcode, base64, concat. Plain long
-- literals are not extracted here — they're already in code_text_content and
-- scraped by the IOC pipeline over text_raw/text_normalized.
-- string_offset is the line number in the source file.
--
-- redb_js_features.script_type values (file format / container, first match):
--   jse, wsf, hta, embedded_html, wscript, esm, node_module, standalone, unknown
-- redb_js_features.detected_environment values (runtime by API surface, first
-- match):
--   wscript, browser_extension, service_worker, deno, node, browser, unknown

-- 1. Core features & obfuscation metrics (1 row per sample)
CREATE TABLE IF NOT EXISTS redb_js_features (
    sha256 FixedString(64),
    line_count UInt32,
    char_count UInt64,
    text_entropy Float64,
    max_line_length UInt32,
    avg_line_length Float64,
    is_minified UInt8,
    is_likely_obfuscated UInt8,
    obfuscator_name LowCardinality(String),
    obfuscation_score UInt8,
    obfuscation_techniques Array(String),
    eval_count UInt32,
    function_constructor_count UInt32,
    settimeout_setinterval_count UInt32,
    document_write_count UInt32,
    innerhtml_count UInt32,
    unescape_count UInt32,
    fromcharcode_count UInt32,
    atob_count UInt32,
    decodeuri_count UInt32,
    total_function_count UInt32,
    total_variable_count UInt32,
    max_nesting_depth UInt16,
    avg_identifier_length Float64,
    hex_string_count UInt32,
    unicode_escape_count UInt32,
    long_string_count UInt32,
    base64_string_count UInt32,
    comment_ratio Float64,
    script_type LowCardinality(String),
    detected_environment LowCardinality(String),
    analysis_date DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY sha256;

-- 2. Suspicious API calls (multi-row per sample)
--
-- `revealed_by_deobf` is 1 when the API only appears after the deobfuscation
-- pass (i.e. the call site is hidden in the raw artefact and surfaces only in
-- text_normalized). Useful for filtering "what did normalisation actually
-- buy us" without re-running the diff.
CREATE TABLE IF NOT EXISTS redb_js_suspicious_apis (
    sha256 FixedString(64),
    api_name String,
    api_category LowCardinality(String),
    call_count UInt32,
    line_numbers Array(UInt32),
    context_snippet String,
    revealed_by_deobf UInt8,
    analysis_date DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY (sha256, api_name);

-- 3. Deobfuscation results (1 row per sample)
CREATE TABLE IF NOT EXISTS redb_js_deobfuscation (
    sha256 FixedString(64),
    deobfuscator_used LowCardinality(String),
    deobfuscation_successful UInt8,
    original_size UInt64,
    deobfuscated_size UInt64,
    size_change_ratio Float64,
    original_entropy Float64,
    deobfuscated_entropy Float64,
    new_strings_found UInt32,
    new_apis_found UInt32,
    deobfuscated_sha256 FixedString(64),
    analysis_date DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY sha256;

-- 4. Generic text-content table for any text-based artefact (JS today;
--    PowerShell, Python, plain text, email bodies, extracted PDF/Office text
--    in the future). One row per sha256. content_type carries the magika
--    label so callers can filter without joining other tables.
CREATE TABLE IF NOT EXISTS code_text_content (
    sha256 FixedString(64),
    content_type LowCardinality(String),
    text_raw String CODEC(ZSTD(3)),
    text_normalized Nullable(String) CODEC(ZSTD(3)),
    normalizer_used Nullable(String),
    analysis_date DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY sha256;

-- 5. Extend redb_iocs.source_type Enum8 with two universal text-content
--    surfaces: text_raw (the artefact's original text) and text_normalized
--    (a deobfuscated/canonicalised form). Used by the JS IOC extraction
--    pipeline today; any future text-based pipeline (PowerShell, PDF, etc.)
--    plugs into the same two values.
--
-- Existing rows keep their stored integer values; only newly-inserted rows
-- can use 4/5. The MODIFY COLUMN must list the full final enum, including
-- the existing values (1/2/3) — ClickHouse rejects partial alters.
ALTER TABLE redb_iocs
    MODIFY COLUMN source_type
    Enum8('decompiled_function'=1, 'disassembled_function'=2, 'string'=3,
          'text_raw'=4, 'text_normalized'=5);

-- 6. Extend redb_iocs.ioc_type Enum8 with registry_key=42. Windows registry
--    paths (HKLM\..., HKCU\..., HKEY_LOCAL_MACHINE\...) are a distinct class
--    of IOC from filesystem paths and were previously extracted by nothing.
--    Same MODIFY COLUMN constraint as the source_type alter — the full final
--    enum must be listed.
ALTER TABLE redb_iocs
    MODIFY COLUMN ioc_type
    Enum8('ipv4'=1, 'ipv6'=2, 'fqdn'=3, 'url'=4, 'email'=5, 'server'=6,
          'hash_md5'=10, 'hash_sha1'=11, 'hash_sha256'=12,
          'cve'=20, 'cwe'=21, 'cpe'=22,
          'crypto_btc'=30, 'crypto_eth'=31, 'crypto_xrp'=32, 'crypto_bch'=33,
          'crypto_ada'=34, 'crypto_substrate'=35,
          'path_linux'=40, 'path_windows'=41, 'registry_key'=42,
          'onion'=50);

-- 7. Migrate redb_js_features to the two-tier obfuscation verdict.
--    `is_obfuscated` (binary heuristic at score >=40) is renamed to
--    `is_likely_obfuscated` (heuristic at >=60 + ≥1 strong signal, OR
--    js-x-ray flagged the obfuscator family). `obfuscator_name` is the
--    family name reported by @nodesecure/js-x-ray (jsfuck, obfuscator.io,
--    morse, jjencode, freejsobfuscator, ...) or empty when not detected.
--
--    Run once against an existing deployment. The CREATE TABLE above
--    already reflects the post-migration shape, so fresh installs skip this.
ALTER TABLE redb_js_features
    RENAME COLUMN is_obfuscated TO is_likely_obfuscated;
ALTER TABLE redb_js_features
    ADD COLUMN IF NOT EXISTS obfuscator_name LowCardinality(String) AFTER is_likely_obfuscated;

-- 8. Harmonise code_text_content column names with redb_iocs.source_type
--    enum values. The enum already uses `text_raw` / `text_normalized` for
--    the surface labels; the table previously stored the same data under
--    `content_raw` / `content_normalized`, forcing every join across the two
--    to translate names. Renaming the columns produces a self-documenting
--    schema where `redb_iocs.source_type='text_raw'` points directly at
--    `code_text_content.text_raw`.
--
--    Run once against an existing deployment. The CREATE TABLE above
--    already reflects the post-migration shape, so fresh installs skip this.
ALTER TABLE code_text_content
    RENAME COLUMN content_raw TO text_raw;
ALTER TABLE code_text_content
    RENAME COLUMN content_normalized TO text_normalized;

-- 9. Add revealed_by_deobf flag to redb_js_suspicious_apis. The strings/APIs
--    extractors now scan both the raw source and the deobfuscated text so APIs
--    hidden behind one obfuscation layer (Vjw0rm-style array.join + eval,
--    Dean-Edwards packers, ...) surface in the table. The flag is 1 only when
--    the API was *not* found in the raw source — querying for it isolates
--    "deobf-only" findings without joining redb_js_deobfuscation.
--
--    Run once against an existing deployment. The CREATE TABLE above
--    already reflects the post-migration shape, so fresh installs skip this.
ALTER TABLE redb_js_suspicious_apis
    ADD COLUMN IF NOT EXISTS revealed_by_deobf UInt8 AFTER context_snippet;