beast-agent 2.76.0 → 2.76.1

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 (2) hide show
  1. package/package.json +1 -1
  2. package/src/main.js +22 -7
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "beast-agent",
3
3
  "productName": "Beast Agent",
4
- "version": "2.76.0",
4
+ "version": "2.76.1",
5
5
  "description": "Ultra-fast local agent shell for Windows.",
6
6
  "author": "algokodcom (AlgoKod)",
7
7
  "license": "MIT",
package/src/main.js CHANGED
@@ -13818,13 +13818,28 @@ function finParseInstructions(text) {
13818
13818
  if (m) out.lotMult = finInstrNum(m[1] || m[2] || m[3]);
13819
13819
  if (out.lotMult != null) out.lotMult = Math.max(1, Math.min(5, out.lotMult));
13820
13820
  if (/martingale|mart[ıi]ngale/.test(low)) {
13821
- /* Faktör serbest: "martingale 1.2", "martingale x1.20", "martingale 1,2",
13822
- "martingale çarpanı 1.2", "1.2x martingale", "1.2 kat martingale".
13823
- Yalnız bilinen bağlaçlardan sonra sayı okunur — "martingale kullan, 1R..."
13824
- gibi metinden yanlış sayı kapmaz. Varsayılan ×2 (1.01–5 arası geçerli). */
13825
- m = low.match(/(?:mart[ıi]ngale\s*(?:x|×|çarpan[ıi]?|carpan[ıi]?|oran[ıi]?|fakt[öo]r[üu]?|kat[ıi]?)?\s*(\d+(?:[.,]\d+)?))|(?:(\d+(?:[.,]\d+)?)\s*(?:x|×|kat[ıi]?)?\s*mart[ıi]ngale)/);
13826
- const mf = m ? finInstrNum(m[1] || m[2]) : null;
13827
- out.martingale = Math.max(1.01, Math.min(5, mf != null && mf > 1 ? mf : 2));
13821
+ /* FAKTÖR SERBEST — doğal yazımların hepsi denenir:
13822
+ "martingale 1.2" "martingale x1.20" "martingale 1,2"
13823
+ "martingale çarpanı 1.2" "1.2x martingale" "1.2 kat martingale"
13824
+ "martingale kullan, 1.2 kat" "martingale kullan (x1.2)" "martingale e 1.2x"
13825
+ Yanlış sayı kapmamak için: "1R de %50" gibi R-yüzdeleri ve 1 ve altı
13826
+ sayılar faktör sayılmaz (varsayılan ×2 kalır). Geçerli aralık 1.01-5. */
13827
+ const pats = [
13828
+ /mart[ıi]ngale\s*(?:x|×|çarpan[ıi]?|carpan[ıi]?|oran[ıi]?|fakt[öo]r[üu]?|kat[ıi]?)?\s*(\d+(?:[.,]\d+)?)(?!\s*r\b)/,
13829
+ /(\d+(?:[.,]\d+)?)\s*(?:x|×|kat[ıi]?)?\s*mart[ıi]ngale/,
13830
+ /mart[ıi]ngale[^0-9%\n]{0,24}?(\d+(?:[.,]\d+)?)\s*(?:x|×|kat[ıi]?)/,
13831
+ /mart[ıi]ngale[^0-9%\n]{0,24}?(\d+[.,]\d+)(?!\s*r\b)/,
13832
+ ];
13833
+ let mf = null;
13834
+ for (const p of pats) {
13835
+ m = low.match(p);
13836
+ const v = m ? finInstrNum(m[1]) : null;
13837
+ if (v != null && v > 1 && v <= 5) {
13838
+ mf = v;
13839
+ break;
13840
+ }
13841
+ }
13842
+ out.martingale = Math.max(1.01, Math.min(5, mf != null ? mf : 2));
13828
13843
  }
13829
13844
  /* kısmi kapatma: "1R'de %50" → atR=1, pct=50; "%50 1R" → aynı; "kısmi %50" → atR=1 */
13830
13845
  m = low.match(/(\d+(?:[.,]\d+)?)\s*r[^%\d]{0,28}%\s*(\d+(?:[.,]\d+)?)/);