Commit 1ce6c30
committed
fix: path-scoped cycle detection; SafetyGuard list-depth bound (#33)
- _arguments_depth/argumentsDepth: enter/exit bookkeeping so only ancestor back-references are cycles; acyclic shared (DAG) references are allowed, true cycles still fail closed (Greptile P1)
- SafetyGuard._nested_content: increment depth for list children so list-only nesting is bounded; deep or cyclic lists return a decision instead of RecursionError (T-Rex P1)
Tests: 214 passed; taint 0; black clean; tsc clean1 parent aa02b8f commit 1ce6c30
4 files changed
Lines changed: 78 additions & 18 deletions
File tree
- npm/src
- src/qwed_open_responses/guards
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
370 | 370 | | |
371 | 371 | | |
372 | 372 | | |
373 | | - | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
374 | 376 | | |
375 | 377 | | |
376 | 378 | | |
377 | 379 | | |
378 | | - | |
379 | | - | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
380 | 383 | | |
381 | | - | |
382 | | - | |
383 | | - | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
384 | 394 | | |
| 395 | + | |
385 | 396 | | |
386 | 397 | | |
387 | 398 | | |
388 | 399 | | |
389 | 400 | | |
390 | | - | |
391 | | - | |
392 | | - | |
| 401 | + | |
393 | 402 | | |
394 | 403 | | |
395 | 404 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
254 | 254 | | |
255 | 255 | | |
256 | 256 | | |
257 | | - | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
258 | 261 | | |
259 | 262 | | |
260 | 263 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
364 | 364 | | |
365 | 365 | | |
366 | 366 | | |
367 | | - | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
368 | 371 | | |
369 | 372 | | |
370 | 373 | | |
371 | 374 | | |
372 | | - | |
373 | | - | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
374 | 379 | | |
375 | | - | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
376 | 387 | | |
377 | 388 | | |
| 389 | + | |
378 | 390 | | |
379 | 391 | | |
380 | | - | |
381 | | - | |
382 | | - | |
383 | | - | |
| 392 | + | |
384 | 393 | | |
385 | 394 | | |
386 | 395 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
527 | 527 | | |
528 | 528 | | |
529 | 529 | | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
| 542 | + | |
| 543 | + | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
| 547 | + | |
| 548 | + | |
| 549 | + | |
| 550 | + | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
| 554 | + | |
| 555 | + | |
| 556 | + | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
| 561 | + | |
| 562 | + | |
| 563 | + | |
| 564 | + | |
| 565 | + | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
530 | 569 | | |
531 | 570 | | |
532 | 571 | | |
| |||
0 commit comments