mirror of
https://github.com/morluto/rea.git
synced 2026-10-30 19:35:56 +00:00
* feat(process): add owned debugger shutdown lifecycle * feat(reverse): add local inspection commands * feat(gdb): add persistent debugger integration * feat(cutter): add Cutter bridge integration * test(reverse): enforce complete integration coverage * fix(process): preserve debugger shutdown ownership * fix(reverse): retain evidence across interrupted commands * fix(gdb): honor captured provider environment * test(process): cover debugger shutdown retries * fix(reverse): retain evidence for interrupted providers * test(process): cover debugger shutdown retries * fix(reverse): retain evidence for interrupted providers * fix(server): snapshot provider environment at creation * fix(reverse): close review gaps with complete coverage * fix(reverse): address inspection review findings * fix(gdb): bound sessions and retain cleanup ownership * fix(ci): require reverse-tools quality lane * fix(process): unref inherited debugger output pipes * fix(reverse): address remaining PR 1960 findings * fix(gdb): address remaining PR 1961 findings * fix(reverse): account for unrestricted provider execution * fix(process): retain debugger ownership until safe shutdown * fix(process): preserve replacement debugger sessions * fix(reverse): preserve admission and output provenance * fix(process): retain exited debugger until output settles * fix(mcp): bound provider admission and debugger cleanup * fix(reverse): preserve failure provenance and classify E2BIG * fix(gdb): preserve startup cleanup and detach safety * fix(process): retain debugger ownership after detach failure * fix(reverse): preserve mutation and failure provenance * fix(gdb): address debugger review findings * fix(reverse): rebind sessions after external mutation * fix(process): cap debugger output after exit * fix(gdb): protect one-shot detach verification * feat(debugger): add reverse tool coverage gate * test(debugger): cover integrated failure paths * fix(gdb): bound and preserve session observations * fix(gdb): address review regressions * style: format merged integration files * fix(reverse): preserve session and output evidence * refactor(gdb): share repeated test and partial result setup * fix(gdb): invalidate TTY proof for Python aliases * fix(reverse): retain failure output byte counts * test(process): synchronize late debugger output * fix(gdb): invalidate TTY proof for wrapped commands * fix(gdb): recognize wit command abbreviation * test(reverse): wait for cancelled descendant readiness * test(reverse): bound descendant cancellation cleanup * style(reverse): format integration tests and adapters * style: format reverse engineering integration files * test(reverse): remove duplicate environment harness * test(gdb): share session startup assertions * fix(gdb): invalidate output proof for command abbreviations * test(reverse): share composition edge case scenarios * fix(ci): recognize verification and mutation tool entries * test(rizin): cover successful fake inferior detach * test(cli): align full output failure envelope * test(cli): isolate reverse command lifecycle service * test(process): share debugger output fixture setup * fix(binary): preserve high-bit Windows signature bytes * style(binary): format Windows signature parser * test(mcp): preserve call coverage in unchanged comparison * fix(ci): include reverse tools Vitest configs in lint cache * fix(mcp): preserve target content on delivery errors * ci: align duplication ceiling with expanded suite * test(reverse): allow signal admission mutants * fix(reverse): bound retained cleanup failures to process owners * fix(test): replace drifting mutation ranges with owned selectors * fix(reverse): admit persistent commands and retain cleanup ownership * fix(cutter): recover timed-out commands from exact receipts * fix(cutter): reject unsupported bridge request kinds * fix(ci): repair client format and shared verification fixtures * fix(native): preserve debugger cleanup ownership and bridge authentication * test(native): retain diagnostics without perfect coverage requirements * chore(licenses): refresh locked dependency inventory and notices * fix(test): exclude transient command locks from mutation sandboxes * fix(gdb): admit only platforms with safe detach verification * fix(cutter): retain bounded completion receipts until acknowledgement * fix(cutter): acknowledge commands rejected before UI dispatch * test(reverse): fail cancellation checks before fixture teardown * test(gdb): clean up the retained broken-stdin fixture owner * docs(test): clarify focused provider verification scope * fix(rizin): retain close cleanup failures * fix(gdb): wait for inferior stop and bound MI buffering * fix(cutter): retain failed receipt acknowledgements * fix(rizin): return retained session identity on rebind failure * fix(gdb): preserve startup cancellation and lossy status * fix(rizin): retain launch provenance and assemble frames once * fix(cutter): recover receipts across callers and bound discovery * docs: describe debugger evidence and bridge recovery * fix(process): keep cleanup incomplete while writers remain Stopping a debugger no longer reports success when inherited output streams stay open, so BinarySession cannot reopen a binary a child is still changing. Concurrent Cutter cleanup retries share one receipt acknowledgement instead of treating a consumed receipt as failure. * fix(debuggers): recover cleanup with captured process identities * fix(analysis): retire sessions after unrestricted commands * fix(cli): preserve completed evidence after cleanup recovery * fix(cutter): bound frame collection and coalesce cleanup * fix(windows): resolve selected provider paths absolutely * fix(gdb): report decoding loss in failed startup evidence * fix(rizin): scope decoding loss to collected command frames * test(mcp): cover snapshot retirement in reverse tools CI --------- Co-authored-by: Daniel Gonçalves Araujo <47118053+dandgabr@users.noreply.github.com> Co-authored-by: REA Maintainers <noreply@github.com> Co-authored-by: OpenAI Codex <codex@users.noreply.github.com> Co-authored-by: Cursor Agent <cursoragent@cursor.com>
276 lines
5.5 KiB
Plaintext
276 lines
5.5 KiB
Plaintext
/owned/fixture:
|
|
Mach header
|
|
magic cputype cpusubtype caps filetype ncmds sizeofcmds flags
|
|
0xfeedfacf 16777228 0 0x00 2 23 1632 0x00200085
|
|
Load command 0
|
|
cmd LC_SEGMENT_64
|
|
cmdsize 72
|
|
segname __PAGEZERO
|
|
vmaddr 0x0000000000000000
|
|
vmsize 0x0000000100000000
|
|
fileoff 0
|
|
filesize 0
|
|
maxprot 0x00000000
|
|
initprot 0x00000000
|
|
nsects 0
|
|
flags 0x0
|
|
Load command 1
|
|
cmd LC_SEGMENT_64
|
|
cmdsize 552
|
|
segname __TEXT
|
|
vmaddr 0x0000000100000000
|
|
vmsize 0x0000000000004000
|
|
fileoff 0
|
|
filesize 16384
|
|
maxprot 0x00000005
|
|
initprot 0x00000005
|
|
nsects 6
|
|
flags 0x0
|
|
Section
|
|
sectname __text
|
|
segname __TEXT
|
|
addr 0x00000001000006b0
|
|
size 0x0000000000000080
|
|
offset 1712
|
|
align 2^2 (4)
|
|
reloff 0
|
|
nreloc 0
|
|
flags 0x80000400
|
|
reserved1 0
|
|
reserved2 0
|
|
Section
|
|
sectname __stubs
|
|
segname __TEXT
|
|
addr 0x0000000100000730
|
|
size 0x0000000000000024
|
|
offset 1840
|
|
align 2^2 (4)
|
|
reloff 0
|
|
nreloc 0
|
|
flags 0x80000408
|
|
reserved1 0 (index into indirect symbol table)
|
|
reserved2 12 (size of stubs)
|
|
Section
|
|
sectname __delay_stubs
|
|
segname __TEXT
|
|
addr 0x0000000100000754
|
|
size 0x0000000000000028
|
|
offset 1876
|
|
align 2^2 (4)
|
|
reloff 0
|
|
nreloc 0
|
|
flags 0x80000400
|
|
reserved1 0
|
|
reserved2 0
|
|
Section
|
|
sectname __delay_helper
|
|
segname __TEXT
|
|
addr 0x000000010000077c
|
|
size 0x00000000000000a0
|
|
offset 1916
|
|
align 2^2 (4)
|
|
reloff 0
|
|
nreloc 0
|
|
flags 0x80000400
|
|
reserved1 0
|
|
reserved2 0
|
|
Section
|
|
sectname __cstring
|
|
segname __TEXT
|
|
addr 0x000000010000081c
|
|
size 0x0000000000000037
|
|
offset 2076
|
|
align 2^0 (1)
|
|
reloff 0
|
|
nreloc 0
|
|
flags 0x00000002
|
|
reserved1 0
|
|
reserved2 0
|
|
Section
|
|
sectname __unwind_info
|
|
segname __TEXT
|
|
addr 0x0000000100000854
|
|
size 0x0000000000000058
|
|
offset 2132
|
|
align 2^2 (4)
|
|
reloff 0
|
|
nreloc 0
|
|
flags 0x00000000
|
|
reserved1 0
|
|
reserved2 0
|
|
Load command 2
|
|
cmd LC_SEGMENT_64
|
|
cmdsize 152
|
|
segname __DATA_CONST
|
|
vmaddr 0x0000000100004000
|
|
vmsize 0x0000000000004000
|
|
fileoff 16384
|
|
filesize 16384
|
|
maxprot 0x00000003
|
|
initprot 0x00000003
|
|
nsects 1
|
|
flags 0x10
|
|
Section
|
|
sectname __got
|
|
segname __DATA_CONST
|
|
addr 0x0000000100004000
|
|
size 0x0000000000000028
|
|
offset 16384
|
|
align 2^3 (8)
|
|
reloff 0
|
|
nreloc 0
|
|
flags 0x00000006
|
|
reserved1 3 (index into indirect symbol table)
|
|
reserved2 0
|
|
Load command 3
|
|
cmd LC_SEGMENT_64
|
|
cmdsize 152
|
|
segname __DATA
|
|
vmaddr 0x0000000100008000
|
|
vmsize 0x0000000000004000
|
|
fileoff 32768
|
|
filesize 16384
|
|
maxprot 0x00000003
|
|
initprot 0x00000003
|
|
nsects 1
|
|
flags 0x0
|
|
Section
|
|
sectname __data
|
|
segname __DATA
|
|
addr 0x0000000100008000
|
|
size 0x0000000000000004
|
|
offset 32768
|
|
align 2^2 (4)
|
|
reloff 0
|
|
nreloc 0
|
|
flags 0x00000000
|
|
reserved1 0
|
|
reserved2 0
|
|
Load command 4
|
|
cmd LC_SEGMENT_64
|
|
cmdsize 72
|
|
segname __LINKEDIT
|
|
vmaddr 0x000000010000c000
|
|
vmsize 0x0000000000008000
|
|
fileoff 49152
|
|
filesize 19280
|
|
maxprot 0x00000001
|
|
initprot 0x00000001
|
|
nsects 0
|
|
flags 0x0
|
|
Load command 5
|
|
cmd LC_DYLD_CHAINED_FIXUPS
|
|
cmdsize 16
|
|
dataoff 49152
|
|
datasize 160
|
|
Load command 6
|
|
cmd LC_DYLD_EXPORTS_TRIE
|
|
cmdsize 16
|
|
dataoff 49312
|
|
datasize 48
|
|
Load command 7
|
|
cmd LC_SYMTAB
|
|
cmdsize 24
|
|
symoff 49368
|
|
nsyms 10
|
|
stroff 49560
|
|
strsize 176
|
|
Load command 8
|
|
cmd LC_DYSYMTAB
|
|
cmdsize 80
|
|
ilocalsym 0
|
|
nlocalsym 3
|
|
iextdefsym 3
|
|
nextdefsym 2
|
|
iundefsym 5
|
|
nundefsym 5
|
|
tocoff 0
|
|
ntoc 0
|
|
modtaboff 0
|
|
nmodtab 0
|
|
extrefsymoff 0
|
|
nextrefsyms 0
|
|
indirectsymoff 49528
|
|
nindirectsyms 8
|
|
extreloff 0
|
|
nextrel 0
|
|
locreloff 0
|
|
nlocrel 0
|
|
Load command 9
|
|
cmd LC_LOAD_DYLINKER
|
|
cmdsize 32
|
|
name /usr/lib/dyld (offset 12)
|
|
Load command 10
|
|
cmd LC_UUID
|
|
cmdsize 24
|
|
uuid 2F026098-89DD-47C5-A6E4-7C567C2ACD30
|
|
Load command 11
|
|
cmd LC_BUILD_VERSION
|
|
cmdsize 32
|
|
platform 1
|
|
minos 15.0
|
|
sdk 15.5
|
|
ntools 1
|
|
tool 3
|
|
version 1167.5
|
|
Load command 12
|
|
cmd LC_SOURCE_VERSION
|
|
cmdsize 16
|
|
version 0.0
|
|
Load command 13
|
|
cmd LC_MAIN
|
|
cmdsize 24
|
|
entryoff 1712
|
|
stacksize 0
|
|
Load command 14
|
|
cmd LC_LOAD_DYLIB
|
|
cmdsize 64
|
|
name @rpath/Core.framework/Versions/A/Core (offset 24)
|
|
time stamp 2 Thu Jan 1 00:00:02 1970
|
|
current version 0.0.0
|
|
compatibility version 0.0.0
|
|
Load command 15
|
|
cmd LC_LOAD_WEAK_DYLIB
|
|
cmdsize 48
|
|
name @rpath/libgone.dylib (offset 24)
|
|
time stamp 2 Thu Jan 1 00:00:02 1970
|
|
current version 0.0.0
|
|
compatibility version 0.0.0
|
|
Load command 16
|
|
cmd LC_LOAD_DYLIB
|
|
cmdsize 56
|
|
name @rpath/libdelay.dylib (offset 28)
|
|
options delay-init
|
|
current version 0.0.0
|
|
compatibility version 1.0.0
|
|
Load command 17
|
|
cmd LC_LOAD_DYLIB
|
|
cmdsize 56
|
|
name /usr/lib/libSystem.B.dylib (offset 24)
|
|
time stamp 2 Thu Jan 1 00:00:02 1970
|
|
current version 1351.0.0
|
|
compatibility version 1.0.0
|
|
Load command 18
|
|
cmd LC_RPATH
|
|
cmdsize 48
|
|
path @executable_path/../Overrides (offset 12)
|
|
Load command 19
|
|
cmd LC_RPATH
|
|
cmdsize 48
|
|
path @executable_path/../Frameworks (offset 12)
|
|
Load command 20
|
|
cmd LC_FUNCTION_STARTS
|
|
cmdsize 16
|
|
dataoff 49360
|
|
datasize 8
|
|
Load command 21
|
|
cmd LC_DATA_IN_CODE
|
|
cmdsize 16
|
|
dataoff 49368
|
|
datasize 0
|
|
Load command 22
|
|
cmd LC_CODE_SIGNATURE
|
|
cmdsize 16
|
|
dataoff 49744
|
|
datasize 18688
|