VAST · GPT-5.6-Terra · C7

Vastopolis outbreak investigation — C7 · fresh redesign

C7

Designed by GPT-5.6-Terra. Fresh ATWL redesign from the model's own C4 prose design (continuing that chat), explicitly not a translation. ↓ download raw .atwl

Workflow header & template

workflow vastopolis-outbreak-source-and-transmission-analysis template: build-model (content classification) → loop(characterise → define-unit → contextualise → visualise → assess → build-model (refine classification)) → define-unit (spatiotemporal aggregation) → characterise → contextualise → visualise → abstract → generate-knowledge → characterise (mechanism predictors) → build-model → loop(characterise (model application) → visualise → abstract → assess → build-model (refine competing hypotheses)) → characterise (deployment priority) → visualise → generate-knowledge description: "Human-centred outbreak analysis workflow that uses geolocated microblog posts as uncertain syndromic signals to identify candidate onset locations, compare plausible transmission mechanisms, and formulate evidence-qualified emergency-response priorities."

Inputs And External Knowledge

artifact D_posts : entities origin: given internal structure: elementary embedment: {space, time} features: - id: f_timestamp value structure: atomic value type: temporal description: "Timestamp of the mobile-device post" - id: f_location value structure: atomic value type: spatial description: "GPS coordinate associated with the post" - id: f_text value structure: atomic value type: text description: "Microblog message text" - id: f_account_reference value structure: atomic value type: reference description: "Pseudonymised source-account reference, where available" description: "Geolocated microblog posts collected during the outbreak period" artifact D_zones : entities origin: given internal structure: region embedment: space features: - id: f_population value structure: atomic value type: numeric description: "Resident population in the city zone" - id: f_zone_name value structure: atomic value type: categorical description: "Zone identifier or name" description: "Thirteen metropolitan zones with boundaries and population statistics" artifact D_city_features : entities origin: given internal structure: elementary embedment: space features: - id: f_feature_type value structure: atomic value type: categorical description: "Highway, hospital, landmark, water body, or other mapped feature" - id: f_geometry value structure: atomic value type: spatial description: "Geographic geometry of the mapped feature" description: "Reference map features for interpretation of possible transmission routes" artifact D_weather : entities origin: given internal structure: elementary embedment: time features: - id: f_wind_speed value structure: atomic value type: numeric description: "Observed wind speed" - id: f_wind_direction value structure: atomic value type: numeric description: "Observed wind direction, converted to air-transport direction" description: "Daily weather observations for the metropolitan area" artifact K_epidemiology_priors : knowledge(D_posts, D_weather, D_city_features) origin: given representation form: "interpretive rules and expectations" description: "Public-health knowledge describing plausible signatures of person-to-person, airborne, waterborne, and common-source transmission, including plausible delay ranges and known reporting biases" artifact K_signal_limitations : knowledge(D_posts) origin: given representation form: "caveats and constraints" description: "Microblog reports are not confirmed infections; they can reflect news amplification, concern, care-seeking, duplicated content, unequal platform use, and inaccurate location or time information" artifact S_content_initial : specification origin: given representation form: "classification configuration" description: "Initial symptom vocabulary, exclusion terms, confidence threshold, duplicate and bot filtering rules, language handling, and privacy constraints" artifact S_aggregation : specification origin: given representation form: "aggregation settings" description: "Candidate temporal resolutions, spatial assignment rules, population normalisation method, and minimum-support thresholds for zone-time outbreak indicators"

Step 1: Create And Refine A Trusted Syndromic Signal

transform T_build_content_model : intent: build-model manner: "train weakly supervised text classifier" input: D_posts, K_epidemiology_priors, S_content_initial output: M_content_classifier_initial actor: hybrid description: "Construct an initial classifier that distinguishes likely self-reported flu-like symptoms, reports about others, severe illness or death, care-seeking, general concern, news reposting, and irrelevant posts" artifact M_content_classifier_initial : model(D_posts, K_epidemiology_priors) model type: "text classification model" representation form: "hybrid keyword, entity-extraction, and statistical text model" description: "Initial model assigning health-evidence categories and confidence scores to microblog posts" assign: M_content_classifier := M_content_classifier_initial S_content := S_content_initial loop L_signal_refinement: purpose: "Create a credible, interpretable symptom-report signal before making spatial or causal inferences" until: "The analyst judges that retained symptom reports are sufficiently credible, representative, and distinct from media or concern amplification for outbreak exploration" body: transform T_screen_posts : intent: characterise manner: "classify and score health-related text" input: D_posts, M_content_classifier, S_content output: F_health_evidence actor: machine description: "Assign each post a health-evidence category, symptom severity, self-report likelihood, geographic and temporal reliability, and classification confidence" artifact F_health_evidence : feature(D_posts) value structure: vector value type: {categorical, ordinal, numeric} representation form: "health-evidence category and confidence vector" description: "Per-post symptom, severity, reporting-role, reliability, and confidence descriptors" transform T_select_symptom_signal : intent: define-unit manner: "filter high-confidence syndromic reports" input: D_posts, F_health_evidence, S_content output: D_symptom_signals actor: machine description: "Retain credible, non-duplicated posts indicating flu-like symptoms or severe illness while preserving confidence and source-diversity information" artifact D_symptom_signals : entities internal structure: elementary embedment: {space, time} features: - id: f_signal_category value structure: atomic value type: categorical description: "Symptom, severe illness, death-associated, or care-seeking signal" - id: f_confidence value structure: atomic value type: numeric description: "Confidence that the post represents a relevant health signal" description: "Filtered microblog posts used as uncertain syndromic evidence" transform T_contextualise_signal : intent: contextualise manner: "map-and-time placement" input: D_symptom_signals, D_zones output: A_signal_map actor: machine description: "Place symptom signals in their geographic zones while retaining timestamps for temporal filtering and inspection" artifact A_signal_map : arrangement(D_symptom_signals) context: D_zones principle: "GPS coordinate assigned to containing zone; timestamps retained" description: "Geographic placement of candidate symptom reports in city zones" transform T_visualise_signal_quality : intent: visualise manner: "coordinated evidence inspection" input: A_signal_map, D_symptom_signals, F_health_evidence, D_city_features output: V_signal_quality actor: machine description: "Show a linked map, timeline, category distributions, confidence distributions, source diversity indicators, and original post text for review" artifact V_signal_quality : visualisation(A_signal_map, D_symptom_signals, F_health_evidence, D_city_features) layout: "linked metropolitan map, temporal histogram, category panels, and text table" form: "coloured points, time-series marks, bars, and selectable text records" encoding: "map position from A_signal_map; colour from signal category; size or opacity from confidence; linked text shows original evidence" description: "Interactive display for detecting misclassification, duplicated news activity, implausible coordinates, and geographically concentrated reporting artifacts" transform T_assess_signal_quality : intent: assess manner: "evaluate evidence credibility and interpretability" input: V_signal_quality, D_symptom_signals, K_signal_limitations output: K_signal_quality, S_content_revised actor: human description: "Judge whether the retained signal plausibly represents illness reports rather than reporting artifacts; identify ambiguous terms, excluded categories, suspect accounts, and inappropriate thresholds" artifact K_signal_quality : knowledge(D_symptom_signals, V_signal_quality) representation form: "quality judgment" description: "Assessment of whether the symptom-report signal is credible enough for outbreak analysis and which errors remain important" artifact S_content_revised : specification representation form: "revised classification configuration" description: "Updated vocabulary, exclusions, confidence thresholds, source filters, and review priorities derived from signal-quality assessment" if K_signal_quality indicates signal refinement needed: then: transform T_refine_content_model : intent: build-model manner: "interactive classifier refinement" input: D_posts, M_content_classifier, K_signal_quality, S_content_revised output: M_content_classifier_revised actor: hybrid description: "Revise the text-classification model using analyst-reviewed examples, corrected category definitions, and revised filtering rules" artifact M_content_classifier_revised : model(D_posts, K_signal_quality) model type: "refined text classification model" representation form: "updated hybrid keyword, entity-extraction, and statistical model" description: "Improved health-evidence classifier aligned with reviewed posts" assign: M_content_classifier := M_content_classifier_revised S_content := S_content_revised else: exit loop L_signal_refinement end loop L_signal_refinement

Step 2: Construct Population-Aware Spatiotemporal Outbreak Indicators

transform T_define_zone_time_units : intent: define-unit manner: "spatiotemporal aggregation" input: D_symptom_signals, D_zones, D_weather, S_aggregation output: D_zone_time actor: machine description: "Aggregate validated symptom signals into multiple candidate zone-time units, associating each unit with its population, weather observation, and supporting message evidence" artifact D_zone_time : entities internal structure: episode embedment: {space, time} features: - id: f_zone_reference value structure: atomic value type: reference description: "Reference to the represented city zone" - id: f_time_interval value structure: atomic value type: temporal description: "Analysis time bin" - id: f_population value structure: atomic value type: numeric description: "Population of the represented zone" description: "Zone-time episodes containing symptom-report observations and matched weather context" transform T_characterise_outbreak_indicators : intent: characterise manner: "population-normalised syndromic summarisation" input: D_zone_time, D_posts, D_symptom_signals, S_aggregation output: F_outbreak_indicators actor: machine description: "Compute symptom-report count, rate per population, share of local posting activity, severe-report count, independent-source support, growth rate, and uncertainty indicators for each zone-time unit" artifact F_outbreak_indicators : feature(D_zone_time) value structure: vector value type: numeric representation form: "multivariate time series per zone" description: "Population-aware and platform-activity-aware outbreak indicators, including uncertainty due to sparse or low-confidence reports" transform T_create_outbreak_lattice : intent: contextualise manner: "space-time lattice construction" input: D_zone_time, D_zones output: D_outbreak_lattice, A_outbreak_lattice actor: machine description: "Create a map-time reference lattice with a position for every zone and analysis interval, including intervals with low or no signal" artifact D_outbreak_lattice : entities internal structure: elementary embedment: {space, time} features: - id: f_zone_reference value structure: atomic value type: reference description: "Zone represented by the lattice position" - id: f_time_interval value structure: atomic value type: temporal description: "Time interval represented by the lattice position" description: "Complete zone-by-time context for comparing outbreak evolution" artifact A_outbreak_lattice : arrangement(D_zone_time) context: D_outbreak_lattice principle: "zone identity and time interval" description: "Placement of each aggregated outbreak unit in the corresponding zone-time lattice position" transform T_visualise_outbreak_evolution : intent: visualise manner: "linked animated map and temporal profile display" input: A_outbreak_lattice, F_outbreak_indicators, D_city_features output: V_outbreak_evolution actor: machine description: "Display outbreak intensity, uncertainty, and growth through time on a metropolitan map, linked to zone-rate trajectories and severe-report views" artifact V_outbreak_evolution : visualisation(A_outbreak_lattice, F_outbreak_indicators, D_city_features) layout: "animated metropolitan map linked to aligned zone time series" form: "coloured zone marks, uncertainty overlays, lines, and event markers" encoding: "zone-time position from A_outbreak_lattice; colour from symptom rate; saturation from uncertainty; lines show rate and growth; map overlays show hospitals, highways, landmarks, and water bodies" description: "Visual basis for distinguishing early sustained activity from isolated posts, high population density, and care-seeking concentration"

Step 3: Identify Candidate Onset Locations And Formulate Testable Hypotheses

transform T_identify_onset_patterns : intent: abstract manner: "find persistent spatiotemporal clusters and onset order" input: D_zone_time, F_outbreak_indicators, V_outbreak_evolution output: P_outbreak_patterns, F_onset_characteristics actor: hybrid description: "Identify sustained excess-activity clusters, their onset order, persistence, spatial expansion, and sensitivity to aggregation resolution" artifact P_outbreak_patterns : pattern(D_zone_time, F_outbreak_indicators) representation form: "ranked spatiotemporal cluster descriptions" description: "Candidate outbreak clusters characterised by onset time, persistence, intensity, spatial extent, and apparent expansion direction" artifact F_onset_characteristics : feature(D_zone_time) value structure: vector value type: {temporal, numeric, ordinal} description: "Onset time, persistence score, local excess score, and candidate-origin ranking components for each zone-time unit" transform T_formulate_hypotheses : intent: generate-knowledge manner: "formulate competing epidemiological hypotheses" input: P_outbreak_patterns, F_onset_characteristics, V_outbreak_evolution, K_epidemiology_priors, K_signal_limitations output: K_candidate_origins, S_hypotheses_initial actor: human description: "Interpret early sustained clusters as candidate observed-signal origins, distinguish them from likely infection sources, and define competing person-to-person, airborne, waterborne, common-source, reporting-artifact, and mixed-mechanism hypotheses" artifact K_candidate_origins : knowledge(P_outbreak_patterns, F_onset_characteristics, V_outbreak_evolution) representation form: "ranked evidence statements" description: "Ranked candidate origin areas with supporting and contradictory evidence; explicitly distinguishes earliest observed reporting signal from a confirmed epidemiological source" artifact S_hypotheses_initial : specification representation form: "competing-model configuration" description: "Candidate sources, plausible time lags, spatial scales, exposure definitions, confounder controls, model comparison criteria, and sensitivity scenarios for competing transmission hypotheses" assign: S_hypotheses := S_hypotheses_initial

Step 4: Compare Transmission Explanations Through Model And Residual Analysis

transform T_characterise_mechanism_predictors : intent: characterise manner: "derive spatiotemporal exposure and connectivity predictors" input: D_zone_time, D_weather, D_zones, D_city_features, K_candidate_origins, S_hypotheses output: F_mechanism_predictors actor: machine description: "Compute lagged local and neighbouring symptom activity, highway-connected exposure, candidate-source distance, downwind alignment, wind speed, water proximity, population, hospital proximity, and local posting-activity controls" artifact F_mechanism_predictors : feature(D_zone_time) value structure: vector value type: numeric representation form: "lagged spatial-exposure predictor vector" description: "Predictors representing contact propagation, wind-related transport, water-related exposure, common-source timing, and reporting confounders for each zone-time unit" transform T_build_mechanism_models : intent: build-model manner: "fit competing explanatory spatiotemporal models" input: D_zone_time, F_outbreak_indicators, F_mechanism_predictors, S_hypotheses output: M_mechanism_models_initial actor: machine description: "Fit comparable models for contact propagation, airborne transport, water-associated exposure, common-source exposure, reporting artifact, and selected mixed mechanisms, using held-out periods or locations where possible" artifact M_mechanism_models_initial : model(F_outbreak_indicators, F_mechanism_predictors) model type: "competing spatiotemporal count and rate models" representation form: "set of regularised lagged regression models with uncertainty estimates" description: "Alternative explanatory models predicting syndromic outbreak indicators under different transmission mechanisms" assign: M_mechanism_models := M_mechanism_models_initial loop L_mechanism_evaluation: purpose: "Test whether proposed transmission mechanisms explain observed outbreak spread robustly enough to guide emergency action" until: "Leading explanations are interpretable, robust across reasonable sensitivity settings, and their remaining uncertainty is explicit" body: transform T_apply_mechanism_models : intent: characterise manner: "predict, compare, and calculate residuals" input: D_zone_time, F_outbreak_indicators, F_mechanism_predictors, M_mechanism_models output: F_mechanism_results actor: machine description: "Generate predictions, residuals, uncertainty estimates, held-out performance measures, and comparative evidence scores for each transmission hypothesis" artifact F_mechanism_results : feature(D_zone_time) value structure: vector value type: numeric representation form: "per-hypothesis predictions, residuals, and uncertainty" description: "Observed-versus-predicted outbreak indicators and local unexplained activity for each competing mechanism" transform T_visualise_mechanism_evidence : intent: visualise manner: "comparative model and residual display" input: A_outbreak_lattice, F_outbreak_indicators, F_mechanism_predictors, F_mechanism_results, D_city_features, D_weather output: V_mechanism_evidence actor: machine description: "Show linked maps of observed activity, predictions, and residuals; downwind and water-exposure overlays; lag plots; and held-out model-comparison summaries" artifact V_mechanism_evidence : visualisation(A_outbreak_lattice, F_outbreak_indicators, F_mechanism_predictors, F_mechanism_results, D_city_features, D_weather) layout: "coordinated map-time views, residual maps, lag plots, and model score panels" form: "coloured zone marks, wind vectors, exposure overlays, lines, and bars" encoding: "map and time positions from A_outbreak_lattice; colour shows observed rate, predicted rate, or residual; arrows show wind transport; panels compare model performance and uncertainty" description: "Interactive evidence display for checking whether spatial and temporal patterns support a transmission mechanism rather than a coincidental association" transform T_abstract_mechanism_patterns : intent: abstract manner: "interpret explanatory and residual structures" input: V_mechanism_evidence, F_mechanism_results, K_epidemiology_priors output: P_mechanism_patterns actor: hybrid description: "Identify patterns such as serial local propagation, repeatable downwind association, shared water-body association, near-simultaneous point-source onset, or persistent unexplained residuals" artifact P_mechanism_patterns : pattern(F_mechanism_results, V_mechanism_evidence) representation form: "mechanism-evidence descriptions" description: "Observed explanatory structures and residual anomalies relevant to the competing transmission hypotheses" transform T_assess_mechanism_evidence : intent: assess manner: "evaluate robustness, confounding, and actionability" input: M_mechanism_models, F_mechanism_results, P_mechanism_patterns, V_mechanism_evidence, K_signal_limitations output: K_mechanism_quality, S_hypotheses_revised actor: hybrid description: "Assess predictive performance, residual structure, sensitivity to time and spatial resolution, plausibility of lag assumptions, reporting confounding, and whether model evidence is adequate for operational use" artifact K_mechanism_quality : knowledge(M_mechanism_models, F_mechanism_results, P_mechanism_patterns) representation form: "quality judgment and uncertainty assessment" description: "Assessment of which explanations are supported, weak, or indistinguishable; whether candidate sources or model assumptions require revision; and whether social-media evidence can support the intended action" artifact S_hypotheses_revised : specification representation form: "revised competing-model configuration" description: "Updated candidate-source set, lag windows, controls, spatial scale, exposure definitions, and model-selection choices based on robustness and residual assessment" if K_mechanism_quality indicates hypothesis or model revision needed: then: transform T_refine_mechanism_models : intent: build-model manner: "refit revised competing explanatory models" input: D_zone_time, F_outbreak_indicators, F_mechanism_predictors, M_mechanism_models, K_mechanism_quality, S_hypotheses_revised output: M_mechanism_models_revised actor: hybrid description: "Refit or replace competing models after revising candidate sources, lag assumptions, controls, or included mechanisms" artifact M_mechanism_models_revised : model(F_outbreak_indicators, F_mechanism_predictors) model type: "refined competing spatiotemporal models" representation form: "revised regularised lagged regression model set" description: "Updated competing models designed to address identified confounding, residual anomalies, or hypothesis deficiencies" assign: S_hypotheses := S_hypotheses_revised M_mechanism_models := M_mechanism_models_revised else: exit loop L_mechanism_evaluation end loop L_mechanism_evaluation

Step 5: Turn Evidence Into Qualified Emergency-Response Priorities

transform T_characterise_deployment_priority : intent: characterise manner: "risk and uncertainty prioritisation" input: D_zone_time, F_outbreak_indicators, F_onset_characteristics, F_mechanism_results, K_mechanism_quality, D_zones, D_city_features output: F_deployment_priority actor: hybrid description: "Calculate zone-time deployment priorities using current outbreak intensity, growth, severe-report signal, population exposure, hospital context, model-supported spread risk, unexplained residual risk, and uncertainty" artifact F_deployment_priority : feature(D_zone_time) value structure: vector value type: {numeric, ordinal} representation form: "priority score with contributing factors" description: "Emergency-response priority, confidence, and rationale for each zone-time unit; uncertainty increases the priority for surveillance and validation rather than implying a confirmed mechanism" transform T_visualise_decision_support : intent: visualise manner: "operational dashboard" input: A_outbreak_lattice, F_outbreak_indicators, F_mechanism_results, F_deployment_priority, K_candidate_origins, D_city_features output: V_decision_support actor: machine description: "Provide an operational map of current hotspots, growth, candidate sources, mechanism evidence, uncertainty, and recommended investigation areas" artifact V_decision_support : visualisation(A_outbreak_lattice, F_outbreak_indicators, F_mechanism_results, F_deployment_priority, K_candidate_origins, D_city_features) layout: "linked current-risk map, temporal trend panel, source ranking, and evidence panel" form: "priority-coloured zones, uncertainty hatching, trend lines, and ranked annotations" encoding: "zone-time placement from A_outbreak_lattice; colour from deployment priority; hatching from uncertainty; annotations identify candidate origins and leading supported mechanisms" description: "Decision-support display for assigning surveillance, clinical, environmental-investigation, and communication resources" transform T_formulate_operational_findings : intent: generate-knowledge manner: "formulate evidence-qualified recommendations" input: K_candidate_origins, P_mechanism_patterns, K_mechanism_quality, F_deployment_priority, V_decision_support, K_signal_limitations output: K_operational_findings actor: human description: "State leading origin and transmission hypotheses with confidence and contradictory evidence; rank deployment zones; and specify confirmatory actions such as clinical surveillance, environmental sampling, facility inspection, and targeted public communication" artifact K_operational_findings : knowledge(K_candidate_origins, P_mechanism_patterns, K_mechanism_quality, F_deployment_priority) representation form: "ranked recommendations with evidence and uncertainty" description: "Emergency-management recommendations that distinguish immediate hotspot response from mechanism-specific investigation, explicitly avoid treating microblog evidence as confirmation of outbreak origin or cause"