cozis
|
f34b542582
|
network: track socket addresses
|
2026-06-20 09:53:13 +02:00 |
|
cozis
|
3f96898f54
|
io_interface: implement fileSetLength
|
2026-06-20 09:46:35 +02:00 |
|
cozis
|
edecb61ba4
|
node: add setFileLength
|
2026-06-20 09:46:14 +02:00 |
|
cozis
|
13f001e317
|
file_system: add setFileLength
|
2026-06-20 09:45:59 +02:00 |
|
cozis
|
2c5afbd283
|
sometimes: don't report reachableSometimes in the N/M form
|
2026-06-19 17:03:55 +02:00 |
|
cozis
|
93b4efbb2f
|
node: add injection of partial reads and writes
|
2026-06-19 16:57:47 +02:00 |
|
cozis
|
6d27a5fcec
|
examples: add example that tests whether fault injection reaches interesting branches
|
2026-06-19 16:57:19 +02:00 |
|
cozis
|
c37d29977d
|
examples: add fault coverage example
|
2026-06-19 15:52:03 +02:00 |
|
cozis
|
306aa88f00
|
simulator: add network partition fault injection
|
2026-06-19 15:51:53 +02:00 |
|
cozis
|
e8ba94b418
|
partition_policy: add partition shape policy
|
2026-06-19 15:51:38 +02:00 |
|
cozis
|
0b792274e3
|
network: honor partitions in connect and send
|
2026-06-19 15:51:26 +02:00 |
|
cozis
|
50dea84f1d
|
partition: add broken-link tracking
|
2026-06-19 15:51:13 +02:00 |
|
cozis
|
08518e15ad
|
io_interface: implement dirRename
|
2026-06-19 13:41:15 +02:00 |
|
cozis
|
5b1e8c5d24
|
node: add rename
|
2026-06-19 13:41:04 +02:00 |
|
cozis
|
89e5fff8a4
|
file_system: add rename
|
2026-06-19 13:40:50 +02:00 |
|
cozis
|
3a0eab16a7
|
examples: add example for sometimes assertions
|
2026-06-19 13:27:03 +02:00 |
|
cozis
|
fa09d425a0
|
examples: minor cleanup
|
2026-06-19 13:26:47 +02:00 |
|
cozis
|
e98630cafd
|
simulator: expose reachableSometimes via Simulator
|
2026-06-19 13:26:24 +02:00 |
|
cozis
|
d3def64bba
|
sometimes: implement reachableSometimes and build a list of sometimes branches at compile-time
|
2026-06-19 13:25:59 +02:00 |
|
cozis
|
9f867c71ee
|
examples: explicitly dump sometimes assertions report in example.zig
|
2026-06-19 13:02:16 +02:00 |
|
cozis
|
53aa509153
|
simulator: expose sometimes assertions via the simulator object
|
2026-06-19 13:01:04 +02:00 |
|
cozis
|
9e56a63360
|
sometimes: implement registry of sometimes assertions
|
2026-06-19 13:00:44 +02:00 |
|
cozis
|
43a24f4771
|
readme: update README.md and add DST.md
|
2026-06-09 15:38:35 +02:00 |
|
cozis
|
890d16fa7b
|
readme: add timeline diagram image
|
2026-06-08 12:44:20 +02:00 |
|
cozis
|
b7d748d081
|
misc: ignore .html and .txt files
|
2026-06-08 12:36:25 +02:00 |
|
cozis
|
6133b7cb60
|
build: add timeline_html, timeline_ascii, strace commands to build.zig to easily generate diagrams from a trace
|
2026-06-08 12:36:09 +02:00 |
|
cozis
|
720d20d3e0
|
diagram: add program to generate various visual representations of the simulation trace
|
2026-06-08 12:35:34 +02:00 |
|
cozis
|
b49025bc39
|
examples: log output of tcp_ping_pong to simulation.log
|
2026-06-08 11:33:43 +02:00 |
|
cozis
|
6b0ba04058
|
misc: ignore .log files
|
2026-06-08 11:33:13 +02:00 |
|
cozis
|
7423d8fad7
|
trace: minor fix
|
2026-06-08 11:31:35 +02:00 |
|
cozis
|
aa9c3b7274
|
trace: write traced events to disk
|
2026-06-08 11:28:57 +02:00 |
|
cozis
|
a8ac2773f9
|
simulator: add setTraceOutputFile to enable tracing and specify the output file
|
2026-06-08 11:00:49 +02:00 |
|
cozis
|
4b2c103e71
|
trace: add backing file handle
|
2026-06-08 10:59:31 +02:00 |
|
cozis
|
57527c270e
|
scheduler: call taskState
|
2026-06-08 10:46:47 +02:00 |
|
cozis
|
53ad5b297a
|
trace: add taskState
|
2026-06-08 10:45:30 +02:00 |
|
cozis
|
3b5e7f54d4
|
scheduler: call timeAdvanced
|
2026-06-08 10:41:52 +02:00 |
|
cozis
|
7c642e384e
|
trace: add timeAdvanced
|
2026-06-08 10:40:56 +02:00 |
|
cozis
|
d7f9eb2a51
|
scheduler: call taskSpawned and taskRemoved
|
2026-06-08 10:39:48 +02:00 |
|
cozis
|
a3dbb48718
|
trace: add taskSpawned and taskRemoved
|
2026-06-08 10:39:34 +02:00 |
|
cozis
|
34faa08f68
|
scheduler: call enterTask/leaveTask when context switching
|
2026-06-08 10:37:17 +02:00 |
|
cozis
|
f09afaa5a8
|
trace: add enterTask and leaveTask
|
2026-06-08 10:35:17 +02:00 |
|
cozis
|
ea3da4004d
|
node: call tracing functions when doing I/O
|
2026-06-08 10:30:19 +02:00 |
|
cozis
|
7c7ef6db6f
|
trace: add dummy implementation of the tracing object
|
2026-06-08 10:23:46 +02:00 |
|
cozis
|
3676ceb9c4
|
node: use random delays instead of static ones when simulating I/O delay
|
2026-06-08 10:19:16 +02:00 |
|
cozis
|
d77714e11a
|
scheduler: pick ready tasks randomly
|
2026-06-08 10:12:41 +02:00 |
|
cozis
|
bad44c36f1
|
simulator: Add PRNG field
|
2026-06-08 10:11:00 +02:00 |
|
cozis
|
92f301ea40
|
node: add local_time and increment it by a fixed amount any time a task runs
|
2026-06-08 10:05:52 +02:00 |
|
cozis
|
4e3cae8cc8
|
simulator: remove tests
|
2026-06-08 10:02:24 +02:00 |
|
cozis
|
36752f6d0e
|
io_interface: implement fileSync mock
|
2026-06-04 19:09:02 +02:00 |
|
cozis
|
9769188fc9
|
file_system: expose syncFile from FileSystem
|
2026-06-04 19:08:28 +02:00 |
|
cozis
|
e9884fbe85
|
file_system: add no-op syncFile
|
2026-06-04 19:06:33 +02:00 |
|
cozis
|
69b9ddfc72
|
node: make accept blocking
|
2026-06-04 18:20:14 +02:00 |
|
cozis
|
ec0659e921
|
network: allow send on not yet connected sockets
|
2026-06-04 18:15:09 +02:00 |
|
cozis
|
0a8123b158
|
io_interface: propagate cancellation errors
|
2026-06-04 18:03:01 +02:00 |
|
cozis
|
140a64d609
|
io_interface: implement recancel and checkCancel mocks
|
2026-06-04 17:59:49 +02:00 |
|
cozis
|
64c229afb4
|
io_interface: drain canceled groups
|
2026-06-04 17:57:41 +02:00 |
|
cozis
|
e1fc8c6125
|
io_interface: actually cancel tasks when calling the groupCancel mock
|
2026-06-04 17:54:39 +02:00 |
|
cozis
|
d1ee873388
|
io_interface: properly call futexWaitUncancelable from the mock
|
2026-06-04 17:53:02 +02:00 |
|
cozis
|
20007f3c6b
|
node: expose futexWaitUncancelable from the scheduler
|
2026-06-04 17:52:29 +02:00 |
|
cozis
|
4f35537e3d
|
scheduler: add futexWaitUncancelable
|
2026-06-04 17:51:58 +02:00 |
|
cozis
|
f90d4d883d
|
scheduler: wake canceled tasks
|
2026-06-04 17:49:53 +02:00 |
|
cozis
|
fe1acaee8c
|
scheduler: make task wait cancellable
|
2026-06-04 17:47:05 +02:00 |
|
cozis
|
445fd2fd7f
|
scheduler: Make sleep cancellable
|
2026-06-04 17:44:02 +02:00 |
|
cozis
|
1c1cc1041a
|
node: Expose recancel and checkCancel at the node layer
|
2026-06-04 17:36:21 +02:00 |
|
cozis
|
a01858aede
|
scheduler: Add recancel and checkCancel to help manage cancellation state
|
2026-06-04 17:36:01 +02:00 |
|
cozis
|
b57cb8e87b
|
node: Expose .cancel at the node layer
|
2026-06-04 17:32:38 +02:00 |
|
cozis
|
144de52f27
|
scheduler: Add cancellation flag to Task and .cancel method to set it from the parent
|
2026-06-04 17:31:15 +02:00 |
|
cozis
|
cf6c78577b
|
io_interface: Add mocks for futexWait, futexWaitUncancelable, futexWake
|
2026-06-04 13:44:48 +02:00 |
|
cozis
|
3b3fc75f1b
|
node: Expose futexes at the node level
|
2026-06-04 13:43:15 +02:00 |
|
cozis
|
cde2061b3c
|
scheduler: Implement futexes at the scheduler level
|
2026-06-04 13:41:47 +02:00 |
|
cozis
|
3bdcce3ade
|
io_interface: First mock of the Group-related methods
|
2026-06-04 13:38:35 +02:00 |
|
cozis
|
ce51e82363
|
scheduler: Minor bug fix
|
2026-06-04 13:38:03 +02:00 |
|
cozis
|
f61bb93a22
|
node: Expose the scheduler's sub-task APIs through Node
|
2026-06-04 13:34:36 +02:00 |
|
cozis
|
1f5e185bec
|
scheduler: Implement spawning of nested tasks
|
2026-06-04 13:32:12 +02:00 |
|
cozis
|
aec8ff5154
|
io_interface: Modify netWrite to only block while reading into the first slice
|
2026-06-02 13:54:33 +02:00 |
|
cozis
|
38ae508c49
|
node: Add boolean argument to readSocket to switch between blocking and non-blocking mode
|
2026-06-02 13:49:22 +02:00 |
|
cozis
|
1250375063
|
network: Implement isConnected to determine whether a connection socket is connected or not
|
2026-06-02 13:46:41 +02:00 |
|
cozis
|
227cf5c03e
|
scheduler: Add canary bytes to detect stack overflows
|
2026-06-02 12:10:19 +02:00 |
|
cozis
|
c922ed62e1
|
file_system: Improve output of the dump function
|
2026-06-02 11:43:15 +02:00 |
|
cozis
|
f6185054b5
|
io_interface: Implement eager execution in the groupAsync callback
|
2026-06-02 11:33:53 +02:00 |
|
cozis
|
e046fcd45e
|
build: Add select_group_async.zig to build.zig
|
2026-06-01 15:12:31 +02:00 |
|
cozis
|
50297eff21
|
examples: Add select_group_async.zig to trigger the IO groupAsync callback
|
2026-06-01 15:12:14 +02:00 |
|
cozis
|
63d81170bb
|
build: Add tcp_ping_pong.zig to build.zig
|
2026-05-30 15:59:07 +02:00 |
|
cozis
|
d626ed1787
|
examples: Add tcp_ping_pong.zig to test various networking I/O functions
|
2026-05-30 15:58:44 +02:00 |
|
cozis
|
02e99b50d4
|
io_interface: Mock netListenIp, netAccept, netConnectIp, netSend, netRead, netWrite
|
2026-05-30 15:50:05 +02:00 |
|
cozis
|
f524c94d8e
|
network: Bug fixes
|
2026-05-23 19:26:16 +02:00 |
|
cozis
|
2e543db418
|
io_interface: Mock fileWritePositional, fileSeekBy, and fileSeekTo
|
2026-05-23 18:59:21 +02:00 |
|
cozis
|
0b5001e587
|
node: Expose seekFileTo and seekFileBy
|
2026-05-23 18:58:26 +02:00 |
|
cozis
|
75d4d84d31
|
file_system: Implement seekFileTo and seekFileBy
|
2026-05-23 18:57:34 +02:00 |
|
cozis
|
1902c3eb99
|
io_interface: Add mock of sleep
|
2026-05-23 18:48:14 +02:00 |
|
cozis
|
43ed0cfc9e
|
node: Implement Node.sleep via Scheduler.sleep
|
2026-05-23 18:47:58 +02:00 |
|
cozis
|
d51503065f
|
build: Add sleep.zig to build.zig
|
2026-05-23 18:47:25 +02:00 |
|
cozis
|
f8230f9856
|
examples: Add program that uses Io.sleep
|
2026-05-23 18:47:00 +02:00 |
|
cozis
|
b090bca3c7
|
io_interface: Implement mock for dirRead
|
2026-05-23 18:32:38 +02:00 |
|
cozis
|
11cc280043
|
node: Expose resetDir and readDir from FileSystem
|
2026-05-23 18:32:07 +02:00 |
|
cozis
|
05bd6d0d67
|
file_system: Implement resetDir to reset the state of an OpenDir
|
2026-05-23 18:31:07 +02:00 |
|
cozis
|
fd4648123d
|
build: Add list_dir.zig to build.zig
|
2026-05-23 18:30:21 +02:00 |
|
cozis
|
f935d15b78
|
examples: Add example that perform directory listing
|
2026-05-23 18:30:00 +02:00 |
|
cozis
|
f497eaf131
|
io_interface: Implement mocks for dirDeleteFile and dirDeleteDir
|
2026-05-23 18:18:48 +02:00 |
|
cozis
|
6280a9fa3a
|
node: Expose deleteFile and deleteDir from the FileSystem object
|
2026-05-23 18:18:03 +02:00 |
|