create-entity-app-server 0.2.1 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist-create/template/.gateway-version +1 -1
  2. package/dist-create/template/app/plugins/ocr/cache.ts +1 -1
  3. package/dist-create/template/app/plugins/ocr/config.ts +1 -1
  4. package/dist-create/template/app/plugins/ocr/direction.ts +1 -1
  5. package/dist-create/template/app/plugins/ocr/dispatch.ts +1 -1
  6. package/dist-create/template/app/plugins/ocr/entity-adapter.ts +1 -1
  7. package/dist-create/template/app/plugins/ocr/errors.ts +1 -1
  8. package/dist-create/template/app/plugins/ocr/handlers.ts +1 -1
  9. package/dist-create/template/app/plugins/ocr/index.ts +1 -1
  10. package/dist-create/template/app/plugins/ocr/llm-parser.ts +1 -1
  11. package/dist-create/template/app/plugins/ocr/parsing-pipeline.ts +1 -1
  12. package/dist-create/template/app/plugins/ocr/pdf-converter.ts +1 -1
  13. package/dist-create/template/app/plugins/ocr/preprocessor.ts +1 -1
  14. package/dist-create/template/app/plugins/ocr/providers/aws.ts +1 -1
  15. package/dist-create/template/app/plugins/ocr/providers/azure.ts +1 -1
  16. package/dist-create/template/app/plugins/ocr/providers/google.ts +1 -1
  17. package/dist-create/template/app/plugins/ocr/providers/index.ts +1 -1
  18. package/dist-create/template/app/plugins/ocr/providers/naver.ts +1 -1
  19. package/dist-create/template/app/plugins/ocr/providers/tesseract.ts +1 -1
  20. package/dist-create/template/app/plugins/ocr/providers/upstage.ts +1 -1
  21. package/dist-create/template/app/plugins/ocr/quota.ts +1 -1
  22. package/dist-create/template/app/plugins/ocr/refiner.ts +1 -1
  23. package/dist-create/template/app/plugins/ocr/routes.ts +1 -1
  24. package/dist-create/template/app/plugins/ocr/service.ts +1 -1
  25. package/dist-create/template/app/plugins/ocr/template-loader.ts +1 -1
  26. package/dist-create/template/app/plugins/ocr/template-matcher.ts +1 -1
  27. package/dist-create/template/app/plugins/ocr/types/config.ts +1 -1
  28. package/dist-create/template/app/plugins/ocr/types/driver.ts +1 -1
  29. package/dist-create/template/app/plugins/ocr/types/index.ts +1 -1
  30. package/dist-create/template/app/plugins/ocr/types/parsed.ts +1 -1
  31. package/dist-create/template/app/plugins/ocr/types/store.ts +1 -1
  32. package/dist-create/template/app/plugins/ocr/types/template.ts +1 -1
  33. package/dist-create/template/app/plugins/ocr/utils.ts +1 -1
  34. package/dist-create/template/scripts/run.sh +64 -12
  35. package/dist-create/template/scripts/update-server.sh +14 -0
  36. package/dist-create/template/system-api.js +1 -1
  37. package/dist-create/template/system.js +1 -1
  38. package/package.json +1 -1
@@ -1 +1 @@
1
- 'use strict';(function(_0x4fb4f1,_0x42f70a){var _0x55d262=_0x5821,_0x5ce359=_0x4fb4f1();while(!![]){try{var _0x14f92a=parseInt(_0x55d262(0xba))/0x1*(-parseInt(_0x55d262(0xb4))/0x2)+parseInt(_0x55d262(0xb3))/0x3+-parseInt(_0x55d262(0xb8))/0x4+parseInt(_0x55d262(0xb6))/0x5+parseInt(_0x55d262(0xbb))/0x6*(-parseInt(_0x55d262(0xb5))/0x7)+parseInt(_0x55d262(0xb9))/0x8*(parseInt(_0x55d262(0xb2))/0x9)+-parseInt(_0x55d262(0xb7))/0xa;if(_0x14f92a===_0x42f70a)break;else _0x5ce359['push'](_0x5ce359['shift']());}catch(_0x3a2dc0){_0x5ce359['push'](_0x5ce359['shift']());}}}(_0x9971,0x692ce));function _0x5821(_0x85b53a,_0x52271e){_0x85b53a=_0x85b53a-0xb2;var _0x9971f=_0x9971();var _0x58211e=_0x9971f[_0x85b53a];if(_0x5821['oySoMb']===undefined){var _0x2e9062=function(_0x43f00e){var _0x179803='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x230f06='',_0x2124ae='';for(var _0x5634b9=0x0,_0x1eae41,_0x5ad6b2,_0x2382ba=0x0;_0x5ad6b2=_0x43f00e['charAt'](_0x2382ba++);~_0x5ad6b2&&(_0x1eae41=_0x5634b9%0x4?_0x1eae41*0x40+_0x5ad6b2:_0x5ad6b2,_0x5634b9++%0x4)?_0x230f06+=String['fromCharCode'](0xff&_0x1eae41>>(-0x2*_0x5634b9&0x6)):0x0){_0x5ad6b2=_0x179803['indexOf'](_0x5ad6b2);}for(var _0x3838f3=0x0,_0x493172=_0x230f06['length'];_0x3838f3<_0x493172;_0x3838f3++){_0x2124ae+='%'+('00'+_0x230f06['charCodeAt'](_0x3838f3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2124ae);};_0x5821['piMcao']=_0x2e9062,_0x5821['QDqxND']={},_0x5821['oySoMb']=!![];}var _0x2b85a3=_0x9971f[0x0],_0x182250=_0x85b53a+_0x2b85a3,_0x5e30c9=_0x5821['QDqxND'][_0x182250];return!_0x5e30c9?(_0x58211e=_0x5821['piMcao'](_0x58211e),_0x5821['QDqxND'][_0x182250]=_0x58211e):_0x58211e=_0x5e30c9,_0x58211e;}function _0x9971(){var _0x5b09e7=['nda4oty3mhjKs3rpAa','mtiYotm3nMriDfHlyW','nJrTzgTgCKC','n25OBKHsBq','nK9rteDVta','mtCZndKZCKn0Dvnj','mJa4odeYm2T2B0PVDa','nZuWotHgteDSswq','mtu0mdq0muLgBKzdrG','mZG5odC5mefAyu5NDW'];_0x9971=function(){return _0x5b09e7;};return _0x9971();}
1
+ 'use strict';function _0x3fb0(_0x4f02a3,_0x40e4eb){_0x4f02a3=_0x4f02a3-0xa9;var _0x23a74f=_0x23a7();var _0x3fb0bc=_0x23a74f[_0x4f02a3];if(_0x3fb0['MHElQk']===undefined){var _0x4d91f1=function(_0x56f2e0){var _0x481659='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x29b380='',_0x3c9ae7='';for(var _0x4feb1e=0x0,_0xd89cf0,_0x5c0f4a,_0xe253af=0x0;_0x5c0f4a=_0x56f2e0['charAt'](_0xe253af++);~_0x5c0f4a&&(_0xd89cf0=_0x4feb1e%0x4?_0xd89cf0*0x40+_0x5c0f4a:_0x5c0f4a,_0x4feb1e++%0x4)?_0x29b380+=String['fromCharCode'](0xff&_0xd89cf0>>(-0x2*_0x4feb1e&0x6)):0x0){_0x5c0f4a=_0x481659['indexOf'](_0x5c0f4a);}for(var _0x1f161d=0x0,_0x568ecf=_0x29b380['length'];_0x1f161d<_0x568ecf;_0x1f161d++){_0x3c9ae7+='%'+('00'+_0x29b380['charCodeAt'](_0x1f161d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3c9ae7);};_0x3fb0['cqzPff']=_0x4d91f1,_0x3fb0['aBNHIm']={},_0x3fb0['MHElQk']=!![];}var _0x511818=_0x23a74f[0x0],_0x42d9d6=_0x4f02a3+_0x511818,_0x30358f=_0x3fb0['aBNHIm'][_0x42d9d6];return!_0x30358f?(_0x3fb0bc=_0x3fb0['cqzPff'](_0x3fb0bc),_0x3fb0['aBNHIm'][_0x42d9d6]=_0x3fb0bc):_0x3fb0bc=_0x30358f,_0x3fb0bc;}(function(_0x1021ec,_0x5506b6){var _0x35a207=_0x3fb0,_0xecfeac=_0x1021ec();while(!![]){try{var _0x51e976=parseInt(_0x35a207(0xb3))/0x1*(parseInt(_0x35a207(0xaa))/0x2)+parseInt(_0x35a207(0xad))/0x3+parseInt(_0x35a207(0xb2))/0x4*(-parseInt(_0x35a207(0xaf))/0x5)+parseInt(_0x35a207(0xa9))/0x6*(parseInt(_0x35a207(0xab))/0x7)+-parseInt(_0x35a207(0xb0))/0x8+-parseInt(_0x35a207(0xac))/0x9*(parseInt(_0x35a207(0xae))/0xa)+parseInt(_0x35a207(0xb1))/0xb;if(_0x51e976===_0x5506b6)break;else _0xecfeac['push'](_0xecfeac['shift']());}catch(_0x2727a3){_0xecfeac['push'](_0xecfeac['shift']());}}}(_0x23a7,0x787b3));function _0x23a7(){var _0x1fcfd6=['mZeYndmWALrsq3DA','mtKZmtvrsKjAA0S','ntu1ndG4ogThC01iCW','ndiZotiWmKXiBMnytq','nZmYuwjyt2Lv','mMH5ENnJwq','nZi2ANDJAePJ','mJy3mZGYseDsr2TI','ntmXmZDHvMDRwNa','otLkrKH3rvK','mJaWmtuZn3Pusu1Wwq'];_0x23a7=function(){return _0x1fcfd6;};return _0x23a7();}
@@ -1 +1 @@
1
- 'use strict';(function(_0x559947,_0x1c801f){var _0x207f50=_0x2bdf,_0x1ed4f4=_0x559947();while(!![]){try{var _0x4ef844=-parseInt(_0x207f50(0x1ee))/0x1+parseInt(_0x207f50(0x1ec))/0x2*(parseInt(_0x207f50(0x1f1))/0x3)+-parseInt(_0x207f50(0x1ea))/0x4*(parseInt(_0x207f50(0x1ef))/0x5)+parseInt(_0x207f50(0x1ed))/0x6*(parseInt(_0x207f50(0x1f4))/0x7)+-parseInt(_0x207f50(0x1f2))/0x8+-parseInt(_0x207f50(0x1eb))/0x9*(-parseInt(_0x207f50(0x1f0))/0xa)+parseInt(_0x207f50(0x1f3))/0xb;if(_0x4ef844===_0x1c801f)break;else _0x1ed4f4['push'](_0x1ed4f4['shift']());}catch(_0x1418a4){_0x1ed4f4['push'](_0x1ed4f4['shift']());}}}(_0x3379,0xe738b));export*from'./config.ts';export*from'./parsed.ts';function _0x2bdf(_0x194bb0,_0x1e9742){_0x194bb0=_0x194bb0-0x1ea;var _0x33790c=_0x3379();var _0x2bdf82=_0x33790c[_0x194bb0];if(_0x2bdf['bMqWHO']===undefined){var _0x5aa455=function(_0x6db3f7){var _0x503ac4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x59c2bb='',_0x10777f='';for(var _0x567b59=0x0,_0xe3e56f,_0x4f93b0,_0x21c96e=0x0;_0x4f93b0=_0x6db3f7['charAt'](_0x21c96e++);~_0x4f93b0&&(_0xe3e56f=_0x567b59%0x4?_0xe3e56f*0x40+_0x4f93b0:_0x4f93b0,_0x567b59++%0x4)?_0x59c2bb+=String['fromCharCode'](0xff&_0xe3e56f>>(-0x2*_0x567b59&0x6)):0x0){_0x4f93b0=_0x503ac4['indexOf'](_0x4f93b0);}for(var _0x33175e=0x0,_0x2b5bff=_0x59c2bb['length'];_0x33175e<_0x2b5bff;_0x33175e++){_0x10777f+='%'+('00'+_0x59c2bb['charCodeAt'](_0x33175e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x10777f);};_0x2bdf['uMrgMm']=_0x5aa455,_0x2bdf['bCpsBg']={},_0x2bdf['bMqWHO']=!![];}var _0xadfb8=_0x33790c[0x0],_0x58fbf5=_0x194bb0+_0xadfb8,_0x2a95ab=_0x2bdf['bCpsBg'][_0x58fbf5];return!_0x2a95ab?(_0x2bdf82=_0x2bdf['uMrgMm'](_0x2bdf82),_0x2bdf['bCpsBg'][_0x58fbf5]=_0x2bdf82):_0x2bdf82=_0x2a95ab,_0x2bdf82;}function _0x3379(){var _0x3833b2=['nKLABwLpAq','mtq0oduYmZjhrNHfu3G','mJyYmtK0ntD4qMHTD2W','mtmYmtzethDvugm','mJy1nZm3mLLAvej4vq','nJqWmZvpA3HsEK8','mtu0mte2ngjjsw1Yqq','ndaYnLzQv3nSsW','mti0mdm2mxvSrKPvsG','mtbRB0n4tgG','mtKWwuPOvgTw'];_0x3379=function(){return _0x3833b2;};return _0x3379();}export*from'./driver.ts';export*from'./template.ts';export*from'./store.ts';
1
+ 'use strict';(function(_0x54b1ee,_0x550a17){var _0x3fad48=_0x3fcc,_0x2e434d=_0x54b1ee();while(!![]){try{var _0x510d4e=parseInt(_0x3fad48(0x1de))/0x1*(parseInt(_0x3fad48(0x1e3))/0x2)+-parseInt(_0x3fad48(0x1e2))/0x3*(parseInt(_0x3fad48(0x1dd))/0x4)+-parseInt(_0x3fad48(0x1e6))/0x5+parseInt(_0x3fad48(0x1e5))/0x6+-parseInt(_0x3fad48(0x1e7))/0x7+-parseInt(_0x3fad48(0x1e0))/0x8*(parseInt(_0x3fad48(0x1e4))/0x9)+parseInt(_0x3fad48(0x1e1))/0xa*(parseInt(_0x3fad48(0x1df))/0xb);if(_0x510d4e===_0x550a17)break;else _0x2e434d['push'](_0x2e434d['shift']());}catch(_0x305fed){_0x2e434d['push'](_0x2e434d['shift']());}}}(_0x5ef5,0x5f8b7));function _0x5ef5(){var _0x2b729a=['mJmYotjmEgfhwfq','mZe0odu0mNDgDu9eDG','mZu1ote3mhn2wgj6Ba','mZC4mduYnxPQsNzMvq','nev2q2zXBq','ntK2DLrKDKTi','mJu5nMvez2HgAa','mtiWyxLVCM9L','ntm2nZbAt1jyqva','mtiWmZK4n05oq2DvDq','otGWsMjgv3f3'];_0x5ef5=function(){return _0x2b729a;};return _0x5ef5();}export*from'./config.ts';export*from'./parsed.ts';export*from'./driver.ts';function _0x3fcc(_0x4e7648,_0x1a41e0){_0x4e7648=_0x4e7648-0x1dd;var _0x5ef532=_0x5ef5();var _0x3fcc70=_0x5ef532[_0x4e7648];if(_0x3fcc['HnCONt']===undefined){var _0x4aecd9=function(_0x37f399){var _0x4205c1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x1ee10e='',_0x417a74='';for(var _0x173dc1=0x0,_0x453991,_0x4fa78c,_0xeca146=0x0;_0x4fa78c=_0x37f399['charAt'](_0xeca146++);~_0x4fa78c&&(_0x453991=_0x173dc1%0x4?_0x453991*0x40+_0x4fa78c:_0x4fa78c,_0x173dc1++%0x4)?_0x1ee10e+=String['fromCharCode'](0xff&_0x453991>>(-0x2*_0x173dc1&0x6)):0x0){_0x4fa78c=_0x4205c1['indexOf'](_0x4fa78c);}for(var _0x2d52de=0x0,_0x3b3d7d=_0x1ee10e['length'];_0x2d52de<_0x3b3d7d;_0x2d52de++){_0x417a74+='%'+('00'+_0x1ee10e['charCodeAt'](_0x2d52de)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x417a74);};_0x3fcc['lWlffG']=_0x4aecd9,_0x3fcc['ducKof']={},_0x3fcc['HnCONt']=!![];}var _0x58cbe9=_0x5ef532[0x0],_0xef1f6c=_0x4e7648+_0x58cbe9,_0x36207d=_0x3fcc['ducKof'][_0xef1f6c];return!_0x36207d?(_0x3fcc70=_0x3fcc['lWlffG'](_0x3fcc70),_0x3fcc['ducKof'][_0xef1f6c]=_0x3fcc70):_0x3fcc70=_0x36207d,_0x3fcc70;}export*from'./template.ts';export*from'./store.ts';
@@ -1 +1 @@
1
- 'use strict';(function(_0xc7d1fe,_0x3071df){var _0x4107d0=_0x22c1,_0x1f1135=_0xc7d1fe();while(!![]){try{var _0xe13e4=-parseInt(_0x4107d0(0xeb))/0x1+parseInt(_0x4107d0(0xed))/0x2*(parseInt(_0x4107d0(0xea))/0x3)+-parseInt(_0x4107d0(0xec))/0x4+-parseInt(_0x4107d0(0xe5))/0x5+parseInt(_0x4107d0(0xe8))/0x6*(-parseInt(_0x4107d0(0xe3))/0x7)+-parseInt(_0x4107d0(0xe7))/0x8*(-parseInt(_0x4107d0(0xe9))/0x9)+parseInt(_0x4107d0(0xe4))/0xa*(parseInt(_0x4107d0(0xe6))/0xb);if(_0xe13e4===_0x3071df)break;else _0x1f1135['push'](_0x1f1135['shift']());}catch(_0x1b523b){_0x1f1135['push'](_0x1f1135['shift']());}}}(_0x2e8e,0x9ca06));function _0x22c1(_0xbabe6a,_0x21df13){_0xbabe6a=_0xbabe6a-0xe3;var _0x2e8e37=_0x2e8e();var _0x22c1d5=_0x2e8e37[_0xbabe6a];if(_0x22c1['GphXng']===undefined){var _0x3b15ac=function(_0x325a76){var _0x19846d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x39633a='',_0x277cda='';for(var _0x3f72c9=0x0,_0x198754,_0x10556e,_0xd8945d=0x0;_0x10556e=_0x325a76['charAt'](_0xd8945d++);~_0x10556e&&(_0x198754=_0x3f72c9%0x4?_0x198754*0x40+_0x10556e:_0x10556e,_0x3f72c9++%0x4)?_0x39633a+=String['fromCharCode'](0xff&_0x198754>>(-0x2*_0x3f72c9&0x6)):0x0){_0x10556e=_0x19846d['indexOf'](_0x10556e);}for(var _0x317ce2=0x0,_0x84979a=_0x39633a['length'];_0x317ce2<_0x84979a;_0x317ce2++){_0x277cda+='%'+('00'+_0x39633a['charCodeAt'](_0x317ce2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x277cda);};_0x22c1['jbABzC']=_0x3b15ac,_0x22c1['QtMOeA']={},_0x22c1['GphXng']=!![];}var _0xcc1533=_0x2e8e37[0x0],_0x2fce78=_0xbabe6a+_0xcc1533,_0x5c194b=_0x22c1['QtMOeA'][_0x2fce78];return!_0x5c194b?(_0x22c1d5=_0x22c1['jbABzC'](_0x22c1d5),_0x22c1['QtMOeA'][_0x2fce78]=_0x22c1d5):_0x22c1d5=_0x5c194b,_0x22c1d5;}function _0x2e8e(){var _0x5bd4d1=['mti3mJm0mKTxCuDVuq','mJiWnJKXAxfLA3jO','mJm4ntm2oe9rA0LbqW','mKjKC1bbrq','nJqZmZq4m2zoq29Vrq','odG2nZqWwLrfzxne','ndiXodKZmfH1sLPmyq','mZqXDxfizKXr','mtzUtvzUqwq','nMvhug5OrG','mJe3odK5CejQAvfP'];_0x2e8e=function(){return _0x5bd4d1;};return _0x2e8e();}
1
+ 'use strict';function _0x1b59(_0x95e552,_0x27149f){_0x95e552=_0x95e552-0xc9;var _0x35c473=_0x35c4();var _0x1b59ce=_0x35c473[_0x95e552];if(_0x1b59['ophzOB']===undefined){var _0x121f69=function(_0x5d6e70){var _0x222efc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x508573='',_0x1c250b='';for(var _0x166ee2=0x0,_0x54905c,_0x3a85d4,_0x2bb829=0x0;_0x3a85d4=_0x5d6e70['charAt'](_0x2bb829++);~_0x3a85d4&&(_0x54905c=_0x166ee2%0x4?_0x54905c*0x40+_0x3a85d4:_0x3a85d4,_0x166ee2++%0x4)?_0x508573+=String['fromCharCode'](0xff&_0x54905c>>(-0x2*_0x166ee2&0x6)):0x0){_0x3a85d4=_0x222efc['indexOf'](_0x3a85d4);}for(var _0x4fba1e=0x0,_0x271d5e=_0x508573['length'];_0x4fba1e<_0x271d5e;_0x4fba1e++){_0x1c250b+='%'+('00'+_0x508573['charCodeAt'](_0x4fba1e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1c250b);};_0x1b59['hjtHuB']=_0x121f69,_0x1b59['DQXowq']={},_0x1b59['ophzOB']=!![];}var _0x25e2ed=_0x35c473[0x0],_0x23e715=_0x95e552+_0x25e2ed,_0x50df42=_0x1b59['DQXowq'][_0x23e715];return!_0x50df42?(_0x1b59ce=_0x1b59['hjtHuB'](_0x1b59ce),_0x1b59['DQXowq'][_0x23e715]=_0x1b59ce):_0x1b59ce=_0x50df42,_0x1b59ce;}function _0x35c4(){var _0x57bb9a=['odu4otG0A0PLALjs','oda4otmZm0PTuxvTwa','mtGYmtKWmK54Bw9bsW','nZa0otm3s1rNwhPs','mtK1mZK0nwHQu3rnqq','mJDXEvbSyNu','nZbXt2zRBLm','ntKXmtq4AendtLv4','mZmXmtq2yLzwyLr0','ohLWrePTBa'];_0x35c4=function(){return _0x57bb9a;};return _0x35c4();}(function(_0x48f99b,_0x39a959){var _0x470d4b=_0x1b59,_0x3b02cf=_0x48f99b();while(!![]){try{var _0x2a85c7=-parseInt(_0x470d4b(0xd1))/0x1+-parseInt(_0x470d4b(0xd0))/0x2+-parseInt(_0x470d4b(0xc9))/0x3*(-parseInt(_0x470d4b(0xcb))/0x4)+parseInt(_0x470d4b(0xd2))/0x5+-parseInt(_0x470d4b(0xce))/0x6+-parseInt(_0x470d4b(0xcf))/0x7*(-parseInt(_0x470d4b(0xcd))/0x8)+-parseInt(_0x470d4b(0xcc))/0x9*(parseInt(_0x470d4b(0xca))/0xa);if(_0x2a85c7===_0x39a959)break;else _0x3b02cf['push'](_0x3b02cf['shift']());}catch(_0x5572c3){_0x3b02cf['push'](_0x3b02cf['shift']());}}}(_0x35c4,0xd1ee9));
@@ -1 +1 @@
1
- 'use strict';function _0x61d4(_0x40b8a4,_0x206f54){_0x40b8a4=_0x40b8a4-0x144;var _0x3ecf55=_0x3ecf();var _0x61d4c5=_0x3ecf55[_0x40b8a4];if(_0x61d4['apVhfR']===undefined){var _0x398121=function(_0x404ed4){var _0x15325d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x18f3b9='',_0x508e3e='';for(var _0x3b6452=0x0,_0x4b9f93,_0x106153,_0x4cd848=0x0;_0x106153=_0x404ed4['charAt'](_0x4cd848++);~_0x106153&&(_0x4b9f93=_0x3b6452%0x4?_0x4b9f93*0x40+_0x106153:_0x106153,_0x3b6452++%0x4)?_0x18f3b9+=String['fromCharCode'](0xff&_0x4b9f93>>(-0x2*_0x3b6452&0x6)):0x0){_0x106153=_0x15325d['indexOf'](_0x106153);}for(var _0x352dfd=0x0,_0x17c812=_0x18f3b9['length'];_0x352dfd<_0x17c812;_0x352dfd++){_0x508e3e+='%'+('00'+_0x18f3b9['charCodeAt'](_0x352dfd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x508e3e);};_0x61d4['oJjjnq']=_0x398121,_0x61d4['jrdPfQ']={},_0x61d4['apVhfR']=!![];}var _0x5f01aa=_0x3ecf55[0x0],_0x430ff2=_0x40b8a4+_0x5f01aa,_0x12e990=_0x61d4['jrdPfQ'][_0x430ff2];return!_0x12e990?(_0x61d4c5=_0x61d4['oJjjnq'](_0x61d4c5),_0x61d4['jrdPfQ'][_0x430ff2]=_0x61d4c5):_0x61d4c5=_0x12e990,_0x61d4c5;}function _0x3ecf(){var _0x3d7e06=['nJq2mMXet0fvDq','ndyYndi1CvnYrM1L','mtfNswzosgu','mJG2m1HWDNfOta','mZy5mtK1m2PlCwvxqW','mZyYody4v1HSBunO','mZzKAhLKEwe','ofrZz3H2ua','nJi0mtKXme1HtfnAqG','mJm1mJnMBfv0txG','ndjws2vLr2m','mJe4mZuWEuL0rMfK'];_0x3ecf=function(){return _0x3d7e06;};return _0x3ecf();}(function(_0x46b6b1,_0x2a859d){var _0x312841=_0x61d4,_0x23e26c=_0x46b6b1();while(!![]){try{var _0x32caca=parseInt(_0x312841(0x148))/0x1+-parseInt(_0x312841(0x145))/0x2*(-parseInt(_0x312841(0x144))/0x3)+parseInt(_0x312841(0x14d))/0x4*(parseInt(_0x312841(0x146))/0x5)+-parseInt(_0x312841(0x147))/0x6*(parseInt(_0x312841(0x14a))/0x7)+-parseInt(_0x312841(0x14e))/0x8*(-parseInt(_0x312841(0x14b))/0x9)+-parseInt(_0x312841(0x14f))/0xa+-parseInt(_0x312841(0x149))/0xb*(parseInt(_0x312841(0x14c))/0xc);if(_0x32caca===_0x2a859d)break;else _0x23e26c['push'](_0x23e26c['shift']());}catch(_0x4030c4){_0x23e26c['push'](_0x23e26c['shift']());}}}(_0x3ecf,0x51e32));
1
+ 'use strict';(function(_0x2e928e,_0x5da332){var _0x184f0f=_0x5583,_0x370cf8=_0x2e928e();while(!![]){try{var _0x3f19fd=parseInt(_0x184f0f(0x1c7))/0x1*(-parseInt(_0x184f0f(0x1c8))/0x2)+parseInt(_0x184f0f(0x1c1))/0x3+-parseInt(_0x184f0f(0x1c4))/0x4*(parseInt(_0x184f0f(0x1c9))/0x5)+parseInt(_0x184f0f(0x1c3))/0x6+parseInt(_0x184f0f(0x1c5))/0x7*(parseInt(_0x184f0f(0x1c0))/0x8)+-parseInt(_0x184f0f(0x1c6))/0x9+-parseInt(_0x184f0f(0x1c2))/0xa;if(_0x3f19fd===_0x5da332)break;else _0x370cf8['push'](_0x370cf8['shift']());}catch(_0x3b3587){_0x370cf8['push'](_0x370cf8['shift']());}}}(_0x2f4a,0x679ce));function _0x5583(_0xb1c5eb,_0x190389){_0xb1c5eb=_0xb1c5eb-0x1c0;var _0x2f4acf=_0x2f4a();var _0x558316=_0x2f4acf[_0xb1c5eb];if(_0x5583['PskgEA']===undefined){var _0x40e6bf=function(_0xfd3cb7){var _0x1ef445='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x22616b='',_0xd7d200='';for(var _0x4a1942=0x0,_0x2c81e8,_0x49f034,_0x5c9884=0x0;_0x49f034=_0xfd3cb7['charAt'](_0x5c9884++);~_0x49f034&&(_0x2c81e8=_0x4a1942%0x4?_0x2c81e8*0x40+_0x49f034:_0x49f034,_0x4a1942++%0x4)?_0x22616b+=String['fromCharCode'](0xff&_0x2c81e8>>(-0x2*_0x4a1942&0x6)):0x0){_0x49f034=_0x1ef445['indexOf'](_0x49f034);}for(var _0x2c6b1d=0x0,_0x42c7ce=_0x22616b['length'];_0x2c6b1d<_0x42c7ce;_0x2c6b1d++){_0xd7d200+='%'+('00'+_0x22616b['charCodeAt'](_0x2c6b1d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xd7d200);};_0x5583['nhtWNB']=_0x40e6bf,_0x5583['pxoKQc']={},_0x5583['PskgEA']=!![];}var _0x271e48=_0x2f4acf[0x0],_0x52c2ba=_0xb1c5eb+_0x271e48,_0x4d09a3=_0x5583['pxoKQc'][_0x52c2ba];return!_0x4d09a3?(_0x558316=_0x5583['nhtWNB'](_0x558316),_0x5583['pxoKQc'][_0x52c2ba]=_0x558316):_0x558316=_0x4d09a3,_0x558316;}function _0x2f4a(){var _0x37ce9b=['mMnivxvrEq','nda0nwTeAeDHvq','mtzJugHOrK0','mtqXmdq4owPMB3nwrG','ntG4odq3mfL0AMjjrq','mJGWmZG0ogrrBwT4za','mJGWsNPYqu9h','mJC5oda4ouzotMXnzG','ntiZotm1AMjfs3Dn','nJa4odm1Bwziy2Tm'];_0x2f4a=function(){return _0x37ce9b;};return _0x2f4a();}
@@ -1 +1 @@
1
- 'use strict';function _0x1e94(_0x527cb4,_0x2b2012){_0x527cb4=_0x527cb4-0x170;var _0x116197=_0x1161();var _0x1e94df=_0x116197[_0x527cb4];if(_0x1e94['bamWqT']===undefined){var _0x2c493b=function(_0xf2e0c2){var _0x2d2f44='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x505fe7='',_0x235631='';for(var _0x2ef18e=0x0,_0x2702ae,_0x57bc33,_0x26b503=0x0;_0x57bc33=_0xf2e0c2['charAt'](_0x26b503++);~_0x57bc33&&(_0x2702ae=_0x2ef18e%0x4?_0x2702ae*0x40+_0x57bc33:_0x57bc33,_0x2ef18e++%0x4)?_0x505fe7+=String['fromCharCode'](0xff&_0x2702ae>>(-0x2*_0x2ef18e&0x6)):0x0){_0x57bc33=_0x2d2f44['indexOf'](_0x57bc33);}for(var _0x57b0f1=0x0,_0x45cce0=_0x505fe7['length'];_0x57b0f1<_0x45cce0;_0x57b0f1++){_0x235631+='%'+('00'+_0x505fe7['charCodeAt'](_0x57b0f1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x235631);};_0x1e94['tvsGyK']=_0x2c493b,_0x1e94['Zbjosn']={},_0x1e94['bamWqT']=!![];}var _0x454f61=_0x116197[0x0],_0xa25d0f=_0x527cb4+_0x454f61,_0x1ebe04=_0x1e94['Zbjosn'][_0xa25d0f];return!_0x1ebe04?(_0x1e94df=_0x1e94['tvsGyK'](_0x1e94df),_0x1e94['Zbjosn'][_0xa25d0f]=_0x1e94df):_0x1e94df=_0x1ebe04,_0x1e94df;}(function(_0x4ee732,_0x31806e){var _0x55b327=_0x1e94,_0x9fdf97=_0x4ee732();while(!![]){try{var _0x4c522b=-parseInt(_0x55b327(0x174))/0x1*(parseInt(_0x55b327(0x178))/0x2)+parseInt(_0x55b327(0x17b))/0x3*(-parseInt(_0x55b327(0x176))/0x4)+parseInt(_0x55b327(0x175))/0x5*(-parseInt(_0x55b327(0x170))/0x6)+-parseInt(_0x55b327(0x173))/0x7+parseInt(_0x55b327(0x177))/0x8*(-parseInt(_0x55b327(0x172))/0x9)+-parseInt(_0x55b327(0x171))/0xa*(-parseInt(_0x55b327(0x17a))/0xb)+parseInt(_0x55b327(0x179))/0xc;if(_0x4c522b===_0x31806e)break;else _0x9fdf97['push'](_0x9fdf97['shift']());}catch(_0x174611){_0x9fdf97['push'](_0x9fdf97['shift']());}}}(_0x1161,0xd1980));function _0x1161(){var _0x4a2f17=['nJG4otyZCMjmBw5U','ndm1vxrWCNbu','mtG3nta0ohHmCMPesG','mJmWEeTwCfrH','owr6yMDMuq','mta2mZKWodnpuhjAr3q','mtfYt0jvwuK','nw9tDfrSuq','nZqWvNrhz01V','mtmWnde3mZzIq1jiwey','oda4nZrMrufbC1q','ndaYmJu5ntz6BvHZCNi'];_0x1161=function(){return _0x4a2f17;};return _0x1161();}
1
+ 'use strict';function _0x3dda(){var _0x424e0b=['mty2ntmWnw5eBLDgBG','mJuXmtqXnMDZt1LNEG','n0HPuMDOEa','ovfiuKDTvG','mtG0nZG1yunhtvLY','mtjJufPAruW','mJi2mdy0n2HfrfbVrG','nJi3nJHxCMroBvG','ntC0mZKYme5SB3rLqq','mZC1mZG0v1jSD21n'];_0x3dda=function(){return _0x424e0b;};return _0x3dda();}(function(_0x325c7a,_0x230cac){var _0x5a5b60=_0x13f4,_0xae9333=_0x325c7a();while(!![]){try{var _0xf8edae=-parseInt(_0x5a5b60(0x17c))/0x1+parseInt(_0x5a5b60(0x17f))/0x2*(parseInt(_0x5a5b60(0x185))/0x3)+parseInt(_0x5a5b60(0x183))/0x4+parseInt(_0x5a5b60(0x182))/0x5*(parseInt(_0x5a5b60(0x17d))/0x6)+parseInt(_0x5a5b60(0x184))/0x7*(parseInt(_0x5a5b60(0x181))/0x8)+-parseInt(_0x5a5b60(0x17e))/0x9+-parseInt(_0x5a5b60(0x180))/0xa;if(_0xf8edae===_0x230cac)break;else _0xae9333['push'](_0xae9333['shift']());}catch(_0x3995e1){_0xae9333['push'](_0xae9333['shift']());}}}(_0x3dda,0x67af3));function _0x13f4(_0x2b4210,_0x5768c7){_0x2b4210=_0x2b4210-0x17c;var _0x3dda10=_0x3dda();var _0x13f434=_0x3dda10[_0x2b4210];if(_0x13f4['wTZdGg']===undefined){var _0x58839c=function(_0x2b597d){var _0x33dc5f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x226962='',_0x2550da='';for(var _0x34f93c=0x0,_0x52eea7,_0x551491,_0x32528c=0x0;_0x551491=_0x2b597d['charAt'](_0x32528c++);~_0x551491&&(_0x52eea7=_0x34f93c%0x4?_0x52eea7*0x40+_0x551491:_0x551491,_0x34f93c++%0x4)?_0x226962+=String['fromCharCode'](0xff&_0x52eea7>>(-0x2*_0x34f93c&0x6)):0x0){_0x551491=_0x33dc5f['indexOf'](_0x551491);}for(var _0x2196b3=0x0,_0x286887=_0x226962['length'];_0x2196b3<_0x286887;_0x2196b3++){_0x2550da+='%'+('00'+_0x226962['charCodeAt'](_0x2196b3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2550da);};_0x13f4['fiKOex']=_0x58839c,_0x13f4['miaTUW']={},_0x13f4['wTZdGg']=!![];}var _0x18ba0d=_0x3dda10[0x0],_0x74947c=_0x2b4210+_0x18ba0d,_0x5d836b=_0x13f4['miaTUW'][_0x74947c];return!_0x5d836b?(_0x13f434=_0x13f4['fiKOex'](_0x13f434),_0x13f4['miaTUW'][_0x74947c]=_0x13f434):_0x13f434=_0x5d836b,_0x13f434;}
@@ -1 +1 @@
1
- 'use strict';function _0xbe23(_0x3edc4c,_0x4ae80c){_0x3edc4c=_0x3edc4c-0xe9;const _0x34c23c=_0x34c2();let _0xbe23de=_0x34c23c[_0x3edc4c];if(_0xbe23['dNSqep']===undefined){var _0x45cc4a=function(_0x2483a4){const _0x2454c4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xb2cb5f='',_0x149ae8='';for(let _0x52f7de=0x0,_0x10a242,_0x5b76aa,_0x1401df=0x0;_0x5b76aa=_0x2483a4['charAt'](_0x1401df++);~_0x5b76aa&&(_0x10a242=_0x52f7de%0x4?_0x10a242*0x40+_0x5b76aa:_0x5b76aa,_0x52f7de++%0x4)?_0xb2cb5f+=String['fromCharCode'](0xff&_0x10a242>>(-0x2*_0x52f7de&0x6)):0x0){_0x5b76aa=_0x2454c4['indexOf'](_0x5b76aa);}for(let _0x3ea32a=0x0,_0x52562a=_0xb2cb5f['length'];_0x3ea32a<_0x52562a;_0x3ea32a++){_0x149ae8+='%'+('00'+_0xb2cb5f['charCodeAt'](_0x3ea32a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x149ae8);};_0xbe23['NWrplj']=_0x45cc4a,_0xbe23['JDIcYT']={},_0xbe23['dNSqep']=!![];}const _0xeb3a49=_0x34c23c[0x0],_0x4248c9=_0x3edc4c+_0xeb3a49,_0x4dbe7a=_0xbe23['JDIcYT'][_0x4248c9];return!_0x4dbe7a?(_0xbe23de=_0xbe23['NWrplj'](_0xbe23de),_0xbe23['JDIcYT'][_0x4248c9]=_0xbe23de):_0xbe23de=_0x4dbe7a,_0xbe23de;}(function(_0x42d7ec,_0x3e58c5){const _0x493d62=_0xbe23,_0x2159a5=_0x42d7ec();while(!![]){try{const _0x39d87f=-parseInt(_0x493d62(0xef))/0x1*(parseInt(_0x493d62(0xf2))/0x2)+parseInt(_0x493d62(0xee))/0x3*(-parseInt(_0x493d62(0xec))/0x4)+parseInt(_0x493d62(0xf0))/0x5+-parseInt(_0x493d62(0xf4))/0x6*(parseInt(_0x493d62(0xf6))/0x7)+parseInt(_0x493d62(0xe9))/0x8+parseInt(_0x493d62(0xf3))/0x9*(-parseInt(_0x493d62(0xf1))/0xa)+parseInt(_0x493d62(0xf5))/0xb*(parseInt(_0x493d62(0xeb))/0xc);if(_0x39d87f===_0x3e58c5)break;else _0x2159a5['push'](_0x2159a5['shift']());}catch(_0x4ed93c){_0x2159a5['push'](_0x2159a5['shift']());}}}(_0x34c2,0xbfdab));import{execFile as _0x18e252}from'node:child_process';function _0x34c2(){const _0x30ae72=['ndKWoty0mejNruresW','mZbezhHLCui','mZm0q1Htr2rM','mta4ndC0m2TwtMXOEa','mJC1mtzLrvvUqKO','mtfYy3zUqvG','nZu2r1nOwhvH','odiZnJCYB0Hzruff','D2HPy2G','mZy3ndm3otzNwxrstfy','mZaWmJK5nKPut0X0za','sevLALu','nMvIChvWva','nJaWnhfgy29orq'];_0x34c2=function(){return _0x30ae72;};return _0x34c2();}import{promisify as _0x155539}from'node:util';const t=_0x155539(_0x18e252);export async function which(_0x293bdb){const _0x1478b0=_0xbe23,_0x114c50={'HEejU':function(_0x525641,_0x455977,_0x2a35db){return _0x525641(_0x455977,_0x2a35db);},'RPZyn':_0x1478b0(0xea)};try{return await _0x114c50[_0x1478b0(0xed)](t,_0x114c50['RPZyn'],[_0x293bdb]),!0x0;}catch{return!0x1;}}
1
+ 'use strict';(function(_0x589e1a,_0x37358){const _0x1ea471=_0x2dbb,_0x47dbeb=_0x589e1a();while(!![]){try{const _0x3849f5=-parseInt(_0x1ea471(0x85))/0x1+parseInt(_0x1ea471(0x89))/0x2+parseInt(_0x1ea471(0x87))/0x3*(-parseInt(_0x1ea471(0x84))/0x4)+parseInt(_0x1ea471(0x8b))/0x5+parseInt(_0x1ea471(0x86))/0x6+parseInt(_0x1ea471(0x8a))/0x7+-parseInt(_0x1ea471(0x83))/0x8;if(_0x3849f5===_0x37358)break;else _0x47dbeb['push'](_0x47dbeb['shift']());}catch(_0x39d31e){_0x47dbeb['push'](_0x47dbeb['shift']());}}}(_0x17dd,0x71845));function _0x2dbb(_0x22f22e,_0x4e5ff9){_0x22f22e=_0x22f22e-0x83;const _0x17ddf4=_0x17dd();let _0x2dbb69=_0x17ddf4[_0x22f22e];if(_0x2dbb['lSECNp']===undefined){var _0x11545a=function(_0x145d82){const _0xa70f9a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x48830f='',_0x39a902='';for(let _0x253fee=0x0,_0x4ee223,_0x193ad4,_0x526dc1=0x0;_0x193ad4=_0x145d82['charAt'](_0x526dc1++);~_0x193ad4&&(_0x4ee223=_0x253fee%0x4?_0x4ee223*0x40+_0x193ad4:_0x193ad4,_0x253fee++%0x4)?_0x48830f+=String['fromCharCode'](0xff&_0x4ee223>>(-0x2*_0x253fee&0x6)):0x0){_0x193ad4=_0xa70f9a['indexOf'](_0x193ad4);}for(let _0x1ca973=0x0,_0x2f1ca4=_0x48830f['length'];_0x1ca973<_0x2f1ca4;_0x1ca973++){_0x39a902+='%'+('00'+_0x48830f['charCodeAt'](_0x1ca973)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x39a902);};_0x2dbb['PTCtKv']=_0x11545a,_0x2dbb['PjTjHi']={},_0x2dbb['lSECNp']=!![];}const _0x16fced=_0x17ddf4[0x0],_0x50488a=_0x22f22e+_0x16fced,_0x3262b3=_0x2dbb['PjTjHi'][_0x50488a];return!_0x3262b3?(_0x2dbb69=_0x2dbb['PTCtKv'](_0x2dbb69),_0x2dbb['PjTjHi'][_0x50488a]=_0x2dbb69):_0x2dbb69=_0x3262b3,_0x2dbb69;}function _0x17dd(){const _0x586eb4=['ntK4nZiZm1z4tgj0uq','ntuWodeWyNPYze1n','ndKZmtq1nKX6BNjRqq','mtaWDg5RsxbX','ntm0ntm0vfrhDuzt','mJi5mJm3mKXssunoqW','nZmYmZbOuvHRzem','EhL3BgK','mtC1nZi3nKHuEeXpuG'];_0x17dd=function(){return _0x586eb4;};return _0x17dd();}import{execFile as _0x1a0e1f}from'node:child_process';import{promisify as _0x104704}from'node:util';const t=_0x104704(_0x1a0e1f);export async function which(_0x4a7a4b){const _0x1100c1=_0x2dbb,_0x21bcbe={'xywli':function(_0x128e3c,_0x291bd5,_0x21d9d8){return _0x128e3c(_0x291bd5,_0x21d9d8);},'Yeasg':'which'};try{return await _0x21bcbe[_0x1100c1(0x88)](t,_0x21bcbe['Yeasg'],[_0x4a7a4b]),!0x0;}catch{return!0x1;}}
@@ -210,6 +210,51 @@ ensure_runtime_dependencies_installed() {
210
210
  exit 1
211
211
  }
212
212
 
213
+ get_log_line_count() {
214
+ if [ -f "$LOG_FILE" ]; then
215
+ wc -l < "$LOG_FILE"
216
+ return
217
+ fi
218
+
219
+ echo "0"
220
+ }
221
+
222
+ print_startup_banner_from_log() {
223
+ local start_line="$1"
224
+ local banner=""
225
+
226
+ for _ in $(seq 1 50); do
227
+ if [ -f "$LOG_FILE" ]; then
228
+ banner=$(sed -n "${start_line},\$p" "$LOG_FILE" | awk '
229
+ BEGIN { capture = 0; banner = "" }
230
+ /^┌/ {
231
+ if (capture == 0) {
232
+ capture = 1
233
+ banner = $0 ORS
234
+ next
235
+ }
236
+ }
237
+ capture == 1 {
238
+ banner = banner $0 ORS
239
+ if ($0 ~ /^└/) {
240
+ printf "%s", banner
241
+ exit
242
+ }
243
+ }
244
+ ')
245
+ if [ -n "$banner" ]; then
246
+ echo ""
247
+ printf "%s" "$banner"
248
+ echo ""
249
+ return 0
250
+ fi
251
+ fi
252
+ sleep 0.2
253
+ done
254
+
255
+ return 1
256
+ }
257
+
213
258
  get_gateway_port() {
214
259
  local config_port
215
260
  local env_port
@@ -272,6 +317,14 @@ show_port_in_use_error() {
272
317
  echo " 먼저 종료하려면: $0 stop"
273
318
  }
274
319
 
320
+ show_unmanaged_port_message() {
321
+ local port
322
+ port=$(get_gateway_port)
323
+
324
+ echo "ℹ️ 포트 $port 를 사용하는 프로세스가 있지만, 현재 프로젝트의 PID 파일로 시작한 서버가 아닙니다."
325
+ echo " 안전을 위해 포트 일치만으로 종료하지 않습니다."
326
+ }
327
+
275
328
  get_runtime_entry() {
276
329
  if [ -f "$PROJECT_ROOT/dist/system.js" ]; then
277
330
  echo "$PROJECT_ROOT/dist/system.js"
@@ -359,13 +412,14 @@ fi
359
412
 
360
413
  case "$1" in
361
414
  start)
362
- local_runtime_entry=""
415
+ runtime_entry=""
416
+ log_start_line=""
363
417
  ensure_port_available
364
418
  ensure_env_ready
365
419
  ensure_runtime_dependencies_installed
366
420
  verify_entity_server_credentials
367
421
 
368
- if ! local_runtime_entry="$(get_runtime_entry)"; then
422
+ if ! runtime_entry="$(get_runtime_entry)"; then
369
423
  echo "❌ 실행할 system.js를 찾지 못했습니다."
370
424
  echo " dist/system.js 또는 system.js 중 하나가 있어야 합니다."
371
425
  echo " 패키지가 손상됐다면 ./scripts/update-server.sh latest 를 다시 실행하세요."
@@ -384,12 +438,14 @@ case "$1" in
384
438
  fi
385
439
 
386
440
  mkdir -p "$(dirname "$LOG_FILE")"
387
- nohup node --import tsx/esm "$local_runtime_entry" >> "$LOG_FILE" 2>&1 &
441
+ log_start_line=$(( $(get_log_line_count) + 1 ))
442
+ nohup node --import tsx/esm "$runtime_entry" >> "$LOG_FILE" 2>&1 &
388
443
  echo $! > "$PID_FILE"
389
444
  PID=$(cat "$PID_FILE")
390
445
 
391
446
  sleep 0.3
392
447
  if kill -0 "$PID" 2>/dev/null; then
448
+ print_startup_banner_from_log "$log_start_line" || true
393
449
  echo "✅ Entity App Server가 백그라운드에서 시작되었습니다 (pid: $PID)"
394
450
  echo "상태: ./run.sh status"
395
451
  echo "중지: ./run.sh stop"
@@ -413,18 +469,14 @@ case "$1" in
413
469
  rm -f "$PID_FILE"
414
470
  fi
415
471
 
416
- mapfile -t PORT_PIDS < <(find_gateway_pids)
417
- for PID in "${PORT_PIDS[@]}"; do
418
- if stop_pid "$PID"; then
419
- echo " ✓ Entity App Server 종료됨 (port PID $PID)"
420
- stopped_any=true
421
- fi
422
- done
423
-
424
472
  rm -f "$PID_FILE"
425
473
 
426
474
  if [ "$stopped_any" = false ]; then
427
- echo " 실행 중인 Entity App Server 프로세스를 찾지 못했습니다."
475
+ if [ -n "$(find_gateway_pids | head -n 1)" ]; then
476
+ show_unmanaged_port_message
477
+ else
478
+ echo " 실행 중인 Entity App Server 프로세스를 찾지 못했습니다."
479
+ fi
428
480
  fi
429
481
  ;;
430
482
 
@@ -310,6 +310,18 @@ fs.writeFileSync(targetPath, `${JSON.stringify(next, null, 2)}\n`);
310
310
  NODE
311
311
  }
312
312
 
313
+ repair_known_script_regressions() {
314
+ local run_script="$PROJECT_ROOT/scripts/run.sh"
315
+
316
+ [ -f "$run_script" ] || return 0
317
+
318
+ if grep -q 'local_runtime_entry=""' "$run_script"; then
319
+ perl -0pi -e 's/local_runtime_entry=""/runtime_entry=""/g; s/local log_start_line=""/log_start_line=""/g; s/local_runtime_entry="\$\(get_runtime_entry\)"/runtime_entry="\$\(get_runtime_entry\)"/g; s/\$local_runtime_entry/\$runtime_entry/g' "$run_script"
320
+ chmod +x "$run_script"
321
+ echo " ↺ scripts/run.sh 회귀 보정 적용"
322
+ fi
323
+ }
324
+
313
325
  install_version() {
314
326
  local target_ver
315
327
  target_ver=$(normalize_version "$1")
@@ -370,6 +382,8 @@ install_version() {
370
382
  echo " ✔ docs/"
371
383
  fi
372
384
 
385
+ repair_known_script_regressions
386
+
373
387
  sync_package_json "$src_root/package.json"
374
388
  if [ -f "$PROJECT_ROOT/package.json" ]; then
375
389
  echo ""