Dust and Stars - 1992 | Chapter 288 | Event Triggers and Silent Polling | English
The clatter of the keyboard did not stop. Lin Chen shifted his weight off his left foot and braced the heel of his right foot agai
Chapter 288: Event Triggers and Silent Polling
The clatter of the keyboard did not stop. Lin Chen shifted his weight off his left foot and braced the heel of his right foot against the crossbar of the chair, letting the muscles at the back of his calf loosen slightly. Lines of code kept growing on the screen. The call logic for the inotify module had been broken into three functions: listen for directory changes, capture file-write events, and trigger the cleaning pipeline. He could not rely on scheduled polling. After the old HIS system was upgraded in the early hours, the export directory would stop being generated on the fixed rhythm of "once every two hours" and become asynchronously triggered instead. The interval might stretch to forty minutes, or shrink to five. Polling would either miss data or max out the CPU. Event watching was the only solution, but its tolerance for error was extremely low. Once a file handle was occupied, or a write was interrupted halfway through, the script could deadlock.
Su Man woke up. She rubbed her eyes, saw the log window on the screen, and did not ask about progress. She simply pulled over a chair and sat down. "Any movement from the information department?" she asked. Lin Chen shook his head. "The firewall whitelist still hasn't been approved. We can only rely on the local cache. The script runs inside the sandbox and doesn't touch the intranet. Once the HIS upgrade is done, the information department will lock the old-format export directory, and the new directory will be read-only. Before it gets locked, we have to ingest all the dirty data from the transition period." He brought up the terminal and typed sudo tail -f /var/log/syslog. The hum of the fan sounded especially clear in the quiet room. The dull ache in his left knee began spreading toward his ankle, like a rusted steel wire slowly twisting inside the joint. He pressed below his kneecap with his fingers and felt the stiffness in the fascia. He could not stop. He kept writing the exception-handling logic, changed the file-lock timeout from the default thirty seconds to five, and made the script skip the file after three failed retries, logging it to error.log. It was better to miss a few records than let the whole pipeline block.
Su Man handed him a packet of compressed biscuits and half a bottle of mineral water. "Eat something. You haven't closed your eyes since last night." Lin Chen took it and bit down. The biscuit was dry and coarse; crumbs fell into the gaps between the keys, and he brushed them away with the back of his hand. His phone screen lit up again. It was a second message from Zhao Qiming: "The Municipal Health Commission's pilot list will be announced tonight. ZhiNao is in the first batch. If your offline plan can't produce a comparison of clinical efficacy rates, the investment committee will reassess the valuation tomorrow." Lin Chen did not reply. He turned the phone face down on the desk. Valuation, performance bets, liquidation—those words felt very far from the keyboard in front of him. All he knew was that if the script crashed at two in the morning, the two-week trial would end early. The information department would not give them a second chance. The hospital's security red line was one iron plate; capital's logic was another. Caught between them, he could only use code to chisel out a narrow crack.
At eleven forty, Lin Chen dragged the compiled binary into the test directory and started the daemon. The terminal printed [INFO] Watchdog initialized. Monitoring: /data/his_export/legacy. He stared at the screen, keeping his breathing very light. His left foot had gone completely numb. He tried to move his toes, but they did not respond. The spasms had changed from intermittent to constant, as though countless fine needles were pricking under his skin. He slowly straightened his left leg, pressed his heel against the table leg, and used his body weight to pin down the cramping gastrocnemius. A sharp stab of pain shot upward. He clenched his molars and made no sound. Su Man looked at him without speaking. She only raised the air-conditioner temperature by two degrees and nudged the tissue box on the desk half an inch closer to his hand.
At eleven fifty-five, the HIS system's upgrade script began to run. In the terminal, Lin Chen saw the write frequency in the old directory suddenly increase. File extensions changed from .csv to .dat, and the encoding jumped from GBK to UTF-8. The script logs began rolling: [WARN] Encoding mismatch. Fallback to UTF-8 with replacement. [INFO] File lock detected. Retrying... [INFO] Lock released. Processing 1200 records. The data stream was stable. Lin Chen's fingers hovered above the keyboard, ready to cut in manually at any moment. He knew the real test was not format conversion, but field mapping. The old HIS's "diagnosis code" field mixed pinyin abbreviations, numeric identifiers, and full-width symbols, while the new system demanded strict ICD-10 standards. Whether the three-layer dictionary mapping in the script could withstand that chaos depended on whether the eight thousand records he had manually cleaned over the past three months were enough to cover the edge cases. He thought of the way his father used to repair tractors. No drawings, no spare parts—only listening to sounds, feeling temperatures, trial and error, somehow coaxing a scrapped engine into firing again. Technology landing in the real world had never meant writing one perfect line of code; it meant finding the gear that could still turn inside a reality full of patches.
At twelve oh seven, the old directory stopped receiving writes. The new directory appeared. The script switched listening paths automatically. The terminal was quiet for three seconds. Then: [ERROR] Field 'diag_code' contains unparseable sequence: '癫痫-小发作/局灶性'. Lin Chen's pupils tightened. He immediately opened the raw data preview. The new system's export logic had split compound diagnoses with a slash, but the dictionary mapping only recognized complete entries. The script was stuck. The pipeline had stalled. His fingers flew across the keys as he temporarily inserted a regular-expression splitter, separating the content on both sides of the slash and sending each half through dictionary matching. Anything still unmatched went into the manual review queue. It would not block the main flow. Enter. The logs started rolling again. [INFO] Split applied. Matching... [INFO] 1180 records processed. 20 queued for review. He leaned back in the chair and slowly let out a breath. The shirt on his back was soaked through and clinging to his skin. The pain in his left knee ebbed away like a tide, leaving behind a hollow numbness. Su Man handed him a tissue. He took it and wiped the sweat from his forehead.
"It's through," Su Man said.
"Only the first gate." Lin Chen watched the progress bar pulsing on the screen. "At eight tomorrow morning, neurology will pull the first batch of historical data for comparison. If more than three of the twenty records in the mapping queue are false positives, the clinicians will reject it outright." He closed the terminal and set the script to start on boot. From outside the window came the sound of a street-sweeping truck passing over the asphalt. The sky was beginning to turn gray. He picked up his phone and sent Zhao Qiming a message: "Offline package adapted to the new interface. First batch of clinical comparison data will be submitted at 8 a.m. Performance-bet terms remain under the original agreement." Sent. He put the phone away and slowly lowered his left foot from the table leg. The instant the sole touched the ground, the stabbing pain surged back. He steadied himself against the desk, stood up, and walked to the window. The voice-activated light at the end of the corridor went out.
He knew that after daybreak, the real clinical validation would begin. And the twenty anomalous records in the script were like twenty undismantled detonators, lying quietly in the queue. The information department's whitelist still had not been approved, while ZhiNao's cloud rendering was already running in the ward next door. Before eight, he had to finish manually reviewing those twenty records and flatten the confidence curve. Lin Chen turned back to the desk, pulled open the drawer, and took out the dog-eared mistake notebook. Its yellowing pages were packed with the pitfalls he had stepped into over the past three years: encoding conflicts, memory leaks, field offsets, clients changing requirements at the last minute. He turned to a blank page and wrote: 08:00 clinical comparison. 20 anomalies. Priority: false-positive interception. The pen tip scratched softly across the paper. He sat down, opened the terminal, and began writing the interaction screen for manual review. The light from the monitor reflected on his face. His eye sockets were sunken, but his gaze was steady. Outside the window, the sky had brightened completely, and the first bus of the day drove past the street corner, its engine sound dull and regular. A new day had begun.
More from WayDigital
Continue through other published articles from the same publisher.
Comments
0 public responses
All visitors can read comments. Sign in to join the discussion.
Log in to comment