Compare commits

...
Author SHA1 Message Date
sorokin.oleg.edu 3753b4fd05 Sync agent instructions from main 2026-09-13 11:40:47 +03:00
sorokin.oleg.edu b4b860f277 Record Text workspace publication and exact Git readback 2026-09-12 22:05:07 -07:00
sorokin.oleg.edu 2df7f580aa Make the Text workspace compact and preserve editing context
Replace the oversized header and reference rail with stable editor slots and a retained supporting drawer. Bind diagnostic, result and menu actions to their original publication and visit; preserve effective selections on navigation and dismiss Actions, Find and the drawer one surface per Escape.

Retain exact Windows source captures, eight final gates (871 desktop passes), independent reviews, native selection/rename/recovery trials and the original failures. All 526 tested inputs and staged evidence were byte-checked before commit. Combined preview integration and packaging remain with issue 27; Linux remains paused.
2026-09-12 22:00:36 -07:00
sorokin.oleg.edu 6a244fb21c Preserve live Text selection when restoring Find focus
Keep existing reveal tickets and raw-input guards while separating focus restoration from cursor movement. This separable production patch is extracted from the Text workspace union verified by mounted red/green, full Windows gates and native replacement trials. The CBC-only intermediate tree was not separately built; the following contribution records exact tested union inputs and four-test integration guidance.
2026-09-12 21:54:16 -07:00
667 changed files with 72981 additions and 754 deletions
+14
View File
@@ -75,3 +75,17 @@ harness/experiments/source-alias-rename-native-20260912/** -text whitespace=cr-a
harness/experiments/source-alias-rename-completed-20260912/** -text whitespace=cr-at-eol
harness/experiments/source-alias-rename-refresh-20260912/** -text whitespace=cr-at-eol
harness/experiments/source-alias-rename-native-closure-20260912/** -text whitespace=cr-at-eol
# Preserve Text-workspace input, native and review evidence at its recorded bytes.
harness/experiments/text-workspace-initial-20260913/** -text whitespace=cr-at-eol
harness/experiments/text-workspace-initial-review-20260913/** -text whitespace=cr-at-eol
harness/experiments/text-find-selection-20260913/** -text whitespace=cr-at-eol
harness/experiments/text-workspace-native2-20260913/** -text whitespace=cr-at-eol
harness/experiments/text-workspace-followup-review-20260913/** -text whitespace=cr-at-eol
harness/experiments/text-workspace-native3-20260913/** -text whitespace=cr-at-eol
# These checksum-bound baseline/expected fixtures deliberately end with blank lines.
harness/experiments/text-workspace-native2-20260913/fixtures/**/*.arcadia whitespace=-blank-at-eof,cr-at-eol
# Captured process streams retain intentional blank lines and diagnostic spacing.
harness/experiments/text-find-selection-20260913/**/*.log -whitespace
harness/experiments/text-workspace-initial-20260913/**/*.log -whitespace
harness/experiments/text-workspace-native2-20260913/**/*.log -whitespace
harness/experiments/text-workspace-native3-20260913/**/*.log -whitespace
+10 -10
View File
@@ -35,26 +35,26 @@ Use Gitea for live coordination and the relevant code version for implementation
## Coordination and integration
All independent agents coordinating through Gitea run on completely separate machines, each with its own clone, filesystem, tools, processes, and runtime. Gitea and pushed Git history are the shared communication and delivery channels. Local files (including `harness`), unpushed commits, worktrees, test results, and localhost services are not accessible to peers. Matching branch names or paths do not imply synchronized contents.
1. On starting or resuming, including after compaction, inspect the working branch, local changes, applicable instructions, relevant shared records, and existing implementation. Recover context from authoritative records. Check for newer shared instructions on the actual remote default branch without overwriting local work. Read what is relevant; avoid repeated full-history scans and constant polling.
2. Search before creating tasks. Claim a meaningful outcome in its Gitea issue with a stable session identity, scope, branch/worktree, and acceptance criteria. Keep small steps within that task. Recheck after claiming; comments are not atomic locks. Respect existing ownership and resolve overlapping claims before overlapping work.
3. Independent sessions are peers. Each owns its contribution and delegated work. Record one integration/release owner when a milestone needs shared coordination. Use separate worktrees or checkouts, partition files/interfaces, and coordinate changes to shared specifications and documents.
4. At meaningful checkpoints or handoffs, record changed results, commit/PR links, verification commands and environment, blockers, and next actions. Identify the tested code version and uncommitted or unpublished work; make required artifacts accessible to other sessions. Do not assume another agent is running or has read a message; silence alone does not establish abandonment. Record evidence and preserve existing work when reassigning a task.
5. Follow project review and merge conventions. Inspect upstream changes, resolve conflicts while preserving others' edits, and verify the combined result. Do not overwrite others' work or force-push shared history to resolve coordination problems.
2. Search before creating tasks. Claim a meaningful outcome in its Gitea issue with a stable session identity, scope, remote repository/branch, and acceptance criteria. Keep small steps within that task. Recheck after claiming; comments are not atomic locks. Respect existing ownership and resolve overlapping claims before overlapping work.
3. Independent sessions are peers. Each owns its contribution and delegated work on its own machine. Record one integration/release owner when a milestone needs shared coordination. Use distinct remote work branches, partition files/interfaces, and coordinate changes to shared specifications and documents. Worktrees provide local isolation only; they do not share work between machines.
4. At meaningful checkpoints or handoffs, record changed results, commit/PR links, verification commands and environment, blockers, and next actions. Identify the tested code version and label uncommitted or unpublished work as local-only. Before asking peers to consume results, push the required code and versioned documentation, including relevant `harness` updates; publish other required artifacts in Gitea and link them. Use repository-relative paths with commit references, reproducible commands, and necessary environment details; local paths and localhost URLs alone are not handoffs. Do not assume another agent is running or has read a message; silence alone does not establish abandonment. Record evidence and preserve existing work when reassigning a task.
5. Follow project review and merge conventions. Fetch the relevant remote branches and inspect the identified commits before reviewing or integrating another machine's work. Resolve conflicts while preserving others' edits, and verify the combined result locally; report material environment differences. Local instruction-file edits reach peers only after publication and retrieval. Do not overwrite others' work or force-push shared history to resolve coordination problems.
6. Close work when its acceptance criteria are met and the result is integrated or delivered as appropriate. Mark duplicates and superseded tasks explicitly with replacement links. Then choose further useful unowned work while the requested objective remains incomplete.
Use Gitea MCP for shared coordination. If unavailable, report the failure, buffer necessary handoff information locally, and continue already-owned or clearly non-overlapping work. Reconcile with current Gitea state when access returns; do not claim an ownership update, review, or publication succeeded without confirmation.
## Delegation and reasoning
Use GPT-6 Astra exclusively. Delegate bounded independent research, design, implementation, or review when it improves progress, judgment, or preserves the parent's context. Give subagents the relevant context, ownership boundaries, result format, and evidence requirements. Use fresh critics when practical. The parent owns synthesis and integration and normally consolidates results into Gitea. Choose concurrency according to useful independent work and available resources, including other sessions; there is no agent-count quota.
Use GPT-6 Astra exclusively. Gitea peers are independent remote sessions, not subagents controlled by this session. Spawned subagents use the execution environment actually provided by the agent tools; do not assume they share files, and publish their results before Gitea peers need them. Delegate bounded independent research, design, implementation, or review when it improves progress, judgment, or preserves the parent's context. Give subagents the relevant context, ownership boundaries, result format, and evidence requirements. Use fresh critics when practical. The parent owns synthesis and integration and normally consolidates results into Gitea. Choose concurrency according to useful independent work and available resources, including other sessions; there is no agent-count quota.
Optimize reasoning effort for verified outcomes per cost, including review, retries, and repair:
Main agent: default to high for planning, synthesis, integration, and acceptance decisions; medium for dispatching a settled plan and routine coordination.
Subagents: default to medium for bounded implementation and targeted research; low for straightforward retrieval, mechanical edits, and running established checks; high for complex debugging, correctness review, adversarial analysis, or ambiguous design.
Use extra-high selectively for difficult foundational semantic, methodological, formal, or cross-domain decisions. Reserve max for exceptional unresolved problems where additional reasoning is likely to justify its cost. Retain higher settings when evidence supports their value.
- Main agent: default to high for planning, synthesis, integration, and acceptance decisions; medium for dispatching a settled plan and routine coordination.
- Subagents: default to medium for bounded implementation and targeted research; low for straightforward retrieval, mechanical edits, and running established checks; high for complex debugging, correctness review, adversarial analysis, or ambiguous design.
- Use extra-high selectively for difficult foundational semantic, methodological, formal, or cross-domain decisions. Reserve max for exceptional unresolved problems where additional reasoning is likely to justify its cost. Retain higher settings when evidence supports their value.
Allocate by task difficulty and consequences, not role or length alone. Start higher when a clearly difficult decision has expensive downstream consequences. Escalate for concrete reasoning difficulties; resolve missing evidence or unclear requirements at their source. Set subagent effort explicitly through supported controls to avoid unintended inheritance. Do not claim an unapplied change or alter global configuration merely to enforce these preferences.
+168 -56
View File
@@ -9,6 +9,7 @@ mod hosted;
mod review_navigation_tests;
pub(crate) mod source_rename;
mod source_symbols;
pub(crate) mod text_workspace;
#[cfg(test)]
mod transition_context_tests;
#[cfg(test)]
@@ -415,8 +416,7 @@ pub enum Message {
IncludesLoaded(u64, Result<DiskProject, String>),
Lint(u64),
Linted(u64, Result<Vec<SourceDiagnostic>, String>),
SourceDiagnostic(usize),
SourceRelated(SourceLocation),
TextWorkspace(text_workspace::Event),
SourceViewport(Option<Id>),
SourceSymbols(
crate::source_navigation::SymbolContext,
@@ -503,6 +503,7 @@ pub struct App {
pub source_navigation: crate::source_navigation::State,
source_find_instance: Id,
pub source_symbols: crate::source_navigation::SymbolState,
pub text_workspace: text_workspace::State,
pub source_rename: source_rename::State,
pub model_issues: Vec<validation::Issue>,
pub migration: Option<persistence::MigrationReport>,
@@ -611,6 +612,7 @@ impl App {
source_navigation: crate::source_navigation::State::default(),
source_find_instance: Id::new_v4(),
source_symbols: crate::source_navigation::SymbolState::default(),
text_workspace: text_workspace::State::default(),
source_rename: source_rename::State::default(),
model_issues,
migration: None,
@@ -660,10 +662,35 @@ impl App {
fn sync_source(&mut self) {
self.sync_source_with_alias_editor(None);
}
fn publish_source_diagnostics(&mut self, diagnostics: Vec<SourceDiagnostic>) {
self.source_diagnostics = diagnostics;
self.text_workspace.publish_diagnostics(self.source_key());
}
/// A different source destination owns a new navigation/presentation session.
/// Only diagnostics proven current before this identity-only change may be
/// republished for it; stale source locations must not become fresh again.
fn reset_source_navigation_session(&mut self) {
let diagnostics_current = self
.text_workspace
.diagnostic_publication()
.is_some_and(|publication| publication.source() == self.source_key());
self.source_workspace.reset_navigation_session();
self.clear_source_presentation();
if diagnostics_current {
self.publish_source_diagnostics(self.source_diagnostics.clone());
}
}
fn clear_source_presentation(&mut self) {
let in_flight = self.source_symbols.in_flight;
self.source_symbols = crate::source_navigation::SymbolState::default();
self.source_symbols.in_flight = in_flight;
self.source_jump = None;
self.text_workspace.reset();
}
fn sync_source_with_alias_editor(&mut self, hint: Option<source_rename::EditorRefresh<'_>>) {
self.source_workspace.accept(self.document.bundle());
self.show_source_file_with_alias_editor(false, hint);
self.source_diagnostics = self.document.compiled().diagnostics.clone();
self.publish_source_diagnostics(self.document.compiled().diagnostics.clone());
self.source_version += 1;
self.lint_requested = None;
}
@@ -804,7 +831,7 @@ impl App {
}
}
Err(issues) => {
self.source_diagnostics = issues;
self.publish_source_diagnostics(issues);
self.status = "Source contains errors. Your draft is preserved.".into();
self.page = Page::Text;
false
@@ -959,6 +986,7 @@ impl App {
let lint_running = self.lint_running;
let navigation_in_flight = self.source_symbols.in_flight;
let rename_in_flight = self.source_rename.in_flight;
let menu_sequence = self.menu_sequence;
let guide = std::mem::take(&mut self.guide);
let mut hosted = std::mem::take(&mut self.hosted);
hosted.leave_document();
@@ -972,6 +1000,7 @@ impl App {
self.lint_running = lint_running;
self.source_symbols.in_flight = navigation_in_flight;
self.source_rename.in_flight = rename_in_flight;
self.menu_sequence = menu_sequence;
self.guide = guide;
self.path = path;
self.status = "Project ready".into();
@@ -1069,7 +1098,7 @@ impl App {
pub fn view(&self) -> Element<'_, Message> {
let base = crate::context_menu::Popup::new(
crate::views::view(self),
crate::model_menu::popup(self),
crate::model_menu::popup(self).or_else(|| self.text_workspace_menu()),
)
.into();
crate::source_navigation::interaction::observe(
@@ -1086,13 +1115,14 @@ impl App {
// Use one captured-Escape bridge: a focused Find input consumes
// Escape, while modal priority remains in the ordinary handler.
behavior::creation::subscription(
self.behavior.creation.has_pending()
|| self.behavior.source_active()
|| (self.page == Page::Text
&& (self.source_symbols.open
|| self.source_navigation.open
|| self.source_rename.open())
&& self.architecture.is_none()),
self.text_workspace.menu().is_none()
&& (self.behavior.creation.has_pending()
|| self.behavior.source_active()
|| (self.page == Page::Text
&& (self.text_workspace.drawer().is_some()
|| self.source_navigation.open
|| self.source_rename.open())
&& self.architecture.is_none())),
)
.map(|()| Message::Escape),
iced::event::listen_with(|event, status, _| {
@@ -1139,6 +1169,11 @@ impl App {
])
}
pub fn update(&mut self, message: Message) -> Task<Message> {
// Captured Text commands validate their origin before they can
// invalidate that same origin or pass into existing command handlers.
if let Message::TextWorkspace(event) = message {
return self.text_workspace_event(event);
}
if let Message::SourceRename(event) = &message
&& !self.source_rename_envelope(event)
{
@@ -1167,6 +1202,24 @@ impl App {
{
return Task::none();
}
// Retaining result data does not retain authority for an old row click.
if let Message::SourceSymbols(
_,
crate::source_navigation::SymbolEvent::Choose { stamp, visit, .. },
) = &message
&& (self.text_workspace.drawer() != Some(text_workspace::DrawerTab::References)
|| !self.source_navigation_available()
|| stamp.snapshot != self.source_key()
|| *visit != self.text_workspace.drawer_visit()
|| self
.source_symbols
.results
.as_ref()
.is_none_or(|results| results.stamp != *stamp))
{
return Task::none();
}
// Internal results and geometry do not constitute a new user intent.
// Process query completion even behind a modal to release its worker slot;
// its handler independently refuses navigation outside the live editor.
@@ -1176,6 +1229,38 @@ impl App {
if let Message::SourceRenameReady(completion) = message {
return self.source_rename_ready(completion);
}
if self.text_workspace.menu().is_some() {
if matches!(
message,
Message::Escape | Message::Request(Pending::Close(_))
) {
self.text_workspace.dismiss_menu();
self.source_interaction();
return Task::none();
}
// Global subscriptions can receive captured keyboard input.
// A Text menu owns those commands while passive work can finish.
if !matches!(
message,
Message::CheckpointWritten(..)
| Message::CheckpointLoaded(..)
| Message::CheckpointTick
| Message::WindowResized(_)
| Message::CanvasResized(_)
| Message::SourceViewport(_)
| Message::Lint(_)
| Message::Linted(..)
| Message::Saved(_)
| Message::Hosted(crate::hosted::Event::Completed(..))
| Message::Loaded(_)
| Message::IncludesLoaded(..)
| Message::SavePath(_)
| Message::SourceRecovered(_)
| Message::Exported(_)
) {
return Task::none();
}
}
if !matches!(
&message,
Message::CheckpointTick
@@ -1852,11 +1937,11 @@ impl App {
// Validate the originating canvas before advancing its input
// epoch. Actions are then generated with the refreshed context,
// while pointer history hidden behind the menu becomes stale.
let Some(opened) = crate::model_menu::Opened::new(
self,
request,
self.menu_sequence.wrapping_add(1),
) else {
let Some(token) = self.menu_sequence.checked_add(1) else {
self.status = "Reopen the application to start a new menu session.".into();
return Task::none();
};
let Some(opened) = crate::model_menu::Opened::new(self, request, token) else {
return Task::none();
};
self.connection = None;
@@ -1910,7 +1995,8 @@ impl App {
}
Message::Escape => {
let restore_source_focus = self.source_navigation_available()
&& (self.source_navigation.open || self.source_symbols.open);
&& (self.source_navigation.open || self.text_workspace.drawer().is_some());
let dismiss_find_only = restore_source_focus && self.source_navigation.open;
if self.behavior.source_back() {
self.status =
"Returned to the unchanged parent form; no source was created.".into();
@@ -1927,9 +2013,11 @@ impl App {
self.status = "Drawing cancelled · Select / move is active".into();
}
self.source_navigation.open = false;
self.source_symbols.open = false;
self.source_symbols.results = None;
self.source_symbols.notice = None;
// Popup/modal priority was handled above. In the available Text
// workspace, one Escape dismisses Find before the drawer beneath it.
if !dismiss_find_only {
self.text_workspace.show_drawer(None);
}
if restore_source_focus {
self.restore_source_editor_focus();
}
@@ -2907,7 +2995,7 @@ impl App {
.edit(after.clone(), self.source_editor.cursor());
self.source_snapshot = Arc::from(after);
self.source_version += 1;
self.source_diagnostics.clear();
self.publish_source_diagnostics(Vec::new());
let version = self.source_version;
return Task::perform(
async move {
@@ -2919,10 +3007,12 @@ impl App {
}
}
Message::SourceFile(path) => {
if self
.source_workspace
.switch(&path, self.source_editor.cursor())
if path != self.source_workspace.active
&& self.source_workspace.files.contains_key(&path)
{
let departure =
crate::source_navigation::selection::capture(&mut self.source_editor);
self.source_workspace.switch(&path, departure);
self.show_source_file(true);
}
}
@@ -2970,8 +3060,13 @@ impl App {
}
self.invalidate_source_rename("Disk recovery changed this source context. Your replacement is retained; close and invoke Rename again.");
self.pending_recovery = None;
self.source_diagnostics
.retain(|issue| issue.diagnostic.code != "pending_save");
let diagnostics = self
.source_diagnostics
.iter()
.filter(|issue| issue.diagnostic.code != "pending_save")
.cloned()
.collect();
self.publish_source_diagnostics(diagnostics);
match receipt.disk {
Ok(disk) if !self.source_workspace.applied => {
self.open_source_project(disk)
@@ -2983,7 +3078,7 @@ impl App {
|| self.path.as_ref() == Some(&receipt.target)
{
if self.path.as_ref() != Some(&receipt.target) {
self.source_workspace.reset_navigation_session();
self.reset_source_navigation_session();
}
self.path = Some(receipt.target);
self.document.bind_repair_baseline(disk.reachable_bundle());
@@ -3017,7 +3112,7 @@ impl App {
self.source_workspace
.discovered(&disk.bundle, disk.reachable.clone());
self.source_version += 1;
self.source_diagnostics = disk.diagnostics.clone();
self.publish_source_diagnostics(disk.diagnostics.clone());
self.disk_project = Some(disk);
self.status = "Included files loaded; existing drafts retained.".into();
return self.request_lint();
@@ -3038,21 +3133,13 @@ impl App {
self.lint_running = None;
if version == self.source_version {
match result {
Ok(diagnostics) => self.source_diagnostics = diagnostics,
Ok(diagnostics) => self.publish_source_diagnostics(diagnostics),
Err(error) => self.status = format!("Source checks failed: {error}"),
}
}
return self.start_pending_lint();
}
Message::SourceDiagnostic(index) => {
if let Some(issue) = self.source_diagnostics.get(index) {
self.jump_to_source(SourceLocation {
path: issue.path.clone(),
span: issue.diagnostic.span,
});
}
}
Message::SourceRelated(location) => self.jump_to_source(location),
Message::TextWorkspace(_) => return Task::none(), // checked before generic input
Message::SourceViewport(ticket) => return self.source_viewport(ticket),
Message::SourceFindClose(..) => return Task::none(), // update checks and unwraps it
Message::SourceSymbols(_, event) => return self.source_symbol_event(event),
@@ -3076,7 +3163,7 @@ impl App {
if self.source_workspace.undo(redo) {
self.show_source_file(true);
self.source_version += 1;
self.source_diagnostics.clear();
self.publish_source_diagnostics(Vec::new());
return self.request_lint();
}
}
@@ -3224,7 +3311,7 @@ impl App {
self.sync_source();
}
if self.path.as_ref() != Some(&receipt.path) {
self.source_workspace.reset_navigation_session();
self.reset_source_navigation_session();
}
self.disk_project = Some(disk);
self.path = Some(receipt.path);
@@ -3766,7 +3853,7 @@ impl App {
self.source_workspace
.discovered(&disk.bundle, disk.reachable.clone());
self.show_source_file(false);
self.source_diagnostics = self.document.compiled().diagnostics.clone();
self.publish_source_diagnostics(self.document.compiled().diagnostics.clone());
self.migration = self.document.compiled().decoded.migration.clone();
if self.migration.is_some() {
self.status = "Imported earlier source schema. Review Model checks; Save all explicitly writes the upgraded source while retaining comments and includes.".into();
@@ -3786,9 +3873,10 @@ impl App {
self.path = Some(path);
self.document.bind_repair_baseline(disk.reachable_bundle());
self.source_workspace = Workspace::new(&disk.bundle, false);
self.clear_source_presentation();
self.source_workspace.set_reachable(disk.reachable.clone());
self.show_source_file(false);
self.source_diagnostics = error.diagnostics().to_vec();
self.publish_source_diagnostics(error.diagnostics().to_vec());
self.source_version += 1;
self.lint_requested = None;
self.page = Page::Text;
@@ -3818,17 +3906,14 @@ impl App {
}
fn jump_to_source(&mut self, location: SourceLocation) {
self.source_workspace
.switch(&location.path, self.source_editor.cursor());
if self.source_workspace.active != location.path {
let Some(target) = self.source_workspace.files.get(&location.path) else {
self.status = format!(
"{} has not been loaded. Use Load includes or create the missing file.",
location.path
);
return;
}
self.show_source_file(false);
let source = self.source_workspace.text();
};
let source = &target.text;
let mut offset = location.span.start.min(source.len());
while !source.is_char_boundary(offset) {
offset -= 1;
@@ -3838,6 +3923,9 @@ impl App {
let column = prefix
.rfind('\n')
.map_or(offset, |start| offset - start - 1);
let departure = crate::source_navigation::selection::capture(&mut self.source_editor);
self.source_workspace.switch(&location.path, departure);
self.show_source_file(false);
self.queue_source_reveal(
text_editor::Cursor {
position: text_editor::Position { line, column },
@@ -3864,6 +3952,7 @@ impl App {
.is_ok_and(|includes| includes.iter().any(|include| include.target == path))
});
let mut changed = bundle.clone();
let mut changed_entry = None;
if !already_included {
if self.source_dirty() {
return Err(
@@ -3883,16 +3972,30 @@ impl App {
serde_json::to_string(&path).map_err(|e| e.to_string())?
),
);
self.source_workspace
.switch(&bundle.entry, self.source_editor.cursor());
self.source_workspace
.edit(entry.clone(), self.source_editor.cursor());
changed_entry = Some(entry.clone());
}
// All fallible preparation is complete. The intermediate entry buffer
// is not displayed, so it must not receive the outgoing editor's cursor.
let original_path = self.source_workspace.active.clone();
let departure = crate::source_navigation::selection::capture(&mut self.source_editor);
if let Some(entry) = changed_entry {
self.source_workspace.switch(&bundle.entry, departure);
let cursor = if self.source_workspace.active == original_path {
departure
} else {
self.source_workspace.files[&self.source_workspace.active].cursor
};
self.source_workspace.edit(entry, cursor);
}
changed.files.insert(path.clone(), String::new());
self.source_workspace
.discovered(&changed, changed.files.keys().cloned().collect());
self.source_workspace
.switch(&path, self.source_editor.cursor());
let cursor = if self.source_workspace.active == original_path {
departure
} else {
self.source_workspace.files[&self.source_workspace.active].cursor
};
self.source_workspace.switch(&path, cursor);
self.source_workspace.new_path.clear();
self.show_source_file(true);
self.source_version += 1;
@@ -4838,7 +4941,16 @@ mod source_project_tests {
assert_eq!(app.project(), &project);
assert!(!app.apply_source());
assert_eq!(app.source_diagnostics[0].path, fragment);
send(&mut app, Message::SourceDiagnostic(0));
send(&mut app, Message::Page(Page::Text));
let _ = app.show_text_drawer(Some(text_workspace::DrawerTab::Problems));
let issue = &app.source_diagnostics[0];
let message = app
.text_diagnostic_message(SourceLocation {
path: issue.path.clone(),
span: issue.diagnostic.span,
})
.unwrap();
send(&mut app, message);
assert_eq!(app.source_workspace.active, fragment);
assert_eq!(app.source_editor.text(), "? invalid source");
send(&mut app, Message::RevertSource);
+2 -2
View File
@@ -219,7 +219,7 @@ impl App {
|| session.connection.base() != request.connection.base()
})
{
self.source_workspace.reset_navigation_session();
self.reset_source_navigation_session();
}
self.hosted.session = Some(Session {
connection: request.connection.clone(),
@@ -359,7 +359,7 @@ impl App {
|| session.connection.base() != connection.base()
})
{
self.source_workspace.reset_navigation_session();
self.reset_source_navigation_session();
}
self.hosted.session = Some(Session {
connection,
+1 -1
View File
@@ -200,7 +200,7 @@ impl App {
}
}
fn rename_admission(&self) -> Result<(), String> {
pub(super) fn rename_admission(&self) -> Result<(), String> {
if self.page != Page::Text
|| self.busy
|| self.pending.is_some()
@@ -284,7 +284,7 @@ fn alias_editor_sync_fallback_restores_accepted_display_and_preserves_model_hist
assert_ne!(app.source_navigation.label(), "0 matches");
let mut invalid = original_source.clone();
invalid.files.insert(path.clone(), "?".into());
app.source_diagnostics = source_workspace::lint(&invalid);
app.publish_source_diagnostics(source_workspace::lint(&invalid));
assert!(!app.source_diagnostics.is_empty());
let version = app.source_version;
app.lint_requested = Some(version);
@@ -824,7 +824,8 @@ fn actual_captured_escape_closes_only_its_priority_owner_and_retains_worker() {
send(&mut app, Message::SourceRenameReady(ready.clone()));
}
app.source_navigation.open = true;
app.source_symbols.open = true;
app.text_workspace
.show_drawer(Some(crate::app::text_workspace::DrawerTab::References));
match other_modal {
1 => app.hosted.visible = true,
2 => {
@@ -849,7 +850,7 @@ fn actual_captured_escape_closes_only_its_priority_owner_and_retains_worker() {
}
assert!(!app.source_rename.open());
assert!(
app.source_symbols.open && app.source_navigation.open,
app.text_workspace.drawer().is_some() && app.source_navigation.open,
"rename Escape does not fall through"
);
if pending {
@@ -858,7 +859,7 @@ fn actual_captured_escape_closes_only_its_priority_owner_and_retains_worker() {
assert!(!app.source_rename.open());
}
assert_eq!(evidence(&app), before);
app.source_symbols.open = false;
app.text_workspace.show_drawer(None);
app.source_navigation.open = false;
assert!(captured_escape(&app).is_empty());
}
+82 -25
View File
@@ -98,6 +98,7 @@ impl App {
&& self.workflow.is_none()
&& !self.hosted.visible
&& self.model_menu.is_none()
&& self.text_workspace.menu().is_none()
&& self.architecture.is_none()
&& !self.behavior.has_pending()
}
@@ -113,6 +114,12 @@ impl App {
))
}
/// The reviewed diagram-query union is not integrated into this source yet.
/// Its eventual adapter must return the peer's captured chooser message.
pub(super) fn text_diagram_usages_message(&self) -> Option<Message> {
None
}
pub fn source_reveal_ticket(&self) -> Option<Id> {
self.source_symbols
.reveal
@@ -145,6 +152,10 @@ impl App {
&& nav::exact_cursor(self.source_workspace.text(), cursor)
{
self.queue_source_reveal(cursor, false);
// This ticket restores focus to the live editor, not a saved cursor.
// Iced's Cursor omits Word/Line selection kind; moving back to that
// lossy value would collapse an actual word/line selection.
self.source_jump = None;
}
}
@@ -174,13 +185,14 @@ impl App {
if self.source_select_line && cursor.selection.is_none() {
self.source_editor.perform(text_editor::Action::SelectLine);
}
return nav::interaction::guarded_focus(
self.source_editor_id(),
self.source_symbols.raw_interaction.clone(),
raw_interaction,
);
}
Task::none()
// A valid ticket with no jump is focus-only. All intentional navigation
// still takes the cursor branch above, including explicit line selection.
nav::interaction::guarded_focus(
self.source_editor_id(),
self.source_symbols.raw_interaction.clone(),
raw_interaction,
)
}
pub(super) fn source_symbol_event(&mut self, event: nav::SymbolEvent) -> Task<Message> {
@@ -189,20 +201,30 @@ impl App {
}
match event {
nav::SymbolEvent::Close => {
self.source_symbols.open = false;
self.source_symbols.results = None;
self.source_symbols.notice = None;
return self.show_text_drawer(None);
}
nav::SymbolEvent::Back => {
self.source_symbol_back();
// A successful Back needs no empty results panel. Retain an
// already open panel, or reveal an actionable return notice.
self.source_symbols.open |= self.source_symbols.notice.is_some();
if self.source_symbols.notice.is_some() {
self.text_workspace
.show_drawer(Some(text_workspace::DrawerTab::References));
let refs = self.text_workspace.references();
return iced::widget::operation::scroll_to(
self.text_workspace.reference_scroll_id(),
iced::widget::scrollable::AbsoluteOffset {
x: 0.,
y: refs.scroll_y(),
},
);
}
}
nav::SymbolEvent::Choose {
stamp,
reference,
index,
..
} => {
let Some(results) = self.source_symbols.results.clone() else {
return Task::none();
@@ -240,7 +262,8 @@ impl App {
}
fn start_source_query(&mut self, action: query::Action) -> Task<Message> {
self.source_symbols.open = true;
self.text_workspace
.show_drawer(Some(text_workspace::DrawerTab::References));
if !nav::interaction::is_current(
&self.source_symbols.raw_interaction,
self.source_symbols.raw_interaction.load(Ordering::SeqCst),
@@ -261,7 +284,7 @@ impl App {
self.source_symbols.serial = match self.source_symbols.serial.checked_add(1) {
Some(serial) => serial,
None => {
self.source_workspace.reset_navigation_session();
self.reset_source_navigation_session();
self.source_symbols.back.clear();
self.source_symbols.cache = None;
0
@@ -301,9 +324,12 @@ impl App {
};
self.source_symbols.in_flight = Some(request.job);
self.source_symbols.request = Some(request.clone());
self.source_symbols.display_request = Some(request.clone());
self.text_workspace
.begin_references(request.stamp, request.path.clone());
self.source_symbols.results = None;
self.source_symbols.notice = None;
Task::perform(
let worker = Task::perform(
async move {
let worker_request = request.clone();
let result = tokio::task::spawn_blocking(move || {
@@ -334,7 +360,14 @@ impl App {
nav::Completion { request, result }
},
Message::SourceSymbolsReady,
)
);
Task::batch([
worker,
iced::widget::operation::scroll_to(
self.text_workspace.reference_scroll_id(),
iced::widget::scrollable::AbsoluteOffset { x: 0., y: 0. },
),
])
}
pub(super) fn source_symbols_ready(&mut self, completion: nav::Completion) -> Task<Message> {
@@ -343,11 +376,11 @@ impl App {
return Task::none();
}
self.source_symbols.in_flight = None;
let wanted = self
let wanted_navigation = self
.source_symbols
.request
.take()
.is_some_and(|current| current.job == request.job)
.is_some_and(|current| current == request)
&& request.interaction == self.source_symbols.interaction
&& request.stamp.snapshot == self.source_key()
&& nav::interaction::is_current(
@@ -357,14 +390,33 @@ impl App {
&& request.path == self.source_workspace.active
&& request.cursor == self.source_editor.cursor()
&& self.source_navigation_available();
if !wanted {
let wanted_display = self
.source_symbols
.display_request
.as_ref()
.is_some_and(|current| current == &request)
&& request.stamp.snapshot == self.source_key();
if !wanted_display {
return Task::none();
}
match completion.result {
Ok((snapshot, results)) if self.source_snapshot_matches(&snapshot) => {
Ok((snapshot, results))
if self.source_snapshot_matches(&snapshot)
&& results.stamp == request.stamp
&& results.action == request.action =>
{
self.source_symbols.cache = Some(snapshot);
self.source_symbols.results = Some(results.clone());
if results.disposition == query::Disposition::Direct
self.text_workspace.install_reference_files(
results.stamp,
results
.definitions
.iter()
.map(|row| row.path.clone())
.chain(results.references.iter().map(|row| row.path.clone())),
);
if wanted_navigation
&& results.disposition == query::Disposition::Direct
&& let Some(row) = results.definitions.first()
{
self.source_symbol_jump(&row.path, row.position, row.end_position);
@@ -399,6 +451,9 @@ impl App {
Some("That source location is no longer available. Run navigation again.".into());
return;
}
// The destination is admitted. Capture effective Word/Line ranges only
// now, when this editor is actually about to leave its current position.
let departure = nav::selection::capture(&mut self.source_editor);
if let Some(buffer) = self
.source_workspace
.files
@@ -408,7 +463,7 @@ impl App {
session: self.source_workspace.session(),
path: self.source_workspace.active.clone(),
generation: buffer.generation(),
cursor: self.source_editor.cursor(),
cursor: departure,
};
self.source_symbols
.back
@@ -418,8 +473,7 @@ impl App {
}
self.source_symbols.back.push(origin);
}
self.source_workspace
.switch(path, self.source_editor.cursor());
self.source_workspace.switch(path, departure);
self.show_source_file(false);
self.queue_source_reveal(cursor, false);
}
@@ -434,7 +488,7 @@ impl App {
return;
};
let unchanged = origin.generation == buffer.generation();
let cursor = if unchanged {
let mut cursor = if unchanged {
origin.cursor
} else if origin.path == self.source_workspace.active {
self.source_editor.cursor()
@@ -448,8 +502,11 @@ impl App {
);
return;
}
self.source_workspace
.switch(&origin.path, self.source_editor.cursor());
let departure = nav::selection::capture(&mut self.source_editor);
if !unchanged && origin.path == self.source_workspace.active {
cursor = departure;
}
self.source_workspace.switch(&origin.path, departure);
self.show_source_file(false);
self.queue_source_reveal(cursor, false);
self.source_symbols.notice =
File diff suppressed because it is too large Load Diff
+628
View File
@@ -0,0 +1,628 @@
//! Text-only presentation and captured command envelopes. Source/model authority
//! remains in the existing App controllers; dispatch this envelope before the
//! generic source_interaction invalidation in App::update.
use super::{App, Message};
use crate::{context_menu, source_navigation as nav};
use iced::{
Point, Task,
widget::{self, text_editor::Cursor},
};
use nav::query::{QueryStamp, SnapshotKey};
use oa_core::{Id, source_project::SourceLocation};
use std::collections::BTreeSet;
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum DrawerTab {
References,
Problems,
Status,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum Command {
Find,
GoToLine,
Definition,
References,
RenameAlias,
Back,
UndoText,
RedoText,
UndoModel,
RedoModel,
UndoRename,
RevertFile,
ShowProblems,
ShowStatus,
ShowDiagramUsages,
}
impl Command {
fn shortcut(self) -> Option<&'static str> {
match self {
Self::Find => Some("Ctrl F"),
Self::GoToLine => Some("Ctrl G"),
Self::Definition => Some("F12"),
Self::References => Some("Shift F12"),
Self::RenameAlias => Some("F2"),
Self::Back => Some("Alt ←"),
Self::UndoText => Some("Ctrl Z"),
Self::RedoText => Some("Ctrl Y"),
_ => None,
}
}
fn label(self) -> &'static str {
match self {
Self::Find => "Find in file",
Self::GoToLine => "Go to line",
Self::Definition => "Go to definition",
Self::References => "Find references",
Self::RenameAlias => "Rename source alias",
Self::Back => "Back in source",
Self::UndoText => "Undo text edit",
Self::RedoText => "Redo text edit",
Self::UndoModel => "Undo model change",
Self::RedoModel => "Redo model change",
Self::UndoRename => "Undo source rename",
Self::RevertFile => "Revert current file",
Self::ShowProblems => "Source problems",
Self::ShowStatus => "Source status",
Self::ShowDiagramUsages => "Show diagram usages",
}
}
}
#[derive(Debug, Clone, PartialEq)]
pub struct CommandContext {
document: Id,
document_revision: u64,
source: SnapshotKey,
path: String,
cursor: Cursor,
interaction: Id,
}
#[derive(Debug, Clone)]
pub struct CommandRequest {
context: CommandContext,
command: Command,
}
#[derive(Debug, Clone)]
pub struct MenuRequest {
context: CommandContext,
anchor: Point,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct DiagnosticPublication {
generation: Id,
source: SnapshotKey,
}
impl DiagnosticPublication {
pub fn generation(self) -> Id {
self.generation
}
pub fn source(self) -> SnapshotKey {
self.source
}
pub fn target(self, visit: Id, location: SourceLocation) -> DiagnosticTarget {
DiagnosticTarget {
publication: self,
visit,
location,
}
}
}
#[derive(Debug, Clone)]
pub struct DiagnosticTarget {
publication: DiagnosticPublication,
visit: Id,
location: SourceLocation,
}
#[derive(Debug, Clone)]
pub enum Event {
ShowDrawer(DrawerTab),
HideDrawer,
ResizeDrawer(f32),
ToggleFile {
stamp: QueryStamp,
visit: Id,
path: String,
},
ReferenceScrolled {
stamp: QueryStamp,
visit: Id,
y: f32,
},
Command(CommandRequest),
OpenMenu(MenuRequest),
DismissMenu(Id),
Invoke {
token: Id,
command: Command,
},
Diagnostic(DiagnosticTarget),
}
#[derive(Debug, Clone)]
struct FrozenEntry {
command: Command,
action: Option<Action>,
}
#[derive(Debug, Clone)]
enum Action {
Dispatch(Box<Message>),
Drawer(DrawerTab),
}
#[derive(Debug, Clone)]
pub struct Menu {
token: Id,
popup_token: u64,
anchor: Point,
context: CommandContext,
entries: Vec<FrozenEntry>,
}
impl Menu {
pub fn token(&self) -> Id {
self.token
}
}
#[derive(Debug)]
pub struct ReferencePresentation {
stamp: Option<QueryStamp>,
origin: String,
files: BTreeSet<String>,
installed: bool,
collapsed_files: BTreeSet<String>,
scroll_y: f32,
}
impl Default for ReferencePresentation {
fn default() -> Self {
Self {
stamp: None,
origin: String::new(),
files: BTreeSet::new(),
installed: false,
collapsed_files: BTreeSet::new(),
scroll_y: 0.,
}
}
}
impl ReferencePresentation {
pub fn stamp(&self) -> Option<QueryStamp> {
self.stamp
}
pub fn scroll_y(&self) -> f32 {
self.scroll_y
}
pub fn collapsed(&self, path: &str) -> bool {
self.collapsed_files.contains(path)
}
}
#[derive(Debug)]
pub struct State {
drawer: Option<DrawerTab>,
drawer_visit: Id,
drawer_height: f32,
references: ReferencePresentation,
menu: Option<Menu>,
diagnostic_publication: Option<DiagnosticPublication>,
}
impl Default for State {
fn default() -> Self {
Self {
drawer: None,
drawer_visit: Id::new_v4(),
drawer_height: 180.,
references: ReferencePresentation::default(),
menu: None,
diagnostic_publication: None,
}
}
}
impl State {
pub fn drawer_visit(&self) -> Id {
self.drawer_visit
}
pub fn reference_scroll_id(&self) -> widget::Id {
widget::Id::from(format!("text-references-{}", self.drawer_visit))
}
pub fn drawer(&self) -> Option<DrawerTab> {
self.drawer
}
pub fn drawer_height(&self) -> f32 {
self.drawer_height
}
pub fn references(&self) -> &ReferencePresentation {
&self.references
}
pub fn menu(&self) -> Option<&Menu> {
self.menu.as_ref()
}
pub fn diagnostic_publication(&self) -> Option<DiagnosticPublication> {
self.diagnostic_publication
}
/// Call for EVERY diagnostics replacement or clear, including equal bytes.
pub fn publish_diagnostics(&mut self, source: SnapshotKey) -> DiagnosticPublication {
let publication = DiagnosticPublication {
generation: Id::new_v4(),
source,
};
self.diagnostic_publication = Some(publication);
publication
}
pub fn reset(&mut self) {
*self = Self::default();
}
pub fn dismiss_menu(&mut self) {
self.menu = None;
}
pub fn begin_references(&mut self, stamp: QueryStamp, origin: String) {
self.references = ReferencePresentation {
stamp: Some(stamp),
origin,
..ReferencePresentation::default()
};
self.show_drawer(Some(DrawerTab::References));
}
/// Install presentation groups only for the current completed query. Repeated
/// delivery of the same completion cannot undo the user's group choices.
pub fn install_reference_files(
&mut self,
stamp: QueryStamp,
paths: impl IntoIterator<Item = String>,
) {
let refs = &mut self.references;
if refs.stamp != Some(stamp) || refs.installed {
return;
}
refs.files = paths.into_iter().collect();
refs.collapsed_files = refs.files.clone();
let expanded = if refs.files.contains(&refs.origin) {
Some(refs.origin.clone())
} else {
refs.files.first().cloned()
};
if let Some(path) = expanded {
refs.collapsed_files.remove(&path);
}
refs.installed = true;
}
pub(super) fn show_drawer(&mut self, drawer: Option<DrawerTab>) {
self.drawer = drawer;
self.drawer_visit = Id::new_v4();
}
fn toggle_file(&mut self, stamp: QueryStamp, visit: Id, path: String) -> bool {
let refs = &mut self.references;
if self.drawer != Some(DrawerTab::References)
|| self.drawer_visit != visit
|| refs.stamp != Some(stamp)
|| !refs.files.contains(&path)
{
return false;
}
if !refs.collapsed_files.remove(&path) {
refs.collapsed_files.insert(path);
}
// Collapsing a group can replace a pressed row at the same position.
self.drawer_visit = Id::new_v4();
true
}
fn reference_scrolled(&mut self, stamp: QueryStamp, visit: Id, y: f32) {
let refs = &mut self.references;
if self.drawer == Some(DrawerTab::References)
&& refs.stamp == Some(stamp)
&& self.drawer_visit == visit
&& y.is_finite()
&& y >= 0.
{
refs.scroll_y = y;
}
}
}
impl App {
fn text_command_context(&self) -> CommandContext {
CommandContext {
document: self.canvas_document,
document_revision: self.document.revision(),
source: self.source_key(),
path: self.source_workspace.active.clone(),
cursor: self.source_editor.cursor(),
interaction: self.source_symbols.interaction,
}
}
pub fn text_command_message(&self, command: Command) -> Message {
Message::TextWorkspace(Event::Command(CommandRequest {
context: self.text_command_context(),
command,
}))
}
pub fn text_menu_message(&self, anchor: Point) -> Message {
Message::TextWorkspace(Event::OpenMenu(MenuRequest {
context: self.text_command_context(),
anchor,
}))
}
pub fn text_workspace_menu(&self) -> Option<context_menu::Menu<Message>> {
let menu = self.text_workspace.menu.as_ref()?;
Some(context_menu::Menu {
token: menu.popup_token,
anchor: menu.anchor,
entries: menu
.entries
.iter()
.flat_map(|entry| {
let mut rows = Vec::with_capacity(2);
if matches!(entry.command, Command::UndoText | Command::ShowProblems) {
rows.push(context_menu::Entry::separator());
}
rows.push(context_menu::Entry::Action {
label: entry.command.label().into(),
shortcut: entry.command.shortcut().map(str::to_owned),
message: entry.action.as_ref().map(|_| {
Message::TextWorkspace(Event::Invoke {
token: menu.token(),
command: entry.command,
})
}),
});
rows
})
.collect(),
on_close: Message::TextWorkspace(Event::DismissMenu(menu.token())),
})
}
pub fn text_diagnostic_message(&self, location: SourceLocation) -> Option<Message> {
let publication = self.text_workspace.diagnostic_publication?;
(publication.source == self.source_key()
&& self.text_workspace.drawer() == Some(DrawerTab::Problems))
.then(|| {
Message::TextWorkspace(Event::Diagnostic(
publication.target(self.text_workspace.drawer_visit(), location),
))
})
}
fn text_command_action(&self, command: Command) -> Option<Action> {
// Menu has been taken before dispatch-time admission. This intentionally
// uses navigation admission, not rename admission, for Find/text history.
if !self.source_navigation_available() {
return None;
}
let message =
match command {
Command::Find => Message::SourceNavigation(nav::Event::Open(false)),
Command::GoToLine => Message::SourceNavigation(nav::Event::Open(true)),
Command::Definition => self
.source_symbol_message(nav::SymbolEvent::Query(nav::query::Action::Definition)),
Command::References => self
.source_symbol_message(nav::SymbolEvent::Query(nav::query::Action::References)),
Command::RenameAlias => {
self.rename_admission().ok()?;
self.source_rename_message()
}
Command::Back => {
if !self
.source_symbols
.back
.iter()
.any(|entry| entry.session == self.source_workspace.session())
{
return None;
}
self.source_symbol_message(nav::SymbolEvent::Back)
}
Command::UndoText => Message::SourceUndo,
Command::RedoText => Message::SourceRedo,
Command::UndoModel | Command::RedoModel => {
if self.source_dirty() || self.draft_dirty() {
return None;
}
if command == Command::UndoModel {
if !self.document.can_undo() {
return None;
}
Message::Undo
} else {
if !self.document.can_redo() {
return None;
}
Message::Redo
}
}
Command::UndoRename => self.source_rename_undo_message()?,
Command::RevertFile => Message::RevertSource,
Command::ShowProblems => return Some(Action::Drawer(DrawerTab::Problems)),
Command::ShowStatus => return Some(Action::Drawer(DrawerTab::Status)),
Command::ShowDiagramUsages => self.text_diagram_usages_message()?,
};
Some(Action::Dispatch(Box::new(message)))
}
pub(super) fn text_workspace_event(&mut self, event: Event) -> Task<Message> {
match event {
Event::OpenMenu(request) => {
if request.context != self.text_command_context()
|| !self.source_navigation_available()
|| self.text_workspace.menu.is_some()
|| !request.anchor.x.is_finite()
|| !request.anchor.y.is_finite()
{
return Task::none();
}
let Some(popup_token) = self.menu_sequence.checked_add(1) else {
return Task::none();
};
self.source_interaction();
let commands = [
Command::Find,
Command::GoToLine,
Command::Definition,
Command::References,
Command::RenameAlias,
Command::Back,
Command::UndoText,
Command::RedoText,
Command::UndoRename,
Command::UndoModel,
Command::RedoModel,
Command::RevertFile,
Command::ShowProblems,
Command::ShowStatus,
Command::ShowDiagramUsages,
];
let entries = commands
.into_iter()
.filter_map(|command| {
let action = self.text_command_action(command);
if command == Command::ShowDiagramUsages && action.is_none() {
None
} else {
Some(FrozenEntry { command, action })
}
})
.collect();
self.menu_sequence = popup_token;
self.text_workspace.menu = Some(Menu {
token: Id::new_v4(),
popup_token,
anchor: request.anchor,
context: self.text_command_context(),
entries,
});
}
Event::DismissMenu(token) => {
if self
.text_workspace
.menu
.as_ref()
.is_some_and(|menu| menu.token == token)
{
self.text_workspace.menu = None;
self.source_interaction();
}
}
Event::Invoke { token, command } => {
if !self.text_workspace.menu.as_ref().is_some_and(|menu| {
menu.token == token && menu.context == self.text_command_context()
}) {
return Task::none();
}
// Validate before closing; consume this invocation only once.
// Never resolve a frozen row against a newly generated menu.
let menu = self.text_workspace.menu.take().unwrap();
let Some(action) = menu
.entries
.into_iter()
.find(|entry| entry.command == command)
.and_then(|entry| entry.action)
else {
return Task::none();
};
if self.text_command_action(command).is_none() {
return Task::none();
}
return self.dispatch_text_action(action);
}
Event::Command(request) => {
if request.context != self.text_command_context() {
return Task::none();
}
if let Some(action) = self.text_command_action(request.command) {
return self.dispatch_text_action(action);
}
}
Event::ShowDrawer(tab) => {
if !self.source_navigation_available() {
return Task::none();
}
return self.show_text_drawer(Some(tab));
}
Event::HideDrawer => {
if !self.source_navigation_available() {
return Task::none();
}
return self.show_text_drawer(None);
}
Event::ResizeDrawer(height) => {
if self.source_navigation_available() && height.is_finite() {
// The view applies the measured editor-allocation bound.
let height = height.clamp(180., 1200.);
if height != self.text_workspace.drawer_height {
self.source_interaction();
self.text_workspace.drawer_height = height;
}
}
}
Event::ToggleFile { stamp, visit, path } => {
if self.source_navigation_available()
&& self.text_workspace.toggle_file(stamp, visit, path)
{
self.source_interaction();
}
}
Event::ReferenceScrolled { stamp, visit, y } => {
// Passive geometry must neither invalidate pending navigation
// nor reset the editor identity, even while commands are blocked.
self.text_workspace.reference_scrolled(stamp, visit, y);
}
Event::Diagnostic(target) => {
if !self.source_navigation_available()
|| self.text_workspace.drawer() != Some(DrawerTab::Problems)
|| self.text_workspace.drawer_visit() != target.visit
|| self.text_workspace.diagnostic_publication != Some(target.publication)
|| target.publication.source != self.source_key()
|| !self
.source_workspace
.files
.get(&target.location.path)
.is_some_and(|file| valid_span(&file.text, &target.location))
{
return Task::none();
}
self.source_interaction();
self.jump_to_source(target.location);
}
}
Task::none()
}
fn dispatch_text_action(&mut self, action: Action) -> Task<Message> {
match action {
Action::Dispatch(message) => self.update(*message),
Action::Drawer(tab) => self.show_text_drawer(Some(tab)),
}
}
pub(super) fn show_text_drawer(&mut self, drawer: Option<DrawerTab>) -> Task<Message> {
self.source_interaction();
self.text_workspace.show_drawer(drawer);
if drawer == Some(DrawerTab::References) {
let refs = self.text_workspace.references();
widget::operation::scroll_to(
self.text_workspace.reference_scroll_id(),
widget::scrollable::AbsoluteOffset {
x: 0.,
y: refs.scroll_y(),
},
)
} else {
Task::none()
}
}
}
fn valid_span(text: &str, location: &SourceLocation) -> bool {
let span = location.span;
span.start <= span.end
&& span.end <= text.len()
&& text.is_char_boundary(span.start)
&& text.is_char_boundary(span.end)
}
#[cfg(test)]
mod tests;
#[cfg(test)]
mod lifecycle_tests;
#[cfg(all(test, debug_assertions))]
mod focus_selection_tests;
@@ -0,0 +1,480 @@
//! The mounted CPU renderer and App use the same cosmic-text editor engine, but
//! Iced's Content is parameterized by renderer and cannot be shared between them.
//! We hit-test the initial click in the laid-out CPU widget, seed that raw caret
//! in App, and relay the real subsequent SelectWord/SelectLine and editing actions.
//! App's own Content is never replaced or cursor-normalized after selection. This
//! tests the actual controller/content boundary without a window or GPU; native
//! replay remains the check of the complete production renderer/layout path.
use super::*;
use crate::app::Page;
use crate::document::Document;
use crate::source_workspace::{LIMITS, Workspace};
use crate::views::source_tests::FontLayout;
use iced::advanced::{Layout, Shell, layout, widget as core_widget};
use iced::futures::StreamExt;
use iced::keyboard::{self, Key, Modifiers};
use iced::widget::{button, container, row, text_editor, text_input};
use iced::{Element, Event, Font, Size, mouse};
use oa_core::{Project, source_project::SourceBundle};
use std::{collections::BTreeMap, sync::Arc, sync::atomic::Ordering};
const SOURCE: &str = concat!(
"// oa_contact tail\r\n",
"arcadia 7;\r\n",
"project model \"Selection\" id \"9e8f0000-0000-4000-8000-000000000091\" {}\r\n",
);
const HOST: Size = Size::new(620., 260.);
fn fixture() -> App {
let bundle = SourceBundle {
entry: "project.arcadia".into(),
files: BTreeMap::from([("project.arcadia".into(), SOURCE.into())]),
};
let mut app = App::with_project(Project::empty());
app.document = Document::from_bundle(bundle, LIMITS).unwrap();
app.source_workspace = Workspace::new(app.document.bundle(), true);
app.selected = app.project().id;
app.refresh_draft();
app.page = Page::Text;
app.show_source_file(false);
app.publish_source_diagnostics(app.document.compiled().diagnostics.clone());
app
}
fn ui<'a>(
app: &App,
content: &'a text_editor::Content<FontLayout>,
) -> Element<'a, Message, iced::Theme, FontLayout> {
let find: Element<'a, Message, iced::Theme, FontLayout> = if app.source_navigation.open {
row![
text_input("Find", "")
.id("source-find")
.on_input(|s| Message::SourceNavigation(nav::Event::Query(s))),
container(button("Close").on_press(app.source_find_close_message()))
.id("selection-find-close"),
]
.into()
} else {
widget::Space::new().into()
};
// Column::push drops zero-height children. Keep both paths mounted even
// while Find is hidden, as the production retained-slot layout does.
widget::Column::from_vec(vec![
container(find)
.height(if app.source_navigation.open { 32. } else { 0. })
.into(),
widget::text_editor(content)
.id(app.source_editor_id())
.font(Font::MONOSPACE)
.size(14)
.padding(16)
.height(iced::Fill)
.on_action(Message::SourceEdit)
.into(),
])
.width(iced::Fill)
.height(iced::Fill)
.into()
}
struct Mounted {
content: text_editor::Content<FontLayout>,
tree: core_widget::Tree,
}
// Operations follow widget-provided traversal instead of assuming a fixed
// relationship between layout nodes, transparent containers and state trees.
struct Inspection {
editor: core_widget::Id,
focused: Option<bool>,
close_bounds: Option<iced::Rectangle>,
}
impl core_widget::Operation for Inspection {
fn traverse(&mut self, operate: &mut dyn FnMut(&mut dyn core_widget::Operation)) {
operate(self);
}
fn focusable(
&mut self,
id: Option<&core_widget::Id>,
_: iced::Rectangle,
state: &mut dyn core_widget::operation::Focusable,
) {
if id == Some(&self.editor) {
assert!(
self.focused.replace(state.is_focused()).is_none(),
"duplicate editor ID"
);
}
}
fn container(&mut self, id: Option<&core_widget::Id>, bounds: iced::Rectangle) {
if id == Some(&core_widget::Id::new("selection-find-close")) {
assert!(
self.close_bounds.replace(bounds).is_none(),
"duplicate Close target ID"
);
}
}
}
impl Mounted {
fn new() -> Self {
Self {
content: text_editor::Content::with_text(SOURCE),
tree: core_widget::Tree::empty(),
}
}
fn events(&mut self, app: &App, events: &[(Event, mouse::Cursor)]) -> Vec<Message> {
let mut view = ui(app, &self.content);
self.tree.diff(view.as_widget());
let node = view.as_widget_mut().layout(
&mut self.tree,
&FontLayout,
&layout::Limits::new(Size::ZERO, HOST),
);
let mut messages = Vec::new();
for (event, cursor) in events {
let mut shell = Shell::new(&mut messages);
view.as_widget_mut().update(
&mut self.tree,
event,
Layout::new(&node),
*cursor,
&FontLayout,
&mut iced::advanced::clipboard::Null,
&mut shell,
&iced::Rectangle::with_size(HOST),
);
if !matches!(event, Event::Mouse(mouse::Event::ButtonReleased(_))) {
assert!(
shell.is_event_captured(),
"mounted input must be handled: {event:?}"
);
}
}
messages
}
fn operation(&mut self, app: &App, mut op: Box<dyn core_widget::Operation>) {
let mut view = ui(app, &self.content);
self.tree.diff(view.as_widget());
let node = view.as_widget_mut().layout(
&mut self.tree,
&FontLayout,
&layout::Limits::new(Size::ZERO, HOST),
);
loop {
view.as_widget_mut().operate(
&mut self.tree,
Layout::new(&node),
&FontLayout,
op.as_mut(),
);
match op.finish() {
core_widget::operation::Outcome::Chain(next) => op = next,
core_widget::operation::Outcome::None => break,
core_widget::operation::Outcome::Some(()) => panic!("focus does not emit messages"),
}
}
}
async fn task(&mut self, app: &App, task: Task<Message>) {
if let Some(mut actions) = iced_runtime::task::into_stream(task) {
while let Some(action) = actions.next().await {
let iced_runtime::Action::Widget(op) = action else {
panic!("expected a widget operation")
};
self.operation(app, op);
}
}
}
fn inspect(&mut self, app: &App) -> Inspection {
let mut inspection = Inspection {
editor: app.source_editor_id(),
focused: None,
close_bounds: None,
};
let mut view = ui(app, &self.content);
self.tree.diff(view.as_widget());
let node = view.as_widget_mut().layout(
&mut self.tree,
&FontLayout,
&layout::Limits::new(Size::ZERO, HOST),
);
view.as_widget_mut().operate(
&mut self.tree,
Layout::new(&node),
&FontLayout,
&mut inspection,
);
inspection
}
fn editor_focused(&mut self, app: &App) -> bool {
self.inspect(app)
.focused
.expect("exactly one editor with the requested ID")
}
fn close_message(&mut self, app: &App, escape: bool) -> Message {
if escape {
let event = Event::Keyboard(keyboard::Event::KeyPressed {
key: Key::Named(keyboard::key::Named::Escape),
modified_key: Key::Named(keyboard::key::Named::Escape),
physical_key: keyboard::key::Physical::Code(keyboard::key::Code::Escape),
location: keyboard::Location::Standard,
modifiers: Modifiers::empty(),
text: None,
repeat: false,
});
assert!(
self.events(app, &[(event, mouse::Cursor::Unavailable)])
.is_empty()
);
// The existing subscription tests cover the captured-Escape bridge.
// Deliver its App message after this actual input captured the key.
Message::Escape
} else {
let center = self
.inspect(app)
.close_bounds
.expect("the mounted Find Close target exists")
.center();
let cursor = mouse::Cursor::Available(center);
let mut messages = self.events(
app,
&[
(
Event::Mouse(mouse::Event::ButtonPressed(mouse::Button::Left)),
cursor,
),
(
Event::Mouse(mouse::Event::ButtonReleased(mouse::Button::Left)),
cursor,
),
],
);
assert_eq!(messages.len(), 1);
let close = messages.remove(0);
assert!(matches!(close, Message::SourceFindClose(..)));
close
}
}
fn select(&mut self, app: &mut App, line: bool) {
// One mounted update batch avoids delays between Iced's consecutive-click
// timestamps; content actions are applied in their emitted order below.
let at = mouse::Cursor::Available(Point::new(65., 25.));
let events = (0..if line { 3 } else { 2 })
.flat_map(|_| {
[
(
Event::Mouse(mouse::Event::ButtonPressed(mouse::Button::Left)),
at,
),
(
Event::Mouse(mouse::Event::ButtonReleased(mouse::Button::Left)),
at,
),
]
})
.collect::<Vec<_>>();
let messages = self.events(app, &events);
assert_eq!(messages.len(), if line { 3 } else { 2 });
for (index, message) in messages.into_iter().enumerate() {
let Message::SourceEdit(action) = message else {
panic!("editor action")
};
if index == 0 {
assert!(matches!(action, text_editor::Action::Click(_)));
self.content.perform(action);
let caret = self.content.cursor();
assert_eq!(caret.position.line, 0);
assert!(
(4..13).contains(&caret.position.column),
"click must hit inside oa_contact: {caret:?}"
);
// App's GPU-typed Content has no public layout API. Copy only the
// initial hit-tested caret before any Word/Line selection exists.
app.source_editor.move_to(caret);
} else {
assert_eq!(
action,
if index == 1 {
text_editor::Action::SelectWord
} else {
text_editor::Action::SelectLine
}
);
self.content.perform(action.clone());
let _ = app.update(Message::SourceEdit(action));
}
}
assert_eq!(
self.content.selection().as_deref(),
Some(if line {
"// oa_contact tail"
} else {
"oa_contact"
})
);
assert_eq!(app.source_editor.selection(), self.content.selection());
assert!(self.editor_focused(app));
}
fn type_replacement(&mut self, app: &mut App) {
let event = Event::Keyboard(keyboard::Event::KeyPressed {
key: Key::Character("x".into()),
modified_key: Key::Character("x".into()),
physical_key: keyboard::key::Physical::Code(keyboard::key::Code::KeyX),
location: keyboard::Location::Standard,
modifiers: Modifiers::empty(),
text: Some("x".into()),
repeat: false,
});
let messages = self.events(app, &[(event, mouse::Cursor::Unavailable)]);
assert_eq!(messages.len(), 1);
let Message::SourceEdit(action) = messages.into_iter().next().unwrap() else {
panic!("typed edit")
};
assert_eq!(
action,
text_editor::Action::Edit(text_editor::Edit::Insert('x'))
);
self.content.perform(action.clone());
let _ = app.update(Message::SourceEdit(action));
}
}
#[tokio::test]
async fn word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes() {
for line in [false, true] {
for escape in [false, true] {
let mut app = fixture();
let accepted = app.document.snapshot();
let mut mounted = Mounted::new();
mounted.select(&mut app, line);
let selected = app.source_editor.selection();
let cursor = app.source_editor.cursor();
// Word/Line selection has coincident raw endpoints. Merely checking
// cursor equality after a move_to roundtrip cannot detect the defect.
assert_eq!(cursor.selection, Some(cursor.position));
let task = app.update(Message::SourceNavigation(nav::Event::Open(false)));
mounted.task(&app, task).await;
assert!(!mounted.editor_focused(&app));
assert_eq!(app.source_editor.selection(), selected);
let close = mounted.close_message(&app, escape);
let _ = app.update(close);
let ticket = app
.source_reveal_ticket()
.expect("guarded restoration ticket");
let task = app.update(Message::SourceViewport(Some(ticket)));
mounted.task(&app, task).await;
assert!(mounted.editor_focused(&app));
assert_eq!(app.source_editor.cursor(), cursor);
assert_eq!(
app.source_editor.selection(),
selected,
"selected bytes must survive focus restoration"
);
assert_eq!(app.source_editor.text(), SOURCE);
mounted.type_replacement(&mut app);
let expected = SOURCE.replacen(selected.as_deref().unwrap(), "x", 1);
assert_eq!(app.source_editor.text(), expected);
assert_eq!(app.source_workspace.text(), expected);
assert_eq!(mounted.content.text(), expected);
assert!(Arc::ptr_eq(&accepted, &app.document.snapshot()));
assert!(!app.document.can_undo() && !app.document.can_redo());
}
}
}
#[test]
fn mounted_direct_typing_control_and_old_cursor_roundtrip_discriminate_selection_loss() {
for line in [false, true] {
for old_roundtrip in [false, true] {
let mut app = fixture();
let mut mounted = Mounted::new();
mounted.select(&mut app, line);
let selected = app.source_editor.selection().unwrap();
let interior = app.source_editor.cursor();
if old_roundtrip {
app.source_editor.move_to(interior);
assert_ne!(
app.source_editor.selection().as_deref(),
Some(selected.as_str())
);
}
mounted.type_replacement(&mut app);
let expected = if old_roundtrip {
let mut text = SOURCE.to_owned();
text.insert(interior.position.column, 'x');
text
} else {
SOURCE.replacen(&selected, "x", 1)
};
assert_eq!(app.source_editor.text(), expected);
assert_eq!(app.source_workspace.text(), expected);
assert_eq!(mounted.content.text(), SOURCE.replacen(&selected, "x", 1));
}
}
}
#[tokio::test]
async fn stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes() {
for later_raw_input in [false, true] {
let mut app = fixture();
let mut mounted = Mounted::new();
mounted.select(&mut app, false);
let selected = app.source_editor.selection();
let open = app.update(Message::SourceNavigation(nav::Event::Open(false)));
mounted.task(&app, open).await;
let close = app.source_find_close_message();
let _ = app.update(close);
let ticket = app.source_reveal_ticket().unwrap();
let focus = if later_raw_input {
app.update(Message::SourceViewport(Some(ticket)))
} else {
Task::none()
};
let reopen = app.update(Message::SourceNavigation(nav::Event::Open(false)));
mounted.task(&app, reopen).await;
if later_raw_input {
app.source_symbols
.raw_interaction
.fetch_add(1, Ordering::SeqCst);
mounted.task(&app, focus).await;
} else {
let stale = app.update(Message::SourceViewport(Some(ticket)));
mounted.task(&app, stale).await;
}
assert!(app.source_navigation.open);
assert!(!mounted.editor_focused(&app));
assert_eq!(app.source_editor.selection(), selected);
assert_eq!(app.source_editor.text(), SOURCE);
}
}
#[tokio::test]
async fn explicit_cursor_navigation_still_moves_and_selects_requested_line() {
let mut app = fixture();
let mut mounted = Mounted::new();
mounted.select(&mut app, false);
let target = text_editor::Cursor {
position: text_editor::Position { line: 1, column: 3 },
selection: None,
};
// Clear the previous semantic selection as actual show_source_file does when
// moving to another source buffer, then exercise intentional navigation.
app.show_source_file(false);
app.queue_source_reveal(target, true);
let ticket = app.source_reveal_ticket().unwrap();
let task = app.update(Message::SourceViewport(Some(ticket)));
mounted.task(&app, task).await;
assert_eq!(app.source_editor.cursor().position, target.position);
assert_eq!(app.source_editor.selection().as_deref(), Some("arcadia 7;"));
}
@@ -0,0 +1,438 @@
//! Real lifecycle receipts, with all disk writes confined to unique temp roots.
//! Returned App worker tasks are not polled; completions use the normal captured
//! query input and are delivered deterministically through App::update.
use super::*;
use crate::app::{Page, read_snapshot, write_snapshot};
use crate::document::Document;
use crate::source_workspace::{LIMITS, Workspace};
use oa_core::{
Project,
language::{Diagnostic, Span},
source_project::{SourceBundle, SourceDiagnostic},
validation::Severity,
};
use std::{collections::BTreeMap, path::Path, sync::Arc};
const VALID: &str = concat!(
"arcadia 7;\r\n",
"project model \"Lifecycle 救援\" id \"9e8f0000-0000-4000-8000-000000000001\" {\r\n",
" oa_activity assess \"Assess\" id \"9e8f0000-0000-4000-8000-000000000002\" {}\r\n",
"}\r\n",
);
fn fixture() -> App {
let bundle = SourceBundle {
entry: "project.arcadia".into(),
files: BTreeMap::from([("project.arcadia".into(), VALID.into())]),
};
let mut app = App::with_project(Project::empty());
// with_project uses in-memory Home metadata and no recovery directory.
assert!(app.recovery.directory.is_none());
app.document = Document::from_bundle(bundle, LIMITS).unwrap();
app.source_workspace = Workspace::new(app.document.bundle(), true);
app.selected = app.project().id;
app.refresh_draft();
app.page = Page::Text;
app.show_source_file(false);
app.publish_source_diagnostics(app.document.compiled().diagnostics.clone());
app
}
fn send(app: &mut App, message: Message) {
let _ = app.update(message);
}
fn save(app: &mut App, path: &Path) {
let receipt = write_snapshot(
app.canvas_document,
app.document.revision(),
app.document.snapshot(),
path.to_owned(),
app.disk_project.clone(),
)
.unwrap();
send(app, Message::Saved(Ok(Some(receipt))));
}
fn reveal(app: &mut App) {
if let Some(ticket) = app.source_reveal_ticket() {
send(app, Message::SourceViewport(Some(ticket)));
}
}
fn query(app: &mut App, action: nav::query::Action) -> nav::Completion {
let message = app.source_symbol_message(nav::SymbolEvent::Query(action));
send(app, message);
let request = app.source_symbols.request.clone().expect("admitted query");
assert_eq!(app.source_symbols.in_flight, Some(request.job));
let snapshot = Arc::new(app.with_source_input(|input| {
nav::query::admit_owned(input, nav::query::Limits::default())
.unwrap()
.capture()
.unwrap()
}));
let results = Arc::new(
snapshot
.query(nav::query::Query {
stamp: request.stamp,
path: &request.path,
byte_offset: request.offset,
action,
})
.unwrap(),
);
nav::Completion {
request,
result: Ok((snapshot, results)),
}
}
fn seed_navigation(app: &mut App, pending: bool) -> Option<nav::Completion> {
let text = app.source_workspace.text();
let start = text.find("oa_activity assess").unwrap() + "oa_activity ".len();
let prefix = &text[..start];
let position = widget::text_editor::Position {
line: prefix.bytes().filter(|byte| *byte == b'\n').count(),
column: prefix.rsplit_once('\n').unwrap().1.len(),
};
app.source_editor.move_to(Cursor {
position,
selection: None,
});
let ready = query(app, nav::query::Action::Definition);
send(app, Message::SourceSymbolsReady(ready));
reveal(app);
assert_eq!(app.source_symbols.back.len(), 1);
let ready = query(app, nav::query::Action::References);
send(app, Message::SourceSymbolsReady(ready));
assert!(app.source_symbols.results.is_some() && app.source_symbols.cache.is_some());
assert!(app.source_symbols.display_request.is_some());
assert_eq!(app.text_workspace.drawer(), Some(DrawerTab::References));
if pending {
Some(query(app, nav::query::Action::Definition))
} else {
None
}
}
fn warning(app: &App) -> SourceDiagnostic {
let source = app.source_workspace.text();
let primary = source.find("model").unwrap();
let related = source.find("assess").unwrap();
SourceDiagnostic {
path: app.source_workspace.active.clone(),
diagnostic: Diagnostic {
severity: Severity::Warning,
code: "lifecycle_warning".into(),
object_id: None,
field: None,
line: 2,
column: 9,
message: "Retained warning with a related source location".into(),
span: Span {
start: primary,
end: primary + 5,
},
},
related: vec![SourceLocation {
path: app.source_workspace.active.clone(),
span: Span {
start: related,
end: related + 6,
},
}],
}
}
fn warning_messages(app: &App) -> [Message; 2] {
let warning = &app.source_diagnostics[0];
[
app.text_diagnostic_message(SourceLocation {
path: warning.path.clone(),
span: warning.diagnostic.span,
})
.unwrap(),
app.text_diagnostic_message(warning.related[0].clone())
.unwrap(),
]
}
fn assert_cleared(app: &App, job: Option<Id>) {
assert_eq!(app.source_symbols.in_flight, job);
assert!(app.source_symbols.request.is_none() && app.source_symbols.display_request.is_none());
assert!(app.source_symbols.results.is_none() && app.source_symbols.cache.is_none());
assert!(app.source_symbols.back.is_empty());
assert!(app.source_symbols.reveal.is_none() && app.source_jump.is_none());
assert!(app.text_workspace.drawer().is_none() && app.text_workspace.menu().is_none());
assert!(app.text_workspace.references().stamp().is_none());
}
#[test]
fn saved_new_destination_republishes_current_warning_and_refuses_old_primary_and_related() {
let first = tempfile::tempdir().unwrap();
let second = tempfile::tempdir().unwrap();
let first_path = first.path().canonicalize().unwrap().join("project.arcadia");
let second_path = second
.path()
.canonicalize()
.unwrap()
.join("project.arcadia");
let mut app = fixture();
save(&mut app, &first_path);
let ready = seed_navigation(&mut app, true).unwrap();
let job = ready.request.job;
app.publish_source_diagnostics(vec![warning(&app)]);
send(
&mut app,
Message::TextWorkspace(Event::ShowDrawer(DrawerTab::Problems)),
);
let old = warning_messages(&app);
let warnings = app.source_diagnostics.clone();
let publication = app.text_workspace.diagnostic_publication().unwrap();
let source = app.source_key();
let accepted = app.document.snapshot();
let revision = app.document.revision();
let raw = app.source_workspace.bundle();
save(&mut app, &second_path);
assert_eq!(app.path.as_deref(), Some(second_path.as_path()));
assert_ne!(app.source_key().workspace, source.workspace);
assert_eq!(app.source_workspace.bundle(), raw);
assert!(Arc::ptr_eq(&app.document.snapshot(), &accepted));
assert_eq!(app.document.revision(), revision);
assert_eq!(std::fs::read_to_string(&first_path).unwrap(), VALID);
assert_eq!(std::fs::read_to_string(&second_path).unwrap(), VALID);
assert_eq!(app.source_diagnostics, warnings);
let current = app
.text_workspace
.diagnostic_publication()
.expect("identity-only save retained current warnings");
assert_eq!(current.source(), app.source_key());
assert_ne!(current.generation(), publication.generation());
assert_cleared(&app, Some(job));
for message in old {
let interaction = app.source_symbols.interaction;
send(&mut app, message);
assert_eq!(app.source_symbols.interaction, interaction);
assert!(app.source_symbols.reveal.is_none() && app.source_jump.is_none());
}
send(
&mut app,
Message::TextWorkspace(Event::ShowDrawer(DrawerTab::Problems)),
);
for message in warning_messages(&app) {
send(&mut app, message);
assert!(
app.source_symbols.reveal.is_some(),
"fresh primary and related warnings remain actionable"
);
reveal(&mut app);
}
let cursor = app.source_editor.cursor();
send(&mut app, Message::SourceSymbolsReady(ready));
assert!(app.source_symbols.in_flight.is_none());
assert!(app.source_symbols.results.is_none());
assert!(app.source_symbols.reveal.is_none() && app.source_jump.is_none());
assert_eq!(app.source_editor.cursor(), cursor);
assert_eq!(app.source_workspace.bundle(), raw);
assert!(Arc::ptr_eq(&app.document.snapshot(), &accepted));
assert!(!app.document.can_undo() && !app.document.can_redo());
}
#[test]
fn invalid_repair_open_clears_prior_presentation_and_publishes_current_problems_preserving_worker()
{
for pending in [false, true] {
let directory = tempfile::tempdir().unwrap();
let path = directory
.path()
.canonicalize()
.unwrap()
.join("broken.arcadia");
let invalid = format!(
"{} include \"missing.arcadia\";\r\n}}\r\n",
VALID.strip_suffix("}\r\n").unwrap()
);
std::fs::write(&path, &invalid).unwrap();
let mut app = fixture();
let ready = seed_navigation(&mut app, pending);
let job = ready.as_ref().map(|ready| ready.request.job);
app.publish_source_diagnostics(vec![warning(&app)]);
send(
&mut app,
Message::TextWorkspace(Event::ShowDrawer(DrawerTab::Problems)),
);
let old = warning_messages(&app);
let old_publication = app.text_workspace.diagnostic_publication().unwrap();
let old_source = app.source_key();
let accepted = app.document.snapshot();
let open_menu = app.text_menu_message(Point::new(20., 20.));
send(&mut app, open_menu);
assert!(app.text_workspace.menu().is_some());
let loaded = read_snapshot(path.clone()).unwrap();
send(&mut app, Message::Loaded(Ok(Some(loaded))));
assert!(!app.source_workspace.applied);
assert_eq!(app.path.as_deref(), Some(path.as_path()));
assert_ne!(app.source_key().workspace, old_source.workspace);
assert_eq!(app.source_workspace.text(), invalid);
assert!(Arc::ptr_eq(&app.document.snapshot(), &accepted));
assert_cleared(&app, job);
assert!(
app.source_diagnostics
.iter()
.any(|issue| issue.diagnostic.severity == Severity::Error)
);
let publication = app.text_workspace.diagnostic_publication().unwrap();
assert_eq!(publication.source(), app.source_key());
assert_ne!(publication.generation(), old_publication.generation());
for message in old {
send(&mut app, message);
}
assert!(app.source_symbols.reveal.is_none() && app.source_jump.is_none());
send(
&mut app,
Message::TextWorkspace(Event::ShowDrawer(DrawerTab::Problems)),
);
let issue = app
.source_diagnostics
.iter()
.find(|issue| {
issue.path == app.source_workspace.active
&& issue.diagnostic.span.end <= invalid.len()
})
.unwrap();
let current = app
.text_diagnostic_message(SourceLocation {
path: issue.path.clone(),
span: issue.diagnostic.span,
})
.unwrap();
send(&mut app, current);
assert!(app.source_symbols.reveal.is_some());
reveal(&mut app);
if let Some(ready) = ready {
send(&mut app, Message::SourceSymbolsReady(ready));
}
assert!(app.source_symbols.in_flight.is_none());
assert!(app.source_symbols.results.is_none());
assert!(app.source_symbols.reveal.is_none() && app.source_jump.is_none());
assert_eq!(app.source_workspace.text(), invalid);
assert_eq!(std::fs::read_to_string(&path).unwrap(), invalid);
assert!(Arc::ptr_eq(&app.document.snapshot(), &accepted));
assert!(!app.document.can_undo() && !app.document.can_redo());
}
}
#[test]
fn canceled_or_failed_open_that_installs_nothing_retains_current_presentation_and_diagnostics() {
for failed in [false, true] {
let mut app = fixture();
seed_navigation(&mut app, false);
app.publish_source_diagnostics(vec![warning(&app)]);
let results = app.source_symbols.results.clone().unwrap();
let cache = app.source_symbols.cache.clone().unwrap();
let display = app.source_symbols.display_request.clone();
let back = app
.source_symbols
.back
.iter()
.map(|entry| {
(
entry.session,
entry.path.clone(),
entry.generation,
entry.cursor,
)
})
.collect::<Vec<_>>();
let key = app.source_key();
let accepted = app.document.snapshot();
let raw = app.source_workspace.bundle();
let cursor = app.source_editor.cursor();
let publication = app.text_workspace.diagnostic_publication();
let diagnostics = app.source_diagnostics.clone();
let visit = app.text_workspace.drawer_visit();
let result = if failed {
Err("Fixture read failed before installing a workspace".into())
} else {
Ok(None)
};
send(&mut app, Message::Loaded(result));
assert_eq!(app.source_key(), key);
assert_eq!(app.text_workspace.diagnostic_publication(), publication);
assert_eq!(app.source_diagnostics, diagnostics);
assert_eq!(app.text_workspace.drawer(), Some(DrawerTab::References));
assert_eq!(app.text_workspace.drawer_visit(), visit);
assert!(Arc::ptr_eq(
app.source_symbols.results.as_ref().unwrap(),
&results
));
assert!(Arc::ptr_eq(
app.source_symbols.cache.as_ref().unwrap(),
&cache
));
assert_eq!(app.source_symbols.display_request, display);
assert_eq!(
app.source_symbols
.back
.iter()
.map(|entry| (
entry.session,
entry.path.clone(),
entry.generation,
entry.cursor
))
.collect::<Vec<_>>(),
back
);
assert_eq!(app.source_workspace.bundle(), raw);
assert_eq!(app.source_editor.cursor(), cursor);
assert!(Arc::ptr_eq(&app.document.snapshot(), &accepted));
}
}
#[test]
fn saved_new_destination_does_not_revalidate_already_stale_warning_locations() {
let first = tempfile::tempdir().unwrap();
let second = tempfile::tempdir().unwrap();
let first_path = first.path().canonicalize().unwrap().join("project.arcadia");
let second_path = second
.path()
.canonicalize()
.unwrap()
.join("project.arcadia");
let mut app = fixture();
save(&mut app, &first_path);
app.publish_source_diagnostics(vec![warning(&app)]);
send(
&mut app,
Message::TextWorkspace(Event::ShowDrawer(DrawerTab::Problems)),
);
let old = warning_messages(&app);
let publication = app.text_workspace.diagnostic_publication().unwrap();
let draft = format!("{VALID}// unsaved current draft\r\n");
app.source_workspace
.edit(draft.clone(), app.source_editor.cursor());
app.show_source_file(false);
assert_ne!(publication.source(), app.source_key());
let accepted = app.document.snapshot();
save(&mut app, &second_path);
assert!(
app.text_workspace.diagnostic_publication().is_none(),
"identity-only reset cannot turn an old source span into a current warning"
);
send(
&mut app,
Message::TextWorkspace(Event::ShowDrawer(DrawerTab::Problems)),
);
assert!(
app.text_diagnostic_message(SourceLocation {
path: app.source_diagnostics[0].path.clone(),
span: app.source_diagnostics[0].diagnostic.span,
})
.is_none()
);
for message in old {
send(&mut app, message);
}
assert!(app.source_symbols.reveal.is_none() && app.source_jump.is_none());
assert_eq!(app.source_workspace.text(), draft);
assert!(app.source_dirty());
assert!(Arc::ptr_eq(&app.document.snapshot(), &accepted));
assert_eq!(
std::fs::read_to_string(&second_path).unwrap(),
VALID,
"receipt records accepted bytes while the newer draft remains unsaved"
);
}
@@ -0,0 +1,617 @@
use super::*;
use crate::app::Page;
use oa_core::{Project, language::Span};
use std::sync::Arc;
fn fixture() -> App {
let mut app = App::with_project(Project::empty());
app.page = Page::Text;
let diagnostics = app.source_diagnostics.clone();
app.publish_source_diagnostics(diagnostics);
assert!(app.source_navigation_available());
app
}
fn send(app: &mut App, event: Event) {
// Exercise the real envelope path; worker/lint futures are deliberately not
// polled here. The parent owns serialized compile/runtime verification.
let _ = app.update(Message::TextWorkspace(event));
}
fn toggle(app: &App, stamp: QueryStamp, path: String) -> Event {
Event::ToggleFile {
stamp,
visit: app.text_workspace.drawer_visit(),
path,
}
}
fn open(app: &mut App) -> Id {
let message = app.text_menu_message(Point::new(10., 20.));
let _ = app.update(message);
app.text_workspace.menu().unwrap().token()
}
fn invoke(app: &mut App, token: Id, command: Command) {
send(app, Event::Invoke { token, command });
}
fn enabled(app: &App, command: Command) -> bool {
app.text_workspace
.menu
.as_ref()
.unwrap()
.entries
.iter()
.find(|entry| entry.command == command)
.is_some_and(|entry| entry.action.is_some())
}
fn back_entry(app: &App) -> nav::HistoryEntry {
nav::HistoryEntry {
session: app.source_workspace.session(),
path: app.source_workspace.active.clone(),
generation: app.source_workspace.files[&app.source_workspace.active].generation(),
cursor: app.source_editor.cursor(),
}
}
fn stamp(app: &App, serial: u64) -> QueryStamp {
QueryStamp {
snapshot: app.source_key(),
serial,
}
}
fn location(app: &App, start: usize, end: usize) -> SourceLocation {
SourceLocation {
path: app.source_workspace.active.clone(),
span: Span { start, end },
}
}
#[test]
fn menu_own_open_invalidation_does_not_stale_find_and_invoke_is_once() {
let mut app = fixture();
let old_interaction = app.source_symbols.interaction;
let token = open(&mut app);
assert_ne!(old_interaction, app.source_symbols.interaction);
assert_eq!(
app.text_workspace.menu.as_ref().unwrap().context,
app.text_command_context()
);
assert!(enabled(&app, Command::Find));
invoke(&mut app, token, Command::Find);
assert!(app.source_navigation.open);
assert!(app.text_workspace.menu().is_none());
let instance = app.source_find_instance;
invoke(&mut app, token, Command::Find);
assert_eq!(
app.source_find_instance, instance,
"replay must not reopen Find"
);
}
#[test]
fn disabled_entry_cannot_become_a_new_action_under_the_same_menu_token() {
let mut app = fixture();
let token = open(&mut app);
assert!(!enabled(&app, Command::Back));
app.source_symbols.back.push(back_entry(&app));
assert!(
!enabled(&app, Command::Back),
"frozen presentation must remain disabled"
);
invoke(&mut app, token, Command::Back);
assert_eq!(
app.source_symbols.back.len(),
1,
"a newly enabled action cannot be substituted"
);
assert!(app.source_symbols.reveal.is_none());
}
#[test]
fn enabled_entry_is_readmitted_at_dispatch_and_blocked_by_busy() {
let mut app = fixture();
let token = open(&mut app);
assert!(enabled(&app, Command::Find));
app.busy = true;
assert!(enabled(&app, Command::Find));
invoke(&mut app, token, Command::Find);
assert!(!app.source_navigation.open);
assert!(app.text_workspace.menu().is_none());
}
#[test]
fn old_dismiss_and_invoke_do_not_consume_a_newer_menu() {
let mut app = fixture();
let old = open(&mut app);
send(&mut app, Event::DismissMenu(old));
let new = open(&mut app);
send(&mut app, Event::DismissMenu(old));
invoke(&mut app, old, Command::Find);
assert_eq!(app.text_workspace.menu().unwrap().token(), new);
assert!(!app.source_navigation.open);
}
#[test]
fn menu_source_caret_document_path_and_interaction_changes_refuse_stale_find() {
for change in 0..6 {
let mut app = fixture();
let token = open(&mut app);
match change {
0 => {
let value = format!("{}\n// changed", app.source_workspace.text());
app.source_workspace.edit(value, app.source_editor.cursor());
}
1 => {
let mut cursor = app.source_editor.cursor();
cursor.position.column += 1;
app.source_editor.move_to(cursor);
}
2 => app.canvas_document = Id::new_v4(),
3 => app.source_workspace.active = "other.arcadia".into(),
4 => app.source_symbols.interaction = Id::new_v4(),
_ => {
let mut bundle = app.document.bundle().clone();
bundle
.files
.get_mut(&bundle.entry)
.unwrap()
.push_str("\n// accepted revision");
assert!(app.document.apply_bundle(bundle).unwrap());
}
}
invoke(&mut app, token, Command::Find);
assert!(!app.source_navigation.open, "stale context case {change}");
}
}
#[test]
fn source_and_property_drafts_keep_find_and_text_undo_without_model_application() {
let mut app = fixture();
let accepted = app.document.bundle().clone();
let revision = app.document.revision();
let pending_name = "Pending property draft";
// Use the actual property input route before source edits coexist. Changing
// Draft::value alone is overwritten by its authoritative raw input buffer.
let _ = app.update(Message::Field("/name".into(), pending_name.into()));
let assert_pending_property = |app: &App| {
let draft = app.draft.as_ref().unwrap();
assert!(draft.dirty());
assert_eq!(draft.inputs["/name"].raw, pending_name);
assert_eq!(draft.inputs["/name"].editor.text(), pending_name);
assert_eq!(
draft.materialize().unwrap()["name"].as_str(),
Some(pending_name)
);
};
assert_pending_property(&app);
let initial = app.source_workspace.text().to_owned();
app.source_workspace
.edit(format!("{initial}\n// draft"), app.source_editor.cursor());
app.show_source_file(false);
assert!(app.source_dirty() && app.draft_dirty());
let token = open(&mut app);
assert!(enabled(&app, Command::Find) && enabled(&app, Command::UndoText));
assert!(!enabled(&app, Command::RenameAlias) && !enabled(&app, Command::UndoModel));
invoke(&mut app, token, Command::Find);
assert!(app.source_navigation.open);
assert_pending_property(&app);
let token = open(&mut app);
invoke(&mut app, token, Command::UndoText);
assert_eq!(app.source_workspace.text(), initial);
assert_pending_property(&app);
assert_eq!(app.document.revision(), revision);
assert_eq!(app.document.bundle(), &accepted);
}
#[test]
fn queued_toolbar_request_cannot_retarget_after_source_change() {
let mut app = fixture();
let request = app.text_command_message(Command::Find);
app.source_workspace
.edit("// changed".into(), app.source_editor.cursor());
let _ = app.update(request);
assert!(!app.source_navigation.open);
}
#[test]
fn equal_diagnostic_republication_invalidates_primary_and_related_targets() {
let mut app = fixture();
send(&mut app, Event::ShowDrawer(DrawerTab::Problems));
let primary = app.text_diagnostic_message(location(&app, 0, 1)).unwrap();
let related = app.text_diagnostic_message(location(&app, 1, 2)).unwrap();
let previous = app.text_workspace.diagnostic_publication().unwrap();
app.publish_source_diagnostics(app.source_diagnostics.clone());
let current = app.text_workspace.diagnostic_publication().unwrap();
assert_eq!(previous.source(), current.source());
assert_ne!(previous.generation(), current.generation());
for message in [primary, related] {
let interaction = app.source_symbols.interaction;
let _ = app.update(message);
assert_eq!(app.source_symbols.interaction, interaction);
assert!(app.source_symbols.reveal.is_none());
}
}
#[test]
fn current_diagnostic_target_navigates_but_changed_source_or_clear_refuses_it() {
let mut app = fixture();
send(&mut app, Event::ShowDrawer(DrawerTab::Problems));
let message = app.text_diagnostic_message(location(&app, 0, 1)).unwrap();
let _ = app.update(message);
assert!(app.source_symbols.reveal.is_some());
app.source_interaction();
let message = app.text_diagnostic_message(location(&app, 0, 1)).unwrap();
app.source_workspace
.edit("// newer".into(), app.source_editor.cursor());
let _ = app.update(message);
assert!(app.source_symbols.reveal.is_none());
assert!(app.text_diagnostic_message(location(&app, 0, 1)).is_none());
app.publish_source_diagnostics(Vec::new());
let message = app.text_diagnostic_message(location(&app, 0, 1)).unwrap();
app.publish_source_diagnostics(Vec::new());
let _ = app.update(message);
assert!(app.source_symbols.reveal.is_none());
}
#[test]
fn diagnostic_span_must_be_loaded_ordered_and_utf8_exact() {
let mut app = fixture();
send(&mut app, Event::ShowDrawer(DrawerTab::Problems));
app.source_workspace
.edit("a雨b".into(), app.source_editor.cursor());
app.show_source_file(false);
app.publish_source_diagnostics(Vec::new());
let mut missing = location(&app, 0, 1);
missing.path = "missing.arcadia".into();
for target in [
location(&app, 3, 2),
location(&app, 0, 6),
location(&app, 2, 4),
location(&app, 1, 3),
missing,
] {
let message = app.text_diagnostic_message(target).unwrap();
let _ = app.update(message);
assert!(app.source_symbols.reveal.is_none());
}
let message = app.text_diagnostic_message(location(&app, 1, 4)).unwrap();
let _ = app.update(message);
assert!(app.source_symbols.reveal.is_some());
}
#[test]
fn reference_groups_and_scroll_survive_tabs_and_reject_old_visits_and_queries() {
let mut app = fixture();
let first = stamp(&app, 1);
app.text_workspace
.begin_references(first, "b/use.arcadia".into());
app.text_workspace
.install_reference_files(first, ["a/use.arcadia".into(), "b/use.arcadia".into()]);
assert!(app.text_workspace.references().collapsed("a/use.arcadia"));
assert!(!app.text_workspace.references().collapsed("b/use.arcadia"));
let event = toggle(&app, first, "a/use.arcadia".into());
send(&mut app, event);
let old_visit = app.text_workspace.drawer_visit();
let old_scroll_id = app.text_workspace.reference_scroll_id();
let interaction = app.source_symbols.interaction;
send(
&mut app,
Event::ReferenceScrolled {
stamp: first,
visit: old_visit,
y: 123.,
},
);
assert_eq!(
app.source_symbols.interaction, interaction,
"scroll is passive"
);
send(&mut app, Event::ShowDrawer(DrawerTab::Status));
send(
&mut app,
Event::ReferenceScrolled {
stamp: first,
visit: old_visit,
y: 0.,
},
);
send(&mut app, Event::ShowDrawer(DrawerTab::References));
assert_eq!(app.text_workspace.references().scroll_y(), 123.);
assert!(!app.text_workspace.references().collapsed("a/use.arcadia"));
send(
&mut app,
Event::ReferenceScrolled {
stamp: first,
visit: old_visit,
y: 0.,
},
);
assert_eq!(app.text_workspace.references().scroll_y(), 123.);
assert_ne!(app.text_workspace.reference_scroll_id(), old_scroll_id);
let second = stamp(&app, 2);
app.text_workspace
.begin_references(second, "absent.arcadia".into());
app.text_workspace
.install_reference_files(first, ["old.arcadia".into()]);
app.text_workspace
.install_reference_files(second, ["b/use.arcadia".into(), "a/use.arcadia".into()]);
assert_eq!(app.text_workspace.references().scroll_y(), 0.);
assert!(!app.text_workspace.references().collapsed("a/use.arcadia"));
assert!(app.text_workspace.references().collapsed("b/use.arcadia"));
let event = toggle(&app, first, "b/use.arcadia".into());
send(&mut app, event);
assert!(app.text_workspace.references().collapsed("b/use.arcadia"));
}
#[test]
fn reset_removes_ui_and_publication_authority_and_resize_rejects_nan() {
let mut app = fixture();
open(&mut app);
app.text_workspace.reset();
assert!(app.text_workspace.menu().is_none());
assert!(app.text_workspace.diagnostic_publication().is_none());
assert!(app.text_workspace.drawer().is_none());
send(&mut app, Event::ResizeDrawer(f32::NAN));
assert_eq!(app.text_workspace.drawer_height(), 180.);
send(&mut app, Event::ResizeDrawer(f32::MAX));
assert_eq!(app.text_workspace.drawer_height(), 1200.);
}
#[test]
fn only_valid_explicit_group_and_resize_intent_cancel_pending_navigation() {
let mut app = fixture();
let current = stamp(&app, 1);
app.text_workspace
.begin_references(current, "uses.arcadia".into());
app.text_workspace
.install_reference_files(current, ["uses.arcadia".into()]);
let request = nav::Request {
job: Id::new_v4(),
interaction: app.source_symbols.interaction,
raw_interaction: 0,
stamp: current,
path: app.source_workspace.active.clone(),
offset: 0,
cursor: app.source_editor.cursor(),
action: nav::query::Action::References,
};
app.source_symbols.request = Some(request.clone());
app.source_symbols.in_flight = Some(request.job);
let interaction = app.source_symbols.interaction;
let event = toggle(&app, current, "not-a-group.arcadia".into());
send(&mut app, event);
let old = QueryStamp {
serial: 0,
..current
};
let event = toggle(&app, old, "uses.arcadia".into());
send(&mut app, event);
send(&mut app, Event::ResizeDrawer(f32::NAN));
send(&mut app, Event::ResizeDrawer(180.));
assert_eq!(app.source_symbols.interaction, interaction);
assert!(app.source_symbols.request.is_some());
let event = toggle(&app, current, "uses.arcadia".into());
send(&mut app, event);
assert!(app.source_symbols.request.is_none());
assert_ne!(app.source_symbols.interaction, interaction);
assert_eq!(
app.source_symbols.in_flight,
Some(request.job),
"intent does not release an occupied worker"
);
app.source_symbols.request = Some(request.clone());
send(&mut app, Event::ResizeDrawer(240.));
assert!(app.source_symbols.request.is_none());
app.source_symbols.request = Some(request.clone());
send(&mut app, Event::HideDrawer);
assert!(app.source_symbols.request.is_none());
assert_eq!(app.source_symbols.in_flight, Some(request.job));
assert_eq!(app.text_workspace.references().stamp(), Some(current));
}
#[test]
fn stale_retained_group_can_expand_without_navigating_or_applying_drafts() {
let mut app = fixture();
let current = stamp(&app, 1);
let path = app.source_workspace.active.clone();
app.text_workspace.begin_references(current, path.clone());
app.text_workspace
.install_reference_files(current, [path.clone()]);
let event = toggle(&app, current, path.clone());
send(&mut app, event);
assert!(app.text_workspace.references().collapsed(&path));
let accepted = app.document.snapshot();
let _ = app.update(Message::SourceEdit(widget::text_editor::Action::Edit(
widget::text_editor::Edit::Insert(' '),
)));
assert_ne!(current.snapshot, app.source_key());
let raw = app.source_workspace.bundle();
let cursor = app.source_editor.cursor();
let event = toggle(&app, current, path.clone());
send(&mut app, event);
assert!(!app.text_workspace.references().collapsed(&path));
assert_eq!(app.source_workspace.active, path);
assert_eq!(app.source_workspace.bundle(), raw);
assert_eq!(app.source_editor.cursor(), cursor);
assert!(app.source_symbols.reveal.is_none() && app.source_symbols.back.is_empty());
assert!(std::sync::Arc::ptr_eq(&accepted, &app.document.snapshot()));
}
#[test]
fn document_reset_preserves_popup_token_sequence_and_drops_old_menu_authority() {
let mut app = fixture();
let old = open(&mut app);
let sequence = app.text_workspace_menu().unwrap().token;
app.reset(Project::empty(), None);
assert!(app.text_workspace.menu().is_none());
app.page = Page::Text;
let fresh = open(&mut app);
assert_ne!(old, fresh);
assert!(app.text_workspace_menu().unwrap().token > sequence);
invoke(&mut app, old, Command::Find);
assert!(!app.source_navigation.open);
assert_eq!(app.text_workspace.menu().unwrap().token(), fresh);
}
#[test]
fn retained_primary_and_related_targets_cannot_replay_after_hide_or_problems_references_problems() {
for hide in [false, true] {
let mut app = fixture();
send(&mut app, Event::ShowDrawer(DrawerTab::Problems));
let old_visit = app.text_workspace.drawer_visit();
let publication = app.text_workspace.diagnostic_publication();
let targets = [location(&app, 0, 1), location(&app, 1, 2)];
let old = targets
.iter()
.cloned()
.map(|target| app.text_diagnostic_message(target).unwrap())
.collect::<Vec<_>>();
let accepted = app.document.snapshot();
let raw = app.source_workspace.bundle();
let history = (
app.document.revision(),
app.document.can_undo(),
app.document.can_redo(),
app.document.dirty(),
);
let event = if hide {
Event::HideDrawer
} else {
Event::ShowDrawer(DrawerTab::References)
};
send(&mut app, event);
for reopened in [false, true] {
if reopened {
send(&mut app, Event::ShowDrawer(DrawerTab::Problems));
} else {
assert!(app.text_diagnostic_message(targets[0].clone()).is_none());
}
assert_ne!(app.text_workspace.drawer_visit(), old_visit);
assert_eq!(
app.text_workspace.diagnostic_publication(),
publication,
"same list and source isolate the visit guard from publication freshness"
);
let context = app.text_command_context();
let drawer = app.text_workspace.drawer();
let visit = app.text_workspace.drawer_visit();
for message in old.iter().cloned() {
let _ = app.update(message);
assert_eq!(
app.text_command_context(),
context,
"stale diagnostic must fail before interaction invalidation"
);
assert_eq!(app.text_workspace.drawer(), drawer);
assert_eq!(app.text_workspace.drawer_visit(), visit);
assert!(app.source_symbols.reveal.is_none() && app.source_jump.is_none());
assert!(app.source_symbols.back.is_empty());
assert_eq!(app.source_workspace.bundle(), raw);
assert!(Arc::ptr_eq(&accepted, &app.document.snapshot()));
assert_eq!(
(
app.document.revision(),
app.document.can_undo(),
app.document.can_redo(),
app.document.dirty()
),
history
);
}
}
for target in targets {
let fresh = app.text_diagnostic_message(target).unwrap();
let _ = app.update(fresh);
assert!(
app.source_symbols.reveal.is_some(),
"fresh primary and related targets remain usable"
);
app.source_interaction();
}
assert_eq!(app.source_workspace.bundle(), raw);
assert!(Arc::ptr_eq(&accepted, &app.document.snapshot()));
}
}
#[test]
fn queued_group_toggle_cannot_mutate_a_reopened_or_rotated_visit() {
for replacement in 0..3 {
let mut app = fixture();
let current = stamp(&app, 1);
app.text_workspace
.begin_references(current, "a.arcadia".into());
app.text_workspace
.install_reference_files(current, ["a.arcadia".into(), "b.arcadia".into()]);
let old = toggle(&app, current, "a.arcadia".into());
let old_visit = app.text_workspace.drawer_visit();
match replacement {
0 => {
send(&mut app, Event::HideDrawer);
send(&mut app, Event::ShowDrawer(DrawerTab::References));
}
1 => {
send(&mut app, Event::ShowDrawer(DrawerTab::Problems));
send(&mut app, Event::ShowDrawer(DrawerTab::References));
}
_ => {
let event = toggle(&app, current, "b.arcadia".into());
send(&mut app, event);
}
}
let visit = app.text_workspace.drawer_visit();
assert_ne!(visit, old_visit);
send(
&mut app,
Event::ReferenceScrolled {
stamp: current,
visit,
y: 84.,
},
);
let scroll_id = app.text_workspace.reference_scroll_id();
let request = nav::Request {
job: Id::new_v4(),
interaction: app.source_symbols.interaction,
raw_interaction: 0,
stamp: current,
path: app.source_workspace.active.clone(),
offset: 0,
cursor: app.source_editor.cursor(),
action: nav::query::Action::References,
};
app.source_symbols.request = Some(request.clone());
app.source_symbols.in_flight = Some(request.job);
let groups =
["a.arcadia", "b.arcadia"].map(|path| app.text_workspace.references().collapsed(path));
let context = app.text_command_context();
let accepted = app.document.snapshot();
let raw = app.source_workspace.bundle();
for _ in 0..2 {
send(&mut app, old.clone());
assert_eq!(app.text_workspace.drawer_visit(), visit);
assert_eq!(app.text_workspace.references().scroll_y(), 84.);
assert_eq!(app.text_workspace.reference_scroll_id(), scroll_id);
assert_eq!(app.text_workspace.references().stamp(), Some(current));
assert_eq!(
["a.arcadia", "b.arcadia"]
.map(|path| app.text_workspace.references().collapsed(path)),
groups,
);
assert_eq!(app.text_command_context(), context);
assert_eq!(app.source_symbols.request.as_ref(), Some(&request));
assert_eq!(app.source_symbols.in_flight, Some(request.job));
assert!(app.source_symbols.reveal.is_none() && app.source_jump.is_none());
}
let fresh = toggle(&app, current, "a.arcadia".into());
send(&mut app, fresh);
assert_eq!(
app.text_workspace.references().collapsed("a.arcadia"),
!groups[0]
);
assert_ne!(app.text_workspace.drawer_visit(), visit);
assert_ne!(app.source_symbols.interaction, context.interaction);
assert!(app.source_symbols.request.is_none());
assert_eq!(app.source_symbols.in_flight, Some(request.job));
assert!(app.source_symbols.reveal.is_none() && app.source_jump.is_none());
assert!(app.source_symbols.back.is_empty());
assert_eq!(app.source_workspace.bundle(), raw);
assert!(Arc::ptr_eq(&accepted, &app.document.snapshot()));
assert!(!app.document.can_undo() && !app.document.can_redo());
}
}
+301
View File
@@ -0,0 +1,301 @@
//! Publication-and-visit-bound input for a mounted diagnostic list.
//!
//! Keep this wrapper at the same widget-tree position, inside the list's outer
//! scroller. Pass `None` with an empty child while hidden/removed; unmounting the
//! wrapper loses its ability to consume an outstanding release. Every change to
//! row identity/order/action must have a fresh publication Id. Pass the pair
//! (publication generation, drawer visit): a new visit resets armed controls even
//! if Hide and Show coalesce without an intermediate hidden Tree. The child tree
//! resets when either component changes, clearing button presses and row focus;
//! the outer scroller and editor trees are not reset.
//!
//! Capturing stops Iced event bubbling and later consumers that respect capture.
//! It cannot undo an earlier sibling's event handling. This is a row-list guard,
//! not a root event filter or a guard for actions in child overlays. Diagnostic
//! messages still need publication/snapshot and drawer-visit validation at dispatch.
use iced::advanced::{Clipboard, Layout, Shell, Widget, layout, overlay, renderer, widget};
use iced::{Element, Event, Length, Rectangle, Size, Vector, mouse, touch};
use oa_core::Id;
pub struct Guard<'a, Message, Theme = iced::Theme, Renderer = iced::Renderer> {
identity: Option<(Id, Id)>,
content: Element<'a, Message, Theme, Renderer>,
}
impl<'a, Message, Theme, Renderer> Guard<'a, Message, Theme, Renderer> {
pub fn new(
identity: Option<(Id, Id)>,
content: impl Into<Element<'a, Message, Theme, Renderer>>,
) -> Self {
Self {
identity,
content: content.into(),
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
enum Pointer {
Mouse,
Touch(touch::Finger),
}
impl Pointer {
fn press(event: &Event) -> Option<Self> {
match event {
Event::Mouse(mouse::Event::ButtonPressed(mouse::Button::Left)) => Some(Self::Mouse),
Event::Touch(touch::Event::FingerPressed { id, .. }) => Some(Self::Touch(*id)),
_ => None,
}
}
fn release(event: &Event) -> Option<Self> {
match event {
Event::Mouse(mouse::Event::ButtonReleased(mouse::Button::Left)) => Some(Self::Mouse),
Event::Touch(
touch::Event::FingerLifted { id, .. } | touch::Event::FingerLost { id, .. },
) => Some(Self::Touch(*id)),
_ => None,
}
}
}
struct State {
identity: Option<(Id, Id)>,
pressed: Option<Pointer>,
swallowed: Vec<Pointer>,
}
impl State {
fn quarantine(&mut self, pointer: Pointer) {
if !self.swallowed.contains(&pointer) {
self.swallowed.push(pointer);
}
}
fn forget(&mut self, pointer: Pointer) -> bool {
let found = self.swallowed.contains(&pointer);
self.swallowed.retain(|item| *item != pointer);
found
}
}
impl<Message, Theme, Renderer: renderer::Renderer> Widget<Message, Theme, Renderer>
for Guard<'_, Message, Theme, Renderer>
{
fn tag(&self) -> widget::tree::Tag {
widget::tree::Tag::of::<State>()
}
fn state(&self) -> widget::tree::State {
widget::tree::State::new(State {
identity: self.identity,
pressed: None,
swallowed: Vec::new(),
})
}
fn children(&self) -> Vec<widget::Tree> {
vec![widget::Tree::new(&self.content)]
}
fn diff(&self, tree: &mut widget::Tree) {
let state = tree.state.downcast_mut::<State>();
if state.identity != self.identity {
state.identity = self.identity;
if let Some(pointer) = state.pressed.take() {
state.quarantine(pointer);
}
tree.children = self.children();
} else {
tree.diff_children(std::slice::from_ref(&self.content));
}
}
fn size(&self) -> Size<Length> {
self.content.as_widget().size()
}
fn size_hint(&self) -> Size<Length> {
self.content.as_widget().size_hint()
}
fn layout(
&mut self,
tree: &mut widget::Tree,
renderer: &Renderer,
limits: &layout::Limits,
) -> layout::Node {
self.content
.as_widget_mut()
.layout(&mut tree.children[0], renderer, limits)
}
fn operate(
&mut self,
tree: &mut widget::Tree,
layout: Layout<'_>,
renderer: &Renderer,
operation: &mut dyn widget::Operation,
) {
self.content
.as_widget_mut()
.operate(&mut tree.children[0], layout, renderer, operation);
}
fn update(
&mut self,
tree: &mut widget::Tree,
event: &Event,
layout: Layout<'_>,
cursor: mouse::Cursor,
renderer: &Renderer,
clipboard: &mut dyn Clipboard,
shell: &mut Shell<'_, Message>,
viewport: &Rectangle,
) {
let state = tree.state.downcast_mut::<State>();
let release = Pointer::release(event);
if let Some(pointer) = release {
// Bounds may have become empty or moved. Consume the physical
// gesture's terminal event regardless of its current position.
if state.forget(pointer) {
shell.capture_event();
return;
}
// Iced Button has a single is_pressed bit, not a pointer identity.
// A different finger/mouse release must not activate that button.
if state.pressed.is_some_and(|pressed| pressed != pointer) {
shell.capture_event();
return;
}
}
let press = Pointer::press(event);
if let Some(pointer) = state.pressed.filter(|pointer| {
press == Some(*pointer) || (release == Some(*pointer) && shell.is_event_captured())
}) {
// Recover an omitted terminal event, or cancel one intercepted by
// an earlier consumer. An off-target mouse release / lost touch
// clears Iced Button's pressed state without rebuilding this
// publication's tree (which would also discard row focus).
state.pressed = None;
let cancel = match pointer {
Pointer::Mouse => Event::Mouse(mouse::Event::ButtonReleased(mouse::Button::Left)),
Pointer::Touch(id) => Event::Touch(touch::Event::FingerLost {
id,
position: iced::Point::ORIGIN,
}),
};
let mut discarded = Vec::new();
let mut cancellation = Shell::new(&mut discarded);
self.content.as_widget_mut().update(
&mut tree.children[0],
&cancel,
layout,
mouse::Cursor::Unavailable,
renderer,
clipboard,
&mut cancellation,
viewport,
);
// Cancellation must not publish an action or capture the fresh
// down. Preserve rendering requests from the state change only.
shell.request_redraw();
if cancellation.is_layout_invalid() {
shell.invalidate_layout();
}
if cancellation.are_widgets_invalid() {
shell.invalidate_widgets();
}
}
if shell.is_event_captured() || self.identity.is_none() {
return;
}
if let Some(pointer) = press {
// A fresh down starts a new gesture even if the platform omitted a
// previous release (for example while the window lacked focus).
state.forget(pointer);
if let Some(pressed) = state.pressed {
if pressed != pointer {
state.quarantine(pointer);
}
shell.capture_event();
return;
}
}
let was_pressed = release.is_some() && release == state.pressed;
if was_pressed {
state.pressed = None;
}
self.content.as_widget_mut().update(
&mut tree.children[0],
event,
layout,
cursor,
renderer,
clipboard,
shell,
viewport,
);
if let Some(pointer) = press
&& shell.is_event_captured()
{
state.pressed = Some(pointer);
}
if was_pressed {
// FingerLost cancels Iced Button state but does not itself capture.
shell.capture_event();
}
}
fn draw(
&self,
tree: &widget::Tree,
renderer: &mut Renderer,
theme: &Theme,
style: &renderer::Style,
layout: Layout<'_>,
cursor: mouse::Cursor,
viewport: &Rectangle,
) {
self.content.as_widget().draw(
&tree.children[0],
renderer,
theme,
style,
layout,
cursor,
viewport,
);
}
fn mouse_interaction(
&self,
tree: &widget::Tree,
layout: Layout<'_>,
cursor: mouse::Cursor,
viewport: &Rectangle,
renderer: &Renderer,
) -> mouse::Interaction {
self.content.as_widget().mouse_interaction(
&tree.children[0],
layout,
cursor,
viewport,
renderer,
)
}
fn overlay<'b>(
&'b mut self,
tree: &'b mut widget::Tree,
layout: Layout<'b>,
renderer: &Renderer,
viewport: &Rectangle,
translation: Vector,
) -> Option<overlay::Element<'b, Message, Theme, Renderer>> {
self.content.as_widget_mut().overlay(
&mut tree.children[0],
layout,
renderer,
viewport,
translation,
)
}
}
impl<'a, Message: 'a, Theme: 'a, Renderer: renderer::Renderer + 'a>
From<Guard<'a, Message, Theme, Renderer>> for Element<'a, Message, Theme, Renderer>
{
fn from(guard: Guard<'a, Message, Theme, Renderer>) -> Self {
Element::new(guard)
}
}
#[cfg(test)]
mod tests;
@@ -0,0 +1,626 @@
use super::*;
use iced::advanced::widget::operation::{self, Focusable, Scrollable};
use iced::widget::{Space, button, column, container, mouse_area, scrollable, text_input};
use iced::{Point, Theme, event, keyboard};
type View = Element<'static, Message, Theme, ()>;
const BOUNDS: Rectangle = Rectangle {
x: 0.,
y: 0.,
width: 400.,
height: 300.,
};
#[derive(Clone, Debug, PartialEq, Eq)]
enum Message {
Primary(u8),
Related(u8),
BackgroundButton,
BackgroundRelease,
Submit(u8),
Edit,
}
fn rows(version: u8) -> View {
column![
button(Space::new())
.width(200.)
.height(40.)
.padding(0)
.on_press(Message::Primary(version)),
button(Space::new())
.width(200.)
.height(40.)
.padding(0)
.on_press(Message::Related(version)),
]
.into()
}
fn guarded(generation: Option<Id>, version: u8) -> View {
let child: View = if generation.is_some() {
rows(version)
} else {
Space::new().into()
};
Guard::new(
generation.map(|publication| (publication, Id::nil())),
child,
)
.into()
}
fn press() -> Event {
Event::Mouse(mouse::Event::ButtonPressed(mouse::Button::Left))
}
fn release() -> Event {
Event::Mouse(mouse::Event::ButtonReleased(mouse::Button::Left))
}
fn enter() -> Event {
Event::Keyboard(keyboard::Event::KeyPressed {
key: keyboard::Key::Named(keyboard::key::Named::Enter),
modified_key: keyboard::Key::Named(keyboard::key::Named::Enter),
physical_key: keyboard::key::Physical::Code(keyboard::key::Code::Enter),
location: keyboard::Location::Standard,
modifiers: keyboard::Modifiers::empty(),
text: None,
repeat: false,
})
}
fn touch_down(id: u64, position: Point) -> Event {
Event::Touch(touch::Event::FingerPressed {
id: touch::Finger(id),
position,
})
}
fn touch_up(id: u64, position: Point) -> Event {
Event::Touch(touch::Event::FingerLifted {
id: touch::Finger(id),
position,
})
}
fn touch_lost(id: u64, position: Point) -> Event {
Event::Touch(touch::Event::FingerLost {
id: touch::Finger(id),
position,
})
}
struct Mounted {
view: View,
tree: widget::Tree,
node: layout::Node,
}
impl Mounted {
fn new(mut view: View) -> Self {
let mut tree = widget::Tree::new(view.as_widget());
let node = view.as_widget_mut().layout(
&mut tree,
&(),
&layout::Limits::new(Size::ZERO, BOUNDS.size()),
);
Self { view, tree, node }
}
fn replace(&mut self, mut view: View) {
self.tree.diff(view.as_widget());
self.node = view.as_widget_mut().layout(
&mut self.tree,
&(),
&layout::Limits::new(Size::ZERO, BOUNDS.size()),
);
self.view = view;
}
fn event(&mut self, event: Event, point: Point) -> (Vec<Message>, event::Status) {
self.event_with_capture(event, point, false)
}
fn event_with_capture(
&mut self,
event: Event,
point: Point,
captured: bool,
) -> (Vec<Message>, event::Status) {
let mut messages = Vec::new();
let mut shell = Shell::new(&mut messages);
if captured {
shell.capture_event();
}
self.view.as_widget_mut().update(
&mut self.tree,
&event,
Layout::new(&self.node),
mouse::Cursor::Available(point),
&(),
&mut iced::advanced::clipboard::Null,
&mut shell,
&BOUNDS,
);
let status = shell.event_status();
(messages, status)
}
fn operate(&mut self, operation: &mut dyn widget::Operation) {
self.view
.as_widget_mut()
.operate(&mut self.tree, Layout::new(&self.node), &(), operation);
}
fn focus(&mut self) {
self.operate(&mut operation::focusable::focus::<()>("row".into()));
}
fn focused(&mut self) -> bool {
#[derive(Default)]
struct Focus(bool);
impl widget::Operation for Focus {
fn traverse(&mut self, visit: &mut dyn FnMut(&mut dyn widget::Operation)) {
visit(self);
}
fn focusable(
&mut self,
_: Option<&widget::Id>,
_: Rectangle,
state: &mut dyn Focusable,
) {
self.0 |= state.is_focused();
}
}
let mut focus = Focus::default();
self.operate(&mut focus);
focus.0
}
fn scroll(&mut self) -> Vector {
#[derive(Default)]
struct Offset(Option<Vector>);
impl widget::Operation for Offset {
fn traverse(&mut self, visit: &mut dyn FnMut(&mut dyn widget::Operation)) {
visit(self);
}
fn scrollable(
&mut self,
_: Option<&widget::Id>,
_: Rectangle,
_: Rectangle,
translation: Vector,
_: &mut dyn Scrollable,
) {
self.0 = Some(translation);
}
}
let mut offset = Offset::default();
self.operate(&mut offset);
offset.0.unwrap()
}
}
#[test]
fn current_primary_and_related_mouse_clicks_survive_same_publication_diff() {
for (y, expected) in [(20., Message::Primary(1)), (60., Message::Related(1))] {
let generation = Id::new_v4();
let point = Point::new(20., y);
let mut ui = Mounted::new(guarded(Some(generation), 1));
assert_eq!(ui.event(press(), point), (vec![], event::Status::Captured));
ui.replace(guarded(Some(generation), 1));
assert_eq!(
ui.event(release(), point),
(vec![expected], event::Status::Captured)
);
}
}
#[test]
fn same_publication_new_visit_cancels_armed_rows_without_a_hidden_tree_frame() {
for touch in [false, true] {
for (y, expected) in [(20., Message::Primary(2)), (60., Message::Related(2))] {
let publication = Id::new_v4();
let old_visit = Id::new_v4();
let new_visit = Id::new_v4();
let point = Point::new(20., y);
let mut ui = Mounted::new(Guard::new(Some((publication, old_visit)), rows(1)).into());
let down = || if touch { touch_down(7, point) } else { press() };
let up = || if touch { touch_up(7, point) } else { release() };
assert_eq!(ui.event(down(), point), (vec![], event::Status::Captured));
// Hide→Show has already happened in application state. No None
// publication or empty child is ever diffed into this retained Tree.
ui.replace(Guard::new(Some((publication, new_visit)), rows(2)).into());
assert_eq!(ui.event(up(), point), (vec![], event::Status::Captured));
assert_eq!(ui.event(down(), point), (vec![], event::Status::Captured));
assert_eq!(
ui.event(up(), point),
(vec![expected], event::Status::Captured)
);
}
}
}
#[test]
fn negative_control_iced_button_retargets_a_press_after_plain_tree_diff() {
for (y, expected) in [(20., Message::Primary(2)), (60., Message::Related(2))] {
let point = Point::new(20., y);
let mut ui = Mounted::new(rows(1));
assert!(ui.event(press(), point).0.is_empty());
ui.replace(rows(2));
assert_eq!(ui.event(release(), point).0, vec![expected]);
}
}
#[test]
fn replaced_primary_and_related_rows_consume_stale_release_then_accept_new_click() {
for y in [20., 60.] {
let point = Point::new(20., y);
let mut ui = Mounted::new(guarded(Some(Id::new_v4()), 1));
ui.event(press(), point);
ui.replace(guarded(Some(Id::new_v4()), 2));
ui.replace(guarded(Some(Id::new_v4()), 3));
assert_eq!(
ui.event(release(), point),
(vec![], event::Status::Captured)
);
ui.event(press(), point);
let expected = if y < 40. {
Message::Primary(3)
} else {
Message::Related(3)
};
assert_eq!(
ui.event(release(), point),
(vec![expected], event::Status::Captured)
);
}
}
#[test]
fn hidden_zero_size_list_consumes_release_outside_old_bounds_once() {
let mut ui = Mounted::new(guarded(Some(Id::new_v4()), 1));
ui.event(press(), Point::new(20., 20.));
ui.replace(guarded(None, 0));
ui.replace(guarded(None, 0));
assert_eq!(ui.node.size(), Size::ZERO);
let outside = Point::new(350., 250.);
assert_eq!(
ui.event(release(), outside),
(vec![], event::Status::Captured)
);
assert_eq!(
ui.event(release(), outside),
(vec![], event::Status::Ignored)
);
ui.replace(guarded(Some(Id::new_v4()), 2));
assert_eq!(ui.event(release(), Point::new(20., 20.)).0, vec![]);
}
fn with_background(content: View) -> View {
mouse_area(
button(container(content).width(250.).height(100.))
.padding(0)
.on_press(Message::BackgroundButton),
)
.on_release(Message::BackgroundRelease)
.into()
}
#[test]
fn stale_release_does_not_bubble_to_real_background_controls() {
let point = Point::new(20., 20.);
let mut ui = Mounted::new(with_background(guarded(Some(Id::new_v4()), 1)));
ui.event(press(), point);
ui.replace(with_background(guarded(None, 0)));
assert_eq!(
ui.event(release(), point),
(vec![], event::Status::Captured)
);
// The enclosing real button still supports a fresh ordinary click.
ui.event(press(), point);
assert_eq!(
ui.event(release(), point).0,
vec![Message::BackgroundButton]
);
}
#[test]
fn negative_control_removing_unguarded_rows_exposes_background_release() {
let point = Point::new(20., 20.);
let mut ui = Mounted::new(with_background(rows(1)));
ui.event(press(), point);
ui.replace(with_background(Space::new().into()));
assert_eq!(
ui.event(release(), point).0,
vec![Message::BackgroundRelease]
);
}
#[test]
fn current_touch_activates_primary_and_related_and_cancel_does_not_activate() {
for (y, expected) in [(20., Message::Primary(1)), (60., Message::Related(1))] {
let point = Point::new(20., y);
let mut ui = Mounted::new(guarded(Some(Id::new_v4()), 1));
assert_eq!(
ui.event(touch_down(1, point), point),
(vec![], event::Status::Captured)
);
assert_eq!(
ui.event(touch_up(1, point), point),
(vec![expected], event::Status::Captured)
);
ui.event(touch_down(2, point), point);
assert_eq!(
ui.event(touch_lost(2, point), point),
(vec![], event::Status::Captured)
);
assert!(ui.event(touch_up(2, point), point).0.is_empty());
}
}
#[test]
fn replaced_touch_consumes_lift_or_cancel_even_when_hidden() {
for hide in [false, true] {
for lost in [false, true] {
for y in [20., 60.] {
let point = Point::new(20., y);
let mut ui = Mounted::new(guarded(Some(Id::new_v4()), 1));
ui.event(touch_down(1, point), point);
ui.replace(guarded(if hide { None } else { Some(Id::new_v4()) }, 2));
let end = if lost {
touch_lost(1, point)
} else {
touch_up(1, point)
};
assert_eq!(ui.event(end, point), (vec![], event::Status::Captured));
}
}
}
}
#[test]
fn unrelated_finger_or_mouse_release_cannot_complete_another_fingers_press() {
let point = Point::new(20., 20.);
let mut ui = Mounted::new(guarded(Some(Id::new_v4()), 1));
ui.event(touch_down(1, point), point);
ui.event(touch_down(2, point), point);
assert_eq!(
ui.event(touch_up(2, point), point),
(vec![], event::Status::Captured)
);
assert_eq!(
ui.event(release(), point),
(vec![], event::Status::Captured)
);
assert_eq!(
ui.event(touch_up(1, point), point).0,
vec![Message::Primary(1)]
);
}
fn keyboard_row(version: u8) -> View {
// Iced 0.14.2 Button has no focus/keyboard activation. A real focusable
// submit control tests the wrapper's focus lifecycle without inventing it.
text_input("Diagnostic action", "row")
.id("row")
.on_input(|_| Message::Edit)
.on_submit(Message::Submit(version))
.into()
}
#[test]
fn same_publication_preserves_focus_but_replacement_never_inherits_activation() {
let generation = Id::new_v4();
let mut ui = Mounted::new(Guard::new(Some((generation, Id::nil())), keyboard_row(1)).into());
ui.focus();
assert!(ui.focused());
ui.replace(Guard::new(Some((generation, Id::nil())), keyboard_row(1)).into());
assert!(ui.focused());
assert_eq!(ui.event(enter(), Point::ORIGIN).0, vec![Message::Submit(1)]);
ui.replace(Guard::new(Some((Id::new_v4(), Id::nil())), keyboard_row(2)).into());
assert!(!ui.focused());
assert!(ui.event(enter(), Point::ORIGIN).0.is_empty());
ui.focus();
assert_eq!(ui.event(enter(), Point::ORIGIN).0, vec![Message::Submit(2)]);
ui.replace(Guard::new(None, Space::new()).into());
ui.replace(Guard::new(Some((Id::new_v4(), Id::nil())), keyboard_row(3)).into());
assert!(!ui.focused());
assert!(ui.event(enter(), Point::ORIGIN).0.is_empty());
}
#[test]
fn negative_control_plain_focusable_row_migrates_activation_to_replacement() {
let mut ui = Mounted::new(keyboard_row(1));
ui.focus();
ui.replace(keyboard_row(2));
assert!(ui.focused());
assert_eq!(ui.event(enter(), Point::ORIGIN).0, vec![Message::Submit(2)]);
}
#[test]
fn outer_scroll_offset_survives_same_and_changed_publications() {
fn pane(generation: Id) -> View {
scrollable(Guard::new(
Some((generation, Id::nil())),
column![rows(1), Space::new().height(600.)],
))
.width(240.)
.height(100.)
.into()
}
let generation = Id::new_v4();
let mut ui = Mounted::new(pane(generation));
ui.event(
Event::Mouse(mouse::Event::WheelScrolled {
delta: mouse::ScrollDelta::Pixels { x: 0., y: -120. },
}),
Point::new(20., 20.),
);
let offset = ui.scroll();
assert_eq!(offset, Vector::new(0., 120.));
ui.replace(pane(generation));
assert_eq!(ui.scroll(), offset);
ui.replace(pane(Id::new_v4()));
assert_eq!(ui.scroll(), offset);
}
#[test]
fn stale_touch_release_does_not_disarm_a_new_current_gesture() {
let point = Point::new(20., 20.);
let mut ui = Mounted::new(guarded(Some(Id::new_v4()), 1));
ui.event(touch_down(1, point), point);
ui.replace(guarded(Some(Id::new_v4()), 2));
ui.event(touch_down(2, point), point);
assert_eq!(
ui.event(touch_up(1, point), point),
(vec![], event::Status::Captured)
);
assert_eq!(
ui.event(touch_up(2, point), point).0,
vec![Message::Primary(2)]
);
}
#[test]
fn fresh_mouse_press_after_missing_stale_release_can_activate_current_row() {
let point = Point::new(20., 20.);
let mut ui = Mounted::new(guarded(Some(Id::new_v4()), 1));
ui.event(press(), point);
ui.replace(guarded(Some(Id::new_v4()), 2));
// The platform delivers another down without the previous up.
ui.event(press(), point);
assert_eq!(ui.event(release(), point).0, vec![Message::Primary(2)]);
}
#[test]
fn missed_press_is_ignored_and_dragging_release_outside_does_not_activate() {
let inside = Point::new(20., 20.);
let outside = Point::new(350., 250.);
let mut ui = Mounted::new(guarded(Some(Id::new_v4()), 1));
assert_eq!(ui.event(press(), outside), (vec![], event::Status::Ignored));
assert_eq!(
ui.event(release(), inside),
(vec![], event::Status::Ignored)
);
ui.event(press(), inside);
assert_eq!(
ui.event(release(), outside),
(vec![], event::Status::Captured)
);
assert_eq!(
ui.event(release(), inside),
(vec![], event::Status::Ignored)
);
}
#[test]
fn same_publication_missing_terminal_recovers_on_fresh_mouse_or_touch_down() {
let primary = Point::new(20., 20.);
let related = Point::new(20., 60.);
for is_touch in [false, true] {
let generation = Id::new_v4();
let mut ui = Mounted::new(guarded(Some(generation), 1));
let down = |point| {
if is_touch {
touch_down(1, point)
} else {
press()
}
};
let up = |point| {
if is_touch {
touch_up(1, point)
} else {
release()
}
};
ui.event(down(primary), primary);
ui.replace(guarded(Some(generation), 1));
// The first gesture never receives its terminal event; same Id means
// no publication reset can accidentally make this regression pass.
assert_eq!(
ui.event(down(related), related),
(vec![], event::Status::Captured)
);
assert_eq!(ui.event(up(related), related).0, vec![Message::Related(1)]);
assert!(ui.event(up(primary), primary).0.is_empty());
}
}
#[test]
fn already_captured_terminal_cancels_child_without_activation_or_lingering_press() {
let primary = Point::new(20., 20.);
let related = Point::new(20., 60.);
for is_touch in [false, true] {
let mut ui = Mounted::new(guarded(Some(Id::new_v4()), 1));
let down = |point| {
if is_touch {
touch_down(1, point)
} else {
press()
}
};
let up = |point| {
if is_touch {
touch_up(1, point)
} else {
release()
}
};
ui.event(down(primary), primary);
assert_eq!(
ui.event_with_capture(up(primary), primary, true),
(vec![], event::Status::Captured)
);
// An unpaired second release must not expose a lingering button press.
assert_eq!(
ui.event(up(primary), primary),
(vec![], event::Status::Ignored)
);
ui.event(down(related), related);
assert_eq!(ui.event(up(related), related).0, vec![Message::Related(1)]);
}
}
#[test]
fn captured_terminal_cancellation_preserves_same_publication_focusable_child_state() {
let generation = Id::new_v4();
let mut ui = Mounted::new(
Guard::new(
Some((generation, Id::nil())),
column![rows(1), keyboard_row(1)],
)
.into(),
);
ui.event(press(), Point::new(20., 20.));
// Focus through an operation avoids making the old pointer gesture whole.
ui.focus();
assert!(ui.focused());
assert!(
ui.event_with_capture(release(), Point::new(20., 20.), true)
.0
.is_empty()
);
assert!(
ui.focused(),
"gesture cancellation must not remount the row tree"
);
assert_eq!(ui.event(enter(), Point::ORIGIN).0, vec![Message::Submit(1)]);
}
#[test]
fn hidden_zero_height_scroller_delivers_cancelled_mouse_and_touch_terminals_to_guard() {
fn pane(generation: Option<Id>) -> View {
scrollable(guarded(generation, 1))
.width(240.)
.height(if generation.is_some() { 100. } else { 0. })
.into()
}
let point = Point::new(20., 20.);
let outside = Point::new(350., 250.);
for is_touch in [false, true] {
let mut ui = Mounted::new(pane(Some(Id::new_v4())));
let down = if is_touch {
touch_down(1, point)
} else {
press()
};
assert_eq!(ui.event(down, point), (vec![], event::Status::Captured));
ui.replace(pane(None));
ui.replace(pane(None));
assert_eq!(ui.node.size().height, 0.);
let up = if is_touch {
touch_up(1, outside)
} else {
release()
};
assert_eq!(ui.event(up, outside), (vec![], event::Status::Captured));
}
}
+1
View File
@@ -6,6 +6,7 @@ mod connection_tool;
mod context_menu;
mod data_values;
mod data_view;
mod diagnostic_input;
mod diagram;
mod document;
mod explorer;
@@ -2,6 +2,7 @@
mod controller;
pub mod interaction;
pub mod query;
pub mod selection;
pub mod symbols;
pub use controller::*;
use iced::widget::text_editor::{Cursor, Position};
@@ -12,6 +12,7 @@ pub enum SymbolEvent {
Close,
Choose {
stamp: query::QueryStamp,
visit: Id,
reference: bool,
index: usize,
},
@@ -33,7 +34,7 @@ pub struct HistoryEntry {
pub cursor: Cursor,
}
#[derive(Debug, Clone)]
#[derive(Debug, Clone, PartialEq)]
pub struct Request {
pub job: Id,
pub interaction: Id,
@@ -60,12 +61,15 @@ pub struct Reveal {
}
pub struct SymbolState {
pub open: bool,
pub interaction: Id,
pub raw_interaction: Arc<AtomicU64>,
pub serial: u64,
pub in_flight: Option<Id>,
pub request: Option<Request>,
/// Latest admitted query owns displayed data independently of whether its
/// original navigation intent is still current. Hiding a drawer cancels
/// navigation, but a matching completion can still populate retained data.
pub display_request: Option<Request>,
pub cache: Option<Arc<query::Snapshot>>,
pub results: Option<Arc<query::Results>>,
pub notice: Option<String>,
@@ -76,12 +80,12 @@ pub struct SymbolState {
impl Default for SymbolState {
fn default() -> Self {
Self {
open: false,
interaction: Id::new_v4(),
raw_interaction: Arc::new(AtomicU64::new(0)),
serial: 0,
in_flight: None,
request: None,
display_request: None,
cache: None,
results: None,
notice: None,
@@ -0,0 +1,295 @@
//! Effective selected-byte ranges for a committed departure from a source view.
//!
//! Iced's `Cursor` omits cosmic-text's Word/Line selection kind. Saving its raw
//! endpoints can therefore save an empty range for a visibly selected word/line.
//! Capture only after navigation admission and destination validation succeed,
//! immediately before replacing/leaving the live editor. Never use this to inspect
//! pending queries, failed/no-op navigation, or restore focus to the same editor.
use iced::advanced::{graphics, text};
use iced::widget::text_editor::{Action, Content, Cursor, Motion, Position};
/// Capture the effective range for restoration on fresh Content via `move_to`.
///
/// A nonempty selection is collapsed to its start in the departing Content; text
/// is not edited. The returned Normal range preserves selected bytes and typing
/// replacement, not Word/Line gesture-extension mode or an interior click point.
/// Unequal raw endpoint direction is preserved; coincident Word/Line endpoints
/// canonically restore with the active cursor at the effective end.
///
/// The renderer constraint is intentional: the inspected Iced graphics editor
/// collapses any selection to its effective start for `Move(Left)`, and its copied
/// selection joins editor lines with LF regardless of physical CRLF/LF endings.
/// Only the selected text is temporarily copied; retained state is one Cursor.
pub fn capture<R>(content: &mut Content<R>) -> Cursor
where
R: text::Renderer<Editor = graphics::text::Editor>,
{
let original = content.cursor();
let Some(selected) = content.selection().filter(|selected| !selected.is_empty()) else {
// Moving an unselected caret Left would be a user-visible navigation.
return original;
};
let active_start = original.selection.is_some_and(|anchor| {
(original.position.line, original.position.column) < (anchor.line, anchor.column)
});
content.perform(Action::Move(Motion::Left));
let start = content.cursor().position;
let end = match selected.rsplit_once('\n') {
Some((prefix, suffix)) => Position {
line: start.line + prefix.bytes().filter(|byte| *byte == b'\n').count() + 1,
column: suffix.len(),
},
None => Position {
line: start.line,
column: start.column + selected.len(),
},
};
// These sums describe an existing selection in this same allocated buffer;
// neither can exceed its line count / existing UTF-8 line length. A checked
// error after collapsing would leave a failed departure with lost selection.
debug_assert!(content.cursor().selection.is_none());
debug_assert!(start.line < content.line_count() && end.line < content.line_count());
debug_assert!((start.line, start.column) < (end.line, end.column));
Cursor {
position: if active_start { start } else { end },
selection: Some(if active_start { end } else { start }),
}
}
#[cfg(test)]
mod tests {
use super::*;
use iced::widget::text_editor::Edit;
use std::sync::Arc;
type EditorContent = Content<iced::Renderer>;
fn at(line: usize, column: usize) -> Position {
Position { line, column }
}
fn range(start: Position, end: Position, active_start: bool) -> Cursor {
Cursor {
position: if active_start { start } else { end },
selection: Some(if active_start { end } else { start }),
}
}
fn caret(content: &mut EditorContent, position: Position) {
content.move_to(Cursor {
position,
selection: None,
});
}
fn roundtrip(
source: &str,
prepare: impl Fn(&mut EditorContent),
selected: &str,
expected: Cursor,
lossy_raw: bool,
) {
let mut departing = EditorContent::with_text(source);
prepare(&mut departing);
assert_eq!(departing.text(), source);
assert_eq!(departing.selection().as_deref(), Some(selected));
let raw = departing.cursor();
// Independent direct-typing control retains the original semantic mode.
let replacement = Action::Edit(Edit::Paste(Arc::new("替🚀".into())));
let mut direct = EditorContent::with_text(source);
prepare(&mut direct);
direct.perform(replacement.clone());
let captured = capture(&mut departing);
assert_eq!(captured, expected);
assert_eq!(
departing.text(),
source,
"capture cannot edit physical source bytes"
);
assert!(departing.cursor().selection.is_none());
let mut restored = EditorContent::with_text(source);
restored.move_to(captured);
assert_eq!(restored.selection().as_deref(), Some(selected));
assert_eq!(restored.text(), source);
restored.perform(replacement);
assert_eq!(
restored.text(),
direct.text(),
"restored range must replace exactly the original selected bytes"
);
assert_eq!(restored.cursor(), direct.cursor());
if lossy_raw {
let mut old = EditorContent::with_text(source);
old.move_to(raw);
assert_ne!(
old.selection().as_deref(),
Some(selected),
"negative control must discriminate raw cursor storage"
);
} else {
assert_eq!(
captured, raw,
"ordinary directional ranges are already canonical"
);
}
}
#[test]
fn unicode_normal_ranges_preserve_forward_and_reverse_direction() {
let source = "先 αβ 救助 🚀 tail\r\n";
for active_start in [false, true] {
let expected = range(
at(0, "先 ".len()),
at(0, "先 αβ 救助 🚀".len()),
active_start,
);
roundtrip(
source,
|content| content.move_to(expected),
"αβ 救助 🚀",
expected,
false,
);
}
}
#[test]
fn repeated_unicode_words_capture_the_selected_occurrence_without_searching() {
let source = "éclair éclair éclair\r\n";
let start = "éclair ".len();
roundtrip(
source,
|content| {
caret(content, at(0, start + "écl".len()));
content.perform(Action::SelectWord);
},
"éclair",
range(at(0, start), at(0, start + "éclair".len()), false),
true,
);
}
#[test]
fn line_selection_expands_past_its_interior_unicode_caret() {
let source = "first\r\n救助 🚀 tail\r\nlast";
roundtrip(
source,
|content| {
caret(content, at(1, "救助 ".len()));
content.perform(Action::SelectLine);
},
"救助 🚀 tail",
range(at(1, 0), at(1, "救助 🚀 tail".len()), false),
true,
);
}
#[test]
fn multiline_ranges_use_copied_lf_and_utf8_columns_for_physical_crlf_and_mixed_endings() {
for source in ["pré α\r\n中 🚀\r\nfin Ω", "pré α\n中 🚀\r\nfin Ω"] {
for active_start in [false, true] {
let expected = range(at(0, "pré ".len()), at(2, "fin ".len()), active_start);
roundtrip(
source,
|content| content.move_to(expected),
"α\n中 🚀\nfin ",
expected,
false,
);
}
}
}
#[test]
fn expanded_word_and_line_modes_capture_multiline_ranges_in_both_directions() {
let source = "one alpha\r\ntwo beta\nthree gamma";
for line in [false, true] {
for reverse in [false, true] {
let (start, end, selected) = match (line, reverse) {
(false, false) => (at(0, 4), at(2, 11), "alpha\ntwo beta\nthree gamma"),
(false, true) => (at(0, 0), at(2, 11), "one alpha\ntwo beta\nthree gamma"),
(true, _) => (at(0, 0), at(2, 11), "one alpha\ntwo beta\nthree gamma"),
};
roundtrip(
source,
|content| {
caret(content, if reverse { at(2, 8) } else { at(0, 6) });
content.perform(if line {
Action::SelectLine
} else {
Action::SelectWord
});
// Iced preserves existing Word/Line mode for Select motions.
content.perform(Action::Select(if reverse {
Motion::DocumentStart
} else {
Motion::DocumentEnd
}));
},
selected,
range(start, end, reverse),
true,
);
}
}
}
#[test]
fn trailing_newline_selection_restores_endpoint_on_the_empty_last_line() {
let source = "雨\r\n🚀\r\n";
let expected = range(at(0, 0), at(2, 0), false);
roundtrip(
source,
|content| content.perform(Action::SelectAll),
"雨\n🚀\n",
expected,
false,
);
}
#[test]
fn absent_and_empty_selection_do_not_move_the_departing_caret() {
for source in ["", "\r\n", "alpha\r\n\r\ntail"] {
for empty_selection in [false, true] {
let mut content = EditorContent::with_text(source);
let position = if source.starts_with("alpha") {
at(1, 0)
} else {
at(0, 0)
};
caret(&mut content, position);
if empty_selection {
content.perform(Action::SelectLine);
assert_eq!(content.selection().as_deref(), Some(""));
} else {
assert!(content.selection().is_none());
}
let raw = content.cursor();
let selected = content.selection();
assert_eq!(capture(&mut content), raw);
assert_eq!(content.cursor(), raw);
assert_eq!(content.selection(), selected);
assert_eq!(content.text(), source);
}
}
for empty_normal in [false, true] {
let mut content = EditorContent::with_text("éclair");
let position = at(0, "écl".len());
content.move_to(Cursor {
position,
selection: empty_normal.then_some(position),
});
let raw = content.cursor();
let selected = content.selection();
assert_eq!(capture(&mut content), raw);
assert_eq!(
content.cursor(),
raw,
"an unselected interior caret must not move left"
);
assert_eq!(content.selection(), selected);
}
}
}
+62 -430
View File
@@ -1,4 +1,5 @@
mod source_symbols;
mod text_workspace;
pub(crate) mod traceability;
use crate::{
app::{App, Choice, FileOperation, Message, Page, Pending},
@@ -276,7 +277,7 @@ pub fn view(app: &App) -> View<'_, Message> {
p.relations.len()
)),
action(
&format!("{} checks", app.issue_count()),
&format!("{} model checks", app.issue_count()),
Message::Page(Page::Validation)
)
]
@@ -1010,237 +1011,70 @@ fn source_files(app: &App) -> View<'_, Message> {
}
fn source(app: &App) -> View<'_, Message> {
use crate::source_navigation::Event as SourceEvent;
let (undo_label, undo_message) = match app.source_rename_undo_message() {
Some(message) => ("Undo rename", Some(message)),
None => (
"Undo model",
(app.document.can_undo() && !app.source_dirty()).then_some(Message::Undo),
),
};
let navigation: View<'_, Message> = if app.source_navigation.open {
column![
row![
text_input("Find literal text…", &app.source_navigation.query)
.id("source-find")
.on_input(|query| Message::SourceNavigation(SourceEvent::Query(query)))
.on_submit(Message::SourceNavigation(SourceEvent::Next(false)))
.padding(8)
.size(12)
.width(Fill),
action(
"Previous",
Message::SourceNavigation(SourceEvent::Next(true))
),
action("Next", Message::SourceNavigation(SourceEvent::Next(false))),
label(app.source_navigation.label()),
action("Close", app.source_find_close_message()),
]
.spacing(6)
.align_y(iced::Center),
row![
text_input("Line", &app.source_navigation.line)
.id("source-line")
.on_input(|line| Message::SourceNavigation(SourceEvent::Line(line)))
.on_submit(Message::SourceNavigation(SourceEvent::Go))
.padding(8)
.size(12)
.width(80),
action("Go to line", Message::SourceNavigation(SourceEvent::Go)),
label("Enter or F3: next match · Shift F3: previous · Esc: close"),
]
.spacing(6)
.align_y(iced::Center),
]
.spacing(6)
.into()
} else {
column![].into()
};
let recovery: View<'_, Message> = if let Some(path) = &app.pending_recovery {
let edits_block_recovery =
!app.source_workspace.applied && app.source_workspace.has_edits();
let filename = path.file_name().unwrap_or_default().to_string_lossy();
container(
column![
tooltip(
text(format!("Interrupted save · {filename}")).size(15),
text(path.display().to_string()).size(12),
tooltip::Position::Bottom,
),
text(if edits_block_recovery {
"Revert the edited files before recovery. Recovery restores files to their state before the interrupted save, then reopens them."
} else if app.source_workspace.applied {
"Restore files to their state before the interrupted save. Your current model and editor drafts are kept."
} else {
"Restore files to their state before the interrupted save, then reopen them. This rolls back the incomplete save."
})
.size(13),
button(text("Recover interrupted save").size(12))
.padding(10)
.on_press_maybe(
(!edits_block_recovery && !app.busy).then_some(Message::SourceRecover),
),
]
.spacing(8),
)
.padding(12)
.width(Fill)
.style(style::card)
.into()
} else {
column![].into()
};
let mut diagnostics = column![].spacing(5);
let mut visible_diagnostics = 0;
for (index, issue) in app.source_diagnostics.iter().enumerate() {
// The persistent recovery banner supplies the action and explanation;
// repeating the internal journal path obscures ordinary diagnostics.
if app.pending_recovery.is_some() && issue.diagnostic.code == "pending_save" {
continue;
use crate::app::text_workspace::DrawerTab;
use oa_core::source_project::SourceLocation;
let visible = app.text_workspace.drawer() == Some(DrawerTab::Problems);
let publication = app
.text_workspace
.diagnostic_publication()
.filter(|publication| visible && publication.source() == app.source_key());
let mut diagnostics = column![].spacing(3).width(Fill);
if visible {
if publication.is_none() && !app.source_diagnostics.is_empty() {
diagnostics = diagnostics
.push(text("Source changed. Waiting for current source checks…").size(12));
}
visible_diagnostics += 1;
diagnostics = diagnostics.push(
button(
text(format!(
"{}:{}:{} {}",
issue.path,
issue.diagnostic.line,
issue.diagnostic.column,
issue.diagnostic.message
))
.size(12)
.color(match issue.diagnostic.severity {
validation::Severity::Error => iced::Color::from_rgb8(174, 46, 64),
validation::Severity::Warning => iced::Color::from_rgb8(145, 93, 23),
}),
)
.width(Fill)
.padding([4, 6])
.style(style::nav)
.on_press(Message::SourceDiagnostic(index)),
);
for related in &issue.related {
diagnostics = diagnostics.push(action(
&format!("Related declaration · {}", related.path),
Message::SourceRelated(related.clone()),
));
if app.source_diagnostics.is_empty() {
diagnostics = diagnostics.push(text("No source problems reported.").size(12));
}
for issue in &app.source_diagnostics {
let location = SourceLocation {
path: issue.path.clone(),
span: issue.diagnostic.span,
};
let severity = match issue.diagnostic.severity {
validation::Severity::Error => "Error",
validation::Severity::Warning => "Warning",
};
diagnostics = diagnostics.push(
button(
text(format!(
"{severity} · {}:{}:{} · {}",
issue.path,
issue.diagnostic.line,
issue.diagnostic.column,
issue.diagnostic.message,
))
.size(12)
.wrapping(widget::text::Wrapping::WordOrGlyph),
)
.width(Fill)
.padding([4, 6])
.style(style::nav)
.on_press_maybe(app.text_diagnostic_message(location)),
);
for related in &issue.related {
diagnostics = diagnostics.push(
button(
text(format!("Related declaration · {}", related.path))
.size(12)
.wrapping(widget::text::Wrapping::WordOrGlyph),
)
.width(Fill)
.padding([4, 12])
.style(style::nav)
.on_press_maybe(app.text_diagnostic_message(related.clone())),
);
}
}
}
let editor = widget::text_editor(&app.source_editor)
.id(app.source_editor_id())
.on_action(Message::SourceEdit)
.key_binding({
let context = app.source_symbol_context();
let rename = app.source_rename_begin();
move |press| source_binding(press, &context, Some(&rename))
})
.font(Font::MONOSPACE)
.size(14)
.padding(16)
.height(Fill)
.highlight_with::<crate::highlight::ArcadiaHighlighter>(
app.source_snapshot.clone(),
crate::highlight::format,
);
let header = container(
column![
row![
container(heading(
"Textual model",
"One model across files · comments and identities preserved"
))
.width(Fill),
button(text("Apply all").size(12))
.padding(10)
.on_press(Message::ApplySource),
action("Revert file", Message::RevertSource)
]
.spacing(8)
.align_y(iced::Center),
row![
action("Undo text", Message::SourceUndo),
action("Redo text", Message::SourceRedo),
button(text(undo_label).size(12)).padding([8,10]).style(style::nav)
.on_press_maybe(undo_message),
button(text("Redo model").size(12)).padding([8,10]).style(style::nav)
.on_press_maybe((app.document.can_redo() && !app.source_dirty()).then_some(Message::Redo)),
action("Find / go to…", Message::SourceNavigation(SourceEvent::Open(false))),
label(if app.source_dirty() {
"Drafts pending"
} else {
"Model in sync"
})
]
.spacing(7)
.align_y(iced::Center),
recovery,
text(app.source_workspace.active.clone()).font(Font::MONOSPACE).size(12).color(style::INK),
label(if app.pending_recovery.is_some() && !app.source_workspace.applied {
"The previous graphical model remains available while these files are recovered."
} else if !app.source_workspace.applied {
"This project needs repair. Apply all adopts it; the previous graphical model remains available."
} else if app.source_workspace.detached_dirty() {
"A detached file has an unsaved draft. Reattach it or revert that file before saving."
} else {
"Undo text affects this file's draft. Model Undo restores accepted files together (100 changes / about 32 MiB)."
}),
navigation,
row![
action("Definition · F12", app.source_symbol_message(crate::source_navigation::SymbolEvent::Query(crate::source_navigation::query::Action::Definition))),
action("References · Shift F12", app.source_symbol_message(crate::source_navigation::SymbolEvent::Query(crate::source_navigation::query::Action::References))),
action("Rename alias · F2", app.source_rename_message()),
button(text("Back · Alt ←").size(12)).padding([8, 10]).style(style::nav)
.on_press_maybe((app.source_symbols.back.iter().any(|entry| entry.session == app.source_workspace.session())).then(|| app.source_symbol_message(crate::source_navigation::SymbolEvent::Back))),
].spacing(7),
scrollable(diagnostics)
.height((visible_diagnostics as f32 * 32.).min(132.))
]
.spacing(12)
)
.padding(18);
let editor = widget::sensor(editor)
.key((
app.source_workspace.active.clone(),
app.source_reveal_ticket(),
))
.on_show({
let ticket = app.source_reveal_ticket();
move |_| Message::SourceViewport(ticket)
})
.on_resize({
let ticket = app.source_reveal_ticket();
move |_| Message::SourceViewport(ticket)
});
let workspace: View<'_, Message> = if app.source_symbols.open {
row![
container(editor).width(Fill).height(Fill),
container(scrollable(source_symbols::panel(app)))
.width(300)
.height(Fill),
]
.height(Fill)
.into()
} else {
container(editor).width(Fill).height(Fill).into()
};
source_layout(header.into(), workspace, app.window_size.height)
let guard = crate::diagnostic_input::Guard::new(
publication.map(|p| (p.generation(), app.text_workspace.drawer_visit())),
diagnostics,
);
text_workspace::view(app, source_symbols::panel(app), guard.into())
}
fn source_layout<'a, Renderer: iced::advanced::text::Renderer + 'a>(
header: View<'a, Message, iced::Theme, Renderer>,
workspace: View<'a, Message, iced::Theme, Renderer>,
window_height: f32,
) -> View<'a, Message, iced::Theme, Renderer> {
// Lint clears and repopulates diagnostics asynchronously. Reserve the same
// outer slot so a pointer aimed at the editor cannot land in the header.
column![
container(scrollable(header).id("source-header")).height((window_height * 0.42).max(180.)),
workspace,
]
.height(Fill)
.into()
}
pub(crate) fn source_binding(
press: widget::text_editor::KeyPress,
context: &crate::source_navigation::SymbolContext,
@@ -1304,8 +1138,7 @@ pub(crate) mod source_tests {
use iced::advanced::{
Layout, Shell, graphics, layout, renderer, text as shaped, widget as core_widget,
};
use iced::widget::column;
use iced::{Background, Color, Pixels, Point, Rectangle, Size, Transformation, Vector};
use iced::{Background, Color, Pixels, Point, Rectangle, Size, Transformation};
// Measure real Iced paragraphs/editor text without constructing a window or GPU.
pub(crate) struct FontLayout;
@@ -1350,207 +1183,6 @@ pub(crate) mod source_tests {
fn fill_text(&mut self, _: shaped::Text, _: Point, _: Color, _: Rectangle) {}
}
#[derive(Default)]
struct Geometry {
header: Option<(Rectangle, Rectangle, Vector)>,
editor: Option<Rectangle>,
}
impl core_widget::Operation for Geometry {
fn traverse(&mut self, visit: &mut dyn FnMut(&mut dyn core_widget::Operation)) {
visit(self);
}
fn container(&mut self, id: Option<&core_widget::Id>, bounds: Rectangle) {
if id == Some(&core_widget::Id::new("test-source-editor")) {
self.editor = Some(bounds);
}
}
fn scrollable(
&mut self,
id: Option<&core_widget::Id>,
bounds: Rectangle,
content: Rectangle,
offset: Vector,
_: &mut dyn core_widget::operation::Scrollable,
) {
if id == Some(&core_widget::Id::new("source-header")) {
self.header = Some((bounds, content, offset));
}
}
}
fn mounted_source<'a>(
content: &'a widget::text_editor::Content<FontLayout>,
diagnostics: usize,
find: bool,
window_height: f32,
) -> View<'a, Message, iced::Theme, FontLayout> {
let mut notices = column![].spacing(5);
for index in 0..diagnostics {
notices = notices.push(button(text(format!(
"救援/assess.arcadia:{}:5 · Warning: verify this participant's engineering allocation", index + 1,
)).size(12)).padding([4, 6]).width(Fill));
}
let find: View<'_, Message, iced::Theme, FontLayout> = if find {
column![
text_input("Find literal text", "assess").on_input(|s| Message::SourceNavigation(
crate::source_navigation::Event::Query(s)
)),
text_input("Line", "1").on_input(|s| Message::SourceNavigation(
crate::source_navigation::Event::Line(s)
)),
]
.spacing(8)
.into()
} else {
Space::new().into()
};
let header = container(
column![
text("Textual model").size(24),
text("Edit the current file. Apply text validates the complete included model.")
.size(11),
row![
button(text("Apply text")),
button(text("Undo text")),
button(text("Model Undo"))
]
.spacing(8),
text("救援/assess.arcadia · All files applied to the accepted model").size(11),
text("Undo text affects this draft. Model Undo restores accepted files together.")
.size(11),
find,
row![
button(text("Definition · F12")),
button(text("References · Shift F12")),
button(text("Back"))
]
.spacing(7),
scrollable(notices).height((diagnostics as f32 * 32.).min(132.)),
]
.spacing(12),
)
.padding(18);
let editor = container(
widget::text_editor(content)
.on_action(Message::SourceEdit)
.font(Font::MONOSPACE)
.size(14)
.padding(16)
.height(Fill),
)
.id("test-source-editor")
.height(Fill)
.width(Fill);
source_layout(header.into(), editor.into(), window_height)
}
#[test]
fn source_header_keeps_editor_bounds_stable_through_lint_and_find_rebuilds() {
for (host, window_height) in [
(Size::new(720., 540.), 700.),
(Size::new(1180., 890.), 1080.),
] {
let content = widget::text_editor::Content::<FontLayout>::with_text(
"// is excluded\r\n// 雨\r\n",
);
let mut tree = core_widget::Tree::empty();
let mut baseline = None;
for (diagnostics, find) in [
(0, false),
(6, false),
(0, false),
(6, true),
(1, true),
(0, false),
] {
let mut ui = mounted_source(&content, diagnostics, find, window_height);
tree.diff(ui.as_widget());
let node = ui.as_widget_mut().layout(
&mut tree,
&FontLayout,
&layout::Limits::new(Size::ZERO, host),
);
let mut geometry = Geometry::default();
ui.as_widget_mut().operate(
&mut tree,
Layout::new(&node),
&FontLayout,
&mut geometry,
);
let editor = geometry.editor.unwrap();
let (header, _, _) = geometry.header.unwrap();
let slot = node.children()[0].bounds();
assert_eq!(slot.height, (window_height * 0.42).max(180.));
assert!(
header.height <= slot.height,
"short content may shrink inside the fixed slot"
);
assert!(
editor.height >= 240.,
"remaining editor must stay usable: {editor:?}"
);
assert_eq!(editor.y, slot.y + slot.height);
if let Some(expected) = baseline {
assert_eq!(editor, expected, "diagnostics={diagnostics}, find={find}");
} else {
baseline = Some(editor);
}
}
}
}
#[test]
fn source_header_remains_scrollable_and_preserves_offset_across_diagnostic_refresh() {
let content = widget::text_editor::Content::<FontLayout>::with_text("// 雨\r\n");
let host = Size::new(720., 540.);
let mut tree = core_widget::Tree::empty();
let mut saved = None;
for diagnostics in [6, 7] {
let mut ui = mounted_source(&content, diagnostics, true, 700.);
tree.diff(ui.as_widget());
let node = ui.as_widget_mut().layout(
&mut tree,
&FontLayout,
&layout::Limits::new(Size::ZERO, host),
);
let mut geometry = Geometry::default();
ui.as_widget_mut()
.operate(&mut tree, Layout::new(&node), &FontLayout, &mut geometry);
let (bounds, contents, _) = geometry.header.unwrap();
assert!(
contents.height > bounds.height,
"fixture must actually overflow"
);
if saved.is_none() {
let mut messages = Vec::new();
let mut shell = Shell::new(&mut messages);
ui.as_widget_mut().update(
&mut tree,
&iced::Event::Mouse(iced::mouse::Event::WheelScrolled {
delta: iced::mouse::ScrollDelta::Pixels { x: 0., y: -45. },
}),
Layout::new(&node),
iced::mouse::Cursor::Available(Point::new(bounds.x + 8., bounds.y + 8.)),
&FontLayout,
&mut iced::advanced::clipboard::Null,
&mut shell,
&Rectangle::with_size(host),
);
assert!(shell.is_event_captured());
}
let mut geometry = Geometry::default();
ui.as_widget_mut()
.operate(&mut tree, Layout::new(&node), &FontLayout, &mut geometry);
let offset = geometry.header.unwrap().2;
assert!(offset.y > 0., "the actual mounted Scrollable must move");
if let Some(before) = saved {
assert_eq!(offset, before);
} else {
saved = Some(offset);
}
}
}
#[cfg(target_os = "windows")]
#[test]
fn source_editor_windows_menu_payload_is_inert_but_space_and_altgr_still_edit() {
+277 -152
View File
@@ -2,80 +2,151 @@ use crate::{
app::{App, Message},
source_navigation::{
SymbolEvent,
query::{self, Declaration, Disposition, Evidence, Identity, Membership, Position},
query::{Declaration, Disposition, Evidence, Identity, Membership, Position},
},
style,
};
use iced::{
Element, Fill,
widget::{Space, button, column, container, row, scrollable, text, tooltip},
widget::{button, column, container, scrollable, text, tooltip},
};
pub(super) fn panel(app: &App) -> Element<'_, Message> {
use crate::app::text_workspace::{DrawerTab, Event};
use std::collections::BTreeSet;
let state = &app.source_symbols;
if !state.open
|| (state.results.is_none() && state.in_flight.is_none() && state.notice.is_none())
{
return column![].into();
let visible = app.text_workspace.drawer() == Some(DrawerTab::References);
let presentation = app.text_workspace.references();
let mut content = column![].spacing(0).width(Fill);
if visible && let Some(notice) = &state.notice {
content = content.push(text(notice.clone()).size(12));
}
let title = state.results.as_ref().map_or_else(
|| "Source symbols".to_owned(),
|results| {
let action = match results.action {
query::Action::Definition => "Definitions",
query::Action::References => "References",
};
results.alias.as_ref().map_or_else(
|| action.to_owned(),
|alias| format!("{action} · @{}", preview(alias, 40)),
)
},
);
let mut content = column![
row![
text(title).size(13),
Space::new().width(Fill),
button(text("Close").size(11))
.padding([3, 8])
.style(style::nav)
.on_press(app.source_symbol_message(SymbolEvent::Close)),
]
.align_y(iced::Center)
]
.spacing(5);
if let Some(notice) = &state.notice {
content = content.push(super::label(preview(notice, 240)));
}
if state.in_flight.is_some() {
content = content.push(super::label("Finding source symbols…"));
} else if let Some(results) = &state.results {
if visible && let Some(results) = &state.results {
let stale = results.stamp.snapshot != app.source_key();
if stale {
content = content.push(super::label(
"Stale results — source changed. Run Definition or References again.",
));
let enabled = !stale && app.source_navigation_available();
let files: BTreeSet<_> = results
.definitions
.iter()
.map(|row| row.path.as_str())
.chain(results.references.iter().map(|row| row.path.as_str()))
.collect();
let mut ordered: Vec<_> = files.iter().copied().collect();
// Keep the query's captured origin first even after navigating elsewhere.
if let Some(origin) = state
.display_request
.as_ref()
.map(|request| request.path.as_str())
{
ordered.sort_by_key(|path| (*path != origin, *path));
}
for path in ordered {
let collapsed = presentation.collapsed(path);
let count = results
.definitions
.iter()
.filter(|row| row.path == path)
.count()
+ results
.references
.iter()
.filter(|row| row.path == path)
.count();
let suffix = distinguishing_path(path, &files);
content = content.push(
button(
text(format!(
"{} {suffix} · {count}",
if collapsed { "▸" } else { "▾" }
))
.size(12)
.wrapping(iced::widget::text::Wrapping::None),
)
.height(24)
.width(Fill)
.padding([2, 6])
.style(style::nav)
.on_press_maybe(app.source_navigation_available().then(|| {
Message::TextWorkspace(Event::ToggleFile {
stamp: results.stamp,
visit: app.text_workspace.drawer_visit(),
path: path.to_owned(),
})
})),
);
if collapsed {
continue;
}
for (index, definition) in results
.definitions
.iter()
.enumerate()
.filter(|(_, row)| row.path == path)
{
content = content.push(location_row(
declaration_title(&definition.declaration),
path,
definition.position,
provenance(
definition.membership,
definition.evidence,
definition.declaration.identity,
false,
),
enabled.then(|| {
app.source_symbol_message(SymbolEvent::Choose {
stamp: results.stamp,
visit: app.text_workspace.drawer_visit(),
reference: false,
index,
})
}),
));
}
for (index, reference) in results
.references
.iter()
.enumerate()
.filter(|(_, row)| row.path == path)
{
let title = reference.context.as_ref().map_or_else(
|| format!("@{} · lexical use", preview(&reference.alias, 48)),
|context| format!("use · {}", declaration_title(context)),
);
content = content.push(location_row(
title,
path,
reference.position,
provenance(
reference.membership,
reference.evidence,
reference
.context
.as_ref()
.map_or(Identity::Missing, |context| context.identity),
true,
),
enabled.then(|| {
app.source_symbol_message(SymbolEvent::Choose {
stamp: results.stamp,
visit: app.text_workspace.drawer_visit(),
reference: true,
index,
})
}),
));
}
// Full path is readable by ordinary scrolling, independently of hover.
content = content.push(
container(
text(path.to_owned())
.font(iced::Font::MONOSPACE)
.size(12)
.wrapping(iced::widget::text::Wrapping::WordOrGlyph),
)
.padding([3, 8]),
);
}
let scope = &results.scope;
content = content.push(super::label(format!(
"{} · {} · {} included / {} detached / {} unverified files · {} scope issues",
if scope.partial() {
"Partial scope"
} else {
"Complete include scope"
},
if !scope.applied {
"Unapplied drafts"
} else if scope.validated {
"Validated sources"
} else {
"Draft sources"
},
scope.included_files,
scope.detached_files,
scope.unverified_files,
scope.issues.len(),
)));
let explanation = match results.disposition {
Disposition::NoSymbol => "Place the caret on a declaration alias or an @reference.",
Disposition::NoDefinition => "No matching declaration in the loaded sources.",
@@ -87,89 +158,113 @@ pub(super) fn panel(app: &App) -> Element<'_, Message> {
"Lexical uses of this alias; these do not establish a semantic target."
}
};
content = content.push(super::label(explanation));
if results.total_definitions > 1 {
content = content.push(super::label(format!(
"Alias collision: {} declarations. Uses are not attributed to a single declaration.",
results.total_definitions,
)));
}
let enabled = !stale && !app.busy;
let mut rows = column![super::label(counts(
"Declarations",
results.definitions.len(),
results.total_definitions,
results.omitted_definitions,
))]
.spacing(4);
for (index, definition) in results.definitions.iter().enumerate() {
rows = rows.push(location_row(
declaration_title(&definition.declaration),
&definition.path,
definition.position,
provenance(
definition.membership,
definition.evidence,
definition.declaration.identity,
false,
),
enabled.then(|| {
app.source_symbol_message(SymbolEvent::Choose {
stamp: results.stamp,
reference: false,
index,
})
}),
));
}
rows = rows.push(super::label(counts(
"Lexical uses",
results.references.len(),
results.total_references,
results.omitted_references,
)));
for (index, reference) in results.references.iter().enumerate() {
let title = reference.context.as_ref().map_or_else(
|| format!("@{} · lexical use", preview(&reference.alias, 48)),
|context| {
format!(
"@{} · inside {}",
preview(&reference.alias, 48),
declaration_title(context)
)
},
content = content.push(text(explanation).size(12));
if stale {
content = content.push(
text("Source changed. Run Definition or References again for current locations.")
.size(12),
);
rows = rows.push(location_row(
title,
&reference.path,
reference.position,
provenance(
reference.membership,
reference.evidence,
reference
.context
.as_ref()
.map_or(Identity::Missing, |context| context.identity),
true,
),
enabled.then(|| {
app.source_symbol_message(SymbolEvent::Choose {
stamp: results.stamp,
reference: true,
index,
})
}),
));
}
let row_count = results.definitions.len() + results.references.len();
content =
content.push(scrollable(rows).height((44.0 + row_count as f32 * 48.0).min(180.0)));
if results.total_definitions > 1 {
content = content.push(
text("Alias collision: uses are not attributed to a single declaration.").size(12),
);
}
content = content
.push(
text(format!(
"{} · {} included / {} detached / {} unverified files · {} scope issues",
if scope.partial() {
"Partial include scope"
} else {
"Complete include scope"
},
scope.included_files,
scope.detached_files,
scope.unverified_files,
scope.issues.len()
))
.size(12),
)
.push(
text(if !scope.applied {
"Unapplied drafts"
} else if scope.validated {
"Validated sources"
} else {
"Draft sources"
})
.size(12),
)
.push(
text(counts(
"Declarations",
results.definitions.len(),
results.total_definitions,
results.omitted_definitions,
))
.size(12),
)
.push(
text(counts(
"Lexical uses",
results.references.len(),
results.total_references,
results.omitted_references,
))
.size(12),
);
}
container(content)
.padding(8)
.width(Fill)
.style(style::subtle)
.into()
let identity = if visible {
state
.display_request
.as_ref()
.map(|request| (request.job, app.text_workspace.drawer_visit()))
} else {
None
};
let guarded = crate::diagnostic_input::Guard::new(identity, content);
let mut body = scrollable(
container(guarded)
.width(Fill)
.padding(iced::Padding::ZERO.right(14)),
)
.id(app.text_workspace.reference_scroll_id())
.height(Fill)
.width(Fill);
if let Some(stamp) = presentation.stamp() {
let visit = app.text_workspace.drawer_visit();
body = body.on_scroll(move |viewport| {
Message::TextWorkspace(Event::ReferenceScrolled {
stamp,
visit,
y: viewport.absolute_offset().y,
})
});
}
body.into()
}
/// Shortest suffix that still distinguishes duplicate basenames and suffix paths.
fn distinguishing_path<'a>(path: &'a str, files: &std::collections::BTreeSet<&str>) -> &'a str {
let starts = std::iter::once(0).chain(path.match_indices('/').map(|(index, _)| index + 1));
for start in starts.collect::<Vec<_>>().into_iter().rev() {
let candidate = &path[start..];
if files
.iter()
.filter(|other| {
**other == candidate
|| other
.strip_suffix(candidate)
.is_some_and(|prefix| prefix.ends_with('/'))
})
.count()
== 1
{
return candidate;
}
}
path
}
fn counts(label: &str, shown: usize, total: usize, omitted: usize) -> String {
@@ -223,23 +318,24 @@ fn location_row(
) -> Element<'static, Message> {
let line = position.line.saturating_add(1);
let column = position.byte_column.saturating_add(1);
let location = format!("{}:{line}:{column}", preview(path, 72));
let full =
format!("{path}:{line}:{column} · {title} · {status} (1-based line and UTF-8 byte column)");
tooltip(
button(
column![
text(title).size(12),
super::label(format!("{location} · {status}"))
]
.spacing(2),
container(
text(format!("{line}:{column} {title} · {status}"))
.size(12)
.wrapping(iced::widget::text::Wrapping::None),
)
.clip(true)
.width(Fill),
)
.padding([4, 6])
.padding([3, 12])
.height(28)
.width(Fill)
.style(style::nav)
.on_press_maybe(event),
text(format!(
"{path}:{line}:{column} (1-based line and UTF-8 byte column)"
))
.size(11),
text(full).size(12),
tooltip::Position::Top,
)
.into()
@@ -258,3 +354,32 @@ fn preview(value: &str, limit: usize) -> String {
}
result
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn suffixes_distinguish_nested_duplicate_basenames_without_changing_unicode() {
let files = [
"a/core.arcadia",
"b/core.arcadia",
"core.arcadia",
"救援/actors.arcadia",
]
.into_iter()
.collect();
assert_eq!(
distinguishing_path("a/core.arcadia", &files),
"a/core.arcadia"
);
assert_eq!(
distinguishing_path("b/core.arcadia", &files),
"b/core.arcadia"
);
assert_eq!(distinguishing_path("core.arcadia", &files), "core.arcadia");
assert_eq!(
distinguishing_path("救援/actors.arcadia", &files),
"actors.arcadia"
);
}
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,248 @@
//! Shapes and draws the production summary, checking actual paragraph advances.
//! Native validation remains necessary for platform raster ink/fallback fonts.
use super::*;
use crate::source_navigation::query;
use crate::views::source_tests::FontLayout;
use iced::advanced::{Layout, layout, renderer, text as shaped, widget::Tree};
use iced::{Background, Color, Pixels, Point, Rectangle, Size, Transformation};
use std::sync::Arc;
struct Cluster {
paragraph: String,
bytes: std::ops::Range<usize>,
bounds: Rectangle,
clip: Rectangle,
}
struct Recorder {
clips: Vec<Rectangle>,
transforms: Vec<Transformation>,
clusters: Vec<Cluster>,
}
impl Recorder {
fn transform(&self) -> Transformation {
*self.transforms.last().unwrap()
}
fn clip(&self, bounds: Rectangle) -> Rectangle {
self.clips
.last()
.unwrap()
.intersection(&(bounds * self.transform()))
.unwrap_or(Rectangle::with_size(Size::ZERO))
}
}
impl renderer::Renderer for Recorder {
fn start_layer(&mut self, bounds: Rectangle) {
self.clips.push(self.clip(bounds));
}
fn end_layer(&mut self) {
self.clips.pop().unwrap();
}
fn start_transformation(&mut self, transform: Transformation) {
self.transforms.push(self.transform() * transform);
}
fn end_transformation(&mut self) {
self.transforms.pop().unwrap();
}
fn reset(&mut self, bounds: Rectangle) {
self.clips = vec![bounds];
self.transforms = vec![Transformation::IDENTITY];
self.clusters.clear();
}
fn fill_quad(&mut self, _: renderer::Quad, _: impl Into<Background>) {}
fn allocate_image(
&mut self,
handle: &iced::advanced::image::Handle,
callback: impl FnOnce(Result<iced::advanced::image::Allocation, iced::advanced::image::Error>)
+ Send
+ 'static,
) {
renderer::Renderer::allocate_image(&mut FontLayout, handle, callback);
}
}
impl shaped::Renderer for Recorder {
type Font = Font;
type Paragraph = <FontLayout as shaped::Renderer>::Paragraph;
type Editor = <FontLayout as shaped::Renderer>::Editor;
const ICON_FONT: Font = <FontLayout as shaped::Renderer>::ICON_FONT;
const CHECKMARK_ICON: char = <FontLayout as shaped::Renderer>::CHECKMARK_ICON;
const ARROW_DOWN_ICON: char = <FontLayout as shaped::Renderer>::ARROW_DOWN_ICON;
const SCROLL_UP_ICON: char = <FontLayout as shaped::Renderer>::SCROLL_UP_ICON;
const SCROLL_DOWN_ICON: char = <FontLayout as shaped::Renderer>::SCROLL_DOWN_ICON;
const SCROLL_LEFT_ICON: char = <FontLayout as shaped::Renderer>::SCROLL_LEFT_ICON;
const SCROLL_RIGHT_ICON: char = <FontLayout as shaped::Renderer>::SCROLL_RIGHT_ICON;
const ICED_LOGO: char = <FontLayout as shaped::Renderer>::ICED_LOGO;
fn default_font(&self) -> Font {
shaped::Renderer::default_font(&FontLayout)
}
fn default_size(&self) -> Pixels {
shaped::Renderer::default_size(&FontLayout)
}
fn fill_paragraph(
&mut self,
paragraph: &Self::Paragraph,
position: Point,
_: Color,
clip: Rectangle,
) {
let buffer = paragraph.buffer();
let content = buffer
.lines
.iter()
.map(|line| line.text())
.collect::<Vec<_>>()
.join("\n");
let clip = self.clip(clip);
for run in buffer.layout_runs() {
for glyph in run.glyphs {
self.clusters.push(Cluster {
paragraph: content.clone(),
bytes: glyph.start..glyph.end,
bounds: Rectangle {
x: position.x + glyph.x + glyph.x_offset * glyph.font_size,
y: position.y + run.line_top,
width: glyph.w,
height: run.line_height,
} * self.transform(),
clip,
});
}
}
}
fn fill_editor(&mut self, _: &Self::Editor, _: Point, _: Color, _: Rectangle) {}
fn fill_text(&mut self, _: shaped::Text, _: Point, _: Color, _: Rectangle) {}
}
const FLAGS: [&str; 5] = ["Stale", "Partial", "Collision", "Detached", "Unverified"];
fn draw_and_check_flags(
content: Element<'_, Message, iced::Theme, Recorder>,
width: f32,
) -> Vec<String> {
let viewport = Rectangle::with_size(Size::new(width, 24.));
let mut renderer = Recorder {
clips: vec![viewport],
transforms: vec![Transformation::IDENTITY],
clusters: Vec::new(),
};
let mut view: Element<'_, Message, iced::Theme, Recorder> =
container(content).width(Fill).height(24).clip(true).into();
let mut tree = Tree::new(view.as_widget());
let node = view.as_widget_mut().layout(
&mut tree,
&renderer,
&layout::Limits::new(Size::ZERO, viewport.size()),
);
assert_eq!(node.size(), viewport.size());
view.as_widget().draw(
&tree,
&mut renderer,
&iced::Theme::Light,
&renderer::Style::default(),
Layout::new(&node),
iced::mouse::Cursor::Unavailable,
&viewport,
);
let mut failures = Vec::new();
for flag in FLAGS {
for byte in 0..flag.len() {
let matching: Vec<_> = renderer
.clusters
.iter()
.filter(|cluster| {
cluster
.paragraph
.find(flag)
.is_some_and(|start| cluster.bytes.contains(&(start + byte)))
})
.collect();
if matching.is_empty() {
failures.push(format!("missing shaped flag byte: {flag}[{byte}]"));
}
for cluster in matching {
let b = cluster.bounds;
let c = cluster.clip;
if !(b.x >= c.x - 0.5
&& b.y >= c.y - 0.5
&& b.x + b.width <= c.x + c.width + 0.5
&& b.y + b.height <= c.y + c.height + 0.5)
{
failures.push(format!("flag {flag} is clipped: glyph {b:?}, clip {c:?}"));
}
}
}
}
failures
}
fn old_summary(value: String) -> Element<'static, Message, iced::Theme, Recorder> {
text(value)
.size(12)
.wrapping(widget::text::Wrapping::None)
.into()
}
#[test]
fn all_reference_exceptions_fit_allocated_width_with_wide_alias_and_large_counts() {
let mut app = App::with_project(oa_core::Project::empty());
let old_key = App::with_project(oa_core::Project::empty()).source_key();
assert_ne!(old_key, app.source_key());
for alias in ["雨".repeat(32), "W".repeat(32)] {
// Unicode aliases are presentation stress: the current lexer admits
// ASCII identifiers only. Six-digit totals are within the query's
// 250,000-record cap; this does not build that many source records.
let old_value = format!(
"@{alias} · 100000 declarations · 100000 uses · Stale · Partial · Collision · Detached · Unverified"
);
app.source_symbols.results = Some(Arc::new(query::Results {
stamp: query::QueryStamp {
snapshot: old_key,
serial: 1,
},
action: query::Action::References,
origin_path: app.source_workspace.active.clone(),
origin_offset: 0,
origin: None,
alias: Some(alias.clone()),
scope: query::Scope {
closure_complete: false,
applied: false,
validated: false,
included_files: 28,
detached_files: 1,
unverified_files: 1,
issues: Vec::new(),
},
disposition: query::Disposition::LexicalReferences,
definitions: Vec::new(),
references: Vec::new(),
total_definitions: 100_000,
total_references: 100_000,
omitted_definitions: 100_000,
omitted_references: 100_000,
}));
for width in [840., 720.] {
let positive = draw_and_check_flags(reference_summary(&app), width);
assert!(
positive.is_empty(),
"reserved flags, width {width}, alias {alias:?}: {positive:?}"
);
// Observe the exact old presentation without predicting font widths.
// This is emitted under --nocapture, whether it clips or fits.
let old = draw_and_check_flags(old_summary(old_value.clone()), width);
println!(
"old alias-first summary width={width} alias={alias:?}: {} missing/clipped flag-byte checks; first={:?}",
old.len(),
old.first()
);
}
}
// Deliberate evaluator stress, beyond the production 32-character subject
// bound: require the same evaluator to reject a clipped old-style paragraph.
// This is not evidence of a production/native overflow at 840 pixels.
let stress = format!("@{} · {}", "W".repeat(256), FLAGS.join(" · "));
let rejected = draw_and_check_flags(old_summary(stress), 720.);
assert!(
!rejected.is_empty(),
"negative control must detect missing/clipped warning text"
);
}
@@ -0,0 +1,6 @@
{
"path": "crates/oa-desktop/src/app/source_symbols.rs",
"oldSha256": "1fb3709bb973e7dcfbcde56054d028e47d770a62f3b7c8b6fac411543a234b7b",
"correctedSha256": "aa4f1423e759fdeaf7815d656b40189be176f4e8659f3da50debb5d85ed3af6c",
"correctedBytes": 21062
}
@@ -0,0 +1,516 @@
//! Current draft navigation, isolated from model application and disk discovery.
use super::*;
use crate::source_navigation::{self as nav, query};
use std::sync::atomic::Ordering;
fn admission_notice(error: query::AdmissionError) -> String {
use nav::symbols::{BuildError, InputProblem, Resource};
let (limit, resource) = match error {
query::AdmissionError::Index(BuildError::Limit { limit, resource, .. }) => (limit, resource),
query::AdmissionError::Outline { error, .. } => (error.limit, match error.resource {
language::OutlineResource::SourceBytes => Resource::SourceBytes,
language::OutlineResource::Tokens => Resource::Tokens,
language::OutlineResource::Declarations => Resource::Records,
}),
query::AdmissionError::Index(BuildError::Input { problem, .. }) => return match problem {
InputProblem::NonCanonicalPath | InputProblem::DuplicateOrCaseCollidingPath =>
"Navigation needs distinct relative source paths. Check file names and include paths.".into(),
_ => "Navigation could not verify the current source locations. Correct source errors and try again.".into(),
},
};
let unit = match resource {
Resource::Files => "loaded files",
Resource::SourceBytes => "source bytes",
Resource::PathBytes => "bytes in file paths",
Resource::Tokens => "source tokens",
Resource::Records => "declarations and references",
};
format!(
"Navigation reached its limit of {limit} {unit}. Reduce the loaded source size and try again."
)
}
impl App {
pub fn source_symbol_context(&self) -> nav::SymbolContext {
nav::SymbolContext {
session: self.source_workspace.session(),
path: self.source_workspace.active.clone(),
}
}
pub fn source_symbol_message(&self, event: nav::SymbolEvent) -> Message {
Message::SourceSymbols(self.source_symbol_context(), event)
}
pub fn source_find_close_message(&self) -> Message {
Message::SourceFindClose(self.source_symbol_context(), self.source_find_instance)
}
pub fn source_key(&self) -> query::SnapshotKey {
query::SnapshotKey {
workspace: self.source_workspace.session(),
revision: self.source_workspace.revision(),
}
}
pub(super) fn with_source_input<T>(&self, use_input: impl FnOnce(query::Input<'_>) -> T) -> T {
let files: Vec<_> = self
.source_workspace
.files
.iter()
.map(|(path, buffer)| query::DraftFile {
path,
text: &buffer.text,
})
.collect();
let accepted = self.document.bundle();
let validated: Vec<_> = accepted
.files
.iter()
.map(|(path, text)| query::DraftFile { path, text })
.collect();
use_input(query::Input {
key: self.source_key(),
entry: &self.source_workspace.entry,
files: &files,
applied: self.source_workspace.applied,
validation: self
.source_workspace
.applied
.then_some(query::ValidatedSources {
entry: &accepted.entry,
files: &validated,
}),
})
}
pub(super) fn source_snapshot_matches(&self, snapshot: &query::Snapshot) -> bool {
snapshot.key() == self.source_key()
&& self.with_source_input(|input| snapshot.matches(input))
}
pub fn source_navigation_available(&self) -> bool {
self.page == Page::Text
&& !self.source_rename.open()
&& !self.busy
&& self.pending.is_none()
&& self.file_prompt.is_none()
&& !self.delete_pending
&& self.workflow.is_none()
&& !self.hosted.visible
&& self.model_menu.is_none()
&& self.text_workspace.menu().is_none()
&& self.architecture.is_none()
&& !self.behavior.has_pending()
}
/// Mounted widget IDs change when another interaction supersedes a reveal.
/// A queued focus operation therefore cannot find a subsequently reused editor.
pub fn source_editor_id(&self) -> iced::widget::Id {
iced::widget::Id::from(format!(
"source-editor-{}-{}-{}",
self.source_workspace.session(),
self.source_workspace.active,
self.source_symbols.interaction
))
}
/// The reviewed diagram-query union is not integrated into this source yet.
/// Its eventual adapter must return the peer's captured chooser message.
pub(super) fn text_diagram_usages_message(&self) -> Option<Message> {
None
}
pub fn source_reveal_ticket(&self) -> Option<Id> {
self.source_symbols
.reveal
.as_ref()
.map(|reveal| reveal.ticket)
}
pub(super) fn source_interaction(&mut self) {
self.source_symbols.interaction = Id::new_v4();
self.source_symbols.request = None;
self.source_symbols.reveal = None;
self.source_jump = None;
}
pub(super) fn queue_source_reveal(&mut self, cursor: text_editor::Cursor, select_line: bool) {
self.source_jump = Some(cursor);
self.source_select_line = select_line;
self.source_symbols.reveal = Some(nav::Reveal {
ticket: Id::new_v4(),
interaction: self.source_symbols.interaction,
raw_interaction: self.source_symbols.raw_interaction.load(Ordering::SeqCst),
snapshot: self.source_key(),
path: self.source_workspace.active.clone(),
});
}
pub(super) fn restore_source_editor_focus(&mut self) {
let cursor = self.source_editor.cursor();
if self.source_navigation_available()
&& nav::exact_cursor(self.source_workspace.text(), cursor)
{
self.queue_source_reveal(cursor, false);
// This ticket restores focus to the live editor, not a saved cursor.
// Iced's Cursor omits Word/Line selection kind; moving back to that
// lossy value would collapse an actual word/line selection.
self.source_jump = None;
}
}
pub(super) fn source_viewport(&mut self, ticket: Option<Id>) -> Task<Message> {
let Some(reveal) = &self.source_symbols.reveal else {
return Task::none();
};
if Some(reveal.ticket) != ticket
|| reveal.interaction != self.source_symbols.interaction
|| !nav::interaction::is_current(
&self.source_symbols.raw_interaction,
reveal.raw_interaction,
)
|| reveal.snapshot != self.source_key()
|| reveal.path != self.source_workspace.active
|| !self.source_navigation_available()
{
return Task::none();
}
let raw_interaction = reveal.raw_interaction;
self.source_symbols.reveal = None;
if let Some(cursor) = self.source_jump.take() {
if !nav::exact_cursor(self.source_workspace.text(), cursor) {
return Task::none();
}
self.source_editor.move_to(cursor);
if self.source_select_line && cursor.selection.is_none() {
self.source_editor.perform(text_editor::Action::SelectLine);
}
}
// A valid ticket with no jump is focus-only. All intentional navigation
// still takes the cursor branch above, including explicit line selection.
nav::interaction::guarded_focus(
self.source_editor_id(),
self.source_symbols.raw_interaction.clone(),
raw_interaction,
)
}
pub(super) fn source_symbol_event(&mut self, event: nav::SymbolEvent) -> Task<Message> {
if !self.source_navigation_available() {
return Task::none();
}
match event {
nav::SymbolEvent::Close => {
return self.show_text_drawer(None);
}
nav::SymbolEvent::Back => {
self.source_symbol_back();
// A successful Back needs no empty results panel. Retain an
// already open panel, or reveal an actionable return notice.
if self.source_symbols.notice.is_some() {
self.text_workspace
.show_drawer(Some(text_workspace::DrawerTab::References));
let refs = self.text_workspace.references();
return iced::widget::operation::scroll_to(
self.text_workspace.reference_scroll_id(),
iced::widget::scrollable::AbsoluteOffset {
x: 0.,
y: refs.scroll_y(),
},
);
}
}
nav::SymbolEvent::Choose {
stamp,
reference,
index,
..
} => {
let Some(results) = self.source_symbols.results.clone() else {
return Task::none();
};
if results.stamp != stamp
|| stamp.snapshot != self.source_key()
|| self
.source_symbols
.cache
.as_ref()
.is_none_or(|cache| !self.source_snapshot_matches(cache))
{
self.source_symbols.notice =
Some("Source changed. Run navigation again for current locations.".into());
return Task::none();
}
let destination = if reference {
results
.references
.get(index)
.map(|row| (&row.path, row.position, row.end_position))
} else {
results
.definitions
.get(index)
.map(|row| (&row.path, row.position, row.end_position))
};
if let Some((path, start, end)) = destination {
self.source_symbol_jump(path, start, end);
}
}
nav::SymbolEvent::Query(action) => return self.start_source_query(action),
}
Task::none()
}
fn start_source_query(&mut self, action: query::Action) -> Task<Message> {
self.text_workspace
.show_drawer(Some(text_workspace::DrawerTab::References));
if !nav::interaction::is_current(
&self.source_symbols.raw_interaction,
self.source_symbols.raw_interaction.load(Ordering::SeqCst),
) {
self.source_symbols.notice = Some("Reopen this workspace to reset navigation.".into());
return Task::none();
}
if self.source_symbols.in_flight.is_some() {
self.source_symbols.notice = Some("Navigation is finishing. Try again shortly.".into());
return Task::none();
}
let cursor = self.source_editor.cursor();
let Some(offset) = nav::cursor_offset(self.source_workspace.text(), cursor) else {
self.source_symbols.notice =
Some("Place the cursor on an alias or its @ reference.".into());
return Task::none();
};
self.source_symbols.serial = match self.source_symbols.serial.checked_add(1) {
Some(serial) => serial,
None => {
self.reset_source_navigation_session();
self.source_symbols.back.clear();
self.source_symbols.cache = None;
0
}
};
let request = nav::Request {
job: Id::new_v4(),
interaction: self.source_symbols.interaction,
raw_interaction: self.source_symbols.raw_interaction.load(Ordering::SeqCst),
stamp: query::QueryStamp {
snapshot: self.source_key(),
serial: self.source_symbols.serial,
},
path: self.source_workspace.active.clone(),
offset,
cursor,
action,
};
let cache = self
.source_symbols
.cache
.as_ref()
.filter(|cache| self.source_snapshot_matches(cache))
.cloned();
let input = if cache.is_none() {
match self
.with_source_input(|input| query::admit_owned(input, query::Limits::default()))
{
Ok(input) => Some(input),
Err(error) => {
self.source_symbols.notice = Some(admission_notice(error));
return Task::none();
}
}
} else {
None
};
self.source_symbols.in_flight = Some(request.job);
self.source_symbols.request = Some(request.clone());
self.source_symbols.display_request = Some(request.clone());
self.text_workspace
.begin_references(request.stamp, request.path.clone());
self.source_symbols.results = None;
self.source_symbols.notice = None;
let worker = Task::perform(
async move {
let worker_request = request.clone();
let result = tokio::task::spawn_blocking(move || {
let snapshot = match cache {
Some(cache) => cache,
None => Arc::new(
input
.expect("admitted input for uncached request")
.capture()
.map_err(admission_notice)?,
),
};
let results = snapshot
.query(query::Query {
stamp: worker_request.stamp,
path: &worker_request.path,
byte_offset: worker_request.offset,
action: worker_request.action,
})
.map_err(|error| match error {
query::QueryError::ResultEnvelopeLimit => "These result details exceed the display limit. Try literal Find for this alias.".to_owned(),
_ => "Navigation could not verify this location. Place the cursor on an alias and try again.".to_owned(),
})?;
Ok((snapshot, Arc::new(results)))
})
.await
.unwrap_or_else(|error| Err(format!("Navigation task failed: {error}")));
nav::Completion { request, result }
},
Message::SourceSymbolsReady,
);
Task::batch([
worker,
iced::widget::operation::scroll_to(
self.text_workspace.reference_scroll_id(),
iced::widget::scrollable::AbsoluteOffset { x: 0., y: 0. },
),
])
}
pub(super) fn source_symbols_ready(&mut self, completion: nav::Completion) -> Task<Message> {
let request = completion.request;
if self.source_symbols.in_flight != Some(request.job) {
return Task::none();
}
self.source_symbols.in_flight = None;
let wanted_navigation = self
.source_symbols
.request
.take()
.is_some_and(|current| current == request)
&& request.interaction == self.source_symbols.interaction
&& request.stamp.snapshot == self.source_key()
&& nav::interaction::is_current(
&self.source_symbols.raw_interaction,
request.raw_interaction,
)
&& request.path == self.source_workspace.active
&& request.cursor == self.source_editor.cursor()
&& self.source_navigation_available();
let wanted_display = self
.source_symbols
.display_request
.as_ref()
.is_some_and(|current| current == &request)
&& request.stamp.snapshot == self.source_key();
if !wanted_display {
return Task::none();
}
match completion.result {
Ok((snapshot, results))
if self.source_snapshot_matches(&snapshot)
&& results.stamp == request.stamp
&& results.action == request.action =>
{
self.source_symbols.cache = Some(snapshot);
self.source_symbols.results = Some(results.clone());
self.text_workspace.install_reference_files(
results.stamp,
results
.definitions
.iter()
.map(|row| row.path.clone())
.chain(results.references.iter().map(|row| row.path.clone())),
);
if wanted_navigation
&& results.disposition == query::Disposition::Direct
&& let Some(row) = results.definitions.first()
{
self.source_symbol_jump(&row.path, row.position, row.end_position);
}
}
Ok(_) => {
self.source_symbols.notice = Some("Source changed. Run navigation again.".into())
}
Err(error) => self.source_symbols.notice = Some(error),
}
Task::none()
}
fn source_symbol_jump(&mut self, path: &str, start: query::Position, end: query::Position) {
let cursor = text_editor::Cursor {
position: text_editor::Position {
line: start.line,
column: start.byte_column,
},
selection: Some(text_editor::Position {
line: end.line,
column: end.byte_column,
}),
};
if self
.source_workspace
.files
.get(path)
.is_none_or(|buffer| !nav::exact_cursor(&buffer.text, cursor))
{
self.source_symbols.notice =
Some("That source location is no longer available. Run navigation again.".into());
return;
}
if let Some(buffer) = self
.source_workspace
.files
.get(&self.source_workspace.active)
{
let origin = nav::HistoryEntry {
session: self.source_workspace.session(),
path: self.source_workspace.active.clone(),
generation: buffer.generation(),
cursor: self.source_editor.cursor(),
};
self.source_symbols
.back
.retain(|entry| entry.session == origin.session);
if self.source_symbols.back.len() == 64 {
self.source_symbols.back.remove(0);
}
self.source_symbols.back.push(origin);
}
self.source_workspace
.switch(path, self.source_editor.cursor());
self.show_source_file(false);
self.queue_source_reveal(cursor, false);
}
fn source_symbol_back(&mut self) {
while let Some(origin) = self.source_symbols.back.pop() {
if origin.session != self.source_workspace.session() {
continue;
}
let Some(buffer) = self.source_workspace.files.get(&origin.path) else {
self.source_symbols.notice = Some("The previous file is no longer loaded.".into());
return;
};
let unchanged = origin.generation == buffer.generation();
let cursor = if unchanged {
origin.cursor
} else if origin.path == self.source_workspace.active {
self.source_editor.cursor()
} else {
buffer.cursor
};
if !nav::exact_cursor(&buffer.text, cursor) {
self.source_symbols.notice = Some(
"The previous location changed. Open the file to choose a current position."
.into(),
);
return;
}
self.source_workspace
.switch(&origin.path, self.source_editor.cursor());
self.show_source_file(false);
self.queue_source_reveal(cursor, false);
self.source_symbols.notice =
(!unchanged).then(|| "This draft changed; its current cursor was restored.".into());
return;
}
self.source_symbols.notice = Some("No previous source location in this workspace.".into());
}
}
#[cfg(test)]
mod tests;
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,30 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"text_workspace::focus_selection_tests",
"--",
"--nocapture",
"--test-threads=1"
],
"started": "2026-09-13T03:16:10.963840+00:00",
"finished": "2026-09-13T03:16:14.567610+00:00",
"seconds": 3.6007215999998152,
"exitCode": 101,
"inputsUnchanged": true,
"stdout": {
"bytes": 942,
"sha256": "d31c5ab32ed7d3e758544758adb39a89c4c97c9ccb53f9c83cd6273e0d669b19"
},
"stderr": {
"bytes": 1015,
"sha256": "8c45c4e803b9eea688856e75aea6a1d7d0f960e8304958aca2e91a7407f623fa"
},
"scope": "Focused evaluator run only; red label describes intended old-production run, not proof of the expected failure cause."
}
@@ -0,0 +1,14 @@
Finished `test` profile [unoptimized] target(s) in 2.57s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
thread 'app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes' (6596) panicked at crates\oa-desktop\src\app\text_workspace\focus_selection_tests.rs:457:9:
assertion `left == right` failed
left: Some("")
right: Some("oa_contact")
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes' (9664) panicked at crates\oa-desktop\src\app\text_workspace\focus_selection_tests.rs:379:13:
assertion `left == right` failed: selected bytes must survive focus restoration
left: Some("")
right: Some("oa_contact")
error: test failed, to rerun pass `-p oa-desktop --bin arcadia-studio`
@@ -0,0 +1,15 @@
running 4 tests
test app::text_workspace::focus_selection_tests::explicit_cursor_navigation_still_moves_and_selects_requested_line ... ok
test app::text_workspace::focus_selection_tests::mounted_direct_typing_control_and_old_cursor_roundtrip_discriminate_selection_loss ... ok
test app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes ... FAILED
test app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes ... FAILED
failures:
failures:
app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes
app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes
test result: FAILED. 2 passed; 2 failed; 0 ignored; 0 measured; 859 filtered out; finished in 0.19s
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,30 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"text_workspace::focus_selection_tests",
"--",
"--nocapture",
"--test-threads=1"
],
"started": "2026-09-13T03:16:36.205020+00:00",
"finished": "2026-09-13T03:17:54.177014+00:00",
"seconds": 77.9678075999982,
"exitCode": 0,
"inputsUnchanged": true,
"stdout": {
"bytes": 650,
"sha256": "6f19f24e2fa37db4fc95c9b2d11b65e420299c6c6f90e4657e7e8e328b326fa0"
},
"stderr": {
"bytes": 280,
"sha256": "fd27fce4cf7372453e35ca9a241f7d597a66e90d93b4b7a5bc81c7a53370a198"
},
"scope": "Focused evaluator run only; red label describes intended old-production run, not proof of the expected failure cause."
}
@@ -0,0 +1,3 @@
Compiling oa-desktop v0.2.0 (C:\ar-text-9e8r6t\crates\oa-desktop)
Finished `test` profile [unoptimized] target(s) in 1m 16s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
@@ -0,0 +1,9 @@
running 4 tests
test app::text_workspace::focus_selection_tests::explicit_cursor_navigation_still_moves_and_selects_requested_line ... ok
test app::text_workspace::focus_selection_tests::mounted_direct_typing_control_and_old_cursor_roundtrip_discriminate_selection_loss ... ok
test app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes ... ok
test app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes ... ok
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 859 filtered out; finished in 0.31s
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,30 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"text_workspace::focus_selection_tests",
"--",
"--nocapture",
"--test-threads=1"
],
"started": "2026-09-13T03:04:50.599029+00:00",
"finished": "2026-09-13T03:08:47.160910+00:00",
"seconds": 236.56363180000335,
"exitCode": 101,
"inputsUnchanged": true,
"stdout": {
"bytes": 1195,
"sha256": "1c2225bdf514b4d1d33817507a8fc9a37e21c272af9e4470bfbfe04e0d54e534"
},
"stderr": {
"bytes": 1540,
"sha256": "7fb0df00e17a8731f6a86fe806363462f51b312615e8f51e60f5c50a5ab0fe06"
},
"scope": "Focused evaluator run only; red label describes intended old-production run, not proof of the expected failure cause."
}
@@ -0,0 +1,17 @@
Compiling oa-desktop v0.2.0 (C:\ar-text-9e8r6t\crates\oa-desktop)
Finished `test` profile [unoptimized] target(s) in 3m 55s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
thread 'app::text_workspace::focus_selection_tests::explicit_cursor_navigation_still_moves_and_selects_requested_line' (2748) panicked at crates\oa-desktop\src\app\text_workspace\focus_selection_tests.rs:151:27:
index out of bounds: the len is 1 but the index is 1
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'app::text_workspace::focus_selection_tests::mounted_direct_typing_control_and_old_cursor_roundtrip_discriminate_selection_loss' (6192) panicked at crates\oa-desktop\src\app\text_workspace\focus_selection_tests.rs:151:27:
index out of bounds: the len is 1 but the index is 1
thread 'app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes' (1988) panicked at crates\oa-desktop\src\app\text_workspace\focus_selection_tests.rs:151:27:
index out of bounds: the len is 1 but the index is 1
thread 'app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes' (8076) panicked at crates\oa-desktop\src\app\text_workspace\focus_selection_tests.rs:151:27:
index out of bounds: the len is 1 but the index is 1
error: test failed, to rerun pass `-p oa-desktop --bin arcadia-studio`
@@ -0,0 +1,17 @@
running 4 tests
test app::text_workspace::focus_selection_tests::explicit_cursor_navigation_still_moves_and_selects_requested_line ... FAILED
test app::text_workspace::focus_selection_tests::mounted_direct_typing_control_and_old_cursor_roundtrip_discriminate_selection_loss ... FAILED
test app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes ... FAILED
test app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes ... FAILED
failures:
failures:
app::text_workspace::focus_selection_tests::explicit_cursor_navigation_still_moves_and_selects_requested_line
app::text_workspace::focus_selection_tests::mounted_direct_typing_control_and_old_cursor_roundtrip_discriminate_selection_loss
app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes
app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes
test result: FAILED. 0 passed; 4 failed; 0 ignored; 0 measured; 859 filtered out; finished in 0.28s
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,30 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"text_workspace::focus_selection_tests",
"--",
"--nocapture",
"--test-threads=1"
],
"started": "2026-09-13T03:12:28.053574+00:00",
"finished": "2026-09-13T03:15:12.064865+00:00",
"seconds": 164.01172979999683,
"exitCode": 101,
"inputsUnchanged": true,
"stdout": {
"bytes": 942,
"sha256": "9bf339fc98af88adb0ad52d27109eabc79118c2fabc8d0f81c693b68385bc8ef"
},
"stderr": {
"bytes": 1085,
"sha256": "99c461d077c060326f70e815eccc36439f5f6b9a9377a71f9af9dc7e3900986d"
},
"scope": "Focused evaluator run only; red label describes intended old-production run, not proof of the expected failure cause."
}
@@ -0,0 +1,15 @@
Compiling oa-desktop v0.2.0 (C:\ar-text-9e8r6t\crates\oa-desktop)
Finished `test` profile [unoptimized] target(s) in 2m 42s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
thread 'app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes' (3960) panicked at crates\oa-desktop\src\app\text_workspace\focus_selection_tests.rs:457:9:
assertion `left == right` failed
left: Some("")
right: Some("oa_contact")
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes' (2596) panicked at crates\oa-desktop\src\app\text_workspace\focus_selection_tests.rs:379:13:
assertion `left == right` failed: selected bytes must survive focus restoration
left: Some("")
right: Some("oa_contact")
error: test failed, to rerun pass `-p oa-desktop --bin arcadia-studio`
@@ -0,0 +1,15 @@
running 4 tests
test app::text_workspace::focus_selection_tests::explicit_cursor_navigation_still_moves_and_selects_requested_line ... ok
test app::text_workspace::focus_selection_tests::mounted_direct_typing_control_and_old_cursor_roundtrip_discriminate_selection_loss ... ok
test app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes ... FAILED
test app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes ... FAILED
failures:
failures:
app::text_workspace::focus_selection_tests::stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes
app::text_workspace::focus_selection_tests::word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes
test result: FAILED. 2 passed; 2 failed; 0 ignored; 0 measured; 859 filtered out; finished in 0.29s
@@ -0,0 +1,49 @@
"""Preserve the Find regression sequence and verify exact red/green input deltas."""
from pathlib import Path
import hashlib
import json
import shutil
base = Path(__file__).resolve().parent
root = base.parents[1]
dest = root / 'harness/experiments/text-find-selection-20260913'
dest.mkdir()
labels = ['focus-red-1', 'focus-red-2', 'focus-green-1', 'focus-green-2']
records = []
def keep(path, relative):
raw = path.read_bytes()
target = dest / relative
target.parent.mkdir(parents=True, exist_ok=True)
assert not target.exists()
shutil.copyfile(path, target)
assert target.read_bytes() == raw
records.append({'path': relative, 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()})
inputs = {}
for label in labels:
inputs[label] = json.loads((base / label / 'inputs.json').read_text())['files']
receipt = json.loads((base / label / 'result.json').read_text())
assert receipt['inputsUnchanged']
for stream in ['stdout', 'stderr']:
raw = (base / label / (stream + '.log')).read_bytes()
assert receipt[stream] == {'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()}
for path in sorted((base / label).iterdir()):
if path.is_file():
keep(path, label + '/' + path.name)
def differences(a, b):
assert inputs[a].keys() == inputs[b].keys()
return [name for name in inputs[a] if inputs[a][name] != inputs[b][name]]
red_fixture = differences('focus-red-1', 'focus-red-2')
fix = differences('focus-red-2', 'focus-green-2')
retry = differences('focus-green-1', 'focus-green-2')
assert red_fixture == ['crates/oa-desktop/src/app/text_workspace/focus_selection_tests.rs']
assert fix == ['crates/oa-desktop/src/app/source_symbols.rs']
assert retry == []
for name in ['focus_regression.py', 'prepare_focus_red.py', 'archive_focus.py']:
keep(base / name, 'helpers/' + name)
keep(base / 'focus-corrected-source/manifest.json', 'corrected/manifest.json')
keep(base / 'focus-corrected-source/source_symbols.rs', 'corrected/source_symbols.rs')
manifest = {'scope': 'Historical Find-only regression sequence. Red1 fixture failure and green1 cache rejection are not correction acceptance. Red2 vs green2 differs only in production source_symbols.rs.', 'redFixtureDelta': red_fixture, 'redGreenDelta': fix, 'greenRetryByteDelta': retry, 'files': records}
with (dest / 'manifest.json').open('x', encoding='utf-8', newline='\n') as stream:
json.dump(manifest, stream, indent=2)
stream.write('\n')
print(json.dumps({'directory': str(dest), 'payloads': len(records), 'bytes': sum(r['bytes'] for r in records), 'manifestSha256': hashlib.sha256((dest / 'manifest.json').read_bytes()).hexdigest()}))
@@ -0,0 +1,47 @@
"""Capture one focused regression run; do not treat expected failure as acceptance."""
from pathlib import Path
from datetime import datetime, timezone
import hashlib
import json
import os
import re
import subprocess
import sys
import time
import zipfile
root = Path(__file__).resolve().parents[2]
label = sys.argv[1]
assert re.fullmatch(r'focus-(?:red|green)-[0-9]+', label)
assert os.environ.get('CARGO_BUILD_JOBS') == '1'
dest = Path(__file__).resolve().parent / label
dest.mkdir()
scopes = ['Cargo.toml', 'Cargo.lock', 'crates', 'build', '.cargo', 'docs', 'examples', 'harness/fixtures']
def names():
raw = subprocess.check_output(['git', 'ls-files', '-z', '--cached', '--others', '--exclude-standard', '--', *scopes], cwd=root)
return sorted(set(s.decode() for s in raw.split(b'\0') if s))
def identity(path):
raw = path.read_bytes()
return {'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()}
inputs = {name: identity(root / name) for name in names()}
with zipfile.ZipFile(dest / 'inputs.zip', 'x', zipfile.ZIP_DEFLATED) as archive:
for name in inputs:
archive.write(root / name, name)
def save(name, value):
with (dest / name).open('x', encoding='utf-8', newline='\n') as stream:
json.dump(value, stream, indent=2)
stream.write('\n')
save('inputs.json', {'baseCommit': subprocess.check_output(['git', 'rev-parse', 'HEAD'], cwd=root).decode().strip(), 'files': inputs, 'archive': identity(dest / 'inputs.zip')})
command = ['cargo', 'test', '--locked', '--offline', '-p', 'oa-desktop', '--bin', 'arcadia-studio', 'text_workspace::focus_selection_tests', '--', '--nocapture', '--test-threads=1']
start = datetime.now(timezone.utc).isoformat()
timer = time.perf_counter()
print(json.dumps({'command': command, 'started': start, 'label': label}), flush=True)
with (dest / 'stdout.log').open('xb') as out, (dest / 'stderr.log').open('xb') as err:
code = subprocess.run(command, cwd=root, stdout=out, stderr=err).returncode
unchanged = names() == list(inputs) and all(identity(root / name) == data for name, data in inputs.items())
receipt = {'command': command, 'started': start, 'finished': datetime.now(timezone.utc).isoformat(), 'seconds': time.perf_counter()-timer, 'exitCode': code, 'inputsUnchanged': unchanged, 'stdout': identity(dest / 'stdout.log'), 'stderr': identity(dest / 'stderr.log'), 'scope': 'Focused evaluator run only; red label describes intended old-production run, not proof of the expected failure cause.'}
save('result.json', receipt)
print(json.dumps(receipt), flush=True)
print((dest / 'stdout.log').read_text(encoding='utf-8', errors='replace')[-6000:], flush=True)
print((dest / 'stderr.log').read_text(encoding='utf-8', errors='replace')[-6000:], flush=True)
sys.exit(code or (0 if unchanged else 1))
@@ -0,0 +1,21 @@
"""Preserve corrected production bytes, then substitute exact prior production for a red run."""
from pathlib import Path
import hashlib
import json
import zipfile
base = Path(__file__).resolve().parent
root = base.parents[1]
rel = 'crates/oa-desktop/src/app/source_symbols.rs'
destination = base / 'focus-corrected-source'
destination.mkdir()
corrected = (root / rel).read_bytes()
with zipfile.ZipFile(base / 'attempt-4/inputs.zip') as archive:
old = archive.read(rel)
assert hashlib.sha256(old).hexdigest() == '1fb3709bb973e7dcfbcde56054d028e47d770a62f3b7c8b6fac411543a234b7b'
assert corrected != old and b'focus-only' in corrected
(destination / 'source_symbols.rs').write_bytes(corrected)
record = {'path': rel, 'oldSha256': hashlib.sha256(old).hexdigest(), 'correctedSha256': hashlib.sha256(corrected).hexdigest(), 'correctedBytes': len(corrected)}
(destination / 'manifest.json').write_text(json.dumps(record, indent=2)+'\n', encoding='utf-8')
(root / rel).write_bytes(old)
assert (root / rel).read_bytes() == old
print(json.dumps(record), flush=True)
@@ -0,0 +1,137 @@
{
"scope": "Historical Find-only regression sequence. Red1 fixture failure and green1 cache rejection are not correction acceptance. Red2 vs green2 differs only in production source_symbols.rs.",
"redFixtureDelta": [
"crates/oa-desktop/src/app/text_workspace/focus_selection_tests.rs"
],
"redGreenDelta": [
"crates/oa-desktop/src/app/source_symbols.rs"
],
"greenRetryByteDelta": [],
"files": [
{
"path": "focus-red-1/inputs.json",
"bytes": 90651,
"sha256": "b721bca1f3bcc73d59daa040712892f510ba1d080d81ea7068eba61161e11f39"
},
{
"path": "focus-red-1/inputs.zip",
"bytes": 2192609,
"sha256": "19063c2d937cd659dc97f6b9a6e61f1f17069fd6ec87613bfdf8159687901fab"
},
{
"path": "focus-red-1/result.json",
"bytes": 789,
"sha256": "ae1172d2d4469c5c2424d5b057e3780e9d857165ae6e632dcdcd2d250cbac082"
},
{
"path": "focus-red-1/stderr.log",
"bytes": 1540,
"sha256": "7fb0df00e17a8731f6a86fe806363462f51b312615e8f51e60f5c50a5ab0fe06"
},
{
"path": "focus-red-1/stdout.log",
"bytes": 1195,
"sha256": "1c2225bdf514b4d1d33817507a8fc9a37e21c272af9e4470bfbfe04e0d54e534"
},
{
"path": "focus-red-2/inputs.json",
"bytes": 90651,
"sha256": "762480875e82147ac65fd01a1aaa7af917bd063653acc819d2b2b694858f1e41"
},
{
"path": "focus-red-2/inputs.zip",
"bytes": 2193026,
"sha256": "bb8f9b1be06aaef8eabfcb1ab6f69cf380d2ff2d3601dac853c46e69926a1b6c"
},
{
"path": "focus-red-2/result.json",
"bytes": 788,
"sha256": "fed836a961ba3cf81377253411d11a79a600123c553f872695cd5fe25087b633"
},
{
"path": "focus-red-2/stderr.log",
"bytes": 1085,
"sha256": "99c461d077c060326f70e815eccc36439f5f6b9a9377a71f9af9dc7e3900986d"
},
{
"path": "focus-red-2/stdout.log",
"bytes": 942,
"sha256": "9bf339fc98af88adb0ad52d27109eabc79118c2fabc8d0f81c693b68385bc8ef"
},
{
"path": "focus-green-1/inputs.json",
"bytes": 90651,
"sha256": "4189c0b40b9fd1d764e9f0b786b8cff7059b5fb7361d220209af5058101f20aa"
},
{
"path": "focus-green-1/inputs.zip",
"bytes": 2193207,
"sha256": "cfde0f2869270e4bce50ca9e242873172d9329292e63fc89c5cb8b08b0564e2c"
},
{
"path": "focus-green-1/result.json",
"bytes": 788,
"sha256": "7c46331b0aa2609eb4aadaa327d45b601292d7405c5bd5e5b8d3377bca131e3e"
},
{
"path": "focus-green-1/stderr.log",
"bytes": 1015,
"sha256": "8c45c4e803b9eea688856e75aea6a1d7d0f960e8304958aca2e91a7407f623fa"
},
{
"path": "focus-green-1/stdout.log",
"bytes": 942,
"sha256": "d31c5ab32ed7d3e758544758adb39a89c4c97c9ccb53f9c83cd6273e0d669b19"
},
{
"path": "focus-green-2/inputs.json",
"bytes": 90651,
"sha256": "86e43a980c3afa8c7bfc1973d9ad4fe523157cab67f008622de2a126f7f0e9a6"
},
{
"path": "focus-green-2/inputs.zip",
"bytes": 2193207,
"sha256": "486c0e0e43c0123c27efe6a6b33fd27a4dff97ca631a6b066d654e6be745ef76"
},
{
"path": "focus-green-2/result.json",
"bytes": 783,
"sha256": "ee29d1585c9d13a30e3a18731ff3fa1e9c5ce29305a6dbb14cdf60353d736462"
},
{
"path": "focus-green-2/stderr.log",
"bytes": 280,
"sha256": "fd27fce4cf7372453e35ca9a241f7d597a66e90d93b4b7a5bc81c7a53370a198"
},
{
"path": "focus-green-2/stdout.log",
"bytes": 650,
"sha256": "6f19f24e2fa37db4fc95c9b2d11b65e420299c6c6f90e4657e7e8e328b326fa0"
},
{
"path": "helpers/focus_regression.py",
"bytes": 2794,
"sha256": "f342a159f0b307a07ac6957e3c3b7d71eb6f83a2a4eb6907ca2e9348a5958cc1"
},
{
"path": "helpers/prepare_focus_red.py",
"bytes": 1062,
"sha256": "ad93ecb06c6721797c772398e73f9fd08b144f05e8305c0e287a1de34ccd36f6"
},
{
"path": "helpers/archive_focus.py",
"bytes": 2691,
"sha256": "a1e6e0a764503f1f718c96435099e5123964a1cb5dfac93535ea22e38e5ac234"
},
{
"path": "corrected/manifest.json",
"bytes": 265,
"sha256": "f9eac4ae9255e9a8588e1605094e8502c0f7582555be8fb659d9c64194cb2e3d"
},
{
"path": "corrected/source_symbols.rs",
"bytes": 21062,
"sha256": "aa4f1423e759fdeaf7815d656b40189be176f4e8659f3da50debb5d85ed3af6c"
}
]
}
@@ -0,0 +1,27 @@
{
"scope": "All four experiment manifests and every referenced payload equal staged Git blobs and working originals, including ignored raw logs explicitly staged.",
"files": 617,
"archives": [
{
"path": "harness/experiments/text-find-selection-20260913",
"payloads": 25,
"manifestSha256": "4580d8cbc2f0347f1ebc1448728af6ef8885f6ebbd4c2d2dbe0c41eac97fb283"
},
{
"path": "harness/experiments/text-workspace-initial-20260913",
"payloads": 106,
"manifestSha256": "991d54095f5466b717aefde99682e0c7d3136091bdf5525d8f21c0629d3cb0a4"
},
{
"path": "harness/experiments/text-workspace-native2-20260913",
"payloads": 367,
"manifestSha256": "3ddabcf26828afe2aee882bdfbac26d0f3e6003e6c22f1575bb5bfdf12dcb01a"
},
{
"path": "harness/experiments/text-workspace-native3-20260913",
"payloads": 115,
"manifestSha256": "07c765910f3d7bda3e298b32f6a12feb578214c61c241b0ac0cebc6c46e28db8"
}
],
"gitTree": "06c902ae05241729c3db7fe7b05be5df054d9506"
}
@@ -0,0 +1,27 @@
# Attempt 5: independent evidence audit
**PASS — no binding or result discrepancy found.** Read-only audit of `C:/ar-text-9e8r6t/.local/text-workspace-gates-20260912/attempt-5`. No builds, retained helpers, GUI actions, source edits or shared-target access were performed. Trial 2/native acceptance remains separate and pending.
- All 526 input ZIP members have unique exact names and match the input manifest's byte sizes/SHA-256 values; reading every member also verifies its ZIP CRC. ZIP SHA matches the manifest. Current read-only Git inventory for the gate's declared scopes matches those same 526 names, and every current file matches the captured raw bytes.
- All five final formatted hashes in `departure-selection-review.md` match both the input archive and current source. The archive captures uncommitted integrated inputs based on CBC; `baseCommit` is not a claim that those changed bytes are committed source.
- All seven receipts report exit 0 and unchanged inputs. Raw stdout/stderr hashes match each receipt. Input/environment capture precedes the serial, nonoverlapping Clippy→membership→Text→selection→full suite→timing→GUI sequence; recorded durations and completion timestamp agree. Strict Clippy uses all targets and `-D warnings`.
- Raw membership contains exactly 874 distinct tests, all required names and 20 Guard tests. Every listed test has an outcome in the full raw stdout: 871 pass and three explicitly ignored manual experiments. Focused Text has 30 passes; the overlapping selection filter has 58. No counts are added together as independent coverage.
- The separately requested ignored Confirm timing test passes with five measured samples. Its App-update median is 38.048ms; the direct ordinary App-sync median is 831.4022ms. These Windows development measurements exclude returned Task polling/native rendering and do not establish end-to-end interaction latency. The two other ignored manual experiments were not executed by this attempt.
- The GUI receipt's artifact object exactly matches the sole executable `arcadia-studio` record in raw Cargo JSON; final build status is successful. It identifies the worktree source, development profile (opt-level 0, debuginfo 0, debug assertions and overflow checks enabled), and `fresh: false`. The locally preserved executable independently matches 114,171,904 bytes and SHA-256 `4a1d09c108fd5062f01bc7059064fa7dc839e03d0cc2a3b1e12f8b02c8115a24`. The shared-target executable was not read or touched.
GUI build ended 2026-09-13 03:41:56.842652Z; completion receipt is 03:42:01.051061Z. Environment records rustc 1.98.1/Cargo 1.98.1, x86_64-pc-windows-gnullvm and one compiler job. The receipt captures selected environment variables, not a hermetic machine image. This audit verifies retained evidence and current source binding; it does not rerun tests, verify packaging or accept the live native trial.
## Principal bindings
- `inputs.json` — `8b2f9ae76edbb808549f4d86a4e36aa3b64ef368de78e841090c7d7c34d62211`.
- `inputs.zip` — 2,197,940 bytes; `83ff861fc27b7aead159fde12e6fd881ba6c3c02b29e7bf10bbc12c60b7e6067`.
- `environment.json` — `d0a796a4fc328845ea916382bceabf9c80da3002e1559307a92a3fda6dfb7d33`.
- `complete.json` — `5492eeaf82d48f7b9322602659b0012d9cba0735374aa3ddd8d7793f9a5fc3f8`.
- `clippy-result.json` — `7067e3df6585a7e2a3e56f2c4edd8870bdb0c7f3ed2f7ed524c158b4d2d95bb0`.
- `membership-result.json` — `638e58424ccb7a09909b567addb357f5dbb3ee7ea816f0d25024a83883c37854`.
- `focused-result.json` — `9d3039748fafa25c722a62721071040ba72265c3d349c10d71c689dcd24bcac7`.
- `selection-result.json` — `96651aa4d4374ecbf9e660435801f058325a9b0ea60b26aa842f23629d98136d`.
- `tests-result.json` — `f39b6906c8cbbfc8af2de9eb88c568786c585da51ec5e0f72b2facf4b1954141`.
- `timing-result.json` — `caef9fd294cb0e6274bdd38839b0d8ae038cefab6d4495e16efeb5e37b8f677a`.
- `gui-result.json` — `bb7f5060faa834031a9d301a627f1a80b4c4bf7604dcd48a385730699c3055da`.
- Prior five-file review — `departure-selection-review.md`, SHA-256 `f872c511eab74ca05d35b97ad31ee1a879c42717e40a698959501b6f96546dac`.
@@ -0,0 +1,21 @@
# Escape dismissal correction: independent static review
**PASS — no actionable mismatch found within the bounded correction.** Reviewed formatted `C:/ar-text-9e8r6t` source against exact attempt-5 captured files and the interaction contract. No builds, tests, native actions or production edits performed. Parent retains execution/acceptance ownership.
The production diff is confined to the ordinary `Message::Escape` arm at `app.rs:1996`: when Text navigation is admitted and Find is open, it closes Find without calling `show_drawer(None)`. That preserves drawer visibility and visit. A later Escape with only the drawer open uses the existing hide operation, retaining presentation data while rotating the visit and revoking old row authority. Both admitted paths keep the existing focus-only restoration, preserving live Word/Line selection rather than roundtripping endpoints.
The existing Text-popup router returns before this arm; its captured-Escape bridge remains disabled while the popup owns the key. Architecture, model menu, busy/modal routing and source-rename dismissal likewise remain unchanged and return before ordinary Text dismissal where applicable (`app.rs:1232,1287,1324,1393,1455`). Thus this delta does not bypass their input priority. The contract's menu→Find→drawer sequence and Find-specific retained visit/data behavior match this implementation.
Generic source interaction still invalidates pending navigation/reveal before an ordinary Escape. It does not free the occupied worker slot. The migrated pending/completed query tests confirm that successive Find/drawer dismissal retains in-flight ownership, admits the later display completion without a jump/reopen and preserves raw source/Document identity/history.
The subscription evaluator is meaningful: it creates a real Iced TextInput, optionally focuses it, delivers Escape, obtains actual Captured or Ignored status from its Shell, and passes that status to the actual App subscription recipes. It checks exactly one Escape message in both ordinary status routes and no duplicate captured bridge under Text popup ownership. Tests preserve semantic selected bytes, raw cursor, result Arc, query text, grouping, saved 96px offset and visit after Find dismissal; they require visit rotation only on subsequent drawer dismissal. Hosted/file/pending modal cases assert that their first Escape preserves underlying surfaces and cannot mint editor focus.
Evidence limits: the popup test sends its actual tokened `menu.on_close` message, rather than mounting the Popup's own key handler. Saved 96px scroll is controller state, not measured native scrollbar retention. The helper uses the null renderer for TextInput status/focus protocol, polls only immediately available subscription output and does not run native input or returned editor-focus operations; existing dedicated focus tests cover those operations. Rename priority here is a source-routing check, not a newly mounted rename-modal test. No native acceptance or all-platform result is claimed.
## Bindings
- Formatted `crates/oa-desktop/src/app.rs`: 223,370 bytes; SHA-256 `4f4c1bb5f832601a072b5cd406a75731982e8b9955ee6af39a93f124496938f9`.
- Formatted `crates/oa-desktop/src/app/source_symbols/tests.rs`: 84,817 bytes; SHA-256 `411a8b35fe1d3211daf165d1585d209df9961b0da59a969a856991508bbc29a6`.
- `harness/text-workspace-interaction-contract-20260912.md`: 14,223 bytes; SHA-256 `7ee4df9c57e1fbe28cec27211945044ac2556f63442404d9fa6ffbd195095589` (especially lines 21 and 53).
- Attempt-5 baseline ZIP: SHA-256 `83ff861fc27b7aead159fde12e6fd881ba6c3c02b29e7bf10bbc12c60b7e6067`.
- Baseline App: SHA-256 `75ef46ef2789b32c5837ee33dfdc303eaba013ba75767138e4a19ba5113bc6ba`; baseline tests: `00cbacdd0af98858b5e74608720bd8251719c9926569a65a0ad777a40f1744c9`.
@@ -0,0 +1,74 @@
# Separable Find focus correction for #27 integration
Static review: the production correction is self-contained on CBC `cbc49a7802fb1bba0dd284fd904c700a0703ae70`. It needs only two local changes in `crates/oa-desktop/src/app/source_symbols.rs`; no new App state, enum, Text workspace, diagnostics publication, drawer, canonical departure-selection helper, or dependency change is required. No source was edited or built in this review. Peer commit `e124029` is not present in the local object database, so compatibility with that actual union remains an integration check for its owner, not a verified claim here.
## Exact production scope
In `restore_source_editor_focus`, retain both existing admission checks and `queue_source_reveal(cursor, false)`, then add:
```rust
// This ticket restores focus to the live editor, not a saved cursor.
// Iced's Cursor omits Word/Line selection kind; moving back to that
// lossy value would collapse an actual word/line selection.
self.source_jump = None;
```
In `source_viewport`, leave every ticket/admission check, ticket consumption, `source_jump.take()`, exact-cursor check, `move_to`, and optional `SelectLine` unchanged. Move the existing `guarded_focus` expression outside the `if let Some(cursor)` branch, replacing the final `Task::none()`:
```rust
if let Some(cursor) = self.source_jump.take() {
if !nav::exact_cursor(self.source_workspace.text(), cursor) {
return Task::none();
}
self.source_editor.move_to(cursor);
if self.source_select_line && cursor.selection.is_none() {
self.source_editor.perform(text_editor::Action::SelectLine);
}
}
// A valid ticket with no jump is focus-only. All intentional navigation
// still takes the cursor branch above, including explicit line selection.
nav::interaction::guarded_focus(
self.source_editor_id(),
self.source_symbols.raw_interaction.clone(),
raw_interaction,
)
```
Do not transplant the surrounding working-file diff. It additionally contains #13 menu exclusion, retained reference display/query lifetime, drawer commands/scroll state, future diagram adapter, and canonical selection capture for navigation departure. Those are separate changes with separate dependencies and evidence.
## Existing CBC protection remains operative
CBC already has `restore_source_editor_focus`, `queue_source_reveal`, `source_viewport`, the guarded Find Close envelope, and their call sites. Its actual editor sensor is keyed by `(active_path, reveal_ticket)` and emits captured `SourceViewport(ticket)` on show/resize. Creating a fresh focus-only reveal still changes this key and schedules the existing path; no new sensor or callback is required.
Before any mutation or focus operation, `source_viewport` checks ticket, interaction ID, raw interaction clock, workspace/revision snapshot, active path, and current navigation availability. The reveal is consumed once. An intentional jump is still checked against current source before movement; invalid destinations return without focus. `SourceViewport` remains exempt from App's generic interaction invalidation so a valid ticket can survive its own delivery. Other interactions invalidate the ticket and editor ID through existing CBC logic.
The returned existing `guarded_focus` is not an unconditional deferred focus. It rechecks the raw clock while traversing, requires exactly one matching mounted editor and no foreign focused widget, then synchronously chains the focus pass with another clock check. The editor ID includes workspace session, active path and interaction. Thus both stale message delivery and later input between Task creation and operation are guarded. Clearing `source_jump` does not discard this authority. `source_select_line` is already set false by `queue_source_reveal(cursor, false)`.
The intentional behavioral extension is narrowly defined: a current admitted reveal with no jump now restores focus. Existing real navigation continues through the cursor branch. Do not replace this with direct `widget::focus`, call `move_to` during focus restoration, clone/reset Content, or canonicalize Word/Line selection at Find Close. Those alternatives lose live selection mode or ticket protection.
## Mounted regression handoff
Current fixture: `crates/oa-desktop/src/app/text_workspace/focus_selection_tests.rs`. Its four tests are:
1. `word_and_line_selection_survive_find_close_and_escape_then_replace_exact_bytes`: actual double/triple-click selection, Close button or captured Escape bridge, guarded viewport Task, selected text, exact replacement, unchanged accepted Document/history; covers four word/line × Close/Escape cases.
2. `mounted_direct_typing_control_and_old_cursor_roundtrip_discriminate_selection_loss`: valid direct typing control and explicit old lossy roundtrip discrimination.
3. `stale_focus_ticket_and_later_raw_input_cannot_steal_focus_or_change_selected_bytes`: both stale viewport delivery and a previously created operation executed after later raw input/reopened Find.
4. `explicit_cursor_navigation_still_moves_and_selects_requested_line`: intentional cursor navigation remains effective.
For a CBC-based separable test commit, place the fixture in a source-navigation/source-symbols test module rather than importing all `app::text_workspace`. Register under the same debug/test cfg convention used by the existing App tests. Resolve its current `use super::*` explicitly to App/Message, `crate::source_navigation as nav`, Point, Task and widget as required by the chosen module; retain existing explicit imports. CBC already exports `views::source_tests::FontLayout` and provides Document/Workspace and the SourceNavigation/SourceFindClose/SourceViewport messages used here. The setup call `app.publish_source_diagnostics(...)` is #13-only and unnecessary for these focus assertions; omit it for CBC rather than introduce that production API. No other TextWorkspace event/state is referenced in the fixture body.
Keep `Column::from_vec` with the permanent zero-height Find slot: `Column::push` elides that child and invalidates the fixture. Keep the actual hit-tested initial caret transfer only before Word/Line selection; never copy a cursor back into App after selecting. App and CPU mounted Content are different renderer-typed instances, so this is a controller/content plus widget-operation evaluator, not a full production GPU/sensor/scroll measurement. Its manually delivered `SourceViewport` tests the controller guard; the owner should retain existing subscription/sensor checks and exercise the peer's actual editor wrapper after integration. The focused port's module-path command must match its final registration; do not reuse a filter that discovers zero tests. Confirm exactly four named tests execute, then run the owner's combined gates.
## Evidence and remaining union work
The portable `harness/experiments/text-find-selection-20260913` archive retains original inputs/logs and corrected source. Valid `focus-red-2` used the fixed fixture with old production: direct typing and explicit navigation passed while two selection tests failed. `focus-green-2` actually recompiled corrected production and passed all four, ending 2026-09-13T03:17:54Z; stdout SHA256 `6f19f24e2fa37db4fc95c9b2d11b65e420299c6c6f90e4657e7e8e328b326fa0`. Red1 failed fixture construction and green1 reused stale compiler cache: neither establishes the correction. This earlier valid red/green predates canonical departure-selection changes and therefore supports separability of the focus behavior. It does not establish an unbuilt CBC-only patch or the peer union.
Owner #27 must reconcile the two function-body changes with its own source, preserve every peer admission predicate and menu/modal ownership check, keep the existing guarded operation and sensor ticket identity, and port/run the four tests in that union. If its editor wrapper or Find Escape dispatch differs, test that actual route; do not replace it with #13's later drawer Escape correction. Back/file canonical selection capture is a different patch; diagram usages/chooser and reference display retention remain separately owned integration dependencies. None is necessary to compile this focus-only production patch on CBC, and none is delivered by it.
Bindings at review:
- CBC raw `source_symbols.rs`: `77cb97ec909bcaf3d952e0c6673171fd81e7ca31568248994c8c6b150e2c7f4e`.
- Working `source_symbols.rs`: `d81914a553114d85452d973a1edb175843d27154b3f9b9fc4cbc5049d423abe4`.
- Mounted fixture: `db7cc3cfbf5f8dce83cf6134e339cc0ba57c0679c47b6268f0e470d09c0e6cc8`.
- Existing `interaction.rs`: `c6efa6105b8ba46655e27a89b9fa59e6fc01a4c6f331f886e035af1e70cbf8a9`; no diff from CBC.
- Red/green archive manifest: `4580d8cbc2f0347f1ebc1448728af6ef8885f6ebbd4c2d2dbe0c41eac97fb283`.
@@ -0,0 +1,52 @@
# Native trial 2: Escape and text Undo review
Read-only source and evidence review by Codex-9e8r6t /root/diagnostic_input, 2026-09-13. Parent owns the live GUI, source integration and execution. This note is the only new artifact; no source edits, build, test, Git or GUI operation was performed for this review. Source references below are relative to C:/ar-text-9e8r6t at the hashes recorded below. Trial evidence is under main `.local/text-workspace-native-20260912/trial-text-2`.
## Escape: one legacy action, not duplicate dispatch
Screenshots 050 and 051 were independently inspected. 050 shows the menu dismissed with Find and References still open. 051 shows both Find and the drawer closed. Its filename says “keeps-drawer”; that label is incorrect and must not override the pixels.
The mechanism is direct: `app.rs:1996` computes whether to restore source focus, then unconditionally sets `source_navigation.open = false` and calls `text_workspace.show_drawer(None)` before guarded focus restoration. The captured bridge (`behavior/creation.rs:15,23`) emits only for Captured Escape. The ordinary subscription (`app.rs:1128–1142`) explicitly ignores Captured Escape. The bridge is disabled while the Text popup is open (`app.rs:1117`). There is no evidence of two App Escape messages from one key. The actual-subscription test at `app/source_symbols/tests.rs:1916` already asserts one message after popup dismissal and then explicitly expects both surfaces closed; the modal matrix at line 1099 also encodes the simultaneous dismissal.
Frozen CBC `main/crates/oa-desktop/src/app.rs:1911` performed the same simultaneous dismissal, additionally clearing old results. This is inherited behavior, not a new subscription race. Current interaction contract line 53 requires only menu-first dismissal, which trial 2 passes. Earlier private `design.md:50` says “Escape closes only the focused transient surface”; that stronger scoped-dismissal intent was omitted from the handler/test expectations. Parent now accepts a one-surface-per-Escape correction after the native trial closes. This is a bounded usability defect, with no observed source/model data loss; retained query data already survives Hide.
### Small correction and evaluator
Keep the existing popup and modal dispatch layers. In the ordinary Text Escape path, dismiss Find if it is open; otherwise hide the supporting drawer. Use the existing focus-only restoration for Find, preserving its actual selected bytes and scroll. Do not introduce another subscription or focused-widget engine. The accepted priority is explicitly menu → Find → drawer, including the case where clicking Actions had unfocused the Find input.
Extend the actual subscription regression: start with current References data, grouping and nonzero saved scroll, open Find, then Actions. Popup Escape yields its tokened dismissal and no bridge message. The next actual captured/ignored Escape yields exactly one App message, closes Find only, retains drawer visit/groups/results/scroll, and leaves the live word/line selection intact after guarded focus. The next Escape closes only the drawer and retains its data. Check accepted source/model/history unchanged; pending matching query completion may store data without jumping/reopening. Update the two legacy simultaneous-dismissal expectations rather than merely adding a new test that contradicts them. Native replay must inspect each resulting surface separately.
Higher-priority risks: do not move the Text branch before menu handling (`app.rs:1232`), architecture cancellation (1287), model-menu dismissal (1324), hosted/workflow/file/delete/pending dialogs (1392), or rename cancellation (1454). Existing modal Escape tests must still leave underlying Find/drawer intact and must not queue editor focus. Generic source interaction invalidation precedes ordinary dispatch; retain that cancellation and queue focus only after the chosen current surface closes. Preserve `source_navigation_available` guards (`app/source_symbols.rs:91`) and the raw-input/ticket guards on asynchronous focus. Do not inadvertently extend this Text priority to behavior-source back/cancel or active connection cancellation in the same ordinary handler.
## Text Undo: separate existing history limitation
`source_workspace.rs:83` stores `past/future: Vec<String>` plus one current cursor, with no per-history cursor, selection or scroll. `app.rs:2982` applies the edit and sends the **post-edit** cursor into `Workspace::edit` (233), which overwrites `buffer.cursor`. `Workspace::undo` (302) swaps text/history and advances generation but leaves that cursor unchanged. `app.rs:3156` then calls `show_source_file(true)`; its default path (`app.rs:700–734`) reconstructs Content with text, losing internal scroll, and queues the retained post-edit coordinate.
If that coordinate is invalid in the restored shorter text, the existing exact-cursor guard refuses the reveal, leaving the fresh editor at its default top/caret. If it remains valid, restoration can use that post-edit coordinate instead of the earlier pre-edit selection. These primary-source mechanisms explain the parent's reported scroll-to-top and occasional prior post-edit caret. Workspace bytes are unchanged from frozen CBC and CBC has the same SourceUndo reconstruction route. A targeted note search found no earlier explicit tracked Undo-scroll defect: describe this as a newly observed native limitation of pre-existing text-only history, not as already accepted exact cursor/viewport Undo behavior.
Screenshot 011 was inspected: it shows the original alias, the viewport at the file start, and “All changes saved” after the typing probe's Undo. The parent reports analogous baseline restorations during the other selection probes. This is limited evidence of visible text restoration and clean-state feedback, **not** proof of exact Undo caret/selection/scroll restoration or all unsaved buffers. Saved-disk oracle results inspect disk only; they cannot establish a live unsaved editor's cursor or viewport. Model/rename Undo evidence is a separate action and must not be used as text-Undo evidence.
Keep exact text-Undo cursor/selection/viewport semantics as a separate follow-up: decide the edit grouping and before/after selection/viewport history policy, then evaluate real replacement → Undo → Redo with Unicode, multiline CRLF, caret movement after edit, and exact source/selection/scroll assertions. Navigation design line 43 explicitly keeps existing text/model history untouched. The current Escape correction should not redesign histories.
## Exact reviewed hashes
Trial launch manifest binds source archive `83ff861fc27b7aead159fde12e6fd881ba6c3c02b29e7bf10bbc12c60b7e6067`; its native scope was still pending at launch. Hashes below bind this review, not later fixes.
| Artifact | SHA-256 |
| --- | --- |
| crates/oa-desktop/src/app.rs | 75ef46ef2789b32c5837ee33dfdc303eaba013ba75767138e4a19ba5113bc6ba |
| crates/oa-desktop/src/app/source_symbols.rs | d81914a553114d85452d973a1edb175843d27154b3f9b9fc4cbc5049d423abe4 |
| crates/oa-desktop/src/app/source_symbols/tests.rs | 00cbacdd0af98858b5e74608720bd8251719c9926569a65a0ad777a40f1744c9 |
| crates/oa-desktop/src/behavior/creation.rs | 438a245ead397060767c790c51a8f21cd5021342627999deb4695cf3bd22091a |
| crates/oa-desktop/src/source_workspace.rs | 388c71f63829c0c76526a1700ebf5f240c86c467a65aae4fca4cd6c6a88c468b |
| harness/text-workspace-interaction-contract-20260912.md | 87d83bcedc808bf78bb3f9d0bb4b09884f627c010fbc339c86e11d00f696646b |
| harness/release-text-navigation-design-20260911.md | adaaf60fa0711677997f62c49ec899b8d412a0a0896897b2f1bb53d0ecdbeb75 |
| main private design.md | 73c6aa75980ce0ceeb132ef8a89f73a906a2ed6c4a7cc1f2ff5745ab0d0b66fa |
| frozen CBC main app.rs | d2e13b4527eec6c0920668d312d647806c762ed0a2f3ad9595a1243d9993fc14 |
| trial2 launch-manifest.json | f4bc04c2f6669f7e2cb28d12cc65efe4c89917396c3d871a189960dea7dee1ee |
| trial2 screenshots/050-escape-closes-only-actions.json | 3bb686f78988b6d7a321fa4c7c7f62f7ffe159023fb38146b8fb6baa73d924bf |
| trial2 screenshots/050-escape-closes-only-actions-0.jpg | d414906bcb1e55e881128a388c223e9f139b5c5097083bb51f35cad133632fdc |
| trial2 screenshots/051-second-escape-closes-find-keeps-drawer.json | 942ccb4b8cb87de4a2b1d02fe5daa98ccf8db26723c2d55ab946570b59c5e10e |
| trial2 screenshots/051-second-escape-closes-find-keeps-drawer-0.jpg | 988dc77f7844cbae0bf3156e27065a20f5198e7a081ecb7b031d95f15f04b29a |
| trial2 screenshots/011-word-find-close-undo-baseline.json | cfdf9fb5fe821e269e2288acc9d3e69bce7d2601b0dc1f528044755eff390658 |
| trial2 screenshots/011-word-find-close-undo-baseline-0.jpg | ddb8488cfefad22260bf9aded45ca46a7c77cdf2e35ec413c1e66d605f01ece5 |
@@ -0,0 +1,31 @@
# Native Text trial 2 — independent evidence review
Bounded evidence supports the seven selection-replacement probes, saved rename transactions, and the inspected compact Text interactions. **This is not final #13 acceptance:** capture 051 demonstrates the inherited simultaneous Find/drawer Escape defect; the next source correction is outside this trial. Review performed read-only on 2026-09-13; no GUI, compiler, application, or oracle was executed by this reviewer.
## Identity and original records
Original trial: `.local/text-workspace-native-20260912/trial-text-2`. PID 5284 launched 2026-09-13T03:42:39.425514Z and closed normally at 04:18:28.799966Z, exit 0. Both logs are empty; closure records unchanged binary and DLL. Development executable SHA256 `4a1d09c108fd5062f01bc7059064fa7dc839e03d0cc2a3b1e12f8b02c8115a24`, 114,171,904 bytes. This was an isolated development launch, not packaged-release acceptance. Elapsed session time is not a performance measurement.
The adjacent `native2-evidence-review.json` binds all 105 original metadata states and all 112 original JPEGs individually, plus seven saved-disk receipts and the launch/closure. Every metadata-referenced JPEG exists; the JPEG set is exact with no duplicate references. Receipt SHA256: `a2b0a6b3bec5bd88497f8de89baf3a652b5210b7c6a3480dd600bc8faa438722`.
## Observations
Directly inspected JPEG states 007, 010, 014, 016, 018, 022, 024, 025, 028, 033, 035, 037, 039, 043, 047, 050, 051, 064, 068, 072, 086, 089, 096, 099, and 104. Other captures are byte-bound, not claimed as individually visually inspected.
- Seven result images show the intended whole replacement: Find word/Close `oa_contact_probe` (010), word/Escape `oa_control_probe` (014), line/Close `description "line_close_probe";` (018), line/Escape `description "line_escape_probe";` (022), Back word `oa_control_back_probe` (028), file roundtrip word `oa_control_file_probe` (033), and file roundtrip line `description "line_file_probe";` (037). Selected-origin examples 007/016/024/035 corroborate actual word/line selections rather than merely caret movement. These demonstrate selected-byte replacement for these seven probes; they do not establish preservation of Word/Line drag-extension mode after real navigation or every Unicode selection shape.
- At the recorded 1102x732 outer window, 025 shows approximately 306 pixels of editor height with the default drawer and three complete reference result rows (one declaration, two uses), with the next use near the lower edge. Do not describe this as three complete lexical-use rows. Enlarged drawer 039 leaves approximately 246 pixels of editor. Scrolled references in 043 and explicit hide/reopen in 047 show the retained lower group position and readable full `oa/participants.arcadia` path. Stale is visible before the alias. Retained stale rows are visibly pale; this review makes no contrast-compliance claim.
- 050 shows the first Escape has removed Actions while Find and the drawer remain. Despite its filename, 051 shows **both Find and the drawer closed** after the second Escape. The filename is an inaccurate historical label and must not be treated as a passing assertion.
- Representative saved states 064/068/072 show `oa_restore_pressure` / original `oa_restore_work` / `oa_restore_pressure` respectively, clean save messages, and consistent visible declaration UUID. Reopen capture 089 independently shows `oa_restore_pressure` in graphical properties. Small capture 086 shows `assess_damage` while the comment and description still contain the original prose `@assess`.
- Scope-stress 099 shows Partial and Collision before the long alias, two declarations/two uses, full Unicode `救援/assess.arcadia` path, and combined repair conditions in the status strip. 096 shows diagnostic navigation selecting the missing include, with the full failure explanation wrapped in Problems. 104 shows the prior representative graphical model retained and properties blocked by pending source drafts. Invalid source loaded as repair drafts is not a successful valid-project load or model replacement.
## Saved-disk and archive verification
All seven original verifier receipts report PASS, exit 0, physical byte equality, and no oracle mutation; their raw stdout/stderr hashes independently match the recorded hashes. Five representative checks cover baseline before opening, renamed save, undo save back to baseline, redo save, and final closed state. Two simple checks cover renamed save and final closed state. Oracle stdout reports exact model/identity with 30 reachable representative sources or four simple sources. The separate physical maps contain 37 and four files respectively. Independent current readback confirms all 41 final physical work files equal their preauthored expected trees. Scope-stress's four physical model files equal its manifest's authored after-hashes. These are saved-disk assertions, not an oracle inspection of a live unsaved editor model.
Versioned archive directory: `C:/ar-text-9e8r6t/harness/experiments/text-workspace-native2-20260913`. Manifest SHA256 `3ddabcf26828afe2aee882bdfbac26d0f3e6003e6c22f1575bb5bfdf12dcb01a`, 70,577 bytes. Independently verified all 367 unique payload files / 13,631,658 bytes against the full manifest, exact on-disk membership including only manifest as additional file, and 366 payload files against their independently located originals. The archived initial trial2 helper is historical evidence at its manifest hash; no separate pre-correction live original remains. An initial reviewer mapping to `archive_initial.py` failed and was rejected because that file belongs to trial1; it was not accepted as provenance. Corrected helper equals the live helper. The parent's original Windows Unicode-decoding failure and corrected explicit UTF-8 helper remain distinct historical files; resumed identical copies are not a new native run.
The nested attempt-5 input ZIP passes full CRC reading (526 members). This is archive integrity, not a rerun of its compiler gates. Payload excludes executables, DLLs, profiles, temporary directories and caches. Baseline/expected trees are archived; final work equality is supplied by the original receipts and this independent current readback, rather than claiming a separately archived final-work tree.
## Limits and disposition
Initial empty-text small/scope path-entry captures were failed input attempts later recovered, not successful opens. The scope-stress project was already invalid on load; close/Discard without manual edit or Save is the operator's recorded sequence, consistent with the unchanged physical readback, but disk equality alone cannot prove the absence of transient input. Screenshot metadata/accessibility does not constitute a complete key-event log. Existing Escape correction requires its own source gates and targeted behavior evidence. No full-app, release, timing, accessibility, or final UX acceptance is asserted here.
@@ -0,0 +1,396 @@
{
"atUtc": "2026-09-13T04:54:42.116051+00:00",
"scope": "Read-only archive and recorded evidence review; no runtime or compiler. Archive/original/external/ZIP/gate checks completed in preceding read-only invocation before Windows cp1252 failed at capture metadata; this invocation completes explicit UTF8 capture and receipt checks.",
"manifest": {
"bytes": 24309,
"sha256": "07c765910f3d7bda3e298b32f6a12feb578214c61c241b0ac0cebc6c46e28db8"
},
"files": 115,
"bytes": 7138817,
"allOriginalAndArchiveBytesEqual": true,
"externalPinsVerified": 7,
"nestedSourceZipMembersCRCAndBytes": 526,
"recordedSuccessfulGates": [
"escape",
"clippy",
"membership",
"focused",
"selection",
"tests",
"timing",
"gui"
],
"captureStates": 31,
"jpegFiles": 34,
"captureSizes": [
[
16,
16
],
[
185,
147
],
[
1108,
633
],
[
1442,
932
]
],
"captures": [
{
"path": "001-fresh-escape-correction-home.json",
"bytes": 1085,
"sha256": "b5637b1eb029200d146dbb0b22a7d445839c6d0dd3242ba6a591498b9a93354d"
},
{
"path": "001-fresh-escape-correction-home-0.jpg",
"bytes": 98647,
"sha256": "5e4da4a94c74b708c872833167cddb45d38d91b4ee128ae3a4c9cf1d1326ad29"
},
{
"path": "002-open-representative-picker.json",
"bytes": 1081,
"sha256": "e1bb2850901bda485c7b2a42e14053912f909b41c68c728f6a233074f2c58db8"
},
{
"path": "002-open-representative-picker-0.jpg",
"bytes": 97089,
"sha256": "e18826ed3f64c64cdb7efcc7d8c4648a775439d1f99221a11944ef9e4023b82b"
},
{
"path": "003-native-picker.json",
"bytes": 5024,
"sha256": "25fa11463186769b16d3b1a348759798f53ef0fb694ada2206c4878d672e86e7"
},
{
"path": "003-native-picker-0.jpg",
"bytes": 674,
"sha256": "5a2387a1a593a32ea169b56b9a3e59333936ee1da95164564e4d9be61bf5a24b"
},
{
"path": "003-native-picker-1.jpg",
"bytes": 50649,
"sha256": "2c4f1905bced8991366aebf1daa23c2984c406ff77a8abafb3c8a3bf7e60fb38"
},
{
"path": "004-representative-path-confirmed.json",
"bytes": 5072,
"sha256": "2776bf132cf6d163e8adcdd16ddf67567aa20c34216d2c20892f83e0328abfb4"
},
{
"path": "004-representative-path-confirmed-0.jpg",
"bytes": 674,
"sha256": "5a2387a1a593a32ea169b56b9a3e59333936ee1da95164564e4d9be61bf5a24b"
},
{
"path": "004-representative-path-confirmed-1.jpg",
"bytes": 55518,
"sha256": "a0ab138c25b7ba7a8028b3d46f61b00fb3b442679f98ffc68a5250bf50d4bc7c"
},
{
"path": "005-representative-open-request.json",
"bytes": 1083,
"sha256": "79b644cfd0d5240fd2ffc6d9bec2b3469286cd2bc3204eae511c7d1f9f07a4c3"
},
{
"path": "005-representative-open-request-0.jpg",
"bytes": 98435,
"sha256": "98463e8881e8161a8c1ff3584cd6ccacdf95e3c8bbeba40fe9a48d0bda644fed"
},
{
"path": "006-representative-loaded.json",
"bytes": 1256,
"sha256": "800d9521f99a1eeb72e7fa30993473fc87b99c80d4f8572222887a0447878801"
},
{
"path": "006-representative-loaded-0.jpg",
"bytes": 133714,
"sha256": "e2c550951994e38f2f2bd90ab8826b03a8affefdb80f11391b3068a8c7731ff7"
},
{
"path": "007-text-wide.json",
"bytes": 1232,
"sha256": "ed2dd657ebab1b7e92c5a12637c13b95323c7187c929374b4542956ebed1a1e0"
},
{
"path": "007-text-wide-0.jpg",
"bytes": 168557,
"sha256": "c5a495fc54f5c38a6ddc89e4a0ab329302c95c0d85708f6fd21862794ad4c958"
},
{
"path": "008-text-minimum.json",
"bytes": 1238,
"sha256": "1c48645c6b528eef9b792bc8a91f90a33748129f1e7390902dbaba00f528b17e"
},
{
"path": "008-text-minimum-0.jpg",
"bytes": 170880,
"sha256": "ce5bad312c8cd140ace5fb4f8472affd1936fd076742444c6333f5167dd02419"
},
{
"path": "009-window-size-menu.json",
"bytes": 1934,
"sha256": "804ff9d424c696ba40cf686043556bb29198e26f97459baa09558a49bc5a9c05"
},
{
"path": "009-window-size-menu-0.jpg",
"bytes": 170297,
"sha256": "13ddf9100a532d95a87c4e4b7fc13db6f38503e8267ad6a77ef84b29f72bce76"
},
{
"path": "009-window-size-menu-1.jpg",
"bytes": 4956,
"sha256": "1b33fc34741438282edbd352299d4844fb6762b3ed434365e302e03f408dfc04"
},
{
"path": "010-size-command.json",
"bytes": 1238,
"sha256": "a90dc51e4548595d53ab0f5152ced87786d39489c912fd5de412bb63346ea397"
},
{
"path": "010-size-command-0.jpg",
"bytes": 170949,
"sha256": "c74face251a288e9e48a555839bd27722fd0a07cd438e809c581b02a7eeb72b6"
},
{
"path": "011-size-right-edge.json",
"bytes": 1244,
"sha256": "9dd5ae891a08e1eff381a331b31be4da39b0bde1d8fdfe5097e373dcff53298d"
},
{
"path": "011-size-right-edge-0.jpg",
"bytes": 170949,
"sha256": "c74face251a288e9e48a555839bd27722fd0a07cd438e809c581b02a7eeb72b6"
},
{
"path": "012-cancel-window-sizing-wide.json",
"bytes": 1264,
"sha256": "757cdf55f48e66d577c62c5cefad8c329bd1ee33653db787e4f5266ab1aaee37"
},
{
"path": "012-cancel-window-sizing-wide-0.jpg",
"bytes": 170949,
"sha256": "c74face251a288e9e48a555839bd27722fd0a07cd438e809c581b02a7eeb72b6"
},
{
"path": "013-oa-folder.json",
"bytes": 1232,
"sha256": "2fb29d44e40f4e4b9ab37bf1ffa17dbdf475290e3e53f33c7f4b8f23466778ba"
},
{
"path": "013-oa-folder-0.jpg",
"bytes": 171567,
"sha256": "37ee2ed3e425bd54d00ec195f2eebd7fc6ecdd223ae4377dcc28305d9bfb4c65"
},
{
"path": "014-participants-source.json",
"bytes": 1252,
"sha256": "fb51f962a4b4d318b8ff93260d7b9676d0e541e312b1743354478ef966d9bd01"
},
{
"path": "014-participants-source-0.jpg",
"bytes": 132210,
"sha256": "4fc0866a6a960eab7ac4df5379e9dd9ba244cd30fe283de0676380fae3bbdcc7"
},
{
"path": "015-word-selected.json",
"bytes": 1240,
"sha256": "08a07b5cf556ae69f0b27933ed92f031cb2df288868f8c916bd452b27e69e7e9"
},
{
"path": "015-word-selected-0.jpg",
"bytes": 131689,
"sha256": "a02b211dc181d942461e00381747b208824d5375baa9636eb1e4cba08d296a1b"
},
{
"path": "016-references-query.json",
"bytes": 1246,
"sha256": "9bfa28bc44126799c36947ef1015baedf480233a26970c5c98036e05cdced41f"
},
{
"path": "016-references-query-0.jpg",
"bytes": 136808,
"sha256": "4791f8b9cc059234239874c3ea741d65d06c4f055e2edc2a94e45e21c05b94de"
},
{
"path": "017-references-scrolled.json",
"bytes": 1252,
"sha256": "afb568c4da1a2db6cbe976262e27d6786b40a4b627460b5cc78609772136d682"
},
{
"path": "017-references-scrolled-0.jpg",
"bytes": 143285,
"sha256": "f1e7338bab33939f31eae72b7590cd964d6a59bbac5122435aa0a5a94e2ace28"
},
{
"path": "018-find-and-retained-drawer.json",
"bytes": 1262,
"sha256": "bbda451ac080eab4fa8825341eec42933cd2066eed2a38ad6ec7d11c513a421c"
},
{
"path": "018-find-and-retained-drawer-0.jpg",
"bytes": 146738,
"sha256": "92956cc253a2edcf80e305fa019ab4153b87f461b282aa4f01a30b893912fb48"
},
{
"path": "019-actions-find-drawer.json",
"bytes": 1252,
"sha256": "dfd440c1182ce93f6ad5e0206e09a23b259723b0720acfd853d5d861317737b1"
},
{
"path": "019-actions-find-drawer-0.jpg",
"bytes": 144620,
"sha256": "583b06732b126b4a79df1233ce654b8bca60eebf1a6be1bcb11994ccae705dc5"
},
{
"path": "020-escape1-menu-only.json",
"bytes": 1248,
"sha256": "5bd0a3192c81832c7ae5045a03f0a0588c15d65f145ca4aeebb6867d8f21c073"
},
{
"path": "020-escape1-menu-only-0.jpg",
"bytes": 139894,
"sha256": "022b457ac5b15b56e4faf4615981cfaaeed95d3b554eab2c6b257cb77ee27a3d"
},
{
"path": "021-escape2-find-only-retains-results-scroll.json",
"bytes": 1294,
"sha256": "8012e1fd675c0607f08d785101295cfbe9eba6dfa0c28282a2729ee126801035"
},
{
"path": "021-escape2-find-only-retains-results-scroll-0.jpg",
"bytes": 137580,
"sha256": "08aaead3e2978daf802fd0b1e36265dad517fcfad54cfbc1e18adfdfd274e772"
},
{
"path": "022-escape3-drawer-only.json",
"bytes": 1252,
"sha256": "0b1190135965eaa5cb4d6fe360001651833f4913637268767817373a2db9b2db"
},
{
"path": "022-escape3-drawer-only-0.jpg",
"bytes": 131935,
"sha256": "1bcc3d2fca2f0becac88ad971cae827169c971821061450b42efe2ca6b15b696"
},
{
"path": "023-word-replacement-after-three-escapes.json",
"bytes": 1296,
"sha256": "d6439401b0e8dc5862ba8dec89f95fad41d24d5eb2c4a0ab4bb75dad983f9f79"
},
{
"path": "023-word-replacement-after-three-escapes-0.jpg",
"bytes": 132787,
"sha256": "88f8b825615a70eb4492c9df08f78ade1e8aa9c475ddd6c96d45272d8b191553"
},
{
"path": "024-word-probe-undo.json",
"bytes": 1244,
"sha256": "b839286980a247a7a0c6d2924c9159ea6f0f542ed633770a723d2e0245e24902"
},
{
"path": "024-word-probe-undo-0.jpg",
"bytes": 131885,
"sha256": "57a6fcf2633de7e7f8eaf69e4e39839343bf46a39daac9e66361c4250501094e"
},
{
"path": "025-reopen-status-after-escape.json",
"bytes": 1266,
"sha256": "cebab27b0c58effa5c58f0206ab5a8e1de4db185cb959fe96f354b014bc0a816"
},
{
"path": "025-reopen-status-after-escape-0.jpg",
"bytes": 133772,
"sha256": "7908e1317430a560d65cb764b4cbeeb52b8e658576de538392c9948c4789e63c"
},
{
"path": "026-references-retained-after-escape-reopen.json",
"bytes": 1292,
"sha256": "251514490964d521f2036e9fa4c7c4761fef3f1a8ac4440e560a74e23fb77e2e"
},
{
"path": "026-references-retained-after-escape-reopen-0.jpg",
"bytes": 130790,
"sha256": "7c2839245e264831627f3d50e25f21a3cc06136b93f09024126615042b1267c2"
},
{
"path": "027-line-selected.json",
"bytes": 1240,
"sha256": "b048034c34efddaab3947a809b40359c346d7b123793c90eb174a6ceafdb6b9d"
},
{
"path": "027-line-selected-0.jpg",
"bytes": 132710,
"sha256": "86872b886ea25e10067e5dbb7d6b38be4cade9e4882cc881c7cd27680d5ff253"
},
{
"path": "028-focused-find-over-line-and-drawer.json",
"bytes": 1280,
"sha256": "633bac8c103ea5dca6cdae3bf722bcb26fbf1ca0a4939e522a6ebd10579a80d2"
},
{
"path": "028-focused-find-over-line-and-drawer-0.jpg",
"bytes": 136832,
"sha256": "c22b510f3238b9b10de5e7944538704778447eb8517117cf441e4b0e8466bb23"
},
{
"path": "029-focused-escape-retains-drawer-and-line.json",
"bytes": 1290,
"sha256": "62d92c5a2d4f1baf8c53ca1bd835b604d61c4fe30aa45a23fa2203dad653392e"
},
{
"path": "029-focused-escape-retains-drawer-and-line-0.jpg",
"bytes": 132794,
"sha256": "0384c0046addd8d1568ff309840cae52e2e394eb3c33cff4eb75413ca817e391"
},
{
"path": "030-line-replacement-after-focused-find-escape.json",
"bytes": 1308,
"sha256": "33065c7de823bba42ac37d529bf4317fdc36553b4e0071db344637c6bb7d5aed"
},
{
"path": "030-line-replacement-after-focused-find-escape-0.jpg",
"bytes": 133736,
"sha256": "bb15d06d3c92347305636d4abdd9f490a414958b986c581b0b5f3415cb5aebb6"
},
{
"path": "031-line-probe-undo.json",
"bytes": 1244,
"sha256": "8f80a246e1be1390a019b8153d6683c4e811967ecc0a71dd6a5788bdd8b5c212"
},
{
"path": "031-line-probe-undo-0.jpg",
"bytes": 132790,
"sha256": "63e71bf4b82e678ea8c1c3a5f33d05ff9901fbd7098099c49ac701c4da3a7cf5"
}
],
"savedReceipts": [
{
"path": "verification-representative-trial-closed\\result.json",
"bytes": 7378,
"sha256": "7cd11b75dab124ea7ffc95075c78b35ec87a54d1a211bb5221a7843f4e6b19ae",
"variant": "expected",
"physicalFiles": 37,
"stdout": "PASS exact model/identity/30 reachable sources; 30 exact disk files (0 proven retained)\n"
}
],
"launch": {
"bytes": 1663,
"sha256": "d4ee809d68f036c09801b4a85977696a76010b58e9a380fdec8f7e30498302b4"
},
"closure": {
"bytes": 398,
"sha256": "b7b978e3b762bfb2d2427b69fb247419576bff09e663ccaae25ea79342cf725b"
},
"archiver": {
"bytes": 16147,
"sha256": "b619f0db6dbbb430f0bcb6104c1b09d0bc25b87e9cb93a07441e5a3f5fafd72c"
},
"recorder": {
"bytes": 1225,
"sha256": "46993f6bef7af7b443c5d42505aa143ac397fd30c2562d4675a1d6376fbf32ff"
}
}
@@ -0,0 +1,29 @@
# Native trial 3 — independent evidence review
The inspected original captures support the bounded Escape correction and word/line replacement claims. This was a **wide-window development replay**, not a new minimum-window or packaged-release acceptance run. No additional concrete defect was found in these captures. This review ran only read-only file/hash/ZIP checks and viewed stored images; no application, oracle, compiler or UI operation was run.
## Recorded execution and observations
PID 4288 ran from 2026-09-13T04:44:53.418424Z to 04:51:07.980916Z and closed normally with exit 0. Both logs are empty and closure reports unchanged GUI/DLL. GUI SHA256 `0ee1425174bdc93399f97d926f832b3ece1671bc4cd484d45a2844bdeed08399`, 114,171,904 bytes. Session duration is not a responsiveness measurement.
Directly inspected original JPEGs 008, 019–024, 026, and 028–031:
- 019 displays Actions over Find and the scrolled References drawer. 020 removes only Actions; Find and the same lower reference rows remain. 021 removes Find while retaining the drawer's lower rows/full `oa/participants.arcadia` path and showing the selected `oa_control` word in the editor. 022 then closes the drawer with that word still selected.
- 023 shows the whole selected word replaced by `oa_control_escape_probe`, with the surrounding declaration intact and Unsaved changes. 024 shows original `oa_control` restored and All changes saved. The latter is the clean-state indicator after Undo, not evidence that a Save command was invoked.
- 026 shows References reopened with the same lower group position and Stale before the alias; displaying retained stale results does not authorize stale navigation.
- 028 visibly focuses Find over the drawer. 029 closes Find, retaining the drawer and the selected description line. 030 shows the whole line replaced with `description "escape_line_probe";`, and 031 shows `description "";` restored and All changes saved. This supports both retained selection and usable editor focus after the focused Find Escape.
- 008 is still 1442x932 despite its `text-minimum` name. The failed resize attempts and cancelled OS sizing must remain failed attempts. These captures add no 1100x700 minimum-window verification; that geometry remains bounded to trial 2 and its source version.
There are 31 metadata states and 34 original JPEGs. Metadata also includes picker/menu surfaces with smaller dimensions; those are not resized application-client evidence. Every metadata image reference exists, is unique, and exactly matches the JPEG inventory. All originals are individually hash-bound in the adjacent JSON; images not listed above were inventory-checked, not claimed as individually visually assessed.
## Saved-state and archive checks
One final representative saved-disk receipt is PASS, exit 0, expected variant, all 37 physical files equal, and unchanged by oracle. Its raw stdout/stderr match their receipt hashes; stdout states `PASS exact model/identity/30 reachable sources; 30 exact disk files (0 proven retained)`. Receipt SHA256 `7cd11b75dab124ea7ffc95075c78b35ec87a54d1a211bb5221a7843f4e6b19ae`. This confirms the recorded final saved state; it does not inspect the live unsaved model or independently prove no intermediate Save/Apply. No Save/Apply is the operator's recorded action scope. No rename transaction, simple fixture replay, or full acceptance is inferred from this trial.
Archive directory: `C:/ar-text-9e8r6t/harness/experiments/text-workspace-native3-20260913`. Manifest SHA256 `07c765910f3d7bda3e298b32f6a12feb578214c61c241b0ac0cebc6c46e28db8`, 24,309 bytes. Independent checks verified all **115 unique payload files / 7,138,817 bytes**, exact archive membership (manifest is the sole additional file), and every payload against its independently located original. All seven external pins read back equal. The nested source ZIP has exactly 526 manifest-bound members, each read with CRC and SHA/size verification. All eight original gate receipts report exit 0 and unchanged inputs, with matching raw log hashes: escape, Clippy, membership, focused, selection, tests, timing and GUI. These are preserved gate results, not new executions by this review.
The archive correctly excludes executables/DLL payloads, profiles, temporary directories, caches, working fixture copies and duplicate authored fixtures, linking trial2 fixture evidence externally. Archived gate.py/verify_saved.py are preserved current helper bytes and must not be promoted to independently receipt-bound historical execution hashes; the manifest explicitly explains that limitation. Launch and binder helpers have receipt bindings. Recorder and archiver are retained independently: recorder SHA256 `46993f6bef7af7b443c5d42505aa143ac397fd30c2562d4675a1d6376fbf32ff`; updated archiver SHA256 `b619f0db6dbbb430f0bcb6104c1b09d0bc25b87e9cb93a07441e5a3f5fafd72c`.
Review process note: an initial read-only check assumed the earlier gate log schema (`stdout` object); these receipts actually use `stdoutSha256`. Correcting the reader preserved strict hash equality. A following reader completed all archive/original/external/ZIP/gate checks before failing at Windows cp1252 capture decoding. Explicit UTF-8 completed capture/receipt checking without modifying any input. No producer or runtime retry occurred.
Machine review and original capture bindings: `native3-evidence-review.json`, SHA256 `6817c45fb595157ff0b5845a4082ba71bc747fe8686a04b44ea6fe565558a143`. The native evidence resolves the inspected wide-window Escape sequence; combined source integration, publication and broader UX disposition remain with the parent.
@@ -0,0 +1,37 @@
{
"atUtc": "2026-09-13T05:02:47.529317+00:00",
"commit": "2df7f580aa4bd728a728c83ac10e6ccc956ef069",
"scope": "Exact selected committed source/evidence bytes downloaded from Gitea; complete source and evidence membership are separately verified against the committed Git tree.",
"files": [
{
"path": "crates/oa-desktop/src/app.rs",
"bytes": 223370,
"sha256": "4f4c1bb5f832601a072b5cd406a75731982e8b9955ee6af39a93f124496938f9"
},
{
"path": "crates/oa-desktop/src/app/source_symbols.rs",
"bytes": 21421,
"sha256": "d81914a553114d85452d973a1edb175843d27154b3f9b9fc4cbc5049d423abe4"
},
{
"path": "harness/text-workspace-verified-20260913.md",
"bytes": 9473,
"sha256": "6db2995be4ee411599c654899b23182a027136cdd60b803e4c08417323b45d44"
},
{
"path": "harness/experiments/text-workspace-native3-20260913/manifest.json",
"bytes": 24309,
"sha256": "07c765910f3d7bda3e298b32f6a12feb578214c61c241b0ac0cebc6c46e28db8"
},
{
"path": "harness/experiments/text-workspace-native3-20260913/attempt-6/inputs.zip",
"bytes": 2198569,
"sha256": "960c2ebeab73af1fbf593268e4dc1687011588da86d808e039a6fd28658ec347"
},
{
"path": "harness/experiments/text-workspace-native3-20260913/attempt-6/tests-stdout.log",
"bytes": 98579,
"sha256": "6cf95c3bf0fd8efcbf753ab7788a02be461fab8b6621aa924e64e47f260097d4"
}
]
}
@@ -0,0 +1,26 @@
"""Read back selected published source/evidence bytes from the exact Gitea commit."""
from pathlib import Path
from datetime import datetime, timezone
import hashlib
import json
import subprocess
import urllib.request
ROOT = Path('C:/ar-text-9e8r6t')
COMMIT = '2df7f580aa4bd728a728c83ac10e6ccc956ef069'
BASE = 'http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/raw/commit/' + COMMIT + '/'
FILES = ['crates/oa-desktop/src/app.rs', 'crates/oa-desktop/src/app/source_symbols.rs', 'harness/text-workspace-verified-20260913.md', 'harness/experiments/text-workspace-native3-20260913/manifest.json', 'harness/experiments/text-workspace-native3-20260913/attempt-6/inputs.zip', 'harness/experiments/text-workspace-native3-20260913/attempt-6/tests-stdout.log']
records = []
for name in FILES:
expected = subprocess.check_output(['git', 'show', COMMIT + ':' + name], cwd=ROOT)
with urllib.request.urlopen(BASE + name, timeout=45) as response:
raw = response.read()
assert response.status == 200
assert raw == expected, 'Published content differs: ' + name
records.append({'path': name, 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()})
result = {'atUtc': datetime.now(timezone.utc).isoformat(), 'commit': COMMIT, 'scope': 'Exact selected committed source/evidence bytes downloaded from Gitea; complete source and evidence membership are separately verified against the committed Git tree.', 'files': records}
dest = Path(__file__).resolve().parent / 'publication-readback.json'
with dest.open('x', encoding='utf-8', newline='\n') as out:
json.dump(result, out, indent=2)
out.write('\n')
print(json.dumps(result))
@@ -0,0 +1,18 @@
# Selection correction report: bounded evidence review
**PASS — no factual mismatch found.** Reviewed the versioned report and historical Find-only red/green evidence. No retained helpers, builds, tests or GUI actions were executed; no source was edited.
The manifest has exactly 25 payloads totaling 9,173,324 bytes. Every listed payload's actual size and SHA-256 matches. Four input maps each contain 525 files: red1→red2 changes only `app/text_workspace/focus_selection_tests.rs`; red2→green2 changes only `app/source_symbols.rs`; green1→green2 changes no input bytes. The retained source hashes and green stdout hash match the report.
Raw red1 stderr identifies the same before-Find child-index panic in all four tests; it is correctly rejected as regression proof. Red2 compiles and has two passing controls and two failures at selected-byte assertions (`Some("")` versus `Some("oa_contact")`). Its timestamps, duration and unchanged-input receipt match the report. Green1 has no compile line, reproduces those failures and is explicitly rejected. Its ZIP source entry retains the old 20:04:46 local modification time; green2's source entry is 20:16:32 with identical source bytes. Green2 stderr records fresh compilation and stdout records four passes; 03:16:36.205020Z–03:17:54.177014Z and 77.9678s support the stated rounded values. These observations support the reported cache-retry interpretation; they are not an independent rerun of Cargo's cache behavior.
The report properly separates this executed Find-only correction from later departure changes and their pending combined/native evidence. The distinction between a nonmutating live focus restoration and a canonical range retained on a committed departure matches the independent static review. CPU/App Content separation, injected Escape bridge message, lack of GPU/window/scroll proof, and lost Word/Line extension mode after real navigation are stated rather than silently accepted.
This review checked manifest payload hashes, input-map differences, raw receipts/logs and ZIP entry metadata. It did not execute archive builders or independently revalidate every decompressed source member. Historical inputs remain distinct from the currently running combined gate.
## Bindings
- Report `C:/ar-text-9e8r6t/harness/text-selection-correction-20260913.md`: SHA-256 `adfd9b5f11cf3ae6c65579f62ec90e529dd8dd569c4fc452e41b5b2994d21e61`.
- Experiment manifest: SHA-256 `4580d8cbc2f0347f1ebc1448728af6ef8885f6ebbd4c2d2dbe0c41eac97fb283` (4,401 bytes), binding all 25 checked payloads.
- Green2 stdout: SHA-256 `6f19f24e2fa37db4fc95c9b2d11b65e420299c6c6f90e4657e7e8e328b326fa0`.
- The separate durable departure static review is `departure-selection-review.md`, SHA-256 `f872c511eab74ca05d35b97ad31ee1a879c42717e40a698959501b6f96546dac`; it retains the five final formatted source hashes and the corrected fixture finding.
@@ -0,0 +1,41 @@
"""Require every manifest-bound evidence payload to survive the Git index."""
from pathlib import Path
import hashlib
import json
import subprocess
import sys
ROOT = Path('C:/ar-text-9e8r6t')
SETS = ['text-find-selection-20260913', 'text-workspace-initial-20260913', 'text-workspace-native2-20260913', 'text-workspace-native3-20260913']
expected = {}
sets = []
for label in SETS:
base = 'harness/experiments/' + label
manifest_path = ROOT / base / 'manifest.json'
raw = manifest_path.read_bytes()
manifest = json.loads(raw)
rows = manifest['files']
sets.append({'path': base, 'payloads': len(rows), 'manifestSha256': hashlib.sha256(raw).hexdigest()})
expected[base + '/manifest.json'] = {'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()}
for row in rows:
name = base + '/' + row['path']
assert name not in expected
expected[name] = row
names = sorted(expected)
raw = subprocess.check_output(['git', 'cat-file', '--batch'], input=''.join(':' + name + '\n' for name in names).encode(), cwd=ROOT)
offset = 0
for name in names:
end = raw.index(b'\n', offset)
header = raw[offset:end].split()
assert len(header) == 3 and header[1] == b'blob', ('Missing staged payload', name, header)
size = int(header[2])
blob = raw[end + 1:end + 1 + size]
offset = end + size + 2
assert size == expected[name]['bytes'] and hashlib.sha256(blob).hexdigest() == expected[name]['sha256'], ('Staged archive payload differs', name)
assert blob == (ROOT / name).read_bytes(), ('Working archive differs', name)
assert offset == len(raw)
receipt = {'scope': 'All four experiment manifests and every referenced payload equal staged Git blobs and working originals, including ignored raw logs explicitly staged.', 'files': len(names), 'archives': sets, 'gitTree': subprocess.check_output(['git', 'write-tree'], cwd=ROOT).decode().strip()}
with Path(sys.argv[1]).open('x', encoding='utf-8', newline='\n') as out:
json.dump(receipt, out, indent=2)
out.write('\n')
print(json.dumps(receipt))
@@ -0,0 +1,38 @@
"""Verify the staged source and all staged changes against measured working bytes."""
from pathlib import Path
import hashlib
import json
import subprocess
import sys
ROOT = Path('C:/ar-text-9e8r6t')
SCOPES = ['Cargo.toml', 'Cargo.lock', 'crates', 'build', '.cargo', 'docs', 'examples', 'harness/fixtures']
capture = json.loads((ROOT / '.local/text-workspace-gates-20260912/attempt-6/inputs.json').read_text(encoding='utf-8'))
source_names = subprocess.check_output(['git', 'ls-files', '-z', '--cached', '--', *SCOPES], cwd=ROOT).split(b'\0')
source_names = sorted(set(name.decode() for name in source_names if name))
assert source_names == [row['path'] for row in capture['files']]
changed = subprocess.check_output(['git', 'diff', '--cached', '--name-only', '-z'], cwd=ROOT).split(b'\0')
names = sorted(set(source_names) | {name.decode() for name in changed if name})
payload = ''.join(':' + name + '\n' for name in names).encode()
raw = subprocess.check_output(['git', 'cat-file', '--batch'], input=payload, cwd=ROOT)
offset = 0
source_expected = {row['path']: row for row in capture['files']}
verified = []
for name in names:
end = raw.index(b'\n', offset)
header = raw[offset:end].split()
assert len(header) == 3 and header[1] == b'blob', (name, header)
size = int(header[2])
blob = raw[end + 1:end + 1 + size]
offset = end + size + 2
digest = hashlib.sha256(blob).hexdigest()
assert blob == (ROOT / name).read_bytes(), 'Index differs from working bytes: ' + name
if name in source_expected:
assert size == source_expected[name]['bytes'] and digest == source_expected[name]['sha256'], 'Index differs from tested source: ' + name
verified.append({'path': name, 'bytes': size, 'sha256': digest, 'gitBlob': header[0].decode()})
assert offset == len(raw)
output = Path(sys.argv[1])
with output.open('x', encoding='utf-8', newline='\n') as stream:
json.dump({'scope': 'Precommit index bytes equal tested source plus all staged working changes; no new runtime execution.', 'sourceArchiveSha256': capture['archiveSha256'], 'testedSourceFiles': len(source_names), 'verified': verified}, stream, indent=2)
stream.write('\n')
print(json.dumps({'sourceFiles': len(source_names), 'allVerifiedFiles': len(verified), 'receipt': str(output)}))
@@ -0,0 +1,21 @@
{
"command": [
"cargo",
"clippy",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--all-targets",
"--",
"-D",
"warnings"
],
"started": "2026-09-13T01:48:18.205790+00:00",
"finished": "2026-09-13T01:50:22.597629+00:00",
"seconds": 124.39168569999674,
"exitCode": 0,
"inputsUnchanged": true,
"stdoutSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderrSha256": "1528c8ddc7b7275a08f859d245b31b33e151e5ab2619f7258c815e51ec33144c"
}
@@ -0,0 +1,2 @@
Checking oa-desktop v0.2.0 (C:\ar-text-9e8r6t\crates\oa-desktop)
Finished `dev` profile [unoptimized] target(s) in 2m 03s
@@ -0,0 +1,15 @@
{
"atUtc": "2026-09-13T01:48:17.334248+00:00",
"versions": {
"rustc": "rustc 1.98.1 (48a229cea 2026-09-01)\nbinary: rustc\ncommit-hash: 48a229ceaefd4985c50990b14116b6d856af0985\ncommit-date: 2026-09-01\nhost: x86_64-pc-windows-gnullvm\nrelease: 1.98.1\nLLVM version: 22.1.8\n",
"cargo": "cargo 1.98.1 (797e8a9bc 2026-08-05)\n"
},
"variables": {
"RUSTUP_HOME": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup",
"CARGO_HOME": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo",
"RUSTUP_TOOLCHAIN": "stable-x86_64-pc-windows-gnullvm",
"CARGO_TARGET_DIR": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm",
"CARGO_BUILD_JOBS": "1",
"CARGO_TARGET_X86_64_PC_WINDOWS_GNULLVM_LINKER": "clang.exe"
}
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,36 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"--",
"--list"
],
"started": "2026-09-13T01:50:23.457615+00:00",
"finished": "2026-09-13T02:05:04.869589+00:00",
"seconds": 881.4089695000002,
"exitCode": 0,
"inputsUnchanged": true,
"stdoutSha256": "45a54d47fdd9a87fd6d55e13a6f0ee4f19f4253e099a6efa367704d50d77cf76",
"stderrSha256": "e760e45395cb4f5c0f101d8edddcc9ec1040d792fe8de6baf5dc58e3c40bf98b",
"testMembership": {
"listed": 857,
"required": [
"app::source_symbols::tests::retained_choices_cannot_replay_after_hide_or_references_problems_references",
"app::text_workspace::lifecycle_tests::invalid_repair_open_clears_prior_presentation_and_publishes_current_problems_preserving_worker",
"app::text_workspace::lifecycle_tests::saved_new_destination_republishes_current_warning_and_refuses_old_primary_and_related",
"app::text_workspace::tests::document_reset_preserves_popup_token_sequence_and_drops_old_menu_authority",
"app::text_workspace::tests::stale_retained_group_can_expand_without_navigating_or_applying_drafts",
"diagnostic_input::tests::same_publication_new_visit_cancels_armed_rows_without_a_hidden_tree_frame",
"views::text_workspace::tests::drawer_clamps_to_actual_center_allocation_including_oversize_requests",
"views::text_workspace::tests::highlighted_sensor_editor_retains_real_scrolled_buffer_across_panel_rebuilds"
],
"missing": [],
"diagnosticGuardCount": 20
}
}
@@ -0,0 +1,5 @@
Compiling oa-core v0.2.0 (C:\ar-text-9e8r6t\crates\oa-core)
Compiling oa-server v0.2.0 (C:\ar-text-9e8r6t\crates\oa-server)
Compiling oa-desktop v0.2.0 (C:\ar-text-9e8r6t\crates\oa-desktop)
Finished `test` profile [unoptimized] target(s) in 14m 40s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
@@ -0,0 +1,859 @@
app::architecture_authoring::tests::architecture_allocated_work_is_root_owned_and_one_exact_history_change: test
app::architecture_authoring::tests::architecture_blank_names_and_escape_never_accept_placeholder_or_rename: test
app::architecture_authoring::tests::architecture_captured_escape_does_not_cancel_other_controls_or_placement: test
app::architecture_authoring::tests::architecture_f2_routes_selected_node_to_inline_rename_and_exact_undo: test
app::architecture_authoring::tests::architecture_first_focused_input_escape_cancels_create_and_rename: test
app::architecture_authoring::tests::architecture_invalid_click_cannot_poison_inline_or_checkpoint_geometry: test
app::architecture_authoring::tests::architecture_stale_submit_keeps_create_and_rename_visible_and_exact: test
app::architecture_authoring_tests::architecture_cancelled_gesture_cannot_commit_a_later_named_draft: test
app::architecture_authoring_tests::architecture_canvas_left_click_uses_world_coordinate_once_at_zoom_and_pan: test
app::architecture_authoring_tests::architecture_checkpoint_retains_exact_name_point_and_fresh_binding_without_commands: test
app::architecture_authoring_tests::architecture_context_choices_are_small_and_system_is_singleton: test
app::architecture_authoring_tests::architecture_contextual_allocation_creates_work_relation_and_node_in_one_undo: test
app::architecture_authoring_tests::architecture_creation_names_before_commit_preserves_camera_and_undoes_once: test
app::architecture_authoring_tests::architecture_existing_inventory_is_contextual_and_placement_never_implies_allocation: test
app::architecture_authoring_tests::architecture_f2_rename_preserves_identity_placement_and_atomic_history: test
app::architecture_authoring_tests::architecture_name_survives_rejected_click_resize_navigation_and_escape_is_explicit: test
app::architecture_authoring_tests::architecture_rejected_submission_keeps_inline_name_visible_and_invalid_click_is_ignored: test
app::architecture_authoring_tests::basic_transition_explicit_overview_focus_wins_over_an_already_populated_architecture: test
app::behavior_lifecycle_tests::incomplete_behavior_form_is_dirty_close_save_retains_it_and_cancel_allows_switching: test
app::behavior_lifecycle_tests::passive_behavior_canvas_events_do_not_apply_property_drafts: test
app::behavior_lifecycle_tests::pending_behavior_blocks_navigation_property_edits_and_model_history: test
app::behavior_lifecycle_tests::pending_behavior_blocks_source_creation_and_source_history_replay: test
app::behavior_lifecycle_tests::save_prepares_behavior_before_opening_destination_and_cancel_keeps_one_undo: test
app::behavior_lifecycle_tests::source_writeback_failure_keeps_typed_behavior_form_for_repair_and_one_undo: test
app::checkpoints::tests::checkpoint_completion_releases_the_writer_while_a_context_menu_is_open: test
app::checkpoints::tests::checkpoint_inline_create_and_rename_restore_focus_without_changing_drafts_or_history: test
app::checkpoints::tests::checkpoint_noninline_contexts_keep_other_focus_and_still_lint: test
app::checkpoints::tests::discard_and_close_waits_for_the_late_checkpoint_then_retires_it: test
app::checkpoints::tests::home_resume_keeps_state_view_while_explicit_architecture_remains_reachable: test
app::checkpoints::tests::home_resume_retains_invalid_source_and_property_drafts: test
app::checkpoints::tests::home_resume_returns_to_each_actual_workspace_without_model_edits: test
app::checkpoints::tests::malformed_checkpoint_does_not_replace_the_current_model: test
app::checkpoints::tests::recent_and_recovery_navigation_respect_unsaved_decision: test
app::checkpoints::tests::restored_copy_keeps_raw_property_and_requires_save_without_local_or_hosted_binding: test
app::checkpoints::tests::saving_an_older_snapshot_keeps_recovery_for_newer_unsaved_work: test
app::checkpoints::tests::stale_write_completion_cannot_recover_a_discarded_document: test
app::checkpoints::tests::walkthrough_request_keeps_unfinished_source_behind_the_normal_pending_guard: test
app::data_paging_lifecycle_tests::paging_preserves_same_context_and_resets_on_layer_or_document_replacement: test
app::diagram_selection_tests::changing_visible_view_follows_its_clean_inspector_without_a_model_edit: test
app::diagram_selection_tests::diagram_switch_preserves_an_independent_semantic_inspection: test
app::diagram_selection_tests::diagram_uuid_edit_follows_the_same_view_or_a_different_picker_target: test
app::diagram_selection_tests::invalid_view_draft_blocks_the_switch_and_retains_raw_input: test
app::diagram_selection_tests::stale_diagram_choice_never_applies_an_unrelated_valid_draft: test
app::diagram_selection_tests::valid_pending_view_edit_applies_to_old_view_then_inspects_the_new_view: test
app::direct_scenario_tests::direct_scenario_creation_and_reorder_preserve_selection_and_each_undo_once: test
app::direct_scenario_tests::direct_scenario_rejects_every_stale_context_and_preserves_property_drafts: test
app::direct_scenario_tests::direct_scenario_scroll_and_real_resize_invalidate_only_pointer_context: test
app::direct_scenario_tests::direct_scenario_source_failure_and_navigation_keep_form_until_success: test
app::hosted::tests::hosted_actual_app_tasks_publish_edit_conflict_correct_credentials_reload_and_open: test
app::hosted::tests::hosted_catalog_invalidation_follows_service_writes_and_observed_revision_changes: test
app::hosted::tests::hosted_catalog_search_credentials_and_failed_refresh_never_mix_result_scopes: test
app::hosted::tests::hosted_changed_bound_head_does_not_invalidate_another_services_empty_filter: test
app::hosted::tests::hosted_conflict_fetches_review_without_adoption_and_reload_is_undoable: test
app::hosted::tests::hosted_detached_drafts_and_recovery_remain_available_after_rejected_publish: test
app::hosted::tests::hosted_failed_cross_service_publication_checks_and_reloads_its_own_resource: test
app::hosted::tests::hosted_failed_or_cancelled_local_open_keeps_the_existing_document_and_destination: test
app::hosted::tests::hosted_invalid_and_detached_source_drafts_never_start_network_writes: test
app::hosted::tests::hosted_invalid_local_open_repair_saves_locally_and_never_replaces_old_resource: test
app::hosted::tests::hosted_modal_blocks_underlying_edits_and_credentials_are_redacted: test
app::hosted::tests::hosted_new_revision_invalidates_filtered_catalog_even_without_a_displayed_row: test
app::hosted::tests::hosted_only_successful_source_save_as_changes_the_active_destination: test
app::hosted::tests::hosted_open_waits_for_unsaved_guard_and_failed_open_preserves_current_document: test
app::hosted::tests::hosted_publish_acknowledges_only_the_sent_snapshot_and_retains_undo: test
app::hosted::tests::hosted_stale_completions_do_not_clear_current_busy_or_adopt_another_document: test
app::hosted::tests::hosted_unknown_save_is_acknowledged_by_exact_readback_without_retry: test
app::lint_tests::committed_check_cache_follows_edit_and_undo_while_drafts_stay_separate: test
app::lint_tests::lint_coalesces_work_and_rejects_obsolete_results: test
app::lint_tests::prior_document_lint_cannot_enter_reopened_model_or_block_next_checks: test
app::port_view_tests::catalog_creation_follows_the_new_port_and_keeps_group_browsing_explicit: test
app::port_view_tests::filtered_active_view_cannot_hide_a_created_port_when_eligible_owner_view_is_folded: test
app::process_canvas::direct_process_dirty_source_blocks_canvas_creation_without_losing_text: test
app::process_canvas::tests::direct_process_app_open_source_and_back_preserve_local_reference_identity: test
app::process_canvas::tests::direct_process_app_same_owner_selection_preserves_tool_but_owner_change_resets_it: test
app::process_canvas::tests::direct_process_app_save_scroll_resize_and_passive_geometry_keep_drafts_and_current_origin: test
app::process_canvas::tests::direct_process_app_source_failure_retains_form_then_commits_once_and_selects_occurrence: test
app::process_canvas::tests::direct_process_app_stale_context_dirty_source_and_properties_never_mutate: test
app::process_canvas::tests::direct_process_append_empty_first_second_exchange_has_exact_source_history: test
app::process_canvas::tests::process_focus_retains_rejected_draft_and_guards_selection_until_panels_restore: test
app::repair_save_state_tests::recovering_applied_repair_rebinds_rolled_back_disk_bytes_without_changing_model: test
app::repair_save_state_tests::recovery_missing_entry_or_failed_reload_preserves_current_destination_save_authority: test
app::repair_save_state_tests::repair_history_compares_to_new_disk_baseline_and_then_successful_save: test
app::repair_save_state_tests::repair_to_previous_saved_bytes_requires_save_at_new_destination_and_guards_close: test
app::repair_save_state_tests::valid_equal_content_at_distinct_destinations_stays_clean: test
app::review_navigation_tests::rejected_semantic_source_writeback_retains_review_camera_and_original_navigation: test
app::review_navigation_tests::review_already_showing_the_target_keeps_its_camera_and_query: test
app::review_navigation_tests::semantic_name_take_selects_the_counterpart_view_in_both_directions_with_one_exact_history_entry: test
app::review_navigation_tests::semantic_review_without_a_destination_view_clears_the_old_layer_canvas_without_creating_a_view: test
app::save_as_tests::save_as_late_receipt_preserves_newer_raw_source_draft_and_destination: test
app::save_as_tests::save_as_preflight_rejects_historical_collision_before_starting_io: test
app::save_as_tests::save_as_receipt_then_one_undo_restores_meaning_and_saving_preserves_redo: test
app::source_project_tests::closed_detached_file_keeps_first_save_conflict_then_can_be_reloaded_fresh: test
app::source_project_tests::inactive_invalid_draft_blocks_graphical_changes_and_diagnostic_switches_files: test
app::source_project_tests::json_export_and_rejected_save_as_preserve_source_location_history_and_bytes: test
app::source_project_tests::missing_include_open_keeps_old_model_and_can_be_repaired_and_saved: test
app::source_project_tests::recovery_after_first_save_failure_retains_target_then_retries_without_reentering_path: test
app::source_project_tests::recovery_of_previous_save_as_target_does_not_redirect_current_project: test
app::source_project_tests::recovery_open_finds_first_save_journal_without_an_entry_file: test
app::source_project_tests::recovery_target_survives_edit_lint_apply_and_rejected_recovery_until_success: test
app::source_project_tests::source3_native_open_preserves_report_comments_nesting_and_save_reopen: test
app::source_project_tests::two_file_apply_graphical_edit_exact_undo_save_as_and_reopen: test
app::source_rename::alias_input::tests::effective_escape_reset_follows_child_after_early_returns: test
app::source_rename::alias_input::tests::held_paste_cache_contains_only_previously_admitted_text: test
app::source_rename::alias_input::tests::paste_refusal_matches_child_focus_enabled_and_stored_modifier_protocol: test
app::source_rename::editor_patch::tests::all_preflight_refusals_leave_text_cursor_and_selection_unchanged: test
app::source_rename::editor_patch::tests::already_laid_out_editor_notifies_highlighter_from_zero_after_later_line_patch: test
app::source_rename::editor_patch::tests::exact_text_matrix_and_reverse_preserve_endings: test
app::source_rename::editor_patch::tests::unchanged_content_preserves_selection_and_next_direct_edit_works: test
app::source_rename::tests::actual_alias_clipboard_rejects_controls_without_normalizing_or_moving_selection: test
app::source_rename::tests::actual_captured_escape_closes_only_its_priority_owner_and_retains_worker: test
app::source_rename::tests::actual_dialog_enter_requests_preview_even_when_confirm_is_available: test
app::source_rename::tests::actual_dialog_real_paragraph_geometry_keeps_input_preview_and_footer_reachable: test
app::source_rename::tests::alias_editor_sync_fallback_restores_accepted_display_and_preserves_model_history: test
app::source_rename::tests::close_and_reset_retain_worker_slot_until_exact_completion_without_reopening: test
app::source_rename::tests::complete_alias_change_preserves_literals_and_last_comment_separated_origin_and_undo: test
app::source_rename::tests::full_details_selection_survives_readonly_and_passive_messages_and_tracks_input: test
app::source_rename::tests::genuine_save_receipts_preserve_same_destination_preview_but_invalidate_save_as: test
app::source_rename::tests::invalid_open_retains_accepted_document_but_refuses_alias_rename: test
app::source_rename::tests::last_same_line_use_beyond_reference_row_limit_and_selection_boundaries: test
app::source_rename::tests::mounted_editor_f2_requires_focus_and_no_modifiers: test
app::source_rename::tests::paging_all_utf8_fragments_preserves_exact_preview_and_approval: test
app::source_rename::tests::preview_glyph_tests::actual_preview_source_glyphs_clear_scrollbar_and_all_long_fragments_are_reachable: test
app::source_rename::tests::preview_scroll_tests::delayed_page_and_approval_operations_cannot_reset_a_new_destination: test
app::source_rename::tests::preview_scroll_tests::explicit_navigation_resets_retained_scroll_but_id_change_alone_does_not: test
app::source_rename::tests::preview_scroll_tests::repeated_page_visits_filters_and_fast_preview_completion_have_distinct_destinations: test
app::source_rename::tests::property_draft_and_detached_buffer_refuse_without_hidden_apply: test
app::source_rename::tests::replacement_generation_aba_and_modal_shortcuts_cannot_commit_stale_preview: test
app::source_rename::tests::same_alias_invalid_and_cancel_keep_existing_redo_and_source_selection: test
app::source_rename::tests::source_edit_undo_and_recovery_invalidation_do_not_revive_approval: test
app::source_rename::tests::stale_dialog_envelopes_do_not_cancel_new_same_path_form_or_its_approval: test
app::source_rename::timing_tests::accepted_release1_prepare_commit_sync_and_confirm_timing: test
app::source_rename::timing_tests::layout_timing_tests::accepted_release1_constructor_vs_reuse_through_next_highlight: test
app::source_symbols::tests::back_after_origin_edit_uses_its_current_cursor_instead_of_the_old_range: test
app::source_symbols::tests::back_keeps_the_latest_64_actual_locations_without_reusing_dropped_history: test
app::source_symbols::tests::back_restores_exact_reversed_utf8_selection_and_crlf_source: test
app::source_symbols::tests::captured_find_and_modal_escape_use_one_actual_subscription_and_preserve_pending_work: test
app::source_symbols::tests::captured_subscription_does_not_duplicate_existing_behavior_or_architecture_routes: test
app::source_symbols::tests::close_during_busy_retains_hidden_completion_without_reopening_or_navigation: test
app::source_symbols::tests::closed_results_stay_closed_on_exact_back_and_reopen_only_for_a_return_notice: test
app::source_symbols::tests::completion_retains_current_display_but_rejects_navigation_after_context_changes: test
app::source_symbols::tests::delayed_definition_after_hide_or_tab_change_retains_data_without_reopening_or_focus: test
app::source_symbols::tests::detached_duplicate_requires_an_explicit_choice_even_when_included_source_is_validated: test
app::source_symbols::tests::escape_dismisses_modal_before_underlying_source_results: test
app::source_symbols::tests::escape_hides_results_and_cancels_navigation_but_retains_latest_display: test
app::source_symbols::tests::find_close_releases_removed_input_and_guarded_focus_respects_later_input: test
app::source_symbols::tests::find_only_captured_escape_closes_once_and_preserves_raw_query_and_selection: test
app::source_symbols::tests::hidden_completion_checks_exact_bytes_even_when_snapshot_key_was_not_advanced: test
app::source_symbols::tests::invalid_unapplied_drafts_navigate_without_apply_or_losing_either_history: test
app::source_symbols::tests::matching_old_worker_cannot_replace_a_newer_display_owner: test
app::source_symbols::tests::matching_reveal_ticket_is_required_and_raw_input_invalidates_pending_reveal: test
app::source_symbols::tests::old_find_close_cannot_cancel_a_new_file_session_or_reopened_find_intent: test
app::source_symbols::tests::old_symbol_widget_envelopes_after_file_switch_preserve_same_session_intent: test
app::source_symbols::tests::old_symbol_widget_envelopes_after_reset_preserve_new_same_path_intent: test
app::source_symbols::tests::popup_escape_has_no_duplicate_bridge_and_dismissal_preserves_underlying_find_and_drawer: test
app::source_symbols::tests::reset_retains_worker_slot_until_old_completion_then_admits_new_session_query: test
app::source_symbols::tests::retained_choices_cannot_replay_after_hide_or_references_problems_references: test
app::source_symbols::tests::same_worker_with_changed_request_envelope_cannot_publish_or_navigate: test
app::source_symbols::tests::saturated_raw_clock_never_authorizes_completion_or_reveal: test
app::source_symbols::tests::source_symbols_100_modules_1000_definitions_10000_uses: test
app::source_symbols::tests::unknown_job_cannot_release_current_worker_and_old_duplicate_cannot_replace_new_results: test
app::source_symbols::tests::valid_definition_and_reference_choice_keep_whole_model_and_source_unchanged: test
app::state_diagram_tests::all_context_dimensions_reject_stale_selection_camera_and_model_messages: test
app::state_diagram_tests::create_view_places_only_its_machine_and_restores_exact_source_in_one_undo: test
app::state_diagram_tests::direct_create_connect_select_and_move_keep_semantic_identity_and_atomic_history: test
app::state_diagram_tests::fallback_owner_first_selection_keeps_the_captured_context_for_its_first_move: test
app::state_diagram_tests::pending_drafts_block_every_direct_mutation_and_passive_camera_preserves_inputs: test
app::state_diagram_tests::real_view_tool_and_history_changes_invalidate_old_release_events: test
app::state_diagram_tests::rejected_creation_keeps_source_and_selection_then_valid_owner_can_retry: test
app::state_diagram_tests::same_size_viewport_after_revision_or_tool_epoch_does_not_refit_the_camera: test
app::state_diagram_tests::shared_semantic_states_keep_architecture_and_behavior_placements_independent: test
app::state_diagram_tests::state_diagram_routes_constructor_and_source_open_to_the_existing_workspace_without_edits: test
app::state_diagram_tests::state_diagram_routes_picker_and_reveal_but_explicit_architecture_does_not_bounce: test
app::state_diagram_tests::state_diagram_routes_preserve_selected_raw_properties_and_pending_behavior_guards: test
app::state_diagram_tests::state_navigation_catalog_selection_across_layers_resets_camera_and_tool: test
app::state_diagram_tests::state_navigation_catalog_selection_of_another_machine_resets_camera_and_tool: test
app::state_diagram_tests::state_navigation_layer_change_resets_the_new_machine_at_the_same_viewport_size: test
app::state_diagram_tests::state_navigation_return_to_the_same_view_preserves_camera_tool_and_fit_mode: test
app::state_diagram_tests::state_navigation_root_event_and_same_layer_keep_the_current_camera_and_tool: test
app::text_workspace::lifecycle_tests::canceled_or_failed_open_that_installs_nothing_retains_current_presentation_and_diagnostics: test
app::text_workspace::lifecycle_tests::invalid_repair_open_clears_prior_presentation_and_publishes_current_problems_preserving_worker: test
app::text_workspace::lifecycle_tests::saved_new_destination_does_not_revalidate_already_stale_warning_locations: test
app::text_workspace::lifecycle_tests::saved_new_destination_republishes_current_warning_and_refuses_old_primary_and_related: test
app::text_workspace::tests::current_diagnostic_target_navigates_but_changed_source_or_clear_refuses_it: test
app::text_workspace::tests::diagnostic_span_must_be_loaded_ordered_and_utf8_exact: test
app::text_workspace::tests::disabled_entry_cannot_become_a_new_action_under_the_same_menu_token: test
app::text_workspace::tests::document_reset_preserves_popup_token_sequence_and_drops_old_menu_authority: test
app::text_workspace::tests::enabled_entry_is_readmitted_at_dispatch_and_blocked_by_busy: test
app::text_workspace::tests::equal_diagnostic_republication_invalidates_primary_and_related_targets: test
app::text_workspace::tests::menu_own_open_invalidation_does_not_stale_find_and_invoke_is_once: test
app::text_workspace::tests::menu_source_caret_document_path_and_interaction_changes_refuse_stale_find: test
app::text_workspace::tests::old_dismiss_and_invoke_do_not_consume_a_newer_menu: test
app::text_workspace::tests::only_valid_explicit_group_and_resize_intent_cancel_pending_navigation: test
app::text_workspace::tests::queued_toolbar_request_cannot_retarget_after_source_change: test
app::text_workspace::tests::reference_groups_and_scroll_survive_tabs_and_reject_old_visits_and_queries: test
app::text_workspace::tests::reset_removes_ui_and_publication_authority_and_resize_rejects_nan: test
app::text_workspace::tests::retained_primary_and_related_targets_cannot_replay_after_hide_or_problems_references_problems: test
app::text_workspace::tests::source_and_property_drafts_keep_find_and_text_undo_without_model_application: test
app::text_workspace::tests::stale_retained_group_can_expand_without_navigating_or_applying_drafts: test
app::transition_context_tests::explicit_behavior_internal_and_process_roots_keep_their_workspace_without_creating_a_view: test
app::transition_context_tests::explicit_destination_is_honored_and_ordinary_work_transition_still_places_in_architecture: test
app::transition_context_tests::machine_and_typed_action_transitions_resolve_the_owner_and_reusing_that_context_retains_camera: test
app::transition_context_tests::rejected_source_writeback_keeps_review_and_navigation_and_invalid_draft_still_blocks_start: test
app::transition_context_tests::scenario_transition_focuses_requested_counterpart_and_preserves_unrelated_views_in_both_directions: test
app::view_copy_tests::copying_architecture_keeps_architecture_even_with_a_retained_state_view: test
app::view_copy_tests::copying_the_current_state_view_uses_its_own_identity_and_is_one_source_undo: test
app::view_copy_tests::duplicate_rejection_preserves_an_incomplete_source_buffer: test
app::view_copy_tests::duplicate_rejection_preserves_invalid_property_and_pending_behavior_drafts: test
app::view_copy_tests::stale_copy_does_not_apply_an_unrelated_valid_property_draft: test
behavior::contextual_source_tests::contextual_source_app_checkpoint_restores_inner_raw_draft_without_model_adoption: test
behavior::contextual_source_tests::contextual_source_app_empty_actions_and_child_open_refuse_other_raw_editors: test
behavior::contextual_source_tests::contextual_source_app_modal_escape_then_child_back_then_parent_cancel_preserve_accepted_source: test
behavior::contextual_source_tests::contextual_source_back_remains_available_after_owner_deletion_and_with_dirty_editors: test
behavior::contextual_source_tests::contextual_source_back_retains_parent_and_rejects_late_child_event: test
behavior::contextual_source_tests::contextual_source_default_consumer_name_has_stable_alias_and_correlated_selection: test
behavior::contextual_source_tests::contextual_source_deleted_owner_view_retains_draft_instead_of_panicking_or_using_fallback: test
behavior::contextual_source_tests::contextual_source_empty_history_reports_no_change_and_success_requires_a_real_history_step: test
behavior::contextual_source_tests::contextual_source_existing_choice_prunes_staged_dependency: test
behavior::contextual_source_tests::contextual_source_failed_source_budget_preserves_both_drafts_and_accepted_bytes: test
behavior::contextual_source_tests::contextual_source_incomplete_recovered_kind_reports_error_without_panicking: test
behavior::contextual_source_tests::contextual_source_inserts_work_on_the_exact_guarded_link_and_refuses_exchange_identity_conflict: test
behavior::contextual_source_tests::contextual_source_lifelines_stage_exact_separate_records_and_one_history_entry: test
behavior::contextual_source_tests::contextual_source_machine_before_any_owner_creates_optional_view_atomically: test
behavior::contextual_source_tests::contextual_source_mounted_small_editor_keeps_back_and_use_outside_field_scroll: test
behavior::contextual_source_tests::contextual_source_nested_semantic_parent_is_explicit_and_revalidated: test
behavior::contextual_source_tests::contextual_source_new_callee_lifeline_preserves_caller_bindings_as_an_explicit_warning: test
behavior::contextual_source_tests::contextual_source_old_empty_action_cannot_open_a_previous_owner_or_layer: test
behavior::contextual_source_tests::contextual_source_original_document_remains_bound_after_back_or_choosing_existing: test
behavior::contextual_source_tests::contextual_source_owner_first_can_return_to_an_unnamed_machine_without_losing_source: test
behavior::contextual_source_tests::contextual_source_recovery_keeps_inner_raw_fields_and_refuses_deleted_or_changed_owner: test
behavior::contextual_source_tests::contextual_source_second_system_and_role_machine_owner_refuse_without_fallback: test
behavior::contextual_source_tests::contextual_source_work_uses_reserved_contribution_and_link_ids_and_one_undo: test
behavior::creation::app_tests::app_choosing_another_behavior_or_layer_cannot_commit_a_creation_draft: test
behavior::creation::app_tests::app_creation_opens_the_actual_new_owner_instead_of_first_or_previously_active_behavior: test
behavior::creation::app_tests::app_first_captured_escape_dismisses_file_or_pending_overlay_before_creation: test
behavior::creation::app_tests::app_lesson_request_cancel_retains_creation_then_escape_discards_only_the_draft: test
behavior::creation::app_tests::app_machine_behavior_submit_opens_its_opted_in_view_as_one_undoable_transaction: test
behavior::creation::app_tests::app_new_never_auto_applies_valid_or_invalid_property_and_source_drafts: test
behavior::creation::app_tests::app_recovered_rootless_sa_creation_retains_layer_ids_and_other_raw_drafts: test
behavior::creation::app_tests::app_stale_layer_open_never_starts_or_replaces_a_draft: test
behavior::creation::tests::all_four_viewpoints_are_explicit_and_survive_source_history_reopen: test
behavior::creation::tests::cancel_and_illegal_family_layer_switches_never_create_model_objects: test
behavior::creation::tests::corrupted_recovery_and_reserved_identity_collision_refuse_without_repairing_raw_values: test
behavior::creation::tests::creation_selection_rejects_changed_scenario_body_and_post_creation_operations: test
behavior::creation::tests::machine_requires_valid_owner_and_first_view_adds_no_region_or_state: test
behavior::creation::tests::mounted_creation_keeps_actions_visible_and_renders_only_six_owner_candidates: test
behavior::creation::tests::oa_process_and_sa_chain_keep_exact_names_root_ownership_and_one_history_entry: test
behavior::creation::tests::optional_context_collapses_without_losing_authored_reference_or_raw_search: test
behavior::creation::tests::owner_search_is_name_ordered_filtered_and_page_sized_not_a_catalog: test
behavior::creation::tests::post_commit_selection_is_correlated_with_exact_created_behavior_and_view: test
behavior::creation::tests::recovery_preserves_exact_raw_inputs_reserved_ids_and_revalidates_stale_owner: test
behavior::creation::tests::rejected_source_transaction_keeps_draft_and_every_accepted_source_byte: test
behavior::creation::tests::repeated_owner_names_remain_distinguishable_by_searchable_parent_context_and_alias: test
behavior::direct_canvas_tests::direct_alt_execution_stops_each_operand_at_its_reply_and_marks_open_operand: test
behavior::direct_canvas_tests::direct_bounds_change_during_held_drag_never_commits_old_slot: test
behavior::direct_canvas_tests::direct_clicked_occurrence_capture_cancels_on_view_and_context_changes: test
behavior::direct_canvas_tests::direct_context_escape_unfocus_and_pending_form_cancel_gestures: test
behavior::direct_canvas_tests::direct_drag_and_click_click_use_ordered_sources_and_publish_once: test
behavior::direct_canvas_tests::direct_execution_span_ends_at_its_correlated_reply_and_marks_an_open_call: test
behavior::direct_canvas_tests::direct_scroll_resize_and_bounds_changes_cancel_captured_slots: test
behavior::direct_canvas_tests::direct_scrolled_canvas_maps_raw_pointer_events_to_the_visible_slot: test
behavior::direct_canvas_tests::direct_selected_handle_reorders_and_hits_keep_semantic_identity: test
behavior::direct_canvas_tests::reused_exchange_messages_display_their_distinct_occurrence_names: test
behavior::scenario::data_contract_tests::large_payload_has_one_editor_with_reachable_field_and_authored_pages: test
behavior::scenario::data_contract_tests::recursive_browsing_up_and_root_keep_values_and_report_the_depth_limit: test
behavior::scenario::data_contract_tests::recursive_value_focus_exposes_authored_leaf_and_phase_changes_retain_surviving_keys: test
behavior::scenario::data_contract_tests::reply_call_picker_previews_the_same_value_reset_as_selecting_another_exchange: test
behavior::scenario::data_contract_tests::scenario_form_commits_two_reused_record_values_and_correlated_reply_atomically: test
behavior::scenario::direct_tests::direct_busy_save_keeps_observed_scroll_current_for_the_next_pointer_gesture: test
behavior::scenario::direct_tests::direct_clicked_occurrence_rejects_stale_slots_and_retains_recoverable_drafts: test
behavior::scenario::direct_tests::direct_clicked_occurrences_use_root_and_operand_slots_with_exact_source_history: test
behavior::scenario::direct_tests::direct_exchange_compatibility_browsing_preserves_final_slot_validation: test
behavior::scenario::direct_tests::direct_exchange_picker_is_bounded_and_browsing_keeps_pending_values: test
behavior::scenario::direct_tests::direct_five_hundred_exchange_choice_render_probe: test
behavior::scenario::direct_tests::direct_form_keeps_the_same_canvas_in_the_widget_tree: test
behavior::scenario::direct_tests::direct_middle_pair_insertion_is_one_exact_source_and_model_undo: test
behavior::scenario::direct_tests::direct_operand_pair_keeps_parent_sequence_and_cannot_reorder_across_operands: test
behavior::scenario::direct_tests::direct_reply_choices_cache_keeps_typing_fast_and_revalidates_changed_contexts: test
behavior::scenario::direct_tests::direct_reply_choices_validate_the_actual_slot_and_reorder_rejects_reverse_order: test
behavior::scenario::direct_tests::direct_scenario_reference_navigation_blocks_pending_drafts_and_stale_contexts: test
behavior::scenario::direct_tests::direct_scenario_reference_navigation_retains_each_exact_caller_without_history: test
behavior::scenario::direct_tests::direct_scenario_reference_return_survives_rename_and_rejects_deleted_or_changed_use: test
behavior::scenario::operation_tests::operation_gui_async_picker_uses_request_root_and_nested_directions_without_erasing_rejected_values: test
behavior::scenario::operation_tests::operation_gui_selects_two_parameterless_allocations_without_inventing_refinement_and_reply_derives_call: test
behavior::scenario::operation_tests::operation_gui_unresolved_and_disabled_selection_recovery_preserves_rejected_raw_values: test
behavior::scenario::tests::fragment_operands_accept_paired_messages_through_normal_destination_picker: test
behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent: test
behavior::scenario::tests::invalid_lifecycle_edit_keeps_draft_and_timer_has_no_global_exchange: test
behavior::scenario::tests::lifeline_picker_uses_core_viewpoint_contract: test
behavior::scenario::tests::reverse_communication_canvas_choices_and_correlated_reply_share_core_direction: test
behavior::scenario::tests::scenario_reuse_requires_explicit_compatible_bindings: test
behavior::scenario::tests::tagged_scenario_commit_is_not_redirected_by_other_editor_events: test
behavior::scenario::workspace::tests::scenario_workspace_allocates_remaining_height_and_pins_actions_at_minimum_and_wide_sizes: test
behavior::scenario::workspace::tests::scenario_workspace_caller_restores_actual_mounted_canvas_and_shelf_with_camera: test
behavior::scenario::workspace::tests::scenario_workspace_canvas_and_form_scroll_survive_disclosures_focus_width_and_resize: test
behavior::scenario::workspace::tests::scenario_workspace_choosing_tools_preserves_valid_and_invalid_pending_editors: test
behavior::scenario::workspace::tests::scenario_workspace_fit_reobserves_same_sized_owner_and_document_changes: test
behavior::scenario::workspace::tests::scenario_workspace_fit_uses_measured_inner_viewport_and_rejects_nonfinite_inputs: test
behavior::scenario::workspace::tests::scenario_workspace_open_and_back_restore_owner_and_mounted_scroll_after_preselection: test
behavior::scenario::workspace::tests::scenario_workspace_scaled_and_scrolled_scene_keeps_clicked_slots_and_message_endpoints: test
behavior::scenario::workspace::tests::scenario_workspace_scaled_nested_occurrences_and_reorder_keep_exact_sequence_identity: test
behavior::scenario::workspace::tests::scenario_workspace_viewport_events_are_passive_guarded_and_do_not_apply_raw_forms: test
behavior::scenario::workspace::tests::scenario_workspace_whole_app_canvas_tree_survives_pending_shelves_and_focus: test
behavior::scenario_scroll::tests::direct_scenario_caller_restores_mounted_scroll_once_with_clamping_and_app_receipt: test
behavior::scenario_scroll::tests::direct_scenario_restore_cannot_scroll_another_document_owner_or_process_view: test
behavior::scenario_scroll::tests::direct_scroll_mounted_identity_resets_navigation_but_preserves_edits_before_first_report: test
behavior::scenario_scroll::tests::direct_scroll_observer_reports_actual_initial_clamped_and_remounted_offsets_once: test
behavior::scenario_scroll::tests::independent_process_owner_change_resets_actual_scroll_offsets: test
behavior::source_draft::layout_tests::contextual_source_layout_initial_essentials_fit_short_composed_host_with_real_paragraphs: test
behavior::source_draft::layout_tests::contextual_source_layout_long_parent_wraps_after_visible_name_without_losing_raw_data: test
behavior::source_draft::layout_tests::contextual_source_layout_visible_kind_click_keeps_choice_explicit_and_name_input_works: test
behavior::state_canvas::tests::context_menu_keeps_window_anchor_and_explicit_placement_identity: test
behavior::state_canvas::tests::context_tool_and_pending_form_changes_cancel_mutating_gestures: test
behavior::state_canvas::tests::creation_uses_the_explicit_deepest_owner_and_never_a_fallback_ancestor: test
behavior::state_canvas::tests::drag_uses_ordered_release_at_each_zoom_and_moves_descendants_in_one_undo: test
behavior::state_canvas::tests::escape_and_view_switch_discard_the_armed_transition_source: test
behavior::state_canvas::tests::internal_rows_and_pseudostate_hits_use_shared_persisted_geometry: test
behavior::state_canvas::tests::ordered_stationary_click_does_not_move_on_later_motion_in_the_same_batch: test
behavior::state_canvas::tests::pan_is_button_scoped_read_only_and_hover_does_not_reproject_the_scene: test
behavior::state_canvas::tests::pseudostate_names_avoid_rightward_and_downward_routes_and_share_hit_bounds: test
behavior::state_canvas::tests::relayout_does_not_turn_a_transition_click_into_a_drag_or_pan: test
behavior::state_canvas::tests::selected_endpoint_reconnect_preserves_identity_and_requires_handle_motion: test
behavior::state_canvas::tests::selection_relayout_does_not_move_nodes_or_change_drag_distance: test
behavior::state_canvas::tests::stacked_symbol_names_avoid_each_other_and_are_independent_of_input_order: test
behavior::state_canvas::tests::transition_supports_click_click_and_drag_without_coalesced_accidental_edges: test
behavior::state_canvas::tests::typed_state_actions_are_named_selectable_rows_before_internal_transitions_and_regions: test
behavior::state_canvas::tests::viewport_uses_full_canvas_coordinates_and_republishes_for_a_new_context: test
behavior::state_edit::tests::an_empty_machine_has_an_explicit_visible_owner_for_first_region_creation: test
behavior::state_edit::tests::connect_preserves_self_loops_and_rejects_hidden_or_incompatible_vertices: test
behavior::state_edit::tests::creation_places_missing_ancestry_and_unfolds_existing_owners_atomically: test
behavior::state_edit::tests::every_context_component_and_invalid_ownership_are_checked_before_planning: test
behavior::state_edit::tests::placing_existing_content_and_moving_a_folded_group_preserve_other_views_and_semantics: test
behavior::state_edit::tests::reconnect_preserves_the_complete_record_and_replaces_cardinality_in_place: test
behavior::state_edit::tests::view_initializes_only_its_machine_in_one_source_and_model_history_entry: test
behavior::states::tests::internal_choice_targets_self_and_edit_preserves_identity_and_description: test
behavior::states::tests::invalid_pseudo_trigger_keeps_draft_and_does_not_create_orphan_event: test
behavior::states::tests::selected_composite_owns_new_region_and_history_uses_selected_region: test
behavior::states::tests::timeout_and_work_trigger_commit_together_roundtrip_and_undo: test
behavior::tests::failed_document_commit_retains_typed_transition_and_time_event_for_repair: test
behavior::tests::legacy_process_and_chain_keep_their_ordered_exchange_scene: test
behavior::tests::one_behavior_form_survives_start_edit_and_unrelated_cancel_until_commit: test
behavior::tests::recovery_preserves_distinct_qualified_value_paths_and_rejects_invalid_payload_atomically: test
behavior::tests::recovery_retains_each_incomplete_behavior_form_without_executing_it: test
behavior::tests::selecting_state_transition_keeps_its_behavior_context: test
behavior::topology::contextual::tests::qualified_link_gui_deleted_transient_selection_does_not_seed_or_hide_retained_authored_endpoint: test
behavior::topology::contextual::tests::qualified_link_gui_nested_preview_folds_only_the_exact_reference_instance: test
behavior::topology::contextual::tests::qualified_link_gui_rejected_endpoint_keeps_exact_raw_intent_after_recovery: test
behavior::topology::contextual::tests::qualified_link_gui_repeated_sources_remain_distinct_and_apply_has_exact_source_history: test
behavior::topology::contextual::tests::qualified_link_gui_scope_paging_and_search_reach_tail_beyond_512_without_losing_endpoints: test
behavior::topology::contextual_routing::tests::contextual_route_native_x_to_first_b_keeps_visible_arrow_above_background_and_clear_of_other_references: test
behavior::topology::contextual_routing::tests::contextual_route_nested_visible_hidden_and_parallel_paths_keep_exact_addresses_and_legacy_routes: test
behavior::topology::contextual_routing::tests::contextual_route_shared_anchor_preserves_selected_direct_reconnect_at_fit_and_full_scale: test
behavior::topology::direct_tests::direct_process_append_preserves_existing_order_and_rejects_incompatible_exchange: test
behavior::topology::direct_tests::direct_process_controls_allow_incomplete_work_and_preserve_branch_semantics: test
behavior::topology::direct_tests::direct_process_empty_first_and_second_exchange_keep_the_same_interactive_renderer: test
behavior::topology::direct_tests::direct_process_imported_order_is_projected_without_mutation_and_first_canvas_edit_is_atomic: test
behavior::topology::direct_tests::direct_process_incompatible_imported_order_rejects_conversion_without_losing_draft: test
behavior::topology::direct_tests::direct_process_nested_source_reopen_and_api_command_use_one_transaction: test
behavior::topology::direct_tests::direct_process_oa_sa_repeated_occurrences_share_sources_and_split_one_guarded_link: test
behavior::topology::direct_tests::direct_process_palette_preserves_fit_and_manual_camera: test
behavior::topology::direct_tests::direct_process_pending_form_diff_retains_the_canvas_scroll_state: test
behavior::topology::direct_tests::direct_process_production_click_click_drag_insert_and_scroll_coordinates: test
behavior::topology::direct_tests::direct_process_production_endpoint_and_peer_reorder_handles_publish_exact_identity: test
behavior::topology::direct_tests::direct_process_production_stale_focus_scroll_bounds_and_pending_cancel: test
behavior::topology::direct_tests::direct_process_readable_default_fit_expansion_and_bounded_choices: test
behavior::topology::direct_tests::direct_process_real_picker_stays_bounded_and_search_keeps_selection: test
behavior::topology::direct_tests::direct_process_reconnect_delete_and_reorder_preserve_other_paths_and_sources: test
behavior::topology::direct_tests::direct_process_reuse_preview_is_local_expandable_and_recursive_sources_are_rejected: test
behavior::topology::direct_tests::direct_process_scaled_control_and_link_gestures_use_visible_positions: test
behavior::topology::direct_tests::direct_process_specific_parallel_link_and_incompatible_adjacency: test
behavior::topology::direct_tests::direct_process_three_ordered_exchanges_preserve_outer_paths_on_insertion: test
behavior::topology::tests::cycle_projection_terminates_and_retains_actual_links: test
behavior::topology::tests::empty_process_can_start_through_normal_authoring_events: test
behavior::topology::tests::fitting_a_branch_keeps_all_nodes_visible_and_selection_uses_scaled_coordinates: test
behavior::topology::tests::guarded_branch_is_one_transaction_with_distinct_source_identities: test
behavior::topology::tests::insertion_picker_only_offers_work_matching_adjacent_exchanges: test
behavior::topology::tests::legacy_branch_insertion_replaces_only_the_selected_implied_link: test
behavior::topology::tests::legacy_edit_preserves_order_and_new_work_in_one_undo: test
behavior::topology::tests::long_engineering_identifiers_stay_inside_label_width: test
behavior::topology::tests::process_fit_canvas_selection_ignores_retained_ordered_page_scroll: test
behavior::topology::tests::process_fit_disclosures_and_focus_preserve_rejected_raw_draft_and_accepted_source: test
behavior::topology::tests::process_fit_uses_measured_height_and_reports_minimum_without_changing_manual_zoom: test
behavior::topology::tests::reusable_preview_preserves_identity_and_filters_recursive_sources: test
behavior::topology::tests::stale_or_invalid_submit_preserves_inputs_and_creates_nothing: test
behavior::topology::tests::unlinked_contributions_do_not_gain_fictional_edges: test
behavior::topology::view::layout_tests::direct_process_pending_editor_uses_available_height_and_keeps_actions_visible: test
behavior::topology::view::layout_tests::process_fit_layout_disclosures_and_pending_editor_keep_real_manual_canvas_scroll: test
behavior::topology::view::layout_tests::process_fit_layout_measures_remaining_canvas_with_details_forms_and_window_resize: test
behavior::topology::view::layout_tests::process_fit_whole_app_focus_and_disclosures_retain_canvas_tree_with_pending_raw_form: test
connection_edit::tests::cancel_navigation_revision_and_dirty_drafts_cannot_commit_a_stale_connection: test
connection_edit::tests::visible_endpoint_drawing_commits_ports_and_exchange_once_with_exact_history: test
connection_tool::tests::boundary_candidates_match_core_orientation_and_reject_same_owner_or_mixed_kind: test
connection_tool::tests::boundary_feasibility_keeps_interface_warnings_and_final_carried_item_checks: test
connection_tool::tests::boundary_feasibility_rejects_dangling_identity_in_a_malformed_element_map: test
connection_tool::tests::direct_connections_share_exact_source_history_and_model_parity: test
connection_tool::tests::explicit_function_ports_keep_owners_contracts_and_do_not_invent_carried_items: test
connection_tool::tests::final_command_validation_rejects_invalid_models_without_mutation: test
connection_tool::tests::function_cards_use_unique_reuse_and_atomic_generation_when_ambiguous: test
connection_tool::tests::mismatched_port_owners_layers_and_contract_kinds_are_not_candidates: test
connection_tool::tests::operational_communication_uses_participants_without_creating_ports: test
connection_tool::tests::operational_interaction_targets_only_distinct_oa_activities: test
context_menu::tests::a_new_context_token_cannot_reuse_the_previous_mouse_press_or_scroll: test
context_menu::tests::actions_area_does_not_swallow_first_independent_click_after_overlay_consumed_its_release: test
context_menu::tests::anchors_outside_the_window_and_nonfinite_input_stay_bounded: test
context_menu::tests::clicking_disabled_or_dragging_off_an_action_never_executes_it: test
context_menu::tests::coalesced_dismissal_release_does_not_swallow_the_next_independent_click: test
context_menu::tests::empty_and_disabled_only_menus_still_capture_keys_and_escape_closes: test
context_menu::tests::keyboard_skips_headers_separators_and_disabled_actions_and_invokes_once: test
context_menu::tests::outside_dismissal_consumes_press_and_release_across_controlled_close: test
context_menu::tests::reconstructed_overlay_uses_retained_layout_for_rows_and_hit_testing: test
context_menu::tests::retained_overlay_layout_keeps_measured_width_and_scrollbar_after_reconstruction: test
context_menu::tests::tall_menu_clamps_to_viewport_and_keyboard_wheel_and_scrollbar_reach_the_end: test
data_values::tests::phase_choices_keep_reused_record_addresses_distinct: test
data_values::tests::recursive_picker_starts_with_distinct_leaf_names_and_sorts_them: test
data_values::tests::recursive_records_can_be_drilled_into_and_valid_imported_paths_resolve: test
data_values::tests::reference_parameter_stops_descent_and_unspecified_direction_remains_visible: test
data_values::tests::roots_and_one_hop_children_do_not_expand_unrelated_payload_branches: test
data_view::tests::allocation_rows_edit_relationship_identity_and_remove_only_that_allocation: test
data_view::tests::association_creation_is_a_separate_relation_with_editable_end_contracts: test
data_view::tests::browsing_pages_preserves_invalid_numeric_draft_and_inherited_allocation_identity: test
data_view::tests::contextual_data_actions_use_typed_defaults_and_one_undo: test
data_view::tests::large_inherited_dictionary_has_bounded_widgets_and_every_original_field_is_reachable: test
diagnostic_input::tests::already_captured_terminal_cancels_child_without_activation_or_lingering_press: test
diagnostic_input::tests::captured_terminal_cancellation_preserves_same_publication_focusable_child_state: test
diagnostic_input::tests::current_primary_and_related_mouse_clicks_survive_same_publication_diff: test
diagnostic_input::tests::current_touch_activates_primary_and_related_and_cancel_does_not_activate: test
diagnostic_input::tests::fresh_mouse_press_after_missing_stale_release_can_activate_current_row: test
diagnostic_input::tests::hidden_zero_height_scroller_delivers_cancelled_mouse_and_touch_terminals_to_guard: test
diagnostic_input::tests::hidden_zero_size_list_consumes_release_outside_old_bounds_once: test
diagnostic_input::tests::missed_press_is_ignored_and_dragging_release_outside_does_not_activate: test
diagnostic_input::tests::negative_control_iced_button_retargets_a_press_after_plain_tree_diff: test
diagnostic_input::tests::negative_control_plain_focusable_row_migrates_activation_to_replacement: test
diagnostic_input::tests::negative_control_removing_unguarded_rows_exposes_background_release: test
diagnostic_input::tests::outer_scroll_offset_survives_same_and_changed_publications: test
diagnostic_input::tests::replaced_primary_and_related_rows_consume_stale_release_then_accept_new_click: test
diagnostic_input::tests::replaced_touch_consumes_lift_or_cancel_even_when_hidden: test
diagnostic_input::tests::same_publication_missing_terminal_recovers_on_fresh_mouse_or_touch_down: test
diagnostic_input::tests::same_publication_new_visit_cancels_armed_rows_without_a_hidden_tree_frame: test
diagnostic_input::tests::same_publication_preserves_focus_but_replacement_never_inherits_activation: test
diagnostic_input::tests::stale_release_does_not_bubble_to_real_background_controls: test
diagnostic_input::tests::stale_touch_release_does_not_disarm_a_new_current_gesture: test
diagnostic_input::tests::unrelated_finger_or_mouse_release_cannot_complete_another_fingers_press: test
diagram::lifecycle_tests::menu_reset_and_draw_use_fresh_open_context: test
diagram::lifecycle_tests::middle_and_arrow_panning_preserve_source_and_history: test
diagram::lifecycle_tests::motion_after_release_must_not_move_clicked_port: test
diagram::lifecycle_tests::motion_after_source_click_release_must_not_create_connection: test
diagram::pointer_tests::coalesced_fe_ports_commit_once_through_app_and_source_history: test
diagram::pointer_tests::coalesced_port_drag_commits_once_through_app_and_source_history: test
diagram::pointer_tests::drag_from_already_selected_stationary_port_keeps_source_between_batches: test
diagram::pointer_tests::menu_captured_motion_must_not_turn_following_click_into_old_port_drag: test
diagram::pointer_tests::modal_and_stale_epoch_block_queued_connection_and_port_commits: test
diagram::port_hit_tests::coincident_ports_keep_selection_then_use_stable_identity: test
diagram::port_hit_tests::nearest_port_center_wins_on_all_borders_and_zoom_levels: test
diagram::port_hit_tests::nested_owner_palette_selection_drag_and_context_menu_pick_the_same_port: test
diagram::port_labels::tests::leaving_and_reentering_keeps_suppression_until_each_held_button_releases: test
diagram::port_labels::tests::menu_epoch_clears_suppression_when_the_overlay_consumes_release: test
diagram::port_labels::tests::outside_presses_do_not_suppress_and_cancel_or_focus_loss_clear_held_buttons: test
diagram::port_labels::tests::passive_layer_leaves_port_drag_selection_and_commit_with_the_interactive_canvas: test
diagram::tests::association_end_contracts_share_svg_geometry_and_select_without_moving_name_label: test
diagram::tests::bend_gestures_use_screen_hit_radius_and_commit_one_undo_at_three_zooms: test
diagram::tests::coincident_line_hit_retains_the_selected_connection: test
diagram::tests::connection_gestures_pick_real_ports_and_commit_coalesced_drag_at_every_zoom: test
diagram::tests::detached_label_selects_connection_and_occluding_card_owns_its_hit: test
diagram::tests::dragging_a_child_previews_the_same_enclosure_and_ports_as_commit: test
diagram::tests::fast_drags_commit_the_release_cursor_without_a_final_motion_event: test
diagram::tests::implicit_port_click_selects_semantics_and_drag_preview_svg_share_anchors: test
diagram::tests::route_cache_ignores_pan_zoom_and_cancelled_drag_cannot_commit: test
diagram::tests::routed_svg_has_same_polyline_label_and_bounds_as_canvas_scene: test
diagram::tests::svg_distinguishes_inferred_work_allocation_from_direct_allocation: test
diagram::tests::svg_preserves_visible_exchange_labels_and_capability_stereotypes: test
diagram::tests::typed_function_glyphs_and_unoriented_standard_connections_have_distinct_svg: test
diagram::view_options_tests::communication_svg_uses_saved_visibility_labels_and_direction: test
document::alias_rename::tests::each_identity_family_changes_only_authored_alias_roles_and_one_history_entry: test
document::alias_rename::tests::equal_bytes_undo_replay_cross_document_and_exhausted_revision_refuse: test
document::alias_rename::tests::exact_history_capacity_admits_immediate_undo_and_rejects_larger_candidate: test
document::alias_rename::tests::highlighted_keyword_alias_is_valid_without_normalizing_input: test
document::alias_rename::tests::invalid_and_identical_aliases_preserve_live_state_and_redo: test
document::alias_rename::tests::mint_and_commit_refuse_exhausted_or_inconsistent_live_history_estimate: test
document::alias_rename::tests::mutable_public_preview_copies_cannot_change_prepared_authority: test
document::alias_rename::tests::preview_retains_latest_saved_baseline_and_recovery_state: test
document::save_as_tests::save_as_preserves_explicit_source_entry_changes_in_history: test
document::save_as_tests::save_as_rebases_uniform_history_without_an_undo_step_or_lost_redo: test
document::save_as_tests::save_as_rejects_included_filename_collisions_in_past_and_future_without_mutation: test
document::save_as_tests::save_as_rejects_stale_or_content_changing_receipt_atomically: test
document::tests::accepted_history_keeps_the_latest_hundred_complete_snapshots: test
document::tests::altered_compiled_model_or_index_is_rejected_without_mutation: test
document::tests::asynchronous_save_marks_its_snapshot_without_cleaning_later_edits: test
document::tests::byte_budget_trims_oldest_history_without_discarding_a_large_current: test
document::tests::cached_view_index_tracks_accepted_creation_undo_and_redo: test
document::tests::comment_and_semantic_history_restore_exact_bytes_and_branch_together: test
document::tests::creation_selects_the_single_uuid_persisted_in_source: test
document::tests::invalid_project_is_rejected_before_format_can_normalize_it: test
document::tests::nested_cross_file_reparent_and_source_edit_share_exact_history: test
document::tests::no_op_command_or_source_apply_preserves_history_revision_and_redo: test
document::tests::omitted_id_stabilization_remains_dirty_until_exact_source_is_saved: test
document::tests::recreated_equal_record_does_not_inherit_deleted_source_ownership: test
document::tests::rejected_compile_command_and_writeback_preserve_state_and_redo: test
explorer::tests::collapse_and_search_retain_context_without_changing_collapse_state: test
explorer::tests::deep_containment_and_search_keep_the_full_path_without_recursion: test
explorer::tests::equal_names_have_stable_alias_and_identity_tie_breakers: test
explorer::tests::perspective_isolation_and_allocations_do_not_change_containment: test
explorer::tests::prefix_names_cannot_separate_a_parent_from_its_children: test
forms::data_fields::tests::defaults_distinguish_absent_empty_and_typed_literals_with_escaped_unicode: test
forms::data_fields::tests::field_browser_pages_every_direct_field_without_flattening_other_records: test
forms::data_fields::tests::independent_review_combined_take_type_informs_actual_default_form_in_both_directions: test
forms::data_fields::tests::numeric_bound_drafts_keep_partial_and_full_precision_values_out_of_accepted_state: test
forms::data_fields::tests::selecting_qualified_path_preserves_expression_typed_before_the_next_render: test
forms::data_fields::tests::semantic_reference_choices_follow_selected_mechanism_and_revert_on_keep: test
forms::data_fields::tests::supertype_picker_excludes_descendants_and_keeps_original_inherited_field_identity: test
forms::history_fields::tests::history_absent_baseline_and_empty_history_use_explicit_facts_and_exact_document_history: test
forms::history_fields::tests::history_clear_discards_inactive_invalid_constructors_before_reusing_the_same_row: test
forms::history_fields::tests::history_compound_value_and_constructor_variants_are_editable_without_live_context: test
forms::history_fields::tests::history_deleted_keys_and_observation_uuids_remain_exact_and_duplicate_history_rejects: test
forms::history_fields::tests::history_every_descriptor_fact_choice_matches_actual_closed_types_and_source_contract: test
forms::history_fields::tests::history_exact_strings_do_not_confuse_uuid_shaped_prose_or_literal_keys_with_references: test
forms::history_fields::tests::history_invalid_numbers_survive_constructor_switch_reorder_removal_and_recovery: test
forms::history_fields::tests::history_missing_semantic_field_can_be_added_and_removed_without_touching_prose_or_live_objects: test
forms::history_fields::tests::history_nested_optional_number_events_switch_absent_present_and_recover_invalid_raw: test
forms::history_fields::tests::history_nested_uuid_and_list_events_preserve_present_values_and_tagged_item_branches: test
forms::history_fields::tests::history_optional_uuid_and_text_seed_absence_without_inventing_observations: test
forms::history_fields::tests::history_primitive_type_choices_remain_visible_inside_the_tagged_union: test
forms::history_fields::tests::history_retained_text_constructors_follow_exact_mode_without_changing_the_observation: test
forms::port_fields::tests::all_demo_records_roundtrip_through_graphical_and_escaped_string_drafts: test
forms::port_fields::tests::boundary_choices_honor_draft_direction_same_kind_and_direct_interface_items: test
forms::port_fields::tests::contract_choices_follow_owner_and_never_offer_legacy_or_oa_typed_ports: test
forms::port_fields::tests::failed_shape_keeps_incomplete_text_and_saved_contract_payloads: test
forms::port_fields::tests::functional_endpoints_require_owner_direction_and_items_but_retain_bad_current_choice: test
forms::port_fields::tests::interface_roles_offer_participants_and_component_ports_independent_of_orientation: test
forms::port_fields::tests::port_allocation_choices_use_actual_owner_direction_and_ignore_edited_relation: test
forms::port_fields::tests::standard_switch_retains_incompatible_orientation_until_explicit_repair: test
forms::port_fields::tests::switching_function_direction_preserves_invalid_items_and_each_authored_payload: test
forms::tests::data_and_port_choices_are_typed_but_retain_invalid_current_values: test
forms::tests::editing_allocation_offers_other_performers_without_counting_itself_twice: test
forms::tests::moving_placement_and_changing_identity_is_one_lossless_undoable_edit: test
forms::tests::parent_choices_reject_cycles_without_removing_clear_or_current_choice: test
forms::tests::reply_and_reuse_forms_offer_semantically_compatible_references: test
forms::tests::scenario_choices_respect_owner_and_exchange_layer: test
forms::tests::semantic_port_group_choices_use_combined_owner_and_retain_invalid_transferred_items: test
forms::tests::shared_perspective_change_keeps_payload_and_rejects_incompatible_dependencies: test
forms::tests::state_observation_picker_keeps_work_lifelines_allocated_to_machine_owner: test
forms::tests::state_placement_form_uses_draft_destination_membership_without_changing_other_views: test
forms::tests::state_projection_form_keeps_string_variants_and_requires_a_typed_context: test
forms::view_fields::tests::category_family_change_retains_members_until_explicit_correction: test
forms::view_fields::tests::selective_view_property_apply_recovery_and_undo_preserve_semantics_and_empty_choices: test
guide::tests::filtering_and_related_navigation_keep_selection_visible: test
guide::tests::guide_topic_navigation_resets_only_article_and_same_topic_search_keeps_scroll: test
guide::tests::search_finds_concepts_in_walkthroughs_and_api_reference: test
home::tests::corrupt_future_and_oversized_history_are_preserved_with_usable_session_history: test
home::tests::failed_metadata_replace_keeps_previous_history_and_reports_memory_only_entry: test
home::tests::first_and_replaced_metadata_are_parseable_and_contain_no_model_bytes: test
home::tests::forgotten_and_missing_files_never_change_the_model_or_other_entries: test
home::tests::loading_missing_history_does_not_create_files_or_directories: test
home::tests::malformed_entries_and_unknown_fields_never_become_open_requests: test
home::tests::successful_local_history_is_bounded_ordered_deduplicated_and_durable: test
home::tests::unavailable_location_can_reappear_on_refresh_without_losing_identity: test
home::tests::walkthrough_uses_packaged_bundle_before_development_and_reports_missing_assets: test
hosted::client::tests::hosted_endpoint_validation_redacts_secrets_and_preserves_proxy_paths: test
hosted::client::tests::hosted_lost_publication_response_is_uncertain_without_retry: test
hosted::client::tests::hosted_open_rejects_incoherent_envelopes_missing_etags_and_unstable_ids: test
hosted::client::tests::hosted_oversized_local_bundle_is_rejected_before_network_admission: test
hosted::client::tests::hosted_production_auth_proxy_prefix_and_located_rejection: test
hosted::client::tests::hosted_production_roundtrip_preserves_comments_noops_and_conflicts: test
hosted::client::tests::hosted_publication_race_keeps_receipt_identity_for_review: test
hosted::client::tests::hosted_publication_retains_known_resource_after_failed_followup: test
hosted::client::tests::hosted_put_preserves_an_opaque_etag_and_compiles_the_accepted_bundle: test
hosted::client::tests::hosted_redirect_is_not_followed_or_retried_and_problem_tokens_are_redacted: test
hosted::client::tests::hosted_response_limits_cover_declared_and_chunked_bodies: test
hosted::client::tests::hosted_structured_mutation_failures_distinguish_precommit_rejections: test
hosted::client::tests::hosted_timeout_and_disconnect_leave_mutation_outcomes_explicit: test
model_menu::tests::add_bend_here_uses_context_point_and_one_source_aware_history_change: test
model_menu::tests::late_menu_actions_do_not_dismiss_new_menu_or_cross_view_context: test
model_menu::tests::menu_preserves_pending_properties_and_rejects_delayed_mutations: test
model_menu::tests::pending_source_allows_file_navigation_but_disables_model_actions: test
model_menu::tests::right_click_targets_actor_without_changing_selection_until_action: test
model_menu::tests::show_from_explorer_places_unfolds_and_keeps_semantic_selection: test
model_menu::tests::state_menu_folds_and_hides_only_its_captured_placement_and_rejects_stale_views: test
model_menu::tests::state_menu_keeps_typed_creation_reachable_and_preserves_pending_properties: test
navigation::tests::semantic_browser_finds_behavior_users_without_confusing_containment: test
port_edit::tests::all_border_drags_commit_exact_preview_and_restore_automatic_anchors_in_history: test
port_edit::tests::graphical_port_reparent_clears_old_anchors_in_the_same_history_operation: test
port_preview::tests::functional_creation_identifies_new_and_reused_endpoints_and_owners: test
port_preview::tests::legacy_split_discloses_endpoint_routing_item_origins_and_retained_evidence: test
port_preview::tests::reused_boundary_shows_item_union_and_existing_allocating_facts: test
port_preview::tests::synchronization_preview_exposes_contract_shrinkage_and_current_declaration_origin: test
port_workflow::recovery_tests::port_recovery_retains_authored_contract_and_identity_but_rebuilds_preview: test
port_workflow::tests::creating_typed_port_and_rejecting_stale_preview_preserve_drafts_and_identity: test
port_workflow::tests::graphical_function_exchange_and_component_generation_commit_and_undo_whole_contracts: test
port_workflow::tests::legacy_resolution_preserves_original_record_and_applies_as_one_undo: test
port_workflow::tests::port_creation_keeps_owner_diagram_and_unfolds_in_the_same_undo: test
port_workflow::tests::synchronization_uses_active_contract_instead_of_preserved_direction: test
recovery::source5::tests::source5_fingerprint_preserves_historical_field_order_and_diagram_shape: test
recovery::source5_tests::source4_checkpoint_remains_explicitly_unsupported_without_touching_disk: test
recovery::source5_tests::source5_checkpoint_does_not_refresh_unrelated_clean_buffer_baseline: test
recovery::source5_tests::source5_checkpoint_missing_identity_is_not_a_lossless_upgrade: test
recovery::source5_tests::source5_checkpoint_old_diagram_property_shape_remains_editable: test
recovery::source5_tests::source5_checkpoint_port_draft_replans_and_rejects_stale_base: test
recovery::source5_tests::source5_checkpoint_preserves_dirty_invalid_text_and_baseline_exactly: test
recovery::source5_tests::source5_checkpoint_preserves_distinct_unapplied_open_workspace: test
recovery::source5_tests::source5_checkpoint_property_preserves_invalid_raw_input: test
recovery::source5_tests::source5_checkpoint_upgrade_never_rewrites_checkpoint_or_origin: test
recovery::source5_tests::source5_checkpoint_upgrades_only_header_and_clean_editor_baseline: test
recovery::source5_tests::source5_checkpoint_workflow_rebinds_only_the_proven_old_revision: test
recovery::source7_tests::source7_current_combined_contextual_and_operation_drafts_survive_without_execution: test
recovery::source7_tests::source7_explicit_new_fields_cannot_enter_frozen_old_model_profiles: test
recovery::source7_tests::source7_legacy_inactive_constructor_path_is_structural_but_raw_prose_is_not: test
recovery::source7_tests::source7_legacy_profile_workflow_and_semantic_drafts_replan_with_exact_base: test
recovery::source7_tests::source7_legacy_profiles_preserve_dirty_source_property_and_behavior_raw_fields: test
recovery::source7_tests::source7_legacy_structural_intent_rejects_even_null_but_never_scans_raw_strings: test
recovery::source7_tests::source7_legacy_view_selector_refuses_new_relation_kind_without_rewriting_checkpoint: test
recovery::source7_tests::source7_recovers_nonempty_frozen_5_and_6_profiles_with_exact_historical_binding: test
recovery::tests::altered_accepted_identity_and_unrecognized_raw_property_fields_reject: test
recovery::tests::exact_source_and_unfinished_invalid_buffers_restore_without_model_overwrite: test
recovery::tests::excess_retained_buffers_cannot_replace_the_last_recoverable_checkpoint: test
recovery::tests::invalid_open_retains_distinct_accepted_model_and_repair_workspace: test
recovery::tests::missing_includes_remain_reachable_repair_targets_without_fabricated_buffers: test
recovery::tests::multiple_sessions_replace_only_their_own_checkpoint_and_corruption_is_retained: test
recovery::tests::raw_invalid_property_number_survives_and_stays_rejected_until_repaired: test
semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_draft_cannot_target_an_unreserved_or_non_artifact_identity: test
semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_raw_variants_duplicate_addresses_and_unknown_fields_are_refused: test
semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_reservations_cannot_duplicate_or_claim_an_existing_identity_or_another_owner: test
semantic_review::artifacts_recovery_falsifier_tests::legitimate_invalid_artifact_checkpoint_round_trips_and_prepares_only_after_explicit_repair: test
semantic_review::artifacts_tests::artifact_candidate_is_a_complete_record_not_a_tombstone_or_unattached_creation_shortcut: test
semantic_review::artifacts_tests::artifact_creation_and_identified_source_deletion_follow_core_metadata_and_history_boundary_both_directions: test
semantic_review::artifacts_tests::artifact_gui_reserves_recovers_and_creates_only_after_all_seven_metadata_reviews_both_directions: test
semantic_review::artifacts_tests::artifact_metadata_apply_and_exact_history_reset_are_one_source_preserving_undo_redo: test
semantic_review::artifacts_tests::artifact_move_metadata_none_empty_and_invalid_raw_recovery_are_independent_both_directions: test
semantic_review::artifacts_tests::artifact_moved_source_absence_deletes_but_destination_only_take_retains_both_directions: test
semantic_review::attachments::tests::absent_attachment_payloads_migrate_v1_and_v2_and_source5_upgrade_requires_exact_legacy_base: test
semantic_review::attachments::tests::addressed_attachment_candidates_equal_direct_core_oracle_both_directions: test
semantic_review::attachments::tests::attachment_apply_is_one_exact_source_and_history_undo_redo: test
semantic_review::attachments::tests::attachment_candidate_and_direct_record_keep_conflict_on_actual_slot_without_losing_drafts: test
semantic_review::attachments::tests::attachment_pair_drafts_survive_family_switch_and_restore_without_mutating_model: test
semantic_review::attachments::tests::functional_incident_source_requires_explicit_matching_port_review_in_one_atomic_candidate: test
semantic_review::attachments::tests::parent_and_each_endpoint_candidate_preserve_other_fields_and_match_core_both_directions: test
semantic_review::attachments::tests::raw_rejected_attachment_reference_survives_recovery_and_wrong_scope_is_rejected: test
semantic_review::attachments::tests::source_only_absence_and_explicit_absent_endpoint_are_different: test
semantic_review::attachments::tests::two_incident_endpoint_candidates_form_one_complete_record_and_recover_invalid_excluded_draft: test
semantic_review::batch_tests::batch_apply_is_one_exact_source_and_history_undo_redo_roundtrip: test
semantic_review::batch_tests::batch_candidate_conflict_keeps_both_raw_values_and_keep_is_a_real_constraint: test
semantic_review::batch_tests::batch_complete_constructor_cannot_erase_another_rows_new_literal: test
semantic_review::batch_tests::batch_constructor_retirement_conflicts_with_another_rows_kept_bound_in_both_orders: test
semantic_review::batch_tests::batch_delayed_text_targets_its_original_row_and_facet_without_switching_focus: test
semantic_review::batch_tests::batch_excluded_invalid_row_survives_focus_reopen_and_v2_recovery: test
semantic_review::batch_tests::batch_first_equal_constructor_acknowledgement_allows_an_independent_bound: test
semantic_review::batch_tests::batch_joint_bounds_use_one_candidate_and_match_an_independent_atomic_core_oracle: test
semantic_review::batch_tests::batch_reverse_distinct_targets_work_and_reverse_convergence_is_explicit: test
semantic_review::batch_tests::batch_v2_rejects_duplicate_included_sources_bad_addresses_and_stale_model: test
semantic_review::batch_tests::category_family_and_members_are_independent_core_checked_facets_both_directions: test
semantic_review::batch_tests::recovered_trace_picker_names_existing_trace_instead_of_deleted_reference: test
semantic_review::batch_tests::rejected_direction_switch_at_row_limit_preserves_every_recoverable_draft: test
semantic_review::compose::diagnostic_tests::distinct_review_conflict_keeps_trace_aliases_even_when_names_are_equal: test
semantic_review::compose::diagnostic_tests::reserved_creation_conflict_uses_its_rows_seed_instead_of_a_deleted_reference: test
semantic_review::compose::diagnostic_tests::same_review_presence_and_owner_conflict_names_both_facets_and_owners_and_retains_drafts: test
semantic_review::compose::diagnostic_tests::typed_owner_display_does_not_reinterpret_uuid_shaped_artifact_text: test
semantic_review::constructor_tests::closed_data_and_event_take_composition_matches_core_across_every_kind_pair_and_direction: test
semantic_review::constructor_tests::data_group_candidates_cover_every_definition_and_companion_default_both_directions: test
semantic_review::constructor_tests::data_group_retains_invalid_sibling_drafts_companion_default_and_variant_editor_buffers: test
semantic_review::constructor_tests::exchange_constructor_takes_qualified_annotation_addresses_without_remapping_expression_text: test
semantic_review::constructor_tests::existing_fragment_and_branch_group_candidates_edit_complete_owned_order_without_deletion: test
semantic_review::constructor_tests::group_take_reference_payload_and_scalar_candidate_match_core_and_one_document_batch: test
semantic_review::constructor_tests::historical_event_keep_retires_only_obsolete_branch_and_unchanged_kind_acknowledges_no_payload: test
semantic_review::constructor_tests::historical_same_kind_take_preserves_target_only_literals_when_composed_with_candidate: test
semantic_review::constructor_tests::occurrence_and_event_candidate_variants_cover_closed_families_without_touching_headers: test
semantic_review::constructor_tests::outer_and_nested_constructor_candidates_require_explicit_resolution_and_retain_both_drafts: test
semantic_review::constructor_tests::port_group_companions_typed_owner_context_and_direction_restrictions_are_explicit: test
semantic_review::constructor_tests::reverse_existing_typed_port_reviews_keep_or_candidate_legacy_without_permitting_typed_oa_write: test
semantic_review::constructor_tests::scenario_use_group_takes_typed_binding_references_and_preserves_source_text_both_directions: test
semantic_review::keyed_rows_tests::annotation_address_browser_descends_qualified_fields_without_changing_rows: test
semantic_review::keyed_rows_tests::annotation_observations_keep_uuid_shaped_expression_text_in_both_sides_and_history: test
semantic_review::keyed_rows_tests::batch_keyed_rows_compare_exact_target_slots_and_retain_independent_values: test
semantic_review::keyed_rows_tests::binding_choices_separate_reused_keys_from_local_lifelines: test
semantic_review::keyed_rows_tests::binding_local_picker_follows_a_candidate_parent_before_the_review_is_valid: test
semantic_review::keyed_rows_tests::binding_take_requires_local_correspondence_and_candidate_rejects_wrong_scenario: test
semantic_review::keyed_rows_tests::independent_rows_keep_take_candidate_match_core_and_preserve_siblings_both_directions: test
semantic_review::keyed_rows_tests::keyed_recovery_retains_raw_rows_and_staged_pairs_both_directions_without_applying: test
semantic_review::keyed_rows_tests::keyed_row_drafts_retain_expression_local_and_presence_across_decisions_and_staging: test
semantic_review::keyed_rows_tests::keyed_rows_distinguish_unpaired_source_from_explicit_absence_and_require_exact_reset: test
semantic_review::keyed_rows_tests::multiple_new_rows_compose_in_empty_collections_using_destination_key_order: test
semantic_review::keyed_rows_tests::row_review_apply_preserves_exact_source_and_semantic_history_through_undo_redo: test
semantic_review::keyed_tests::deleted_member_source_observation_removes_only_mapped_membership_both_directions: test
semantic_review::keyed_tests::exact_literal_new_rows_and_removals_commit_both_directions_without_default_loss: test
semantic_review::keyed_tests::exact_reset_only_is_one_history_source_transaction_and_undo_redo_both_directions: test
semantic_review::keyed_tests::function_port_members_use_existing_typed_choices_and_preserve_oa_legacy: test
semantic_review::keyed_tests::historical_one_sided_pair_migration_requires_exact_reset_and_explicit_overlap_resolution: test
semantic_review::keyed_tests::invalid_literal_removal_and_unselected_scalar_buffers_are_retained_and_repairable: test
semantic_review::keyed_tests::member_identity_labels_and_new_tabs_preserve_exact_names_and_deleted_keys: test
semantic_review::keyed_tests::reset_precedes_equal_constructor_candidate_and_preserves_independent_literal_draft: test
semantic_review::keyed_tests::staging_removal_and_obsolete_reset_recovery_keep_other_decisions_and_raw_presence: test
semantic_review::keyed_tests::stale_or_source_failed_reset_and_membership_apply_retain_exact_choices: test
semantic_review::keyed_tests::unordered_members_keep_take_candidate_preserve_other_rows_both_directions: test
semantic_review::keyed_tests::unsupported_independent_families_and_missing_identities_do_not_gain_edit_authority: test
semantic_review::message_kind_tests::message_group_candidate_closed_kinds_are_core_validated_in_both_directions: test
semantic_review::message_kind_tests::message_group_candidate_timer_switches_preserve_both_drafts_and_overlap_is_explicit: test
semantic_review::message_kind_tests::message_group_initial_equal_take_acknowledges_only_kind_and_checks_authored_timer_agreement: test
semantic_review::message_kind_tests::message_group_keep_historical_switch_retires_timer_and_completed_no_switch_rejects: test
semantic_review::message_kind_tests::message_group_rejects_protected_edits_stale_plan_and_source_failure_without_losing_timer: test
semantic_review::message_kind_tests::message_group_reply_and_reference_take_require_explicit_call_mapping_both_directions: test
semantic_review::message_kind_tests::message_group_take_full_timer_and_scalar_candidate_are_one_source_history_change_both_directions: test
semantic_review::message_kind_tests::message_group_timer_does_not_erase_exchange_without_its_own_selected_decision: test
semantic_review::ordered_tests::ambiguous_order_preserves_local_member_and_requires_explicit_candidate_positions: test
semantic_review::ordered_tests::historical_pair_restore_uses_exact_member_keys_and_never_zips_order_observations: test
semantic_review::ordered_tests::order_take_preserves_destination_only_positions_and_order_alone_cannot_add_members: test
semantic_review::ordered_tests::ordered_membership_choices_stage_exact_pairs_in_all_owner_shapes: test
semantic_review::ordered_tests::ordered_presence_keep_take_candidate_remove_only_selected_entry_and_order_take_reorders_only: test
semantic_review::ordered_tests::ordered_review_apply_is_exact_source_history_transaction_with_reopen_and_undo_redo: test
semantic_review::ordered_tests::ordered_take_uses_unique_anchors_and_matches_core_with_unrelated_candidate_both_directions: test
semantic_review::ordered_tests::raw_order_survives_membership_changes_decisions_and_recovery_until_explicit_reconcile: test
semantic_review::ordered_tests::several_incoming_members_follow_source_order_despite_independent_identity_sorting: test
semantic_review::recovery::tests::raw_scalar_and_closed_constructor_drafts_recover_against_exact_model_only: test
semantic_review::recovery::tests::version_one_without_orders_restores_raw_intent_and_replans_without_execution: test
semantic_review::source7_tests::contextual_incident_leaf_keep_allows_path_change_but_conflicts_with_changed_leaf_both_directions: test
semantic_review::source7_tests::reverse_operation_omission_gui_requires_raw_rationale_and_matches_one_core_batch_after_recovery: test
semantic_review::source7_tests::semantic_operation_virtual_none_candidate_uses_exact_allocation_and_preserves_accepted_bytes: test
semantic_review::tests::candidate_mixed_with_reference_take_uses_typed_correspondence_not_text_guessing: test
semantic_review::tests::deselected_invalid_candidate_is_retained_but_does_not_poison_another_selected_scalar: test
semantic_review::tests::explicit_trace_selection_updates_only_that_history: test
semantic_review::tests::first_equal_constructor_acknowledges_only_kind_and_allows_independent_leaves: test
semantic_review::tests::independent_review_clear_bound_ignores_retained_invalid_other_facet: test
semantic_review::tests::independent_review_keyed_fact_titles_keep_live_deleted_and_qualified_identity: test
semantic_review::tests::inherited_annotation_impact_requires_exact_acceptance_and_edits_clear_approval: test
semantic_review::tests::invalid_numeric_draft_and_protected_edits_retain_workflow_and_source: test
semantic_review::tests::read_only_structured_facts_and_partial_rollup_are_honest: test
semantic_review::tests::relation_candidates_preserve_endpoints_and_combine_selected_roles_and_bounds: test
semantic_review::tests::scalar_keep_take_candidate_commit_exact_source_and_history_in_both_directions: test
semantic_review::tests::scoped_literal_list_edits_preserve_unfinished_values_and_other_facet_buffers: test
semantic_review::tests::stale_plan_and_source_writeback_failure_do_not_lose_decisions_or_history: test
semantic_review::tests::state_kind_scalar_uses_typed_candidate_and_core_validation: test
semantic_review::view::reserved_artifact_tests::reserved_artifact_facet_and_reference_labels_survive_recovery_without_calling_it_deleted: test
source_navigation::interaction::tests::captured_find_click_invalidates_without_app_message_and_preserves_focus: test
source_navigation::interaction::tests::focus_rechecks_clock_between_inspection_and_application_and_missing_target_is_inert: test
source_navigation::interaction::tests::raw_navigation_inputs_advance_but_passive_geometry_does_not_and_exhaustion_refuses: test
source_navigation::query::tests::comments_strings_and_comment_gap_are_not_navigation_hits: test
source_navigation::query::tests::detached_alias_and_identity_collisions_never_auto_select: test
source_navigation::query::tests::dirty_but_parseable_text_has_current_names_and_no_validated_fallback: test
source_navigation::query::tests::exact_multifile_unicode_crlf_definition_and_repeated_lexical_references: test
source_navigation::query::tests::exact_snapshot_readback_rejects_same_key_byte_membership_and_evidence_changes: test
source_navigation::query::tests::include_cycle_depth_and_aggregate_edges_are_explicit_partial_outcomes: test
source_navigation::query::tests::invalid_include_syntax_never_borrows_the_old_reachable_file_set: test
source_navigation::query::tests::keyword_alias_and_loaded_path_case_collisions_use_reviewed_index_rules: test
source_navigation::query::tests::large_display_name_cannot_escape_the_owned_row_string_budget: test
source_navigation::query::tests::missing_and_noncanonical_authored_ids_remain_draft_spans_without_generated_anchors: test
source_navigation::query::tests::missing_include_partial_scope_does_not_resurrect_witness_text: test
source_navigation::query::tests::omitted_rows_are_counted_before_result_allocation_and_never_confer_uniqueness: test
source_navigation::query::tests::origin_keeps_exact_hit_when_display_rows_are_omitted: test
source_navigation::query::tests::owned_request_checks_raw_limits_immediately_and_extracts_only_on_worker: test
source_navigation::query::tests::owned_request_moves_exact_text_into_worker_snapshot_and_matches_sync_results: test
source_navigation::query::tests::owned_validation_proof_preserves_full_witness_count_and_partial_scope: test
source_navigation::query::tests::raw_aggregate_limits_refuse_before_outline_or_copied_snapshot: test
source_navigation::query::tests::sole_detached_candidate_and_unapplied_equal_bytes_require_choice: test
source_navigation::query::tests::token_declaration_and_live_reference_limits_are_aggregate_not_per_file: test
source_navigation::query::tests::validation_witness_must_match_entry_and_complete_included_file_set: test
source_navigation::symbols::tests::admitted_unicode_path_budget_keeps_original_policy_after_single_fold: test
source_navigation::symbols::tests::comment_separated_reference_keeps_crlf_unicode_and_disjoint_hit_spans: test
source_navigation::symbols::tests::declaration_order_and_duplicate_roles_refuse_instead_of_corrupting_hit_search: test
source_navigation::symbols::tests::detached_uuid_clone_disables_anchor_even_for_included_query: test
source_navigation::symbols::tests::duplicate_aliases_are_candidates_without_false_reference_attribution: test
source_navigation::symbols::tests::every_budget_admits_boundary_and_returns_no_index_one_below: test
source_navigation::symbols::tests::header_metadata_must_match_current_token_boundaries_and_authored_id: test
source_navigation::symbols::tests::incomplete_draft_is_lexical_and_error_token_does_not_leak_references: test
source_navigation::symbols::tests::legal_keyword_classified_alias_is_not_discarded: test
source_navigation::symbols::tests::missing_ids_produce_only_current_snapshot_locations_without_stabilization: test
source_navigation::symbols::tests::nested_declaration_extents_do_not_turn_body_text_into_definition_hits: test
source_navigation::symbols::tests::noncanonical_header_identity_cannot_enter_through_query_metadata: test
source_navigation::symbols::tests::path_identity_rejects_normalization_and_case_collisions: test
source_navigation::symbols::tests::query_header_admission_preserves_uppercase_and_json_escape_bytes: test
source_navigation::symbols::tests::repeated_live_uses_are_distinct_and_strings_comments_history_are_excluded: test
source_navigation::symbols::tests::reused_alias_cannot_steal_old_identity_and_old_locations_are_stale: test
source_navigation::symbols::tests::scope_provenance_and_detached_alias_collision_are_explicit: test
source_navigation::symbols::tests::stopped_outline_is_not_a_successful_empty_query: test
source_navigation::symbols::tests::truncated_or_gapped_tokens_refuse_even_when_project_scope_is_partial: test
source_navigation::symbols::tests::unicode_path_collisions_match_core_lowercase_policy: test
source_navigation::tests::search_uses_utf8_columns_wraps_and_refreshes_after_edits: test
source_rename::origin::tests::maps_last_repeated_reference_with_unicode_crlf_and_comment_separator: test
source_rename::origin::tests::permits_identifier_keyword_transitions_in_alias_roles: test
source_rename::origin::tests::preserves_final_same_line_occurrence_not_first_or_prose: test
source_rename::origin::tests::rejects_changed_trivia_non_alias_words_and_wrong_marker: test
source_rename::preview::tests::each_bound_is_exact_and_overflow_never_returns_a_partial_preview: test
source_rename::preview::tests::first_and_last_lines_form_complete_separate_hunks_and_pages: test
source_rename::preview::tests::limits_apply_to_the_whole_preview_not_each_file: test
source_rename::preview::tests::long_unicode_lines_are_fully_reachable_as_bounded_fragments: test
source_rename::preview::tests::nearby_changes_merge_and_all_changed_files_are_reachable: test
source_rename::preview::tests::preserves_unicode_mixed_endings_and_counts_lines_not_repeated_uses: test
source_rename::preview::tests::refuses_membership_entry_line_count_and_line_ending_changes: test
source_rename::preview::tests::unchanged_and_empty_sources_have_no_preview: test
source_tree::tests::active_scroll_offset_uses_the_visible_order_and_retains_ancestor_context: test
source_tree::tests::collapsed_folders_retain_active_dirty_and_diagnostic_markers: test
source_tree::tests::deep_paths_build_expand_and_drop_on_a_small_stack: test
source_tree::tests::detached_buffers_keep_paths_and_only_clean_buffers_are_closable: test
source_tree::tests::exact_unicode_spaces_and_file_folder_name_collisions_are_not_normalized: test
source_tree::tests::folders_are_compact_and_sorted_before_files_without_losing_duplicate_basenames: test
source_workspace::tests::draft_history_budget_covers_inactive_files_without_discarding_drafts: test
source_workspace::tests::fresh_session_cannot_reuse_a_retained_buffer_generation: test
source_workspace::tests::navigation_revision_wrap_cannot_reuse_an_old_workspace_key: test
source_workspace::tests::navigation_scope_changes_invalidate_without_changing_unchanged_positions: test
source_workspace::tests::navigation_versions_distinguish_reopened_recovered_and_changed_drafts: test
source_workspace::tests::switching_retains_invalid_drafts_and_independent_history: test
tests::actor_port_creation_updates_containment_and_locate_reveals_its_owner: test
tests::adding_bend_between_close_ports_stays_outside_owner_clearance: test
tests::behavior_and_data_authoring_do_not_place_nodes_in_unrelated_architecture_views: test
tests::bidirectional_transition_ui_commits_once_and_preserves_other_diagrams: test
tests::counterpart_creation_focuses_visible_target_and_reuse_keeps_views: test
tests::creation_from_capabilities_routes_work_to_architecture_and_folded_allocation_inserts_below_existing_work: test
tests::dragging_keeps_semantic_selection_and_same_node_remains_editable: test
tests::escaped_string_mode_preserves_exact_control_characters: test
tests::every_demo_record_has_a_lossless_graphical_draft: test
tests::explicit_relationship_builder_never_mutates_on_preview: test
tests::explorer_and_creation_selection_follow_their_own_placement: test
tests::fit_adapts_to_canvas_returning_after_help_but_preserves_manual_navigation: test
tests::fit_uses_measured_canvas_bounds_and_preserves_them_on_open: test
tests::focused_explorer_follows_reparenting_without_changing_identity: test
tests::graphical_rename_keeps_aliases_and_references_and_undo: test
tests::identity_property_change_is_atomic_and_rewrites_all_live_references: test
tests::invalid_numeric_draft_survives_navigation_save_and_help: test
tests::invalid_save_and_continue_returns_to_repairable_draft: test
tests::malformed_source_preserves_model_and_is_recoverable: test
tests::manual_trace_requires_target_and_selection_normalizes_creation_kind: test
tests::mission_capability_authoring_is_contextual_atomic_and_text_equivalent: test
tests::modal_owns_background_commands_and_shortcuts: test
tests::nested_allocation_insertion_reflows_sibling_subtrees_and_preserves_fold_state: test
tests::opening_and_creating_models_preserve_the_actual_window_size_for_fit: test
tests::opening_legacy_source_surfaces_report_without_modifying_original_bytes: test
tests::pending_source_prevents_property_draft_collision_and_preserves_both_if_present: test
tests::placement_identity_edit_then_drag_and_diagram_identity_then_arrange: test
tests::placement_relocation_follows_cross_layer_traceability_view: test
tests::property_enum_and_optional_reference_roundtrip: test
tests::reopening_canvas_for_a_modal_preserves_viewport_after_route_edits: test
tests::revealing_an_implicit_function_port_unfolds_its_visible_architecture_owner: test
tests::routing_actions_are_atomic_guarded_and_fit_the_authored_detour: test
tests::selecting_current_constructors_preserves_payloads: test
tests::source_find_navigates_an_invalid_draft_without_applying_or_losing_it: test
tests::source_navigation_waits_for_editor_layout_and_cancels_on_edit: test
tests::system_only_models_open_the_populated_perspective: test
tests::transition_resolutions_belong_to_the_effective_target_and_kind: test
view_copy::tests::duplicate_retains_ports_routes_options_and_artifact_claims_with_exact_undo_redo: test
view_copy::tests::duplicate_state_view_preserves_machine_nesting_and_collapse_with_unique_aliases: test
view_copy::tests::missing_view_does_not_propose_an_empty_replacement: test
views::source_symbols::tests::suffixes_distinguish_nested_duplicate_basenames_without_changing_unicode: test
views::source_tests::source_editor_windows_menu_payload_is_inert_but_space_and_altgr_still_edit: test
views::text_workspace::tests::drawer_clamps_to_actual_center_allocation_including_oversize_requests: test
views::text_workspace::tests::five_slots_keep_editor_state_and_selection_through_explicit_and_passive_changes: test
views::text_workspace::tests::highlighted_sensor_editor_retains_real_scrolled_buffer_across_panel_rebuilds: test
views::text_workspace::tests::keyboard_resize_uses_effective_height_and_only_exact_open_drawer_shortcut: test
views::traceability::tests::traceability_browsing_retains_invalid_property_draft_and_existing_select_guard: test
views::traceability::tests::traceability_filter_reaches_artifacts_after_68_traces_and_searches_all_metadata: test
workflow::communication::tests::communication_requires_two_explicit_ports_and_recovers_the_partial_choice: test
workflow::port_authoring_tests::boundary_picker_matches_exact_commands_across_contracts_and_ownership: test
workflow::port_authoring_tests::boundary_picker_recomputes_for_unoriented_reverse_endpoints_without_relaxing_contracts: test
workflow::port_authoring_tests::duplicate_port_names_show_owner_contract_and_unique_alias: test
workflow::port_authoring_tests::fresh_functions_are_actual_picker_targets_and_plan_enables_apply: test
workflow::port_authoring_tests::generic_component_port_connection_keeps_its_endpoint_and_direction: test
workflow::port_authoring_tests::ordinary_standard_connections_default_unoriented_and_new_roles_exclude_legacy: test
workflow::recovery::tests::incomplete_relationship_and_trace_recover_raw_fields_and_reject_changed_model: test
workflow::recovery::tests::transition_recovery_replans_typed_request_without_persisted_commands: test
workflow::transition_tests::basic_transition_boundary_choice_is_required_without_an_inferred_system: test
workflow::transition_tests::basic_transition_creates_overview_when_existing_views_cannot_show_result: test
workflow::transition_tests::basic_transition_explicit_destination_appends_below_existing_bounds_and_is_one_source_edit: test
workflow::transition_tests::basic_transition_invalid_explicit_destination_retains_choice_and_refuses: test
workflow::transition_tests::basic_transition_reconcile_keeps_existing_selected_view_placement_and_route_exact: test
workflow::transition_tests::basic_transition_skips_lowest_uuid_state_view_and_preserves_oa: test
857 tests, 0 benchmarks
@@ -0,0 +1,21 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"--",
"--test-threads=1"
],
"started": "2026-09-13T02:05:06.654255+00:00",
"finished": "2026-09-13T02:12:23.514763+00:00",
"seconds": 436.85842480000065,
"exitCode": 101,
"inputsUnchanged": true,
"stdoutSha256": "6fdccf0a6c302f9b04ff6a64d38eb9cbc010d56f978349086055937c6e86333f",
"stderrSha256": "b01b054ef4d002426be823d05362d121ae494bcad224a4d457aba266f013ff8a"
}
@@ -0,0 +1,3 @@
Finished `test` profile [unoptimized] target(s) in 4.21s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
error: test failed, to rerun pass `-p oa-desktop --bin arcadia-studio`
@@ -0,0 +1,874 @@
running 857 tests
test app::architecture_authoring::tests::architecture_allocated_work_is_root_owned_and_one_exact_history_change ... ok
test app::architecture_authoring::tests::architecture_blank_names_and_escape_never_accept_placeholder_or_rename ... ok
test app::architecture_authoring::tests::architecture_captured_escape_does_not_cancel_other_controls_or_placement ... ok
test app::architecture_authoring::tests::architecture_f2_routes_selected_node_to_inline_rename_and_exact_undo ... ok
test app::architecture_authoring::tests::architecture_first_focused_input_escape_cancels_create_and_rename ... ok
test app::architecture_authoring::tests::architecture_invalid_click_cannot_poison_inline_or_checkpoint_geometry ... ok
test app::architecture_authoring::tests::architecture_stale_submit_keeps_create_and_rename_visible_and_exact ... ok
test app::architecture_authoring_tests::architecture_cancelled_gesture_cannot_commit_a_later_named_draft ... ok
test app::architecture_authoring_tests::architecture_canvas_left_click_uses_world_coordinate_once_at_zoom_and_pan ... ok
test app::architecture_authoring_tests::architecture_checkpoint_retains_exact_name_point_and_fresh_binding_without_commands ... ok
test app::architecture_authoring_tests::architecture_context_choices_are_small_and_system_is_singleton ... ok
test app::architecture_authoring_tests::architecture_contextual_allocation_creates_work_relation_and_node_in_one_undo ... ok
test app::architecture_authoring_tests::architecture_creation_names_before_commit_preserves_camera_and_undoes_once ... ok
test app::architecture_authoring_tests::architecture_existing_inventory_is_contextual_and_placement_never_implies_allocation ... ok
test app::architecture_authoring_tests::architecture_f2_rename_preserves_identity_placement_and_atomic_history ... ok
test app::architecture_authoring_tests::architecture_name_survives_rejected_click_resize_navigation_and_escape_is_explicit ... ok
test app::architecture_authoring_tests::architecture_rejected_submission_keeps_inline_name_visible_and_invalid_click_is_ignored ... ok
test app::architecture_authoring_tests::basic_transition_explicit_overview_focus_wins_over_an_already_populated_architecture ... ok
test app::behavior_lifecycle_tests::incomplete_behavior_form_is_dirty_close_save_retains_it_and_cancel_allows_switching ... ok
test app::behavior_lifecycle_tests::passive_behavior_canvas_events_do_not_apply_property_drafts ... ok
test app::behavior_lifecycle_tests::pending_behavior_blocks_navigation_property_edits_and_model_history ... ok
test app::behavior_lifecycle_tests::pending_behavior_blocks_source_creation_and_source_history_replay ... ok
test app::behavior_lifecycle_tests::save_prepares_behavior_before_opening_destination_and_cancel_keeps_one_undo ... ok
test app::behavior_lifecycle_tests::source_writeback_failure_keeps_typed_behavior_form_for_repair_and_one_undo ... ok
test app::checkpoints::tests::checkpoint_completion_releases_the_writer_while_a_context_menu_is_open ... ok
test app::checkpoints::tests::checkpoint_inline_create_and_rename_restore_focus_without_changing_drafts_or_history ... ok
test app::checkpoints::tests::checkpoint_noninline_contexts_keep_other_focus_and_still_lint ... ok
test app::checkpoints::tests::discard_and_close_waits_for_the_late_checkpoint_then_retires_it ... ok
test app::checkpoints::tests::home_resume_keeps_state_view_while_explicit_architecture_remains_reachable ... ok
test app::checkpoints::tests::home_resume_retains_invalid_source_and_property_drafts ... ok
test app::checkpoints::tests::home_resume_returns_to_each_actual_workspace_without_model_edits ... ok
test app::checkpoints::tests::malformed_checkpoint_does_not_replace_the_current_model ... ok
test app::checkpoints::tests::recent_and_recovery_navigation_respect_unsaved_decision ... ok
test app::checkpoints::tests::restored_copy_keeps_raw_property_and_requires_save_without_local_or_hosted_binding ... ok
test app::checkpoints::tests::saving_an_older_snapshot_keeps_recovery_for_newer_unsaved_work ... ok
test app::checkpoints::tests::stale_write_completion_cannot_recover_a_discarded_document ... ok
test app::checkpoints::tests::walkthrough_request_keeps_unfinished_source_behind_the_normal_pending_guard ... ok
test app::data_paging_lifecycle_tests::paging_preserves_same_context_and_resets_on_layer_or_document_replacement ... ok
test app::diagram_selection_tests::changing_visible_view_follows_its_clean_inspector_without_a_model_edit ... ok
test app::diagram_selection_tests::diagram_switch_preserves_an_independent_semantic_inspection ... ok
test app::diagram_selection_tests::diagram_uuid_edit_follows_the_same_view_or_a_different_picker_target ... ok
test app::diagram_selection_tests::invalid_view_draft_blocks_the_switch_and_retains_raw_input ... ok
test app::diagram_selection_tests::stale_diagram_choice_never_applies_an_unrelated_valid_draft ... ok
test app::diagram_selection_tests::valid_pending_view_edit_applies_to_old_view_then_inspects_the_new_view ... ok
test app::direct_scenario_tests::direct_scenario_creation_and_reorder_preserve_selection_and_each_undo_once ... ok
test app::direct_scenario_tests::direct_scenario_rejects_every_stale_context_and_preserves_property_drafts ... ok
test app::direct_scenario_tests::direct_scenario_scroll_and_real_resize_invalidate_only_pointer_context ... ok
test app::direct_scenario_tests::direct_scenario_source_failure_and_navigation_keep_form_until_success ... ok
test app::hosted::tests::hosted_actual_app_tasks_publish_edit_conflict_correct_credentials_reload_and_open ... ok
test app::hosted::tests::hosted_catalog_invalidation_follows_service_writes_and_observed_revision_changes ... ok
test app::hosted::tests::hosted_catalog_search_credentials_and_failed_refresh_never_mix_result_scopes ... ok
test app::hosted::tests::hosted_changed_bound_head_does_not_invalidate_another_services_empty_filter ... ok
test app::hosted::tests::hosted_conflict_fetches_review_without_adoption_and_reload_is_undoable ... ok
test app::hosted::tests::hosted_detached_drafts_and_recovery_remain_available_after_rejected_publish ... ok
test app::hosted::tests::hosted_failed_cross_service_publication_checks_and_reloads_its_own_resource ... ok
test app::hosted::tests::hosted_failed_or_cancelled_local_open_keeps_the_existing_document_and_destination ... ok
test app::hosted::tests::hosted_invalid_and_detached_source_drafts_never_start_network_writes ... ok
test app::hosted::tests::hosted_invalid_local_open_repair_saves_locally_and_never_replaces_old_resource ... ok
test app::hosted::tests::hosted_modal_blocks_underlying_edits_and_credentials_are_redacted ... ok
test app::hosted::tests::hosted_new_revision_invalidates_filtered_catalog_even_without_a_displayed_row ... ok
test app::hosted::tests::hosted_only_successful_source_save_as_changes_the_active_destination ... ok
test app::hosted::tests::hosted_open_waits_for_unsaved_guard_and_failed_open_preserves_current_document ... ok
test app::hosted::tests::hosted_publish_acknowledges_only_the_sent_snapshot_and_retains_undo ... ok
test app::hosted::tests::hosted_stale_completions_do_not_clear_current_busy_or_adopt_another_document ... ok
test app::hosted::tests::hosted_unknown_save_is_acknowledged_by_exact_readback_without_retry ... ok
test app::lint_tests::committed_check_cache_follows_edit_and_undo_while_drafts_stay_separate ... ok
test app::lint_tests::lint_coalesces_work_and_rejects_obsolete_results ... ok
test app::lint_tests::prior_document_lint_cannot_enter_reopened_model_or_block_next_checks ... ok
test app::port_view_tests::catalog_creation_follows_the_new_port_and_keeps_group_browsing_explicit ... ok
test app::port_view_tests::filtered_active_view_cannot_hide_a_created_port_when_eligible_owner_view_is_folded ... ok
test app::process_canvas::direct_process_dirty_source_blocks_canvas_creation_without_losing_text ... ok
test app::process_canvas::tests::direct_process_app_open_source_and_back_preserve_local_reference_identity ... ok
test app::process_canvas::tests::direct_process_app_same_owner_selection_preserves_tool_but_owner_change_resets_it ... ok
test app::process_canvas::tests::direct_process_app_save_scroll_resize_and_passive_geometry_keep_drafts_and_current_origin ... ok
test app::process_canvas::tests::direct_process_app_source_failure_retains_form_then_commits_once_and_selects_occurrence ... ok
test app::process_canvas::tests::direct_process_app_stale_context_dirty_source_and_properties_never_mutate ... ok
test app::process_canvas::tests::direct_process_append_empty_first_second_exchange_has_exact_source_history ... ok
test app::process_canvas::tests::process_focus_retains_rejected_draft_and_guards_selection_until_panels_restore ... ok
test app::repair_save_state_tests::recovering_applied_repair_rebinds_rolled_back_disk_bytes_without_changing_model ... ok
test app::repair_save_state_tests::recovery_missing_entry_or_failed_reload_preserves_current_destination_save_authority ... ok
test app::repair_save_state_tests::repair_history_compares_to_new_disk_baseline_and_then_successful_save ... ok
test app::repair_save_state_tests::repair_to_previous_saved_bytes_requires_save_at_new_destination_and_guards_close ... ok
test app::repair_save_state_tests::valid_equal_content_at_distinct_destinations_stays_clean ... ok
test app::review_navigation_tests::rejected_semantic_source_writeback_retains_review_camera_and_original_navigation ... ok
test app::review_navigation_tests::review_already_showing_the_target_keeps_its_camera_and_query ... ok
test app::review_navigation_tests::semantic_name_take_selects_the_counterpart_view_in_both_directions_with_one_exact_history_entry ... ok
test app::review_navigation_tests::semantic_review_without_a_destination_view_clears_the_old_layer_canvas_without_creating_a_view ... ok
test app::save_as_tests::save_as_late_receipt_preserves_newer_raw_source_draft_and_destination ... ok
test app::save_as_tests::save_as_preflight_rejects_historical_collision_before_starting_io ... ok
test app::save_as_tests::save_as_receipt_then_one_undo_restores_meaning_and_saving_preserves_redo ... ok
test app::source_project_tests::closed_detached_file_keeps_first_save_conflict_then_can_be_reloaded_fresh ... ok
test app::source_project_tests::inactive_invalid_draft_blocks_graphical_changes_and_diagnostic_switches_files ... ok
test app::source_project_tests::json_export_and_rejected_save_as_preserve_source_location_history_and_bytes ... ok
test app::source_project_tests::missing_include_open_keeps_old_model_and_can_be_repaired_and_saved ... ok
test app::source_project_tests::recovery_after_first_save_failure_retains_target_then_retries_without_reentering_path ... ok
test app::source_project_tests::recovery_of_previous_save_as_target_does_not_redirect_current_project ... ok
test app::source_project_tests::recovery_open_finds_first_save_journal_without_an_entry_file ... ok
test app::source_project_tests::recovery_target_survives_edit_lint_apply_and_rejected_recovery_until_success ... ok
test app::source_project_tests::source3_native_open_preserves_report_comments_nesting_and_save_reopen ... ok
test app::source_project_tests::two_file_apply_graphical_edit_exact_undo_save_as_and_reopen ... ok
test app::source_rename::alias_input::tests::effective_escape_reset_follows_child_after_early_returns ... ok
test app::source_rename::alias_input::tests::held_paste_cache_contains_only_previously_admitted_text ... ok
test app::source_rename::alias_input::tests::paste_refusal_matches_child_focus_enabled_and_stored_modifier_protocol ... ok
test app::source_rename::editor_patch::tests::all_preflight_refusals_leave_text_cursor_and_selection_unchanged ... ok
test app::source_rename::editor_patch::tests::already_laid_out_editor_notifies_highlighter_from_zero_after_later_line_patch ... ok
test app::source_rename::editor_patch::tests::exact_text_matrix_and_reverse_preserve_endings ... ok
test app::source_rename::editor_patch::tests::unchanged_content_preserves_selection_and_next_direct_edit_works ... ok
test app::source_rename::tests::actual_alias_clipboard_rejects_controls_without_normalizing_or_moving_selection ... ok
test app::source_rename::tests::actual_captured_escape_closes_only_its_priority_owner_and_retains_worker ... ok
test app::source_rename::tests::actual_dialog_enter_requests_preview_even_when_confirm_is_available ... ok
test app::source_rename::tests::actual_dialog_real_paragraph_geometry_keeps_input_preview_and_footer_reachable ... ok
test app::source_rename::tests::alias_editor_sync_fallback_restores_accepted_display_and_preserves_model_history ... ok
test app::source_rename::tests::close_and_reset_retain_worker_slot_until_exact_completion_without_reopening ... ok
test app::source_rename::tests::complete_alias_change_preserves_literals_and_last_comment_separated_origin_and_undo ... ok
test app::source_rename::tests::full_details_selection_survives_readonly_and_passive_messages_and_tracks_input ... ok
test app::source_rename::tests::genuine_save_receipts_preserve_same_destination_preview_but_invalidate_save_as ... ok
test app::source_rename::tests::invalid_open_retains_accepted_document_but_refuses_alias_rename ... ok
test app::source_rename::tests::last_same_line_use_beyond_reference_row_limit_and_selection_boundaries ... ok
test app::source_rename::tests::mounted_editor_f2_requires_focus_and_no_modifiers ... ok
test app::source_rename::tests::paging_all_utf8_fragments_preserves_exact_preview_and_approval ... ok
test app::source_rename::tests::preview_glyph_tests::actual_preview_source_glyphs_clear_scrollbar_and_all_long_fragments_are_reachable ... ok
test app::source_rename::tests::preview_scroll_tests::delayed_page_and_approval_operations_cannot_reset_a_new_destination ... ok
test app::source_rename::tests::preview_scroll_tests::explicit_navigation_resets_retained_scroll_but_id_change_alone_does_not ... ok
test app::source_rename::tests::preview_scroll_tests::repeated_page_visits_filters_and_fast_preview_completion_have_distinct_destinations ... ok
test app::source_rename::tests::property_draft_and_detached_buffer_refuse_without_hidden_apply ... ok
test app::source_rename::tests::replacement_generation_aba_and_modal_shortcuts_cannot_commit_stale_preview ... ok
test app::source_rename::tests::same_alias_invalid_and_cancel_keep_existing_redo_and_source_selection ... ok
test app::source_rename::tests::source_edit_undo_and_recovery_invalidation_do_not_revive_approval ... ok
test app::source_rename::tests::stale_dialog_envelopes_do_not_cancel_new_same_path_form_or_its_approval ... ok
test app::source_rename::timing_tests::accepted_release1_prepare_commit_sync_and_confirm_timing ... ignored, manual Windows dev/debug rename latency trial; run alone with --ignored --nocapture --test-threads=1
test app::source_rename::timing_tests::layout_timing_tests::accepted_release1_constructor_vs_reuse_through_next_highlight ... ignored, manual Windows dev/debug editor replacement + layout/highlight trial; run alone with --ignored --nocapture --test-threads=1
test app::source_symbols::tests::back_after_origin_edit_uses_its_current_cursor_instead_of_the_old_range ... ok
test app::source_symbols::tests::back_keeps_the_latest_64_actual_locations_without_reusing_dropped_history ... ok
test app::source_symbols::tests::back_restores_exact_reversed_utf8_selection_and_crlf_source ... ok
test app::source_symbols::tests::captured_find_and_modal_escape_use_one_actual_subscription_and_preserve_pending_work ... ok
test app::source_symbols::tests::captured_subscription_does_not_duplicate_existing_behavior_or_architecture_routes ... ok
test app::source_symbols::tests::close_during_busy_retains_hidden_completion_without_reopening_or_navigation ... ok
test app::source_symbols::tests::closed_results_stay_closed_on_exact_back_and_reopen_only_for_a_return_notice ... ok
test app::source_symbols::tests::completion_retains_current_display_but_rejects_navigation_after_context_changes ... ok
test app::source_symbols::tests::delayed_definition_after_hide_or_tab_change_retains_data_without_reopening_or_focus ... ok
test app::source_symbols::tests::detached_duplicate_requires_an_explicit_choice_even_when_included_source_is_validated ... ok
test app::source_symbols::tests::escape_dismisses_modal_before_underlying_source_results ... ok
test app::source_symbols::tests::escape_hides_results_and_cancels_navigation_but_retains_latest_display ... ok
test app::source_symbols::tests::find_close_releases_removed_input_and_guarded_focus_respects_later_input ... ok
test app::source_symbols::tests::find_only_captured_escape_closes_once_and_preserves_raw_query_and_selection ... ok
test app::source_symbols::tests::hidden_completion_checks_exact_bytes_even_when_snapshot_key_was_not_advanced ... ok
test app::source_symbols::tests::invalid_unapplied_drafts_navigate_without_apply_or_losing_either_history ... ok
test app::source_symbols::tests::matching_old_worker_cannot_replace_a_newer_display_owner ... ok
test app::source_symbols::tests::matching_reveal_ticket_is_required_and_raw_input_invalidates_pending_reveal ... ok
test app::source_symbols::tests::old_find_close_cannot_cancel_a_new_file_session_or_reopened_find_intent ... ok
test app::source_symbols::tests::old_symbol_widget_envelopes_after_file_switch_preserve_same_session_intent ... ok
test app::source_symbols::tests::old_symbol_widget_envelopes_after_reset_preserve_new_same_path_intent ... ok
test app::source_symbols::tests::popup_escape_has_no_duplicate_bridge_and_dismissal_preserves_underlying_find_and_drawer ... ok
test app::source_symbols::tests::reset_retains_worker_slot_until_old_completion_then_admits_new_session_query ... ok
test app::source_symbols::tests::retained_choices_cannot_replay_after_hide_or_references_problems_references ... ok
test app::source_symbols::tests::same_worker_with_changed_request_envelope_cannot_publish_or_navigate ... ok
test app::source_symbols::tests::saturated_raw_clock_never_authorizes_completion_or_reveal ... ok
test app::source_symbols::tests::source_symbols_100_modules_1000_definitions_10000_uses ... ignored, manual 100-module latency/process-memory trial; run alone with --ignored --nocapture --test-threads=1
test app::source_symbols::tests::unknown_job_cannot_release_current_worker_and_old_duplicate_cannot_replace_new_results ... ok
test app::source_symbols::tests::valid_definition_and_reference_choice_keep_whole_model_and_source_unchanged ... ok
test app::state_diagram_tests::all_context_dimensions_reject_stale_selection_camera_and_model_messages ... ok
test app::state_diagram_tests::create_view_places_only_its_machine_and_restores_exact_source_in_one_undo ... ok
test app::state_diagram_tests::direct_create_connect_select_and_move_keep_semantic_identity_and_atomic_history ... ok
test app::state_diagram_tests::fallback_owner_first_selection_keeps_the_captured_context_for_its_first_move ... ok
test app::state_diagram_tests::pending_drafts_block_every_direct_mutation_and_passive_camera_preserves_inputs ... ok
test app::state_diagram_tests::real_view_tool_and_history_changes_invalidate_old_release_events ... ok
test app::state_diagram_tests::rejected_creation_keeps_source_and_selection_then_valid_owner_can_retry ... ok
test app::state_diagram_tests::same_size_viewport_after_revision_or_tool_epoch_does_not_refit_the_camera ... ok
test app::state_diagram_tests::shared_semantic_states_keep_architecture_and_behavior_placements_independent ... ok
test app::state_diagram_tests::state_diagram_routes_constructor_and_source_open_to_the_existing_workspace_without_edits ... ok
test app::state_diagram_tests::state_diagram_routes_picker_and_reveal_but_explicit_architecture_does_not_bounce ... ok
test app::state_diagram_tests::state_diagram_routes_preserve_selected_raw_properties_and_pending_behavior_guards ... ok
test app::state_diagram_tests::state_navigation_catalog_selection_across_layers_resets_camera_and_tool ... ok
test app::state_diagram_tests::state_navigation_catalog_selection_of_another_machine_resets_camera_and_tool ... ok
test app::state_diagram_tests::state_navigation_layer_change_resets_the_new_machine_at_the_same_viewport_size ... ok
test app::state_diagram_tests::state_navigation_return_to_the_same_view_preserves_camera_tool_and_fit_mode ... ok
test app::state_diagram_tests::state_navigation_root_event_and_same_layer_keep_the_current_camera_and_tool ... ok
test app::text_workspace::lifecycle_tests::canceled_or_failed_open_that_installs_nothing_retains_current_presentation_and_diagnostics ... ok
test app::text_workspace::lifecycle_tests::invalid_repair_open_clears_prior_presentation_and_publishes_current_problems_preserving_worker ... ok
test app::text_workspace::lifecycle_tests::saved_new_destination_does_not_revalidate_already_stale_warning_locations ... ok
test app::text_workspace::lifecycle_tests::saved_new_destination_republishes_current_warning_and_refuses_old_primary_and_related ... ok
test app::text_workspace::tests::current_diagnostic_target_navigates_but_changed_source_or_clear_refuses_it ... ok
test app::text_workspace::tests::diagnostic_span_must_be_loaded_ordered_and_utf8_exact ... ok
test app::text_workspace::tests::disabled_entry_cannot_become_a_new_action_under_the_same_menu_token ... ok
test app::text_workspace::tests::document_reset_preserves_popup_token_sequence_and_drops_old_menu_authority ... ok
test app::text_workspace::tests::enabled_entry_is_readmitted_at_dispatch_and_blocked_by_busy ... ok
test app::text_workspace::tests::equal_diagnostic_republication_invalidates_primary_and_related_targets ... ok
test app::text_workspace::tests::menu_own_open_invalidation_does_not_stale_find_and_invoke_is_once ... ok
test app::text_workspace::tests::menu_source_caret_document_path_and_interaction_changes_refuse_stale_find ... ok
test app::text_workspace::tests::old_dismiss_and_invoke_do_not_consume_a_newer_menu ... ok
test app::text_workspace::tests::only_valid_explicit_group_and_resize_intent_cancel_pending_navigation ... ok
test app::text_workspace::tests::queued_toolbar_request_cannot_retarget_after_source_change ... ok
test app::text_workspace::tests::reference_groups_and_scroll_survive_tabs_and_reject_old_visits_and_queries ... ok
test app::text_workspace::tests::reset_removes_ui_and_publication_authority_and_resize_rejects_nan ... ok
test app::text_workspace::tests::retained_primary_and_related_targets_cannot_replay_after_hide_or_problems_references_problems ... ok
test app::text_workspace::tests::source_and_property_drafts_keep_find_and_text_undo_without_model_application ... FAILED
test app::text_workspace::tests::stale_retained_group_can_expand_without_navigating_or_applying_drafts ... ok
test app::transition_context_tests::explicit_behavior_internal_and_process_roots_keep_their_workspace_without_creating_a_view ... ok
test app::transition_context_tests::explicit_destination_is_honored_and_ordinary_work_transition_still_places_in_architecture ... ok
test app::transition_context_tests::machine_and_typed_action_transitions_resolve_the_owner_and_reusing_that_context_retains_camera ... ok
test app::transition_context_tests::rejected_source_writeback_keeps_review_and_navigation_and_invalid_draft_still_blocks_start ... ok
test app::transition_context_tests::scenario_transition_focuses_requested_counterpart_and_preserves_unrelated_views_in_both_directions ... ok
test app::view_copy_tests::copying_architecture_keeps_architecture_even_with_a_retained_state_view ... ok
test app::view_copy_tests::copying_the_current_state_view_uses_its_own_identity_and_is_one_source_undo ... ok
test app::view_copy_tests::duplicate_rejection_preserves_an_incomplete_source_buffer ... ok
test app::view_copy_tests::duplicate_rejection_preserves_invalid_property_and_pending_behavior_drafts ... ok
test app::view_copy_tests::stale_copy_does_not_apply_an_unrelated_valid_property_draft ... ok
test behavior::contextual_source_tests::contextual_source_app_checkpoint_restores_inner_raw_draft_without_model_adoption ... ok
test behavior::contextual_source_tests::contextual_source_app_empty_actions_and_child_open_refuse_other_raw_editors ... ok
test behavior::contextual_source_tests::contextual_source_app_modal_escape_then_child_back_then_parent_cancel_preserve_accepted_source ... ok
test behavior::contextual_source_tests::contextual_source_back_remains_available_after_owner_deletion_and_with_dirty_editors ... ok
test behavior::contextual_source_tests::contextual_source_back_retains_parent_and_rejects_late_child_event ... ok
test behavior::contextual_source_tests::contextual_source_default_consumer_name_has_stable_alias_and_correlated_selection ... ok
test behavior::contextual_source_tests::contextual_source_deleted_owner_view_retains_draft_instead_of_panicking_or_using_fallback ... ok
test behavior::contextual_source_tests::contextual_source_empty_history_reports_no_change_and_success_requires_a_real_history_step ... ok
test behavior::contextual_source_tests::contextual_source_existing_choice_prunes_staged_dependency ... ok
test behavior::contextual_source_tests::contextual_source_failed_source_budget_preserves_both_drafts_and_accepted_bytes ... ok
test behavior::contextual_source_tests::contextual_source_incomplete_recovered_kind_reports_error_without_panicking ... ok
test behavior::contextual_source_tests::contextual_source_inserts_work_on_the_exact_guarded_link_and_refuses_exchange_identity_conflict ... ok
test behavior::contextual_source_tests::contextual_source_lifelines_stage_exact_separate_records_and_one_history_entry ... ok
test behavior::contextual_source_tests::contextual_source_machine_before_any_owner_creates_optional_view_atomically ... ok
test behavior::contextual_source_tests::contextual_source_mounted_small_editor_keeps_back_and_use_outside_field_scroll ... ok
test behavior::contextual_source_tests::contextual_source_nested_semantic_parent_is_explicit_and_revalidated ... ok
test behavior::contextual_source_tests::contextual_source_new_callee_lifeline_preserves_caller_bindings_as_an_explicit_warning ... ok
test behavior::contextual_source_tests::contextual_source_old_empty_action_cannot_open_a_previous_owner_or_layer ... ok
test behavior::contextual_source_tests::contextual_source_original_document_remains_bound_after_back_or_choosing_existing ... ok
test behavior::contextual_source_tests::contextual_source_owner_first_can_return_to_an_unnamed_machine_without_losing_source ... ok
test behavior::contextual_source_tests::contextual_source_recovery_keeps_inner_raw_fields_and_refuses_deleted_or_changed_owner ... ok
test behavior::contextual_source_tests::contextual_source_second_system_and_role_machine_owner_refuse_without_fallback ... ok
test behavior::contextual_source_tests::contextual_source_work_uses_reserved_contribution_and_link_ids_and_one_undo ... ok
test behavior::creation::app_tests::app_choosing_another_behavior_or_layer_cannot_commit_a_creation_draft ... ok
test behavior::creation::app_tests::app_creation_opens_the_actual_new_owner_instead_of_first_or_previously_active_behavior ... ok
test behavior::creation::app_tests::app_first_captured_escape_dismisses_file_or_pending_overlay_before_creation ... ok
test behavior::creation::app_tests::app_lesson_request_cancel_retains_creation_then_escape_discards_only_the_draft ... ok
test behavior::creation::app_tests::app_machine_behavior_submit_opens_its_opted_in_view_as_one_undoable_transaction ... ok
test behavior::creation::app_tests::app_new_never_auto_applies_valid_or_invalid_property_and_source_drafts ... ok
test behavior::creation::app_tests::app_recovered_rootless_sa_creation_retains_layer_ids_and_other_raw_drafts ... ok
test behavior::creation::app_tests::app_stale_layer_open_never_starts_or_replaces_a_draft ... ok
test behavior::creation::tests::all_four_viewpoints_are_explicit_and_survive_source_history_reopen ... ok
test behavior::creation::tests::cancel_and_illegal_family_layer_switches_never_create_model_objects ... ok
test behavior::creation::tests::corrupted_recovery_and_reserved_identity_collision_refuse_without_repairing_raw_values ... ok
test behavior::creation::tests::creation_selection_rejects_changed_scenario_body_and_post_creation_operations ... ok
test behavior::creation::tests::machine_requires_valid_owner_and_first_view_adds_no_region_or_state ... ok
test behavior::creation::tests::mounted_creation_keeps_actions_visible_and_renders_only_six_owner_candidates ... ok
test behavior::creation::tests::oa_process_and_sa_chain_keep_exact_names_root_ownership_and_one_history_entry ... ok
test behavior::creation::tests::optional_context_collapses_without_losing_authored_reference_or_raw_search ... ok
test behavior::creation::tests::owner_search_is_name_ordered_filtered_and_page_sized_not_a_catalog ... ok
test behavior::creation::tests::post_commit_selection_is_correlated_with_exact_created_behavior_and_view ... ok
test behavior::creation::tests::recovery_preserves_exact_raw_inputs_reserved_ids_and_revalidates_stale_owner ... ok
test behavior::creation::tests::rejected_source_transaction_keeps_draft_and_every_accepted_source_byte ... ok
test behavior::creation::tests::repeated_owner_names_remain_distinguishable_by_searchable_parent_context_and_alias ... ok
test behavior::direct_canvas_tests::direct_alt_execution_stops_each_operand_at_its_reply_and_marks_open_operand ... ok
test behavior::direct_canvas_tests::direct_bounds_change_during_held_drag_never_commits_old_slot ... ok
test behavior::direct_canvas_tests::direct_clicked_occurrence_capture_cancels_on_view_and_context_changes ... ok
test behavior::direct_canvas_tests::direct_context_escape_unfocus_and_pending_form_cancel_gestures ... ok
test behavior::direct_canvas_tests::direct_drag_and_click_click_use_ordered_sources_and_publish_once ... ok
test behavior::direct_canvas_tests::direct_execution_span_ends_at_its_correlated_reply_and_marks_an_open_call ... ok
test behavior::direct_canvas_tests::direct_scroll_resize_and_bounds_changes_cancel_captured_slots ... ok
test behavior::direct_canvas_tests::direct_scrolled_canvas_maps_raw_pointer_events_to_the_visible_slot ... ok
test behavior::direct_canvas_tests::direct_selected_handle_reorders_and_hits_keep_semantic_identity ... ok
test behavior::direct_canvas_tests::reused_exchange_messages_display_their_distinct_occurrence_names ... ok
test behavior::scenario::data_contract_tests::large_payload_has_one_editor_with_reachable_field_and_authored_pages ... ok
test behavior::scenario::data_contract_tests::recursive_browsing_up_and_root_keep_values_and_report_the_depth_limit ... ok
test behavior::scenario::data_contract_tests::recursive_value_focus_exposes_authored_leaf_and_phase_changes_retain_surviving_keys ... ok
test behavior::scenario::data_contract_tests::reply_call_picker_previews_the_same_value_reset_as_selecting_another_exchange ... ok
test behavior::scenario::data_contract_tests::scenario_form_commits_two_reused_record_values_and_correlated_reply_atomically ... ok
test behavior::scenario::direct_tests::direct_busy_save_keeps_observed_scroll_current_for_the_next_pointer_gesture ... ok
test behavior::scenario::direct_tests::direct_clicked_occurrence_rejects_stale_slots_and_retains_recoverable_drafts ... ok
test behavior::scenario::direct_tests::direct_clicked_occurrences_use_root_and_operand_slots_with_exact_source_history ... ok
test behavior::scenario::direct_tests::direct_exchange_compatibility_browsing_preserves_final_slot_validation ... ok
test behavior::scenario::direct_tests::direct_exchange_picker_is_bounded_and_browsing_keeps_pending_values ... ok
test behavior::scenario::direct_tests::direct_five_hundred_exchange_choice_render_probe ... ok
test behavior::scenario::direct_tests::direct_form_keeps_the_same_canvas_in_the_widget_tree ... ok
test behavior::scenario::direct_tests::direct_middle_pair_insertion_is_one_exact_source_and_model_undo ... ok
test behavior::scenario::direct_tests::direct_operand_pair_keeps_parent_sequence_and_cannot_reorder_across_operands ... ok
test behavior::scenario::direct_tests::direct_reply_choices_cache_keeps_typing_fast_and_revalidates_changed_contexts ... ok
test behavior::scenario::direct_tests::direct_reply_choices_validate_the_actual_slot_and_reorder_rejects_reverse_order ... ok
test behavior::scenario::direct_tests::direct_scenario_reference_navigation_blocks_pending_drafts_and_stale_contexts ... ok
test behavior::scenario::direct_tests::direct_scenario_reference_navigation_retains_each_exact_caller_without_history ... ok
test behavior::scenario::direct_tests::direct_scenario_reference_return_survives_rename_and_rejects_deleted_or_changed_use ... ok
test behavior::scenario::operation_tests::operation_gui_async_picker_uses_request_root_and_nested_directions_without_erasing_rejected_values ... ok
test behavior::scenario::operation_tests::operation_gui_selects_two_parameterless_allocations_without_inventing_refinement_and_reply_derives_call ... ok
test behavior::scenario::operation_tests::operation_gui_unresolved_and_disabled_selection_recovery_preserves_rejected_raw_values ... ok
test behavior::scenario::tests::fragment_operands_accept_paired_messages_through_normal_destination_picker ... ok
test behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent ... ok
test behavior::scenario::tests::invalid_lifecycle_edit_keeps_draft_and_timer_has_no_global_exchange ... ok
test behavior::scenario::tests::lifeline_picker_uses_core_viewpoint_contract ... ok
test behavior::scenario::tests::reverse_communication_canvas_choices_and_correlated_reply_share_core_direction ... ok
test behavior::scenario::tests::scenario_reuse_requires_explicit_compatible_bindings ... ok
test behavior::scenario::tests::tagged_scenario_commit_is_not_redirected_by_other_editor_events ... ok
test behavior::scenario::workspace::tests::scenario_workspace_allocates_remaining_height_and_pins_actions_at_minimum_and_wide_sizes ... ok
test behavior::scenario::workspace::tests::scenario_workspace_caller_restores_actual_mounted_canvas_and_shelf_with_camera ... ok
test behavior::scenario::workspace::tests::scenario_workspace_canvas_and_form_scroll_survive_disclosures_focus_width_and_resize ... ok
test behavior::scenario::workspace::tests::scenario_workspace_choosing_tools_preserves_valid_and_invalid_pending_editors ... ok
test behavior::scenario::workspace::tests::scenario_workspace_fit_reobserves_same_sized_owner_and_document_changes ... ok
test behavior::scenario::workspace::tests::scenario_workspace_fit_uses_measured_inner_viewport_and_rejects_nonfinite_inputs ... ok
test behavior::scenario::workspace::tests::scenario_workspace_open_and_back_restore_owner_and_mounted_scroll_after_preselection ... ok
test behavior::scenario::workspace::tests::scenario_workspace_scaled_and_scrolled_scene_keeps_clicked_slots_and_message_endpoints ... ok
test behavior::scenario::workspace::tests::scenario_workspace_scaled_nested_occurrences_and_reorder_keep_exact_sequence_identity ... ok
test behavior::scenario::workspace::tests::scenario_workspace_viewport_events_are_passive_guarded_and_do_not_apply_raw_forms ... ok
test behavior::scenario::workspace::tests::scenario_workspace_whole_app_canvas_tree_survives_pending_shelves_and_focus ... ok
test behavior::scenario_scroll::tests::direct_scenario_caller_restores_mounted_scroll_once_with_clamping_and_app_receipt ... ok
test behavior::scenario_scroll::tests::direct_scenario_restore_cannot_scroll_another_document_owner_or_process_view ... ok
test behavior::scenario_scroll::tests::direct_scroll_mounted_identity_resets_navigation_but_preserves_edits_before_first_report ... ok
test behavior::scenario_scroll::tests::direct_scroll_observer_reports_actual_initial_clamped_and_remounted_offsets_once ... ok
test behavior::scenario_scroll::tests::independent_process_owner_change_resets_actual_scroll_offsets ... ok
test behavior::source_draft::layout_tests::contextual_source_layout_initial_essentials_fit_short_composed_host_with_real_paragraphs ... ok
test behavior::source_draft::layout_tests::contextual_source_layout_long_parent_wraps_after_visible_name_without_losing_raw_data ... ok
test behavior::source_draft::layout_tests::contextual_source_layout_visible_kind_click_keeps_choice_explicit_and_name_input_works ... ok
test behavior::state_canvas::tests::context_menu_keeps_window_anchor_and_explicit_placement_identity ... ok
test behavior::state_canvas::tests::context_tool_and_pending_form_changes_cancel_mutating_gestures ... ok
test behavior::state_canvas::tests::creation_uses_the_explicit_deepest_owner_and_never_a_fallback_ancestor ... ok
test behavior::state_canvas::tests::drag_uses_ordered_release_at_each_zoom_and_moves_descendants_in_one_undo ... ok
test behavior::state_canvas::tests::escape_and_view_switch_discard_the_armed_transition_source ... ok
test behavior::state_canvas::tests::internal_rows_and_pseudostate_hits_use_shared_persisted_geometry ... ok
test behavior::state_canvas::tests::ordered_stationary_click_does_not_move_on_later_motion_in_the_same_batch ... ok
test behavior::state_canvas::tests::pan_is_button_scoped_read_only_and_hover_does_not_reproject_the_scene ... ok
test behavior::state_canvas::tests::pseudostate_names_avoid_rightward_and_downward_routes_and_share_hit_bounds ... ok
test behavior::state_canvas::tests::relayout_does_not_turn_a_transition_click_into_a_drag_or_pan ... ok
test behavior::state_canvas::tests::selected_endpoint_reconnect_preserves_identity_and_requires_handle_motion ... ok
test behavior::state_canvas::tests::selection_relayout_does_not_move_nodes_or_change_drag_distance ... ok
test behavior::state_canvas::tests::stacked_symbol_names_avoid_each_other_and_are_independent_of_input_order ... ok
test behavior::state_canvas::tests::transition_supports_click_click_and_drag_without_coalesced_accidental_edges ... ok
test behavior::state_canvas::tests::typed_state_actions_are_named_selectable_rows_before_internal_transitions_and_regions ... ok
test behavior::state_canvas::tests::viewport_uses_full_canvas_coordinates_and_republishes_for_a_new_context ... ok
test behavior::state_edit::tests::an_empty_machine_has_an_explicit_visible_owner_for_first_region_creation ... ok
test behavior::state_edit::tests::connect_preserves_self_loops_and_rejects_hidden_or_incompatible_vertices ... ok
test behavior::state_edit::tests::creation_places_missing_ancestry_and_unfolds_existing_owners_atomically ... ok
test behavior::state_edit::tests::every_context_component_and_invalid_ownership_are_checked_before_planning ... ok
test behavior::state_edit::tests::placing_existing_content_and_moving_a_folded_group_preserve_other_views_and_semantics ... ok
test behavior::state_edit::tests::reconnect_preserves_the_complete_record_and_replaces_cardinality_in_place ... ok
test behavior::state_edit::tests::view_initializes_only_its_machine_in_one_source_and_model_history_entry ... ok
test behavior::states::tests::internal_choice_targets_self_and_edit_preserves_identity_and_description ... ok
test behavior::states::tests::invalid_pseudo_trigger_keeps_draft_and_does_not_create_orphan_event ... ok
test behavior::states::tests::selected_composite_owns_new_region_and_history_uses_selected_region ... ok
test behavior::states::tests::timeout_and_work_trigger_commit_together_roundtrip_and_undo ... ok
test behavior::tests::failed_document_commit_retains_typed_transition_and_time_event_for_repair ... ok
test behavior::tests::legacy_process_and_chain_keep_their_ordered_exchange_scene ... ok
test behavior::tests::one_behavior_form_survives_start_edit_and_unrelated_cancel_until_commit ... ok
test behavior::tests::recovery_preserves_distinct_qualified_value_paths_and_rejects_invalid_payload_atomically ... ok
test behavior::tests::recovery_retains_each_incomplete_behavior_form_without_executing_it ... ok
test behavior::tests::selecting_state_transition_keeps_its_behavior_context ... ok
test behavior::topology::contextual::tests::qualified_link_gui_deleted_transient_selection_does_not_seed_or_hide_retained_authored_endpoint ... ok
test behavior::topology::contextual::tests::qualified_link_gui_nested_preview_folds_only_the_exact_reference_instance ... ok
test behavior::topology::contextual::tests::qualified_link_gui_rejected_endpoint_keeps_exact_raw_intent_after_recovery ... ok
test behavior::topology::contextual::tests::qualified_link_gui_repeated_sources_remain_distinct_and_apply_has_exact_source_history ... ok
test behavior::topology::contextual::tests::qualified_link_gui_scope_paging_and_search_reach_tail_beyond_512_without_losing_endpoints ... ok
test behavior::topology::contextual_routing::tests::contextual_route_native_x_to_first_b_keeps_visible_arrow_above_background_and_clear_of_other_references ... ok
test behavior::topology::contextual_routing::tests::contextual_route_nested_visible_hidden_and_parallel_paths_keep_exact_addresses_and_legacy_routes ... ok
test behavior::topology::contextual_routing::tests::contextual_route_shared_anchor_preserves_selected_direct_reconnect_at_fit_and_full_scale ... ok
test behavior::topology::direct_tests::direct_process_append_preserves_existing_order_and_rejects_incompatible_exchange ... ok
test behavior::topology::direct_tests::direct_process_controls_allow_incomplete_work_and_preserve_branch_semantics ... ok
test behavior::topology::direct_tests::direct_process_empty_first_and_second_exchange_keep_the_same_interactive_renderer ... ok
test behavior::topology::direct_tests::direct_process_imported_order_is_projected_without_mutation_and_first_canvas_edit_is_atomic ... ok
test behavior::topology::direct_tests::direct_process_incompatible_imported_order_rejects_conversion_without_losing_draft ... ok
test behavior::topology::direct_tests::direct_process_nested_source_reopen_and_api_command_use_one_transaction ... ok
test behavior::topology::direct_tests::direct_process_oa_sa_repeated_occurrences_share_sources_and_split_one_guarded_link ... ok
test behavior::topology::direct_tests::direct_process_palette_preserves_fit_and_manual_camera ... ok
test behavior::topology::direct_tests::direct_process_pending_form_diff_retains_the_canvas_scroll_state ... ok
test behavior::topology::direct_tests::direct_process_production_click_click_drag_insert_and_scroll_coordinates ... ok
test behavior::topology::direct_tests::direct_process_production_endpoint_and_peer_reorder_handles_publish_exact_identity ... ok
test behavior::topology::direct_tests::direct_process_production_stale_focus_scroll_bounds_and_pending_cancel ... ok
test behavior::topology::direct_tests::direct_process_readable_default_fit_expansion_and_bounded_choices ... ok
test behavior::topology::direct_tests::direct_process_real_picker_stays_bounded_and_search_keeps_selection ... ok
test behavior::topology::direct_tests::direct_process_reconnect_delete_and_reorder_preserve_other_paths_and_sources ... ok
test behavior::topology::direct_tests::direct_process_reuse_preview_is_local_expandable_and_recursive_sources_are_rejected ... ok
test behavior::topology::direct_tests::direct_process_scaled_control_and_link_gestures_use_visible_positions ... ok
test behavior::topology::direct_tests::direct_process_specific_parallel_link_and_incompatible_adjacency ... ok
test behavior::topology::direct_tests::direct_process_three_ordered_exchanges_preserve_outer_paths_on_insertion ... ok
test behavior::topology::tests::cycle_projection_terminates_and_retains_actual_links ... ok
test behavior::topology::tests::empty_process_can_start_through_normal_authoring_events ... ok
test behavior::topology::tests::fitting_a_branch_keeps_all_nodes_visible_and_selection_uses_scaled_coordinates ... ok
test behavior::topology::tests::guarded_branch_is_one_transaction_with_distinct_source_identities ... ok
test behavior::topology::tests::insertion_picker_only_offers_work_matching_adjacent_exchanges ... ok
test behavior::topology::tests::legacy_branch_insertion_replaces_only_the_selected_implied_link ... ok
test behavior::topology::tests::legacy_edit_preserves_order_and_new_work_in_one_undo ... ok
test behavior::topology::tests::long_engineering_identifiers_stay_inside_label_width ... ok
test behavior::topology::tests::process_fit_canvas_selection_ignores_retained_ordered_page_scroll ... ok
test behavior::topology::tests::process_fit_disclosures_and_focus_preserve_rejected_raw_draft_and_accepted_source ... ok
test behavior::topology::tests::process_fit_uses_measured_height_and_reports_minimum_without_changing_manual_zoom ... ok
test behavior::topology::tests::reusable_preview_preserves_identity_and_filters_recursive_sources ... ok
test behavior::topology::tests::stale_or_invalid_submit_preserves_inputs_and_creates_nothing ... ok
test behavior::topology::tests::unlinked_contributions_do_not_gain_fictional_edges ... ok
test behavior::topology::view::layout_tests::direct_process_pending_editor_uses_available_height_and_keeps_actions_visible ... ok
test behavior::topology::view::layout_tests::process_fit_layout_disclosures_and_pending_editor_keep_real_manual_canvas_scroll ... ok
test behavior::topology::view::layout_tests::process_fit_layout_measures_remaining_canvas_with_details_forms_and_window_resize ... ok
test behavior::topology::view::layout_tests::process_fit_whole_app_focus_and_disclosures_retain_canvas_tree_with_pending_raw_form ... ok
test connection_edit::tests::cancel_navigation_revision_and_dirty_drafts_cannot_commit_a_stale_connection ... ok
test connection_edit::tests::visible_endpoint_drawing_commits_ports_and_exchange_once_with_exact_history ... ok
test connection_tool::tests::boundary_candidates_match_core_orientation_and_reject_same_owner_or_mixed_kind ... ok
test connection_tool::tests::boundary_feasibility_keeps_interface_warnings_and_final_carried_item_checks ... ok
test connection_tool::tests::boundary_feasibility_rejects_dangling_identity_in_a_malformed_element_map ... ok
test connection_tool::tests::direct_connections_share_exact_source_history_and_model_parity ... ok
test connection_tool::tests::explicit_function_ports_keep_owners_contracts_and_do_not_invent_carried_items ... ok
test connection_tool::tests::final_command_validation_rejects_invalid_models_without_mutation ... ok
test connection_tool::tests::function_cards_use_unique_reuse_and_atomic_generation_when_ambiguous ... ok
test connection_tool::tests::mismatched_port_owners_layers_and_contract_kinds_are_not_candidates ... ok
test connection_tool::tests::operational_communication_uses_participants_without_creating_ports ... ok
test connection_tool::tests::operational_interaction_targets_only_distinct_oa_activities ... ok
test context_menu::tests::a_new_context_token_cannot_reuse_the_previous_mouse_press_or_scroll ... ok
test context_menu::tests::actions_area_does_not_swallow_first_independent_click_after_overlay_consumed_its_release ... ok
test context_menu::tests::anchors_outside_the_window_and_nonfinite_input_stay_bounded ... ok
test context_menu::tests::clicking_disabled_or_dragging_off_an_action_never_executes_it ... ok
test context_menu::tests::coalesced_dismissal_release_does_not_swallow_the_next_independent_click ... ok
test context_menu::tests::empty_and_disabled_only_menus_still_capture_keys_and_escape_closes ... ok
test context_menu::tests::keyboard_skips_headers_separators_and_disabled_actions_and_invokes_once ... ok
test context_menu::tests::outside_dismissal_consumes_press_and_release_across_controlled_close ... ok
test context_menu::tests::reconstructed_overlay_uses_retained_layout_for_rows_and_hit_testing ... ok
test context_menu::tests::retained_overlay_layout_keeps_measured_width_and_scrollbar_after_reconstruction ... ok
test context_menu::tests::tall_menu_clamps_to_viewport_and_keyboard_wheel_and_scrollbar_reach_the_end ... ok
test data_values::tests::phase_choices_keep_reused_record_addresses_distinct ... ok
test data_values::tests::recursive_picker_starts_with_distinct_leaf_names_and_sorts_them ... ok
test data_values::tests::recursive_records_can_be_drilled_into_and_valid_imported_paths_resolve ... ok
test data_values::tests::reference_parameter_stops_descent_and_unspecified_direction_remains_visible ... ok
test data_values::tests::roots_and_one_hop_children_do_not_expand_unrelated_payload_branches ... ok
test data_view::tests::allocation_rows_edit_relationship_identity_and_remove_only_that_allocation ... ok
test data_view::tests::association_creation_is_a_separate_relation_with_editable_end_contracts ... ok
test data_view::tests::browsing_pages_preserves_invalid_numeric_draft_and_inherited_allocation_identity ... ok
test data_view::tests::contextual_data_actions_use_typed_defaults_and_one_undo ... ok
test data_view::tests::large_inherited_dictionary_has_bounded_widgets_and_every_original_field_is_reachable ... ok
test diagnostic_input::tests::already_captured_terminal_cancels_child_without_activation_or_lingering_press ... ok
test diagnostic_input::tests::captured_terminal_cancellation_preserves_same_publication_focusable_child_state ... ok
test diagnostic_input::tests::current_primary_and_related_mouse_clicks_survive_same_publication_diff ... ok
test diagnostic_input::tests::current_touch_activates_primary_and_related_and_cancel_does_not_activate ... ok
test diagnostic_input::tests::fresh_mouse_press_after_missing_stale_release_can_activate_current_row ... ok
test diagnostic_input::tests::hidden_zero_height_scroller_delivers_cancelled_mouse_and_touch_terminals_to_guard ... ok
test diagnostic_input::tests::hidden_zero_size_list_consumes_release_outside_old_bounds_once ... ok
test diagnostic_input::tests::missed_press_is_ignored_and_dragging_release_outside_does_not_activate ... ok
test diagnostic_input::tests::negative_control_iced_button_retargets_a_press_after_plain_tree_diff ... ok
test diagnostic_input::tests::negative_control_plain_focusable_row_migrates_activation_to_replacement ... ok
test diagnostic_input::tests::negative_control_removing_unguarded_rows_exposes_background_release ... ok
test diagnostic_input::tests::outer_scroll_offset_survives_same_and_changed_publications ... ok
test diagnostic_input::tests::replaced_primary_and_related_rows_consume_stale_release_then_accept_new_click ... ok
test diagnostic_input::tests::replaced_touch_consumes_lift_or_cancel_even_when_hidden ... ok
test diagnostic_input::tests::same_publication_missing_terminal_recovers_on_fresh_mouse_or_touch_down ... ok
test diagnostic_input::tests::same_publication_new_visit_cancels_armed_rows_without_a_hidden_tree_frame ... ok
test diagnostic_input::tests::same_publication_preserves_focus_but_replacement_never_inherits_activation ... ok
test diagnostic_input::tests::stale_release_does_not_bubble_to_real_background_controls ... ok
test diagnostic_input::tests::stale_touch_release_does_not_disarm_a_new_current_gesture ... ok
test diagnostic_input::tests::unrelated_finger_or_mouse_release_cannot_complete_another_fingers_press ... ok
test diagram::lifecycle_tests::menu_reset_and_draw_use_fresh_open_context ... ok
test diagram::lifecycle_tests::middle_and_arrow_panning_preserve_source_and_history ... ok
test diagram::lifecycle_tests::motion_after_release_must_not_move_clicked_port ... ok
test diagram::lifecycle_tests::motion_after_source_click_release_must_not_create_connection ... ok
test diagram::pointer_tests::coalesced_fe_ports_commit_once_through_app_and_source_history ... ok
test diagram::pointer_tests::coalesced_port_drag_commits_once_through_app_and_source_history ... ok
test diagram::pointer_tests::drag_from_already_selected_stationary_port_keeps_source_between_batches ... ok
test diagram::pointer_tests::menu_captured_motion_must_not_turn_following_click_into_old_port_drag ... ok
test diagram::pointer_tests::modal_and_stale_epoch_block_queued_connection_and_port_commits ... ok
test diagram::port_hit_tests::coincident_ports_keep_selection_then_use_stable_identity ... ok
test diagram::port_hit_tests::nearest_port_center_wins_on_all_borders_and_zoom_levels ... ok
test diagram::port_hit_tests::nested_owner_palette_selection_drag_and_context_menu_pick_the_same_port ... ok
test diagram::port_labels::tests::leaving_and_reentering_keeps_suppression_until_each_held_button_releases ... ok
test diagram::port_labels::tests::menu_epoch_clears_suppression_when_the_overlay_consumes_release ... ok
test diagram::port_labels::tests::outside_presses_do_not_suppress_and_cancel_or_focus_loss_clear_held_buttons ... ok
test diagram::port_labels::tests::passive_layer_leaves_port_drag_selection_and_commit_with_the_interactive_canvas ... ok
test diagram::tests::association_end_contracts_share_svg_geometry_and_select_without_moving_name_label ... ok
test diagram::tests::bend_gestures_use_screen_hit_radius_and_commit_one_undo_at_three_zooms ... ok
test diagram::tests::coincident_line_hit_retains_the_selected_connection ... ok
test diagram::tests::connection_gestures_pick_real_ports_and_commit_coalesced_drag_at_every_zoom ... ok
test diagram::tests::detached_label_selects_connection_and_occluding_card_owns_its_hit ... ok
test diagram::tests::dragging_a_child_previews_the_same_enclosure_and_ports_as_commit ... ok
test diagram::tests::fast_drags_commit_the_release_cursor_without_a_final_motion_event ... ok
test diagram::tests::implicit_port_click_selects_semantics_and_drag_preview_svg_share_anchors ... ok
test diagram::tests::route_cache_ignores_pan_zoom_and_cancelled_drag_cannot_commit ... ok
test diagram::tests::routed_svg_has_same_polyline_label_and_bounds_as_canvas_scene ... ok
test diagram::tests::svg_distinguishes_inferred_work_allocation_from_direct_allocation ... ok
test diagram::tests::svg_preserves_visible_exchange_labels_and_capability_stereotypes ... ok
test diagram::tests::typed_function_glyphs_and_unoriented_standard_connections_have_distinct_svg ... ok
test diagram::view_options_tests::communication_svg_uses_saved_visibility_labels_and_direction ... ok
test document::alias_rename::tests::each_identity_family_changes_only_authored_alias_roles_and_one_history_entry ... ok
test document::alias_rename::tests::equal_bytes_undo_replay_cross_document_and_exhausted_revision_refuse ... ok
test document::alias_rename::tests::exact_history_capacity_admits_immediate_undo_and_rejects_larger_candidate ... ok
test document::alias_rename::tests::highlighted_keyword_alias_is_valid_without_normalizing_input ... ok
test document::alias_rename::tests::invalid_and_identical_aliases_preserve_live_state_and_redo ... ok
test document::alias_rename::tests::mint_and_commit_refuse_exhausted_or_inconsistent_live_history_estimate ... ok
test document::alias_rename::tests::mutable_public_preview_copies_cannot_change_prepared_authority ... ok
test document::alias_rename::tests::preview_retains_latest_saved_baseline_and_recovery_state ... ok
test document::save_as_tests::save_as_preserves_explicit_source_entry_changes_in_history ... ok
test document::save_as_tests::save_as_rebases_uniform_history_without_an_undo_step_or_lost_redo ... ok
test document::save_as_tests::save_as_rejects_included_filename_collisions_in_past_and_future_without_mutation ... ok
test document::save_as_tests::save_as_rejects_stale_or_content_changing_receipt_atomically ... ok
test document::tests::accepted_history_keeps_the_latest_hundred_complete_snapshots ... ok
test document::tests::altered_compiled_model_or_index_is_rejected_without_mutation ... ok
test document::tests::asynchronous_save_marks_its_snapshot_without_cleaning_later_edits ... ok
test document::tests::byte_budget_trims_oldest_history_without_discarding_a_large_current ... ok
test document::tests::cached_view_index_tracks_accepted_creation_undo_and_redo ... ok
test document::tests::comment_and_semantic_history_restore_exact_bytes_and_branch_together ... ok
test document::tests::creation_selects_the_single_uuid_persisted_in_source ... ok
test document::tests::invalid_project_is_rejected_before_format_can_normalize_it ... ok
test document::tests::nested_cross_file_reparent_and_source_edit_share_exact_history ... ok
test document::tests::no_op_command_or_source_apply_preserves_history_revision_and_redo ... ok
test document::tests::omitted_id_stabilization_remains_dirty_until_exact_source_is_saved ... ok
test document::tests::recreated_equal_record_does_not_inherit_deleted_source_ownership ... ok
test document::tests::rejected_compile_command_and_writeback_preserve_state_and_redo ... ok
test explorer::tests::collapse_and_search_retain_context_without_changing_collapse_state ... ok
test explorer::tests::deep_containment_and_search_keep_the_full_path_without_recursion ... ok
test explorer::tests::equal_names_have_stable_alias_and_identity_tie_breakers ... ok
test explorer::tests::perspective_isolation_and_allocations_do_not_change_containment ... ok
test explorer::tests::prefix_names_cannot_separate_a_parent_from_its_children ... ok
test forms::data_fields::tests::defaults_distinguish_absent_empty_and_typed_literals_with_escaped_unicode ... ok
test forms::data_fields::tests::field_browser_pages_every_direct_field_without_flattening_other_records ... ok
test forms::data_fields::tests::independent_review_combined_take_type_informs_actual_default_form_in_both_directions ... ok
test forms::data_fields::tests::numeric_bound_drafts_keep_partial_and_full_precision_values_out_of_accepted_state ... ok
test forms::data_fields::tests::selecting_qualified_path_preserves_expression_typed_before_the_next_render ... ok
test forms::data_fields::tests::semantic_reference_choices_follow_selected_mechanism_and_revert_on_keep ... ok
test forms::data_fields::tests::supertype_picker_excludes_descendants_and_keeps_original_inherited_field_identity ... ok
test forms::history_fields::tests::history_absent_baseline_and_empty_history_use_explicit_facts_and_exact_document_history ... ok
test forms::history_fields::tests::history_clear_discards_inactive_invalid_constructors_before_reusing_the_same_row ... ok
test forms::history_fields::tests::history_compound_value_and_constructor_variants_are_editable_without_live_context ... ok
test forms::history_fields::tests::history_deleted_keys_and_observation_uuids_remain_exact_and_duplicate_history_rejects ... ok
test forms::history_fields::tests::history_every_descriptor_fact_choice_matches_actual_closed_types_and_source_contract ... ok
test forms::history_fields::tests::history_exact_strings_do_not_confuse_uuid_shaped_prose_or_literal_keys_with_references ... ok
test forms::history_fields::tests::history_invalid_numbers_survive_constructor_switch_reorder_removal_and_recovery ... ok
test forms::history_fields::tests::history_missing_semantic_field_can_be_added_and_removed_without_touching_prose_or_live_objects ... ok
test forms::history_fields::tests::history_nested_optional_number_events_switch_absent_present_and_recover_invalid_raw ... ok
test forms::history_fields::tests::history_nested_uuid_and_list_events_preserve_present_values_and_tagged_item_branches ... ok
test forms::history_fields::tests::history_optional_uuid_and_text_seed_absence_without_inventing_observations ... ok
test forms::history_fields::tests::history_primitive_type_choices_remain_visible_inside_the_tagged_union ... ok
test forms::history_fields::tests::history_retained_text_constructors_follow_exact_mode_without_changing_the_observation ... ok
test forms::port_fields::tests::all_demo_records_roundtrip_through_graphical_and_escaped_string_drafts ... ok
test forms::port_fields::tests::boundary_choices_honor_draft_direction_same_kind_and_direct_interface_items ... ok
test forms::port_fields::tests::contract_choices_follow_owner_and_never_offer_legacy_or_oa_typed_ports ... ok
test forms::port_fields::tests::failed_shape_keeps_incomplete_text_and_saved_contract_payloads ... ok
test forms::port_fields::tests::functional_endpoints_require_owner_direction_and_items_but_retain_bad_current_choice ... ok
test forms::port_fields::tests::interface_roles_offer_participants_and_component_ports_independent_of_orientation ... ok
test forms::port_fields::tests::port_allocation_choices_use_actual_owner_direction_and_ignore_edited_relation ... ok
test forms::port_fields::tests::standard_switch_retains_incompatible_orientation_until_explicit_repair ... ok
test forms::port_fields::tests::switching_function_direction_preserves_invalid_items_and_each_authored_payload ... ok
test forms::tests::data_and_port_choices_are_typed_but_retain_invalid_current_values ... ok
test forms::tests::editing_allocation_offers_other_performers_without_counting_itself_twice ... ok
test forms::tests::moving_placement_and_changing_identity_is_one_lossless_undoable_edit ... ok
test forms::tests::parent_choices_reject_cycles_without_removing_clear_or_current_choice ... ok
test forms::tests::reply_and_reuse_forms_offer_semantically_compatible_references ... ok
test forms::tests::scenario_choices_respect_owner_and_exchange_layer ... ok
test forms::tests::semantic_port_group_choices_use_combined_owner_and_retain_invalid_transferred_items ... ok
test forms::tests::shared_perspective_change_keeps_payload_and_rejects_incompatible_dependencies ... ok
test forms::tests::state_observation_picker_keeps_work_lifelines_allocated_to_machine_owner ... ok
test forms::tests::state_placement_form_uses_draft_destination_membership_without_changing_other_views ... ok
test forms::tests::state_projection_form_keeps_string_variants_and_requires_a_typed_context ... ok
test forms::view_fields::tests::category_family_change_retains_members_until_explicit_correction ... ok
test forms::view_fields::tests::selective_view_property_apply_recovery_and_undo_preserve_semantics_and_empty_choices ... ok
test guide::tests::filtering_and_related_navigation_keep_selection_visible ... ok
test guide::tests::guide_topic_navigation_resets_only_article_and_same_topic_search_keeps_scroll ... ok
test guide::tests::search_finds_concepts_in_walkthroughs_and_api_reference ... ok
test home::tests::corrupt_future_and_oversized_history_are_preserved_with_usable_session_history ... ok
test home::tests::failed_metadata_replace_keeps_previous_history_and_reports_memory_only_entry ... ok
test home::tests::first_and_replaced_metadata_are_parseable_and_contain_no_model_bytes ... ok
test home::tests::forgotten_and_missing_files_never_change_the_model_or_other_entries ... ok
test home::tests::loading_missing_history_does_not_create_files_or_directories ... ok
test home::tests::malformed_entries_and_unknown_fields_never_become_open_requests ... ok
test home::tests::successful_local_history_is_bounded_ordered_deduplicated_and_durable ... ok
test home::tests::unavailable_location_can_reappear_on_refresh_without_losing_identity ... ok
test home::tests::walkthrough_uses_packaged_bundle_before_development_and_reports_missing_assets ... ok
test hosted::client::tests::hosted_endpoint_validation_redacts_secrets_and_preserves_proxy_paths ... ok
test hosted::client::tests::hosted_lost_publication_response_is_uncertain_without_retry ... ok
test hosted::client::tests::hosted_open_rejects_incoherent_envelopes_missing_etags_and_unstable_ids ... ok
test hosted::client::tests::hosted_oversized_local_bundle_is_rejected_before_network_admission ... ok
test hosted::client::tests::hosted_production_auth_proxy_prefix_and_located_rejection ... ok
test hosted::client::tests::hosted_production_roundtrip_preserves_comments_noops_and_conflicts ... ok
test hosted::client::tests::hosted_publication_race_keeps_receipt_identity_for_review ... ok
test hosted::client::tests::hosted_publication_retains_known_resource_after_failed_followup ... ok
test hosted::client::tests::hosted_put_preserves_an_opaque_etag_and_compiles_the_accepted_bundle ... ok
test hosted::client::tests::hosted_redirect_is_not_followed_or_retried_and_problem_tokens_are_redacted ... ok
test hosted::client::tests::hosted_response_limits_cover_declared_and_chunked_bodies ... ok
test hosted::client::tests::hosted_structured_mutation_failures_distinguish_precommit_rejections ... ok
test hosted::client::tests::hosted_timeout_and_disconnect_leave_mutation_outcomes_explicit ... ok
test model_menu::tests::add_bend_here_uses_context_point_and_one_source_aware_history_change ... ok
test model_menu::tests::late_menu_actions_do_not_dismiss_new_menu_or_cross_view_context ... ok
test model_menu::tests::menu_preserves_pending_properties_and_rejects_delayed_mutations ... ok
test model_menu::tests::pending_source_allows_file_navigation_but_disables_model_actions ... ok
test model_menu::tests::right_click_targets_actor_without_changing_selection_until_action ... ok
test model_menu::tests::show_from_explorer_places_unfolds_and_keeps_semantic_selection ... ok
test model_menu::tests::state_menu_folds_and_hides_only_its_captured_placement_and_rejects_stale_views ... ok
test model_menu::tests::state_menu_keeps_typed_creation_reachable_and_preserves_pending_properties ... ok
test navigation::tests::semantic_browser_finds_behavior_users_without_confusing_containment ... ok
test port_edit::tests::all_border_drags_commit_exact_preview_and_restore_automatic_anchors_in_history ... ok
test port_edit::tests::graphical_port_reparent_clears_old_anchors_in_the_same_history_operation ... ok
test port_preview::tests::functional_creation_identifies_new_and_reused_endpoints_and_owners ... ok
test port_preview::tests::legacy_split_discloses_endpoint_routing_item_origins_and_retained_evidence ... ok
test port_preview::tests::reused_boundary_shows_item_union_and_existing_allocating_facts ... ok
test port_preview::tests::synchronization_preview_exposes_contract_shrinkage_and_current_declaration_origin ... ok
test port_workflow::recovery_tests::port_recovery_retains_authored_contract_and_identity_but_rebuilds_preview ... ok
test port_workflow::tests::creating_typed_port_and_rejecting_stale_preview_preserve_drafts_and_identity ... ok
test port_workflow::tests::graphical_function_exchange_and_component_generation_commit_and_undo_whole_contracts ... ok
test port_workflow::tests::legacy_resolution_preserves_original_record_and_applies_as_one_undo ... ok
test port_workflow::tests::port_creation_keeps_owner_diagram_and_unfolds_in_the_same_undo ... ok
test port_workflow::tests::synchronization_uses_active_contract_instead_of_preserved_direction ... ok
test recovery::source5::tests::source5_fingerprint_preserves_historical_field_order_and_diagram_shape ... ok
test recovery::source5_tests::source4_checkpoint_remains_explicitly_unsupported_without_touching_disk ... ok
test recovery::source5_tests::source5_checkpoint_does_not_refresh_unrelated_clean_buffer_baseline ... ok
test recovery::source5_tests::source5_checkpoint_missing_identity_is_not_a_lossless_upgrade ... ok
test recovery::source5_tests::source5_checkpoint_old_diagram_property_shape_remains_editable ... ok
test recovery::source5_tests::source5_checkpoint_port_draft_replans_and_rejects_stale_base ... ok
test recovery::source5_tests::source5_checkpoint_preserves_dirty_invalid_text_and_baseline_exactly ... ok
test recovery::source5_tests::source5_checkpoint_preserves_distinct_unapplied_open_workspace ... ok
test recovery::source5_tests::source5_checkpoint_property_preserves_invalid_raw_input ... ok
test recovery::source5_tests::source5_checkpoint_upgrade_never_rewrites_checkpoint_or_origin ... ok
test recovery::source5_tests::source5_checkpoint_upgrades_only_header_and_clean_editor_baseline ... ok
test recovery::source5_tests::source5_checkpoint_workflow_rebinds_only_the_proven_old_revision ... ok
test recovery::source7_tests::source7_current_combined_contextual_and_operation_drafts_survive_without_execution ... ok
test recovery::source7_tests::source7_explicit_new_fields_cannot_enter_frozen_old_model_profiles ... ok
test recovery::source7_tests::source7_legacy_inactive_constructor_path_is_structural_but_raw_prose_is_not ... ok
test recovery::source7_tests::source7_legacy_profile_workflow_and_semantic_drafts_replan_with_exact_base ... ok
test recovery::source7_tests::source7_legacy_profiles_preserve_dirty_source_property_and_behavior_raw_fields ... ok
test recovery::source7_tests::source7_legacy_structural_intent_rejects_even_null_but_never_scans_raw_strings ... ok
test recovery::source7_tests::source7_legacy_view_selector_refuses_new_relation_kind_without_rewriting_checkpoint ... ok
test recovery::source7_tests::source7_recovers_nonempty_frozen_5_and_6_profiles_with_exact_historical_binding ... ok
test recovery::tests::altered_accepted_identity_and_unrecognized_raw_property_fields_reject ... ok
test recovery::tests::exact_source_and_unfinished_invalid_buffers_restore_without_model_overwrite ... ok
test recovery::tests::excess_retained_buffers_cannot_replace_the_last_recoverable_checkpoint ... ok
test recovery::tests::invalid_open_retains_distinct_accepted_model_and_repair_workspace ... ok
test recovery::tests::missing_includes_remain_reachable_repair_targets_without_fabricated_buffers ... ok
test recovery::tests::multiple_sessions_replace_only_their_own_checkpoint_and_corruption_is_retained ... ok
test recovery::tests::raw_invalid_property_number_survives_and_stays_rejected_until_repaired ... ok
test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_draft_cannot_target_an_unreserved_or_non_artifact_identity ... ok
test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_raw_variants_duplicate_addresses_and_unknown_fields_are_refused ... ok
test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_reservations_cannot_duplicate_or_claim_an_existing_identity_or_another_owner ... ok
test semantic_review::artifacts_recovery_falsifier_tests::legitimate_invalid_artifact_checkpoint_round_trips_and_prepares_only_after_explicit_repair ... ok
test semantic_review::artifacts_tests::artifact_candidate_is_a_complete_record_not_a_tombstone_or_unattached_creation_shortcut ... ok
test semantic_review::artifacts_tests::artifact_creation_and_identified_source_deletion_follow_core_metadata_and_history_boundary_both_directions ... ok
test semantic_review::artifacts_tests::artifact_gui_reserves_recovers_and_creates_only_after_all_seven_metadata_reviews_both_directions ... ok
test semantic_review::artifacts_tests::artifact_metadata_apply_and_exact_history_reset_are_one_source_preserving_undo_redo ... ok
test semantic_review::artifacts_tests::artifact_move_metadata_none_empty_and_invalid_raw_recovery_are_independent_both_directions ... ok
test semantic_review::artifacts_tests::artifact_moved_source_absence_deletes_but_destination_only_take_retains_both_directions ... ok
test semantic_review::attachments::tests::absent_attachment_payloads_migrate_v1_and_v2_and_source5_upgrade_requires_exact_legacy_base ... ok
test semantic_review::attachments::tests::addressed_attachment_candidates_equal_direct_core_oracle_both_directions ... ok
test semantic_review::attachments::tests::attachment_apply_is_one_exact_source_and_history_undo_redo ... ok
test semantic_review::attachments::tests::attachment_candidate_and_direct_record_keep_conflict_on_actual_slot_without_losing_drafts ... ok
test semantic_review::attachments::tests::attachment_pair_drafts_survive_family_switch_and_restore_without_mutating_model ... ok
test semantic_review::attachments::tests::functional_incident_source_requires_explicit_matching_port_review_in_one_atomic_candidate ... ok
test semantic_review::attachments::tests::parent_and_each_endpoint_candidate_preserve_other_fields_and_match_core_both_directions ... ok
test semantic_review::attachments::tests::raw_rejected_attachment_reference_survives_recovery_and_wrong_scope_is_rejected ... ok
test semantic_review::attachments::tests::source_only_absence_and_explicit_absent_endpoint_are_different ... ok
test semantic_review::attachments::tests::two_incident_endpoint_candidates_form_one_complete_record_and_recover_invalid_excluded_draft ... ok
test semantic_review::batch_tests::batch_apply_is_one_exact_source_and_history_undo_redo_roundtrip ... ok
test semantic_review::batch_tests::batch_candidate_conflict_keeps_both_raw_values_and_keep_is_a_real_constraint ... ok
test semantic_review::batch_tests::batch_complete_constructor_cannot_erase_another_rows_new_literal ... ok
test semantic_review::batch_tests::batch_constructor_retirement_conflicts_with_another_rows_kept_bound_in_both_orders ... ok
test semantic_review::batch_tests::batch_delayed_text_targets_its_original_row_and_facet_without_switching_focus ... ok
test semantic_review::batch_tests::batch_excluded_invalid_row_survives_focus_reopen_and_v2_recovery ... ok
test semantic_review::batch_tests::batch_first_equal_constructor_acknowledgement_allows_an_independent_bound ... ok
test semantic_review::batch_tests::batch_joint_bounds_use_one_candidate_and_match_an_independent_atomic_core_oracle ... ok
test semantic_review::batch_tests::batch_reverse_distinct_targets_work_and_reverse_convergence_is_explicit ... ok
test semantic_review::batch_tests::batch_v2_rejects_duplicate_included_sources_bad_addresses_and_stale_model ... ok
test semantic_review::batch_tests::category_family_and_members_are_independent_core_checked_facets_both_directions ... ok
test semantic_review::batch_tests::recovered_trace_picker_names_existing_trace_instead_of_deleted_reference ... ok
test semantic_review::batch_tests::rejected_direction_switch_at_row_limit_preserves_every_recoverable_draft ... ok
test semantic_review::compose::diagnostic_tests::distinct_review_conflict_keeps_trace_aliases_even_when_names_are_equal ... ok
test semantic_review::compose::diagnostic_tests::reserved_creation_conflict_uses_its_rows_seed_instead_of_a_deleted_reference ... ok
test semantic_review::compose::diagnostic_tests::same_review_presence_and_owner_conflict_names_both_facets_and_owners_and_retains_drafts ... ok
test semantic_review::compose::diagnostic_tests::typed_owner_display_does_not_reinterpret_uuid_shaped_artifact_text ... ok
test semantic_review::constructor_tests::closed_data_and_event_take_composition_matches_core_across_every_kind_pair_and_direction ... ok
test semantic_review::constructor_tests::data_group_candidates_cover_every_definition_and_companion_default_both_directions ... ok
test semantic_review::constructor_tests::data_group_retains_invalid_sibling_drafts_companion_default_and_variant_editor_buffers ... ok
test semantic_review::constructor_tests::exchange_constructor_takes_qualified_annotation_addresses_without_remapping_expression_text ... ok
test semantic_review::constructor_tests::existing_fragment_and_branch_group_candidates_edit_complete_owned_order_without_deletion ... ok
test semantic_review::constructor_tests::group_take_reference_payload_and_scalar_candidate_match_core_and_one_document_batch ... ok
test semantic_review::constructor_tests::historical_event_keep_retires_only_obsolete_branch_and_unchanged_kind_acknowledges_no_payload ... ok
test semantic_review::constructor_tests::historical_same_kind_take_preserves_target_only_literals_when_composed_with_candidate ... ok
test semantic_review::constructor_tests::occurrence_and_event_candidate_variants_cover_closed_families_without_touching_headers ... ok
test semantic_review::constructor_tests::outer_and_nested_constructor_candidates_require_explicit_resolution_and_retain_both_drafts ... ok
test semantic_review::constructor_tests::port_group_companions_typed_owner_context_and_direction_restrictions_are_explicit ... ok
test semantic_review::constructor_tests::reverse_existing_typed_port_reviews_keep_or_candidate_legacy_without_permitting_typed_oa_write ... ok
test semantic_review::constructor_tests::scenario_use_group_takes_typed_binding_references_and_preserves_source_text_both_directions ... ok
test semantic_review::keyed_rows_tests::annotation_address_browser_descends_qualified_fields_without_changing_rows ... ok
test semantic_review::keyed_rows_tests::annotation_observations_keep_uuid_shaped_expression_text_in_both_sides_and_history ... ok
test semantic_review::keyed_rows_tests::batch_keyed_rows_compare_exact_target_slots_and_retain_independent_values ... ok
test semantic_review::keyed_rows_tests::binding_choices_separate_reused_keys_from_local_lifelines ... ok
test semantic_review::keyed_rows_tests::binding_local_picker_follows_a_candidate_parent_before_the_review_is_valid ... ok
test semantic_review::keyed_rows_tests::binding_take_requires_local_correspondence_and_candidate_rejects_wrong_scenario ... ok
test semantic_review::keyed_rows_tests::independent_rows_keep_take_candidate_match_core_and_preserve_siblings_both_directions ... ok
test semantic_review::keyed_rows_tests::keyed_recovery_retains_raw_rows_and_staged_pairs_both_directions_without_applying ... ok
test semantic_review::keyed_rows_tests::keyed_row_drafts_retain_expression_local_and_presence_across_decisions_and_staging ... ok
test semantic_review::keyed_rows_tests::keyed_rows_distinguish_unpaired_source_from_explicit_absence_and_require_exact_reset ... ok
test semantic_review::keyed_rows_tests::multiple_new_rows_compose_in_empty_collections_using_destination_key_order ... ok
test semantic_review::keyed_rows_tests::row_review_apply_preserves_exact_source_and_semantic_history_through_undo_redo ... ok
test semantic_review::keyed_tests::deleted_member_source_observation_removes_only_mapped_membership_both_directions ... ok
test semantic_review::keyed_tests::exact_literal_new_rows_and_removals_commit_both_directions_without_default_loss ... ok
test semantic_review::keyed_tests::exact_reset_only_is_one_history_source_transaction_and_undo_redo_both_directions ... ok
test semantic_review::keyed_tests::function_port_members_use_existing_typed_choices_and_preserve_oa_legacy ... ok
test semantic_review::keyed_tests::historical_one_sided_pair_migration_requires_exact_reset_and_explicit_overlap_resolution ... ok
test semantic_review::keyed_tests::invalid_literal_removal_and_unselected_scalar_buffers_are_retained_and_repairable ... ok
test semantic_review::keyed_tests::member_identity_labels_and_new_tabs_preserve_exact_names_and_deleted_keys ... ok
test semantic_review::keyed_tests::reset_precedes_equal_constructor_candidate_and_preserves_independent_literal_draft ... ok
test semantic_review::keyed_tests::staging_removal_and_obsolete_reset_recovery_keep_other_decisions_and_raw_presence ... ok
test semantic_review::keyed_tests::stale_or_source_failed_reset_and_membership_apply_retain_exact_choices ... ok
test semantic_review::keyed_tests::unordered_members_keep_take_candidate_preserve_other_rows_both_directions ... ok
test semantic_review::keyed_tests::unsupported_independent_families_and_missing_identities_do_not_gain_edit_authority ... ok
test semantic_review::message_kind_tests::message_group_candidate_closed_kinds_are_core_validated_in_both_directions ... ok
test semantic_review::message_kind_tests::message_group_candidate_timer_switches_preserve_both_drafts_and_overlap_is_explicit ... ok
test semantic_review::message_kind_tests::message_group_initial_equal_take_acknowledges_only_kind_and_checks_authored_timer_agreement ... ok
test semantic_review::message_kind_tests::message_group_keep_historical_switch_retires_timer_and_completed_no_switch_rejects ... ok
test semantic_review::message_kind_tests::message_group_rejects_protected_edits_stale_plan_and_source_failure_without_losing_timer ... ok
test semantic_review::message_kind_tests::message_group_reply_and_reference_take_require_explicit_call_mapping_both_directions ... ok
test semantic_review::message_kind_tests::message_group_take_full_timer_and_scalar_candidate_are_one_source_history_change_both_directions ... ok
test semantic_review::message_kind_tests::message_group_timer_does_not_erase_exchange_without_its_own_selected_decision ... ok
test semantic_review::ordered_tests::ambiguous_order_preserves_local_member_and_requires_explicit_candidate_positions ... ok
test semantic_review::ordered_tests::historical_pair_restore_uses_exact_member_keys_and_never_zips_order_observations ... ok
test semantic_review::ordered_tests::order_take_preserves_destination_only_positions_and_order_alone_cannot_add_members ... ok
test semantic_review::ordered_tests::ordered_membership_choices_stage_exact_pairs_in_all_owner_shapes ... ok
test semantic_review::ordered_tests::ordered_presence_keep_take_candidate_remove_only_selected_entry_and_order_take_reorders_only ... ok
test semantic_review::ordered_tests::ordered_review_apply_is_exact_source_history_transaction_with_reopen_and_undo_redo ... ok
test semantic_review::ordered_tests::ordered_take_uses_unique_anchors_and_matches_core_with_unrelated_candidate_both_directions ... ok
test semantic_review::ordered_tests::raw_order_survives_membership_changes_decisions_and_recovery_until_explicit_reconcile ... ok
test semantic_review::ordered_tests::several_incoming_members_follow_source_order_despite_independent_identity_sorting ... ok
test semantic_review::recovery::tests::raw_scalar_and_closed_constructor_drafts_recover_against_exact_model_only ... ok
test semantic_review::recovery::tests::version_one_without_orders_restores_raw_intent_and_replans_without_execution ... ok
test semantic_review::source7_tests::contextual_incident_leaf_keep_allows_path_change_but_conflicts_with_changed_leaf_both_directions ... ok
test semantic_review::source7_tests::reverse_operation_omission_gui_requires_raw_rationale_and_matches_one_core_batch_after_recovery ... ok
test semantic_review::source7_tests::semantic_operation_virtual_none_candidate_uses_exact_allocation_and_preserves_accepted_bytes ... ok
test semantic_review::tests::candidate_mixed_with_reference_take_uses_typed_correspondence_not_text_guessing ... ok
test semantic_review::tests::deselected_invalid_candidate_is_retained_but_does_not_poison_another_selected_scalar ... ok
test semantic_review::tests::explicit_trace_selection_updates_only_that_history ... ok
test semantic_review::tests::first_equal_constructor_acknowledges_only_kind_and_allows_independent_leaves ... ok
test semantic_review::tests::independent_review_clear_bound_ignores_retained_invalid_other_facet ... ok
test semantic_review::tests::independent_review_keyed_fact_titles_keep_live_deleted_and_qualified_identity ... ok
test semantic_review::tests::inherited_annotation_impact_requires_exact_acceptance_and_edits_clear_approval ... ok
test semantic_review::tests::invalid_numeric_draft_and_protected_edits_retain_workflow_and_source ... ok
test semantic_review::tests::read_only_structured_facts_and_partial_rollup_are_honest ... ok
test semantic_review::tests::relation_candidates_preserve_endpoints_and_combine_selected_roles_and_bounds ... ok
test semantic_review::tests::scalar_keep_take_candidate_commit_exact_source_and_history_in_both_directions ... ok
test semantic_review::tests::scoped_literal_list_edits_preserve_unfinished_values_and_other_facet_buffers ... ok
test semantic_review::tests::stale_plan_and_source_writeback_failure_do_not_lose_decisions_or_history ... ok
test semantic_review::tests::state_kind_scalar_uses_typed_candidate_and_core_validation ... ok
test semantic_review::view::reserved_artifact_tests::reserved_artifact_facet_and_reference_labels_survive_recovery_without_calling_it_deleted ... ok
test source_navigation::interaction::tests::captured_find_click_invalidates_without_app_message_and_preserves_focus ... ok
test source_navigation::interaction::tests::focus_rechecks_clock_between_inspection_and_application_and_missing_target_is_inert ... ok
test source_navigation::interaction::tests::raw_navigation_inputs_advance_but_passive_geometry_does_not_and_exhaustion_refuses ... ok
test source_navigation::query::tests::comments_strings_and_comment_gap_are_not_navigation_hits ... ok
test source_navigation::query::tests::detached_alias_and_identity_collisions_never_auto_select ... ok
test source_navigation::query::tests::dirty_but_parseable_text_has_current_names_and_no_validated_fallback ... ok
test source_navigation::query::tests::exact_multifile_unicode_crlf_definition_and_repeated_lexical_references ... ok
test source_navigation::query::tests::exact_snapshot_readback_rejects_same_key_byte_membership_and_evidence_changes ... ok
test source_navigation::query::tests::include_cycle_depth_and_aggregate_edges_are_explicit_partial_outcomes ... ok
test source_navigation::query::tests::invalid_include_syntax_never_borrows_the_old_reachable_file_set ... ok
test source_navigation::query::tests::keyword_alias_and_loaded_path_case_collisions_use_reviewed_index_rules ... ok
test source_navigation::query::tests::large_display_name_cannot_escape_the_owned_row_string_budget ... ok
test source_navigation::query::tests::missing_and_noncanonical_authored_ids_remain_draft_spans_without_generated_anchors ... ok
test source_navigation::query::tests::missing_include_partial_scope_does_not_resurrect_witness_text ... ok
test source_navigation::query::tests::omitted_rows_are_counted_before_result_allocation_and_never_confer_uniqueness ... ok
test source_navigation::query::tests::origin_keeps_exact_hit_when_display_rows_are_omitted ... ok
test source_navigation::query::tests::owned_request_checks_raw_limits_immediately_and_extracts_only_on_worker ... ok
test source_navigation::query::tests::owned_request_moves_exact_text_into_worker_snapshot_and_matches_sync_results ... ok
test source_navigation::query::tests::owned_validation_proof_preserves_full_witness_count_and_partial_scope ... ok
test source_navigation::query::tests::raw_aggregate_limits_refuse_before_outline_or_copied_snapshot ... ok
test source_navigation::query::tests::sole_detached_candidate_and_unapplied_equal_bytes_require_choice ... ok
test source_navigation::query::tests::token_declaration_and_live_reference_limits_are_aggregate_not_per_file ... ok
test source_navigation::query::tests::validation_witness_must_match_entry_and_complete_included_file_set ... ok
test source_navigation::symbols::tests::admitted_unicode_path_budget_keeps_original_policy_after_single_fold ... ok
test source_navigation::symbols::tests::comment_separated_reference_keeps_crlf_unicode_and_disjoint_hit_spans ... ok
test source_navigation::symbols::tests::declaration_order_and_duplicate_roles_refuse_instead_of_corrupting_hit_search ... ok
test source_navigation::symbols::tests::detached_uuid_clone_disables_anchor_even_for_included_query ... ok
test source_navigation::symbols::tests::duplicate_aliases_are_candidates_without_false_reference_attribution ... ok
test source_navigation::symbols::tests::every_budget_admits_boundary_and_returns_no_index_one_below ... ok
test source_navigation::symbols::tests::header_metadata_must_match_current_token_boundaries_and_authored_id ... ok
test source_navigation::symbols::tests::incomplete_draft_is_lexical_and_error_token_does_not_leak_references ... ok
test source_navigation::symbols::tests::legal_keyword_classified_alias_is_not_discarded ... ok
test source_navigation::symbols::tests::missing_ids_produce_only_current_snapshot_locations_without_stabilization ... ok
test source_navigation::symbols::tests::nested_declaration_extents_do_not_turn_body_text_into_definition_hits ... ok
test source_navigation::symbols::tests::noncanonical_header_identity_cannot_enter_through_query_metadata ... ok
test source_navigation::symbols::tests::path_identity_rejects_normalization_and_case_collisions ... ok
test source_navigation::symbols::tests::query_header_admission_preserves_uppercase_and_json_escape_bytes ... ok
test source_navigation::symbols::tests::repeated_live_uses_are_distinct_and_strings_comments_history_are_excluded ... ok
test source_navigation::symbols::tests::reused_alias_cannot_steal_old_identity_and_old_locations_are_stale ... ok
test source_navigation::symbols::tests::scope_provenance_and_detached_alias_collision_are_explicit ... ok
test source_navigation::symbols::tests::stopped_outline_is_not_a_successful_empty_query ... ok
test source_navigation::symbols::tests::truncated_or_gapped_tokens_refuse_even_when_project_scope_is_partial ... ok
test source_navigation::symbols::tests::unicode_path_collisions_match_core_lowercase_policy ... ok
test source_navigation::tests::search_uses_utf8_columns_wraps_and_refreshes_after_edits ... ok
test source_rename::origin::tests::maps_last_repeated_reference_with_unicode_crlf_and_comment_separator ... ok
test source_rename::origin::tests::permits_identifier_keyword_transitions_in_alias_roles ... ok
test source_rename::origin::tests::preserves_final_same_line_occurrence_not_first_or_prose ... ok
test source_rename::origin::tests::rejects_changed_trivia_non_alias_words_and_wrong_marker ... ok
test source_rename::preview::tests::each_bound_is_exact_and_overflow_never_returns_a_partial_preview ... ok
test source_rename::preview::tests::first_and_last_lines_form_complete_separate_hunks_and_pages ... ok
test source_rename::preview::tests::limits_apply_to_the_whole_preview_not_each_file ... ok
test source_rename::preview::tests::long_unicode_lines_are_fully_reachable_as_bounded_fragments ... ok
test source_rename::preview::tests::nearby_changes_merge_and_all_changed_files_are_reachable ... ok
test source_rename::preview::tests::preserves_unicode_mixed_endings_and_counts_lines_not_repeated_uses ... ok
test source_rename::preview::tests::refuses_membership_entry_line_count_and_line_ending_changes ... ok
test source_rename::preview::tests::unchanged_and_empty_sources_have_no_preview ... ok
test source_tree::tests::active_scroll_offset_uses_the_visible_order_and_retains_ancestor_context ... ok
test source_tree::tests::collapsed_folders_retain_active_dirty_and_diagnostic_markers ... ok
test source_tree::tests::deep_paths_build_expand_and_drop_on_a_small_stack ... ok
test source_tree::tests::detached_buffers_keep_paths_and_only_clean_buffers_are_closable ... ok
test source_tree::tests::exact_unicode_spaces_and_file_folder_name_collisions_are_not_normalized ... ok
test source_tree::tests::folders_are_compact_and_sorted_before_files_without_losing_duplicate_basenames ... ok
test source_workspace::tests::draft_history_budget_covers_inactive_files_without_discarding_drafts ... ok
test source_workspace::tests::fresh_session_cannot_reuse_a_retained_buffer_generation ... ok
test source_workspace::tests::navigation_revision_wrap_cannot_reuse_an_old_workspace_key ... ok
test source_workspace::tests::navigation_scope_changes_invalidate_without_changing_unchanged_positions ... ok
test source_workspace::tests::navigation_versions_distinguish_reopened_recovered_and_changed_drafts ... ok
test source_workspace::tests::switching_retains_invalid_drafts_and_independent_history ... ok
test tests::actor_port_creation_updates_containment_and_locate_reveals_its_owner ... ok
test tests::adding_bend_between_close_ports_stays_outside_owner_clearance ... ok
test tests::behavior_and_data_authoring_do_not_place_nodes_in_unrelated_architecture_views ... ok
test tests::bidirectional_transition_ui_commits_once_and_preserves_other_diagrams ... ok
test tests::counterpart_creation_focuses_visible_target_and_reuse_keeps_views ... ok
test tests::creation_from_capabilities_routes_work_to_architecture_and_folded_allocation_inserts_below_existing_work ... ok
test tests::dragging_keeps_semantic_selection_and_same_node_remains_editable ... ok
test tests::escaped_string_mode_preserves_exact_control_characters ... ok
test tests::every_demo_record_has_a_lossless_graphical_draft ... ok
test tests::explicit_relationship_builder_never_mutates_on_preview ... ok
test tests::explorer_and_creation_selection_follow_their_own_placement ... ok
test tests::fit_adapts_to_canvas_returning_after_help_but_preserves_manual_navigation ... ok
test tests::fit_uses_measured_canvas_bounds_and_preserves_them_on_open ... ok
test tests::focused_explorer_follows_reparenting_without_changing_identity ... ok
test tests::graphical_rename_keeps_aliases_and_references_and_undo ... ok
test tests::identity_property_change_is_atomic_and_rewrites_all_live_references ... ok
test tests::invalid_numeric_draft_survives_navigation_save_and_help ... ok
test tests::invalid_save_and_continue_returns_to_repairable_draft ... ok
test tests::malformed_source_preserves_model_and_is_recoverable ... ok
test tests::manual_trace_requires_target_and_selection_normalizes_creation_kind ... ok
test tests::mission_capability_authoring_is_contextual_atomic_and_text_equivalent ... ok
test tests::modal_owns_background_commands_and_shortcuts ... ok
test tests::nested_allocation_insertion_reflows_sibling_subtrees_and_preserves_fold_state ... ok
test tests::opening_and_creating_models_preserve_the_actual_window_size_for_fit ... ok
test tests::opening_legacy_source_surfaces_report_without_modifying_original_bytes ... ok
test tests::pending_source_prevents_property_draft_collision_and_preserves_both_if_present ... ok
test tests::placement_identity_edit_then_drag_and_diagram_identity_then_arrange ... ok
test tests::placement_relocation_follows_cross_layer_traceability_view ... ok
test tests::property_enum_and_optional_reference_roundtrip ... ok
test tests::reopening_canvas_for_a_modal_preserves_viewport_after_route_edits ... ok
test tests::revealing_an_implicit_function_port_unfolds_its_visible_architecture_owner ... ok
test tests::routing_actions_are_atomic_guarded_and_fit_the_authored_detour ... ok
test tests::selecting_current_constructors_preserves_payloads ... ok
test tests::source_find_navigates_an_invalid_draft_without_applying_or_losing_it ... ok
test tests::source_navigation_waits_for_editor_layout_and_cancels_on_edit ... ok
test tests::system_only_models_open_the_populated_perspective ... ok
test tests::transition_resolutions_belong_to_the_effective_target_and_kind ... ok
test view_copy::tests::duplicate_retains_ports_routes_options_and_artifact_claims_with_exact_undo_redo ... ok
test view_copy::tests::duplicate_state_view_preserves_machine_nesting_and_collapse_with_unique_aliases ... ok
test view_copy::tests::missing_view_does_not_propose_an_empty_replacement ... ok
test views::source_symbols::tests::suffixes_distinguish_nested_duplicate_basenames_without_changing_unicode ... ok
test views::source_tests::source_editor_windows_menu_payload_is_inert_but_space_and_altgr_still_edit ... ok
test views::text_workspace::tests::drawer_clamps_to_actual_center_allocation_including_oversize_requests ... ok
test views::text_workspace::tests::five_slots_keep_editor_state_and_selection_through_explicit_and_passive_changes ... ok
test views::text_workspace::tests::highlighted_sensor_editor_retains_real_scrolled_buffer_across_panel_rebuilds ... ok
test views::text_workspace::tests::keyboard_resize_uses_effective_height_and_only_exact_open_drawer_shortcut ... ok
test views::traceability::tests::traceability_browsing_retains_invalid_property_draft_and_existing_select_guard ... ok
test views::traceability::tests::traceability_filter_reaches_artifacts_after_68_traces_and_searches_all_metadata ... ok
test workflow::communication::tests::communication_requires_two_explicit_ports_and_recovers_the_partial_choice ... ok
test workflow::port_authoring_tests::boundary_picker_matches_exact_commands_across_contracts_and_ownership ... ok
test workflow::port_authoring_tests::boundary_picker_recomputes_for_unoriented_reverse_endpoints_without_relaxing_contracts ... ok
test workflow::port_authoring_tests::duplicate_port_names_show_owner_contract_and_unique_alias ... ok
test workflow::port_authoring_tests::fresh_functions_are_actual_picker_targets_and_plan_enables_apply ... ok
test workflow::port_authoring_tests::generic_component_port_connection_keeps_its_endpoint_and_direction ... ok
test workflow::port_authoring_tests::ordinary_standard_connections_default_unoriented_and_new_roles_exclude_legacy ... ok
test workflow::recovery::tests::incomplete_relationship_and_trace_recover_raw_fields_and_reject_changed_model ... ok
test workflow::recovery::tests::transition_recovery_replans_typed_request_without_persisted_commands ... ok
test workflow::transition_tests::basic_transition_boundary_choice_is_required_without_an_inferred_system ... ok
test workflow::transition_tests::basic_transition_creates_overview_when_existing_views_cannot_show_result ... ok
test workflow::transition_tests::basic_transition_explicit_destination_appends_below_existing_bounds_and_is_one_source_edit ... ok
test workflow::transition_tests::basic_transition_invalid_explicit_destination_retains_choice_and_refuses ... ok
test workflow::transition_tests::basic_transition_reconcile_keeps_existing_selected_view_placement_and_route_exact ... ok
test workflow::transition_tests::basic_transition_skips_lowest_uuid_state_view_and_preserves_oa ... ok
failures:
---- app::text_workspace::tests::source_and_property_drafts_keep_find_and_text_undo_without_model_application stdout ----
thread 'app::text_workspace::tests::source_and_property_drafts_keep_find_and_text_undo_without_model_application' (5548) panicked at crates\oa-desktop\src\app\text_workspace\tests.rs:166:5:
assertion failed: app.source_dirty() && app.draft_dirty()
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
failures:
app::text_workspace::tests::source_and_property_drafts_keep_find_and_text_undo_without_model_application
test result: FAILED. 853 passed; 1 failed; 3 ignored; 0 measured; 0 filtered out; finished in 431.87s
@@ -0,0 +1,21 @@
{
"command": [
"cargo",
"clippy",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--all-targets",
"--",
"-D",
"warnings"
],
"started": "2026-09-13T02:17:18.545638+00:00",
"finished": "2026-09-13T02:18:27.557632+00:00",
"seconds": 69.0105631999977,
"exitCode": 0,
"inputsUnchanged": true,
"stdoutSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderrSha256": "a70ed5d4d8190ebfd2181690bed4c5ae67c8f17f57c357299da9fa4848aa2940"
}
@@ -0,0 +1,2 @@
Checking oa-desktop v0.2.0 (C:\ar-text-9e8r6t\crates\oa-desktop)
Finished `dev` profile [unoptimized] target(s) in 1m 08s
@@ -0,0 +1,13 @@
{
"atUtc": "2026-09-13T02:37:33.741745+00:00",
"inputsUnchanged": true,
"gates": [
"clippy",
"membership",
"focused",
"tests",
"timing",
"gui"
],
"scope": "Windows headless tests/lint/timing/build; no native acceptance"
}
@@ -0,0 +1,15 @@
{
"atUtc": "2026-09-13T02:17:17.767526+00:00",
"versions": {
"rustc": "rustc 1.98.1 (48a229cea 2026-09-01)\nbinary: rustc\ncommit-hash: 48a229ceaefd4985c50990b14116b6d856af0985\ncommit-date: 2026-09-01\nhost: x86_64-pc-windows-gnullvm\nrelease: 1.98.1\nLLVM version: 22.1.8\n",
"cargo": "cargo 1.98.1 (797e8a9bc 2026-08-05)\n"
},
"variables": {
"RUSTUP_HOME": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup",
"CARGO_HOME": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo",
"RUSTUP_TOOLCHAIN": "stable-x86_64-pc-windows-gnullvm",
"CARGO_TARGET_DIR": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm",
"CARGO_BUILD_JOBS": "1",
"CARGO_TARGET_X86_64_PC_WINDOWS_GNULLVM_LINKER": "clang.exe"
}
}
@@ -0,0 +1,23 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"text_workspace",
"--",
"--nocapture",
"--test-threads=1"
],
"started": "2026-09-13T02:22:48.002488+00:00",
"finished": "2026-09-13T02:22:52.053266+00:00",
"seconds": 4.050904400002764,
"exitCode": 0,
"inputsUnchanged": true,
"stdoutSha256": "5235fac71aa2019ab00e65c44ef913bfbca5c31e3408ec9bac03d8d40c746ca9",
"stderrSha256": "8442ab6f086cd3bb91ffd65b426ccdcc1d64447ab51da47770be20e6cdcadb36"
}
@@ -0,0 +1,2 @@
Finished `test` profile [unoptimized] target(s) in 2.72s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
@@ -0,0 +1,35 @@
running 26 tests
test app::text_workspace::lifecycle_tests::canceled_or_failed_open_that_installs_nothing_retains_current_presentation_and_diagnostics ... ok
test app::text_workspace::lifecycle_tests::invalid_repair_open_clears_prior_presentation_and_publishes_current_problems_preserving_worker ... ok
test app::text_workspace::lifecycle_tests::saved_new_destination_does_not_revalidate_already_stale_warning_locations ... ok
test app::text_workspace::lifecycle_tests::saved_new_destination_republishes_current_warning_and_refuses_old_primary_and_related ... ok
test app::text_workspace::tests::current_diagnostic_target_navigates_but_changed_source_or_clear_refuses_it ... ok
test app::text_workspace::tests::diagnostic_span_must_be_loaded_ordered_and_utf8_exact ... ok
test app::text_workspace::tests::disabled_entry_cannot_become_a_new_action_under_the_same_menu_token ... ok
test app::text_workspace::tests::document_reset_preserves_popup_token_sequence_and_drops_old_menu_authority ... ok
test app::text_workspace::tests::enabled_entry_is_readmitted_at_dispatch_and_blocked_by_busy ... ok
test app::text_workspace::tests::equal_diagnostic_republication_invalidates_primary_and_related_targets ... ok
test app::text_workspace::tests::menu_own_open_invalidation_does_not_stale_find_and_invoke_is_once ... ok
test app::text_workspace::tests::menu_source_caret_document_path_and_interaction_changes_refuse_stale_find ... ok
test app::text_workspace::tests::old_dismiss_and_invoke_do_not_consume_a_newer_menu ... ok
test app::text_workspace::tests::only_valid_explicit_group_and_resize_intent_cancel_pending_navigation ... ok
test app::text_workspace::tests::queued_group_toggle_cannot_mutate_a_reopened_or_rotated_visit ... ok
test app::text_workspace::tests::queued_toolbar_request_cannot_retarget_after_source_change ... ok
test app::text_workspace::tests::reference_groups_and_scroll_survive_tabs_and_reject_old_visits_and_queries ... ok
test app::text_workspace::tests::reset_removes_ui_and_publication_authority_and_resize_rejects_nan ... ok
test app::text_workspace::tests::retained_primary_and_related_targets_cannot_replay_after_hide_or_problems_references_problems ... ok
test app::text_workspace::tests::source_and_property_drafts_keep_find_and_text_undo_without_model_application ... ok
test app::text_workspace::tests::stale_retained_group_can_expand_without_navigating_or_applying_drafts ... ok
test views::text_workspace::summary_visibility_tests::all_reference_exceptions_fit_allocated_width_with_wide_alias_and_large_counts ... old alias-first summary width=840 alias="雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨": 0 missing/clipped flag-byte checks; first=None
old alias-first summary width=720 alias="雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨雨": 18 missing/clipped flag-byte checks; first=Some("flag Detached is clipped: glyph Rectangle { x: 724.93945, y: 0.0, width: 8.4140625, height: 15.599999 }, clip Rectangle { x: 0.0, y: 0.0, width: 720.0, height: 24.0 }")
old alias-first summary width=840 alias="WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW": 0 missing/clipped flag-byte checks; first=None
old alias-first summary width=720 alias="WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW": 15 missing/clipped flag-byte checks; first=Some("flag Detached is clipped: glyph Rectangle { x: 718.3828, y: 0.0, width: 6.1054688, height: 15.599999 }, clip Rectangle { x: 0.0, y: 0.0, width: 720.0, height: 24.0 }")
ok
test views::text_workspace::tests::drawer_clamps_to_actual_center_allocation_including_oversize_requests ... ok
test views::text_workspace::tests::five_slots_keep_editor_state_and_selection_through_explicit_and_passive_changes ... ok
test views::text_workspace::tests::highlighted_sensor_editor_retains_real_scrolled_buffer_across_panel_rebuilds ... ok
test views::text_workspace::tests::keyboard_resize_uses_effective_height_and_only_exact_open_drawer_shortcut ... ok
test result: ok. 26 passed; 0 failed; 0 ignored; 0 measured; 833 filtered out; finished in 0.95s
@@ -0,0 +1,58 @@
{
"command": [
"cargo",
"build",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"--message-format=json-render-diagnostics"
],
"started": "2026-09-13T02:29:39.101134+00:00",
"finished": "2026-09-13T02:37:30.596393+00:00",
"seconds": 471.49644329999865,
"exitCode": 0,
"inputsUnchanged": true,
"stdoutSha256": "eaac6d2f4d1c9be7f05565c971507684b478fd1cc10d5b493e8649df8286dd60",
"stderrSha256": "c576662b0b760d89d5d7a05b44ef6bee34d30bd51ccbf96bc648ae92bb43f859",
"binary": {
"path": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\arcadia-studio.exe",
"preserved": "C:\\ar-text-9e8r6t\\.local\\text-workspace-gates-20260912\\attempt-4\\arcadia-studio.exe",
"sha256": "666afa8747588bbd4e4d8e4059f443dedda1fc42244d467df8d953085707e796",
"bytes": 114164224,
"artifact": {
"reason": "compiler-artifact",
"package_id": "path+file:///C:/ar-text-9e8r6t/crates/oa-desktop#0.2.0",
"manifest_path": "C:\\ar-text-9e8r6t\\crates\\oa-desktop\\Cargo.toml",
"target": {
"kind": [
"bin"
],
"crate_types": [
"bin"
],
"name": "arcadia-studio",
"src_path": "C:\\ar-text-9e8r6t\\crates\\oa-desktop\\src\\main.rs",
"edition": "2024",
"doc": true,
"doctest": false,
"test": true
},
"profile": {
"opt_level": "0",
"debuginfo": 0,
"debug_assertions": true,
"overflow_checks": true,
"test": false
},
"features": [],
"filenames": [
"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\arcadia-studio.exe"
],
"executable": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\arcadia-studio.exe",
"fresh": false
}
}
}
@@ -0,0 +1,3 @@
Compiling oa-core v0.2.0 (C:\ar-text-9e8r6t\crates\oa-core)
Compiling oa-desktop v0.2.0 (C:\ar-text-9e8r6t\crates\oa-desktop)
Finished `dev` profile [unoptimized] target(s) in 7m 51s
@@ -0,0 +1,305 @@
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.107","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\proc-macro2-1.0.107\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\proc-macro2-1.0.107\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\proc-macro2-8bd275bc14efcc6d\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.107","linked_libs":[],"linked_paths":[],"cfgs":["wrap_proc_macro","proc_macro_span_location","proc_macro_span_file"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\proc-macro2-678fa29727a3d951\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.24","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-ident-1.0.24\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_ident","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-ident-1.0.24\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_ident-37cacd323a49429c.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_ident-37cacd323a49429c.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#quote@1.0.47","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\quote-1.0.47\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\quote-1.0.47\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\quote-78b7b00c15767e2b\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#quote@1.0.47","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\quote-db749d68bbb2dbfe\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.107","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\proc-macro2-1.0.107\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"proc_macro2","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\proc-macro2-1.0.107\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libproc_macro2-80e9e45547beebf5.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libproc_macro2-80e9e45547beebf5.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#quote@1.0.47","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\quote-1.0.47\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"quote","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\quote-1.0.47\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libquote-b79aec363b458000.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libquote-b79aec363b458000.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@3.0.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\syn-3.0.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"syn","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\syn-3.0.5\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","extra-traits","full","parsing","printing","proc-macro"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsyn-22fa9145a6fc82b1.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsyn-22fa9145a6fc82b1.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@2.0.119","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\syn-2.0.119\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"syn","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\syn-2.0.119\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","extra-traits","fold","full","parsing","printing","proc-macro","visit","visit-mut"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsyn-c437a38643e73e9b.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsyn-c437a38643e73e9b.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libm@0.2.16","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libm-0.2.16\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libm-0.2.16\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["arch","default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\libm-b0989b04e4f0e7ae\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#libm@0.2.16","linked_libs":[],"linked_paths":[],"cfgs":["arch_enabled"],"env":[["CFG_CARGO_FEATURES","[\"arch\", \"default\"]"],["CFG_OPT_LEVEL","0"],["CFG_TARGET_FEATURES","[\"cmpxchg16b\", \"fxsr\", \"sse\", \"sse2\", \"sse3\"]"]],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\libm-72ced899e6c1d085\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libm@0.2.16","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libm-0.2.16\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libm","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libm-0.2.16\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["arch","default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblibm-e719636fa88f224d.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblibm-e719636fa88f224d.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-link@0.2.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-link-0.2.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows_link","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-link-0.2.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_link-23f115c823619f71.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_link-23f115c823619f71.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#autocfg@1.5.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\autocfg-1.5.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"autocfg","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\autocfg-1.5.1\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libautocfg-58f70baf3de29c77.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libautocfg-58f70baf3de29c77.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\num-traits-0.2.19\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\num-traits-0.2.19\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","libm","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\num-traits-518bf0fb0b57082a\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19","linked_libs":[],"linked_paths":[],"cfgs":["has_total_cmp"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\num-traits-3270bf0174a1c854\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@2.13.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bitflags-2.13.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bitflags-2.13.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbitflags-3f56d892d72d4301.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbitflags-3f56d892d72d4301.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\num-traits-0.2.19\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"num_traits","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\num-traits-0.2.19\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","libm","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libnum_traits-3f25760ad3d34848.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libnum_traits-3f25760ad3d34848.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#log@0.4.34","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\log-0.4.34\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"log","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\log-0.4.34\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblog-668dd0f53e95dee3.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblog-668dd0f53e95dee3.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\once_cell-1.21.4\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"once_cell","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\once_cell-1.21.4\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","race","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libonce_cell-33f899677e2400c0.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libonce_cell-33f899677e2400c0.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cfg-if-1.0.4\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_if","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cfg-if-1.0.4\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcfg_if-805b2ebc84d544f1.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcfg_if-805b2ebc84d544f1.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#smallvec@1.16.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\smallvec-1.16.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"smallvec","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\smallvec-1.16.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["const_generics","const_new","union"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsmallvec-03b374e5162cc6f4.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsmallvec-03b374e5162cc6f4.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.61.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-sys-0.61.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows_sys","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-sys-0.61.2\\src\\lib.rs","edition":"2021","doc":true,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["Wdk","Wdk_Foundation","Wdk_Storage","Wdk_Storage_FileSystem","Wdk_System","Wdk_System_IO","Win32","Win32_Foundation","Win32_Networking","Win32_Networking_WinSock","Win32_Security","Win32_Storage","Win32_Storage_FileSystem","Win32_System","Win32_System_Console","Win32_System_IO","Win32_System_Pipes","Win32_System_SystemInformation","Win32_System_SystemServices","Win32_System_Threading","Win32_System_WindowsProgramming","default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_sys-ab7e56959c51c45e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_sys-ab7e56959c51c45e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytemuck_derive@1.12.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bytemuck_derive-1.12.0\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"bytemuck_derive","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bytemuck_derive-1.12.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\bytemuck_derive-3880535b1429c51e.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbytemuck_derive-3880535b1429c51e.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-project-lite@0.2.17","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\pin-project-lite-0.2.17\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_project_lite","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\pin-project-lite-0.2.17\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libpin_project_lite-0d6bdbd8d38ac50b.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libpin_project_lite-0d6bdbd8d38ac50b.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytemuck@1.25.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bytemuck-1.25.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bytemuck","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bytemuck-1.25.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytemuck_derive","derive","extern_crate_alloc","min_const_generics"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbytemuck-22539c4113ad2896.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbytemuck-22539c4113ad2896.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytes@1.12.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bytes-1.12.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bytes","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bytes-1.12.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbytes-868dcb997d7e2ad2.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbytes-868dcb997d7e2ad2.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnullvm@0.52.6","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows_x86_64_gnullvm-0.52.6\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows_x86_64_gnullvm-0.52.6\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\windows_x86_64_gnullvm-a1e9fcf11bce48ad\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg_aliases@0.2.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cfg_aliases-0.2.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_aliases","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cfg_aliases-0.2.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcfg_aliases-3229b5c013b12481.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcfg_aliases-3229b5c013b12481.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.20","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-2.0.20\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-2.0.20\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\thiserror-d9d1cecb0b9dfa9d\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.20","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\thiserror-2e28320913ae6f8a\\out"}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnullvm@0.52.6","linked_libs":[],"linked_paths":["native=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows_x86_64_gnullvm-0.52.6\\lib"],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\windows_x86_64_gnullvm-0c0e92ad7ccbaa67\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror-impl@2.0.20","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-impl-2.0.20\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"thiserror_impl","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-impl-2.0.20\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\thiserror_impl-5cb1483639bcc316.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libthiserror_impl-5cb1483639bcc316.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-core@0.3.34","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-core-0.3.34\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_core","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-core-0.3.34\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_core-a87c441f491169b1.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_core-a87c441f491169b1.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.20","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-2.0.20\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-2.0.20\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libthiserror-464ee2be8b2a6d3a.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libthiserror-464ee2be8b2a6d3a.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnullvm@0.52.6","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows_x86_64_gnullvm-0.52.6\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows_x86_64_gnullvm","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows_x86_64_gnullvm-0.52.6\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_x86_64_gnullvm-ecb751aa8d45dc2e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_x86_64_gnullvm-ecb751aa8d45dc2e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-targets@0.52.6","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-targets-0.52.6\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows_targets","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-targets-0.52.6\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_targets-9dce04242e096695.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_targets-9dce04242e096695.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-sink@0.3.34","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-sink-0.3.34\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_sink","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-sink-0.3.34\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_sink-6891c37ab9c1935f.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_sink-6891c37ab9c1935f.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#memchr@2.8.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\memchr-2.8.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"memchr","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\memchr-2.8.3\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libmemchr-7db6cba96e96932f.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libmemchr-7db6cba96e96932f.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-channel@0.3.34","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-channel-0.3.34\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_channel","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-channel-0.3.34\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","futures-sink","sink","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_channel-f0d70c911fb49ec8.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_channel-f0d70c911fb49ec8.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#socket2@0.6.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\socket2-0.6.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"socket2","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\socket2-0.6.5\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["all"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsocket2-7bd46ba18d76d090.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsocket2-7bd46ba18d76d090.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#mio@1.2.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\mio-1.2.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"mio","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\mio-1.2.3\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["net","os-ext","os-poll"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libmio-5aaf291c8a1a82a2.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libmio-5aaf291c8a1a82a2.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#synstructure@0.13.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\synstructure-0.13.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"synstructure","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\synstructure-0.13.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsynstructure-cae49be1a07d73ae.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsynstructure-cae49be1a07d73ae.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#arrayvec@0.7.8","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\arrayvec-0.7.8\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"arrayvec","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\arrayvec-0.7.8\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libarrayvec-92be7823c1701233.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libarrayvec-92be7823c1701233.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio@1.53.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tokio-1.53.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tokio-1.53.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytes","default","io-util","libc","mio","net","rt","rt-multi-thread","socket2","sync","time","windows-sys"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtokio-32f8dc70905f1ae8.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtokio-32f8dc70905f1ae8.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-macro@0.3.34","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-macro-0.3.34\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"futures_macro","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-macro-0.3.34\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\futures_macro-d2473149f2f3e987.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_macro-d2473149f2f3e987.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-task@0.3.34","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-task-0.3.34\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_task","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-task-0.3.34\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_task-c244bba7f8bc0ad1.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_task-c244bba7f8bc0ad1.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-io@0.3.34","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-io-0.3.34\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_io","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-io-0.3.34\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_io-d1a66ee3ff559f69.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_io-d1a66ee3ff559f69.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slab@0.4.12","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\slab-0.4.12\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"slab","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\slab-0.4.12\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libslab-3db57bd04acfc5b7.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libslab-3db57bd04acfc5b7.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-util@0.3.34","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-util-0.3.34\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_util","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-util-0.3.34\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","async-await-macro","channel","futures-channel","futures-io","futures-macro","futures-sink","io","memchr","sink","slab","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_util-954465db0beabc72.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures_util-954465db0beabc72.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerofrom-derive@0.1.7","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerofrom-derive-0.1.7\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"zerofrom_derive","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerofrom-derive-0.1.7\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\zerofrom_derive-01e65160f8217db3.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerofrom_derive-01e65160f8217db3.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#raw-window-handle@0.6.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\raw-window-handle-0.6.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"raw_window_handle","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\raw-window-handle-0.6.2\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libraw_window_handle-1ab25a8146a57318.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libraw_window_handle-1ab25a8146a57318.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.56","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerocopy-0.8.56\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerocopy-0.8.56\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["derive","simd","zerocopy-derive"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\zerocopy-f9af0aa8991f0608\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.56","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\zerocopy-1a18fc2a8b941ae6\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerofrom@0.1.8","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerofrom-0.1.8\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerofrom","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerofrom-0.1.8\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["derive"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerofrom-731f79aa1e12a43c.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerofrom-731f79aa1e12a43c.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#yoke-derive@0.8.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\yoke-derive-0.8.2\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"yoke_derive","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\yoke-derive-0.8.2\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\yoke_derive-e418345d16272b3f.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libyoke_derive-e418345d16272b3f.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#euclid@0.22.14","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\euclid-0.22.14\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"euclid","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\euclid-0.22.14\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libeuclid-74b0633907068e70.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libeuclid-74b0633907068e70.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy-derive@0.8.56","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerocopy-derive-0.8.56\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"zerocopy_derive","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerocopy-derive-0.8.56\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\zerocopy_derive-820bbf35ab88899b.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerocopy_derive-820bbf35ab88899b.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#khronos_api@3.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\khronos_api-3.1.0\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\khronos_api-3.1.0\\build.rs","edition":"2015","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\khronos_api-62ac41aa33e653b1\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.189","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libc-0.2.189\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libc-0.2.189\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\libc-93b6fd638f861315\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#stable_deref_trait@1.2.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\stable_deref_trait-1.2.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"stable_deref_trait","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\stable_deref_trait-1.2.1\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libstable_deref_trait-40a01113b84b1f7b.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libstable_deref_trait-40a01113b84b1f7b.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#yoke@0.8.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\yoke-0.8.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"yoke","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\yoke-0.8.3\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["derive","zerofrom"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libyoke-8b1ba758d70a1f92.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libyoke-8b1ba758d70a1f92.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.189","linked_libs":[],"linked_paths":[],"cfgs":["freebsd12"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\libc-21e656859266df5d\\out"}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#khronos_api@3.1.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\khronos_api-ae92d05139a87721\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.56","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerocopy-0.8.56\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerocopy","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerocopy-0.8.56\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["derive","simd","zerocopy-derive"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerocopy-979d2b49b0a33b61.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerocopy-979d2b49b0a33b61.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#core_maths@0.1.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\core_maths-0.1.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"core_maths","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\core_maths-0.1.1\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcore_maths-faef5eec3886da5e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcore_maths-faef5eec3886da5e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#smol_str@0.2.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\smol_str-0.2.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"smol_str","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\smol_str-0.2.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsmol_str-89539eaf055e63b0.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsmol_str-89539eaf055e63b0.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustc-hash@1.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustc-hash-1.1.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustc_hash","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustc-hash-1.1.0\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librustc_hash-71721ceb4e769227.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librustc_hash-71721ceb4e769227.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#half@2.7.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\half-2.7.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"half","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\half-2.7.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","num-traits","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhalf-2a21392ab329bf44.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhalf-2a21392ab329bf44.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#khronos_api@3.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\khronos_api-3.1.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"khronos_api","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\khronos_api-3.1.0\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libkhronos_api-51ea57bef08249c0.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libkhronos_api-51ea57bef08249c0.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.189","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libc-0.2.189\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libc","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libc-0.2.189\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblibc-5628ff8fc96b7c30.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblibc-5628ff8fc96b7c30.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-result@0.2.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-result-0.2.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows_result","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-result-0.2.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_result-f79db900493f52d7.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_result-f79db900493f52d7.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerovec-derive@0.11.6","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerovec-derive-0.11.6\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"zerovec_derive","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerovec-derive-0.11.6\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\zerovec_derive-14ef16735d953d8b.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerovec_derive-14ef16735d953d8b.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#version_check@0.9.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\version_check-0.9.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"version_check","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\version_check-0.9.5\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libversion_check-94e2e789b2ec40fe.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libversion_check-94e2e789b2ec40fe.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#xml-rs@0.8.29","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\xml-rs-0.8.29\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"xml","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\xml-rs-0.8.29\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libxml-6ede0e7a10eccc13.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libxml-6ede0e7a10eccc13.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#gl_generator@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gl_generator-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gl_generator","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gl_generator-0.14.0\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgl_generator-ffe2d3197626bd71.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgl_generator-ffe2d3197626bd71.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slotmap@1.1.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\slotmap-1.1.1\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\slotmap-1.1.1\\build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\slotmap-9a857dacf5e345da\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerovec@0.11.8","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerovec-0.11.8\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerovec","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerovec-0.11.8\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["derive","yoke"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerovec-cff32bbd5e0c6b4f.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerovec-cff32bbd5e0c6b4f.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-strings@0.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-strings-0.1.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows_strings","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-strings-0.1.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_strings-c5d7342436cf8f6e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_strings-c5d7342436cf8f6e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#font-types@0.12.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\font-types-0.12.4\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"font_types","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\font-types-0.12.4\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytemuck","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfont_types-fdb71694d8252b17.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfont_types-fdb71694d8252b17.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#font-types@0.10.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\font-types-0.10.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"font_types","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\font-types-0.10.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytemuck","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfont_types-99a99c3a996c3bd4.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfont_types-99a99c3a996c3bd4.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-implement@0.58.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-implement-0.58.0\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"windows_implement","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-implement-0.58.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\windows_implement-ad433c4fe61e90ec.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_implement-ad433c4fe61e90ec.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-interface@0.58.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-interface-0.58.0\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"windows_interface","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-interface-0.58.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\windows_interface-628e8d305b9699ad.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_interface-628e8d305b9699ad.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#displaydoc@0.2.7","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\displaydoc-0.2.7\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"displaydoc","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\displaydoc-0.2.7\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\displaydoc-1226de5024c55391.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libdisplaydoc-1226de5024c55391.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-1.0.69\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-1.0.69\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\thiserror-b8b2ed9ad6989a0d\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustc-hash@2.1.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustc-hash-2.1.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustc_hash","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustc-hash-2.1.3\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librustc_hash-fd887c9fa238ccd0.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librustc_hash-fd887c9fa238ccd0.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#web-time@1.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\web-time-1.1.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"web_time","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\web-time-1.1.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libweb_time-13eade3aab5c4fbd.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libweb_time-13eade3aab5c4fbd.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.12","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\parking_lot_core-0.9.12\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\parking_lot_core-0.9.12\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\parking_lot_core-8fc79042be25be2a\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.12","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\parking_lot_core-669516aeb1e25030\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lilt@0.8.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lilt-0.8.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lilt","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lilt-0.8.2\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblilt-17be362c2994bcfd.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblilt-17be362c2994bcfd.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\thiserror-75915b6e0e2580c4\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-core@0.58.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-core-0.58.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows_core","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-core-0.58.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_core-4be59f50c7b0594f.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_core-4be59f50c7b0594f.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#read-fonts@0.35.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\read-fonts-0.35.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"read_fonts","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\read-fonts-0.35.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["libm","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libread_fonts-8744340ce9121ebc.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libread_fonts-8744340ce9121ebc.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#read-fonts@0.41.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\read-fonts-0.41.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"read_fonts","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\read-fonts-0.41.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libread_fonts-ee796e672f6c2b6c.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libread_fonts-ee796e672f6c2b6c.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#slotmap@1.1.1","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\slotmap-a915444a17ae34b4\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#glutin_wgl_sys@0.6.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\glutin_wgl_sys-0.6.1\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\glutin_wgl_sys-0.6.1\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\glutin_wgl_sys-1b055a8fb19db387\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lyon_geom@1.0.19","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon_geom-1.0.19\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lyon_geom","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon_geom-1.0.19\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon_geom-d3918139893025c6.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon_geom-d3918139893025c6.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#naga@27.0.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\naga-27.0.3\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\naga-27.0.3\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","glsl-out","hlsl-out","spv-out","wgsl-in"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\naga-b2a452c6ec02a9c6\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libloading@0.8.9","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libloading-0.8.9\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libloading","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\libloading-0.8.9\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblibloading-caa2519b5fd816c1.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblibloading-caa2519b5fd816c1.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror-impl@1.0.69","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-impl-1.0.69\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"thiserror_impl","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-impl-1.0.69\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\thiserror_impl-4124e84e09596764.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libthiserror_impl-4124e84e09596764.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.17.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hashbrown-0.17.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hashbrown-0.17.1\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhashbrown-4523d7ebe1eb39bc.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhashbrown-4523d7ebe1eb39bc.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-width@0.2.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-width-0.2.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_width","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-width-0.2.2\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["cjk","default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_width-a4d3f1bb5e70cf28.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_width-a4d3f1bb5e70cf28.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bit-vec@0.8.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bit-vec-0.8.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bit_vec","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bit-vec-0.8.0\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbit_vec-7ce2332a32227516.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbit_vec-7ce2332a32227516.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tinyvec_macros@0.1.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tinyvec_macros-0.1.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tinyvec_macros","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tinyvec_macros-0.1.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtinyvec_macros-a96fb20256beac97.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtinyvec_macros-a96fb20256beac97.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#foldhash@0.2.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\foldhash-0.2.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"foldhash","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\foldhash-0.2.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfoldhash-cd2bdaf593944293.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfoldhash-cd2bdaf593944293.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ash@0.38.0+1.3.281","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ash-0.38.0+1.3.281\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ash-0.38.0+1.3.281\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["debug","default","libloading","loaded","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\ash-8c4abbb13fad003b\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#khronos-egl@6.0.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\khronos-egl-6.0.0\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\khronos-egl-6.0.0\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["1_0","1_1","1_2","1_3","1_4","1_5","default","dynamic","libloading"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\khronos-egl-f697de1aa7755e37\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.18","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\itoa-1.0.18\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itoa","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\itoa-1.0.18\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libitoa-971c3e13d32ffcf2.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libitoa-971c3e13d32ffcf2.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#foldhash@0.1.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\foldhash-0.1.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"foldhash","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\foldhash-0.1.5\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfoldhash-0826f3f04e1a5796.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfoldhash-0826f3f04e1a5796.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#scopeguard@1.2.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\scopeguard-1.2.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"scopeguard","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\scopeguard-1.2.0\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libscopeguard-aa21239770b8fec6.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libscopeguard-aa21239770b8fec6.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\equivalent-1.0.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"equivalent","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\equivalent-1.0.2\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libequivalent-931efacfebdb5c9a.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libequivalent-931efacfebdb5c9a.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#glam@0.25.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\glam-0.25.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"glam","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\glam-0.25.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libglam-7b8723c7a526c9b6.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libglam-7b8723c7a526c9b6.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_core@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_core-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_core","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_core-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["advanced"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_core-d7d27a7865d7d159.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_core-d7d27a7865d7d159.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#indexmap@2.14.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\indexmap-2.14.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"indexmap","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\indexmap-2.14.1\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libindexmap-dc1dca82289f6c3a.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libindexmap-dc1dca82289f6c3a.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lock_api@0.4.14","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lock_api-0.4.14\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lock_api","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lock_api-0.4.14\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["atomic_usize","default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblock_api-1876e768f77cff74.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblock_api-1876e768f77cff74.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.15.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hashbrown-0.15.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hashbrown-0.15.5\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default-hasher"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhashbrown-8a58f54845fd2497.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhashbrown-8a58f54845fd2497.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#khronos-egl@6.0.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\khronos-egl-ea44436330bd63bd\\out"}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#ash@0.38.0+1.3.281","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\ash-f569a1921cf79800\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.16.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hashbrown-0.16.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hashbrown-0.16.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default-hasher","inline-more"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhashbrown-36be56b51a83d7b4.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhashbrown-36be56b51a83d7b4.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tinyvec@1.13.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tinyvec-1.13.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tinyvec","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tinyvec-1.13.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","tinyvec_macros"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtinyvec-ed5725dd372cdbbb.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtinyvec-ed5725dd372cdbbb.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bit-set@0.8.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bit-set-0.8.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bit_set","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\bit-set-0.8.0\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbit_set-da34d352eec872be.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbit_set-da34d352eec872be.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#codespan-reporting@0.12.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\codespan-reporting-0.12.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"codespan_reporting","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\codespan-reporting-0.12.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcodespan_reporting-c8463518e64796c8.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcodespan_reporting-c8463518e64796c8.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-1.0.69\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\thiserror-1.0.69\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libthiserror-a8562c576260b66e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libthiserror-a8562c576260b66e.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#naga@27.0.3","linked_libs":[],"linked_paths":[],"cfgs":["glsl_out","hlsl_out","spv_out","std"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\naga-6094431ea4850872\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lyon_path@1.0.19","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon_path-1.0.19\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lyon_path","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon_path-1.0.19\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon_path-d8e1b284e50a3fa5.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon_path-d8e1b284e50a3fa5.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#glutin_wgl_sys@0.6.1","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\glutin_wgl_sys-81c9503f6ec2fe44\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slotmap@1.1.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\slotmap-1.1.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"slotmap","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\slotmap-1.1.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libslotmap-c71eec3eba975c2e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libslotmap-c71eec3eba975c2e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#skrifa@0.44.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\skrifa-0.44.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"skrifa","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\skrifa-0.44.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libskrifa-3194c161b5e53b8f.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libskrifa-3194c161b5e53b8f.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows@0.58.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-0.58.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-0.58.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["Win32","Win32_Foundation","Win32_Graphics","Win32_Graphics_Direct3D","Win32_Graphics_Direct3D12","Win32_Graphics_Direct3D_Dxc","Win32_Graphics_Direct3D_Fxc","Win32_Graphics_DirectComposition","Win32_Graphics_Dxgi","Win32_Graphics_Dxgi_Common","Win32_Graphics_Gdi","Win32_Graphics_OpenGL","Win32_Security","Win32_System","Win32_System_Diagnostics","Win32_System_Diagnostics_Debug","Win32_System_Kernel","Win32_System_LibraryLoader","Win32_System_Performance","Win32_System_Threading","Win32_UI","Win32_UI_WindowsAndMessaging","default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows-014414f636af3fdb.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows-014414f636af3fdb.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.12","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\parking_lot_core-0.9.12\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot_core","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\parking_lot_core-0.9.12\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libparking_lot_core-0302be869d537889.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libparking_lot_core-0302be869d537889.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ttf-parser@0.25.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ttf-parser-0.25.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ttf_parser","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ttf-parser-0.25.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["apple-layout","core_maths","glyph-names","no-std-float","opentype-layout","std","variable-fonts"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libttf_parser-8f55e332d9622b66.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libttf_parser-8f55e332d9622b66.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures@0.3.34","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-0.3.34\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\futures-0.3.34\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures-c8a4a2dd096fb063.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfutures-c8a4a2dd096fb063.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu-hal@27.0.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-hal-27.0.4\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-hal-27.0.4\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["dx12","gles","gpu-allocator","portable-atomic","renderdoc","vulkan"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\wgpu-hal-38f324ff8e66b122\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#gpu-alloc-types@0.3.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-alloc-types-0.3.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gpu_alloc_types","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-alloc-types-0.3.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_alloc_types-6f4c59d95c6ccee0.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_alloc_types-6f4c59d95c6ccee0.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#gpu-descriptor-types@0.2.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-descriptor-types-0.2.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gpu_descriptor_types","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-descriptor-types-0.2.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_descriptor_types-1858d8bdd15c74e0.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_descriptor_types-1858d8bdd15c74e0.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#spirv@0.3.0+sdk-1.3.268.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\spirv-0.3.0+sdk-1.3.268.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"spirv","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\spirv-0.3.0+sdk-1.3.268.0\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libspirv-3c846a010ac2043e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libspirv-3c846a010ac2043e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#find-msvc-tools@0.1.12","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\find-msvc-tools-0.1.12\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"find_msvc_tools","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\find-msvc-tools-0.1.12\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfind_msvc_tools-a77c25fd7cd1ef1b.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfind_msvc_tools-a77c25fd7cd1ef1b.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#memmap2@0.9.11","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\memmap2-0.9.11\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"memmap2","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\memmap2-0.9.11\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libmemmap2-841beeb0f1a629ed.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libmemmap2-841beeb0f1a629ed.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hexf-parse@0.2.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hexf-parse-0.2.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hexf_parse","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hexf-parse-0.2.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhexf_parse-279b990594c7bbce.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhexf_parse-279b990594c7bbce.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zeno@0.3.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zeno-0.3.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zeno","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zeno-0.3.3\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["eval","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzeno-2fc787934e8a7cd6.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzeno-2fc787934e8a7cd6.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-segmentation@1.13.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-segmentation-1.13.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_segmentation","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-segmentation-1.13.3\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_segmentation-85698043f7780858.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_segmentation-85698043f7780858.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#yazi@0.2.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\yazi-0.2.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"yazi","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\yazi-0.2.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libyazi-69dfa79524f14886.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libyazi-69dfa79524f14886.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#presser@0.3.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\presser-0.3.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"presser","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\presser-0.3.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libpresser-269e2291582457e5.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libpresser-269e2291582457e5.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#shlex@2.0.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\shlex-2.0.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"shlex","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\shlex-2.0.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libshlex-ad289e1bf218f668.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libshlex-ad289e1bf218f668.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cc@1.4.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cc-1.4.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cc","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cc-1.4.5\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcc-d57b8105882e5fa0.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcc-d57b8105882e5fa0.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#gpu-allocator@0.27.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-allocator-0.27.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gpu_allocator","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-allocator-0.27.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["d3d12"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_allocator-967bbc1f342725e4.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_allocator-967bbc1f342725e4.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#swash@0.2.10","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\swash-0.2.10\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"swash","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\swash-0.2.10\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["render","scale","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libswash-0448d4a5d977af87.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libswash-0448d4a5d977af87.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#naga@27.0.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\naga-27.0.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"naga","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\naga-27.0.3\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","glsl-out","hlsl-out","spv-out","wgsl-in"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libnaga-1b010856f5c02c9b.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libnaga-1b010856f5c02c9b.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fontdb@0.23.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\fontdb-0.23.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fontdb","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\fontdb-0.23.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["fontconfig","fontconfig-parser","fs","memmap","memmap2","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfontdb-007e59f002fbf373.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfontdb-007e59f002fbf373.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#gpu-descriptor@0.3.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-descriptor-0.3.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gpu_descriptor","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-descriptor-0.3.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_descriptor-fac3b710369873db.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_descriptor-fac3b710369873db.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#gpu-alloc@0.6.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-alloc-0.6.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gpu_alloc","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\gpu-alloc-0.6.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_alloc-ae6066a9278dbce7.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgpu_alloc-ae6066a9278dbce7.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu-hal@27.0.4","linked_libs":[],"linked_paths":[],"cfgs":["native","send_sync","dx12","gles","gles_with_std","vulkan","supports_64bit_atomics","supports_ptr_atomics"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\wgpu-hal-08d2fc988c80c04d\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_futures@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_futures-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_futures","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_futures-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["tokio"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_futures-99d68a19ee722d48.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_futures-99d68a19ee722d48.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot@0.12.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\parking_lot-0.12.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\parking_lot-0.12.5\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libparking_lot-27eddcbf60d1f561.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libparking_lot-27eddcbf60d1f561.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#glutin_wgl_sys@0.6.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\glutin_wgl_sys-0.6.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"glutin_wgl_sys","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\glutin_wgl_sys-0.6.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libglutin_wgl_sys-742d4309c6cfdd6a.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libglutin_wgl_sys-742d4309c6cfdd6a.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ash@0.38.0+1.3.281","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ash-0.38.0+1.3.281\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ash","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ash-0.38.0+1.3.281\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["debug","default","libloading","loaded","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libash-440c79a90c728602.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libash-440c79a90c728602.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#khronos-egl@6.0.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\khronos-egl-6.0.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"khronos_egl","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\khronos-egl-6.0.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["1_0","1_1","1_2","1_3","1_4","1_5","default","dynamic","libloading"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libkhronos_egl-5ee4edad52b1e3e3.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libkhronos_egl-5ee4edad52b1e3e3.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#harfrust@0.3.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\harfrust-0.3.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"harfrust","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\harfrust-0.3.2\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libharfrust-5c2b9978b0c967e5.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libharfrust-5c2b9978b0c967e5.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#skrifa@0.37.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\skrifa-0.37.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"skrifa","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\skrifa-0.37.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libskrifa-412ea6d4d11f2dc3.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libskrifa-412ea6d4d11f2dc3.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tinystr@0.8.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tinystr-0.8.4\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tinystr","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tinystr-0.8.4\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zerovec"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtinystr-e88fa031f78d8437.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtinystr-e88fa031f78d8437.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu-types@27.0.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-types-27.0.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"wgpu_types","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-types-27.0.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std","thiserror","web"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu_types-dc39388ab7fe1280.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu_types-dc39388ab7fe1280.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ordered-float@5.5.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ordered-float-5.5.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ordered_float","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ordered-float-5.5.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libordered_float-d108d2bc85f12cf8.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libordered_float-d108d2bc85f12cf8.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-script@0.5.8","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-script-0.5.8\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_script","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-script-0.5.8\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_script-5e054be55af8e282.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_script-5e054be55af8e282.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rangemap@1.8.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rangemap-1.8.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rangemap","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rangemap-1.8.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librangemap-1d6e4809bfb9c681.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librangemap-1d6e4809bfb9c681.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#writeable@0.6.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\writeable-0.6.4\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"writeable","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\writeable-0.6.4\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwriteable-46a7de9410bcb5f2.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwriteable-46a7de9410bcb5f2.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#renderdoc-sys@1.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\renderdoc-sys-1.1.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"renderdoc_sys","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\renderdoc-sys-1.1.0\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librenderdoc_sys-150f0489c8932654.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librenderdoc_sys-150f0489c8932654.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#glow@0.16.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\glow-0.16.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"glow","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\glow-0.16.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libglow-cab264c6898aaf59.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libglow-cab264c6898aaf59.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-bidi@0.3.18","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-bidi-0.3.18\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_bidi","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-bidi-0.3.18\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["hardcoded-data","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_bidi-41a25178d914472d.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_bidi-41a25178d914472d.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#linebender_resource_handle@0.1.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\linebender_resource_handle-0.1.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"linebender_resource_handle","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\linebender_resource_handle-0.1.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblinebender_resource_handle-6eb3532b81e3dcc4.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblinebender_resource_handle-6eb3532b81e3dcc4.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#litemap@0.8.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\litemap-0.8.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"litemap","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\litemap-0.8.3\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblitemap-09d735fa86cca7ac.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblitemap-09d735fa86cca7ac.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#sys-locale@0.3.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\sys-locale-0.3.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"sys_locale","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\sys-locale-0.3.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsys_locale-373ce1af6158101a.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsys_locale-373ce1af6158101a.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#self_cell@1.3.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\self_cell-1.3.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"self_cell","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\self_cell-1.3.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libself_cell-d89d506b19b25665.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libself_cell-d89d506b19b25665.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#range-alloc@0.1.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\range-alloc-0.1.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"range_alloc","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\range-alloc-0.1.5\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librange_alloc-a1b6caee1ada41b9.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librange_alloc-a1b6caee1ada41b9.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-linebreak@0.1.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-linebreak-0.1.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_linebreak","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\unicode-linebreak-0.1.5\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_linebreak-e99548291833529e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libunicode_linebreak-e99548291833529e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#profiling@1.0.18","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\profiling-1.0.18\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"profiling","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\profiling-1.0.18\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libprofiling-bb4ce05fd7247125.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libprofiling-bb4ce05fd7247125.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu-hal@27.0.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-hal-27.0.4\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"wgpu_hal","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-hal-27.0.4\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["dx12","gles","gpu-allocator","portable-atomic","renderdoc","vulkan"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu_hal-a743d888639ef685.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu_hal-a743d888639ef685.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cosmic-text@0.15.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cosmic-text-0.15.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cosmic_text","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cosmic-text-0.15.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","fontconfig","std","swash","sys-locale"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcosmic_text-07313aa6396fe119.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcosmic_text-07313aa6396fe119.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_locale_core@2.3.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_locale_core-2.3.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_locale_core","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_locale_core-2.3.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zerovec"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_locale_core-4b506241af6d592b.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_locale_core-4b506241af6d592b.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ring@0.17.14","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ring-0.17.14\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ring-0.17.14\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","dev_urandom_fallback"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\ring-662eaa51714da618\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerotrie@0.2.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerotrie-0.2.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerotrie","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zerotrie-0.2.5\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["yoke","zerofrom"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerotrie-29841486933b17fd.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzerotrie-29841486933b17fd.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#potential_utf@0.1.6","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\potential_utf-0.1.6\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"potential_utf","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\potential_utf-0.1.6\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zerovec"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libpotential_utf-5d5c86142dd78a68.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libpotential_utf-5d5c86142dd78a68.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu-core@27.0.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-core-27.0.3\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-core-27.0.3\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","dx12","gles","metal","portable-atomic","raw-window-handle","renderdoc","std","vulkan","wgpu-core-deps-windows-linux-android","wgsl"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\wgpu-core-457c3d767f877af2\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#utf8_iter@1.0.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\utf8_iter-1.0.4\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"utf8_iter","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\utf8_iter-1.0.4\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libutf8_iter-23877425cbbe33c4.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libutf8_iter-23877425cbbe33c4.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.229","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_core-1.0.229\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_core-1.0.229\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["result","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\serde_core-161b3ae2683262f1\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#litrs@1.0.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\litrs-1.0.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"litrs","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\litrs-1.0.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblitrs-5cf7e39503967d4f.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblitrs-5cf7e39503967d4f.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_properties_data@2.3.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_properties_data-2.3.0\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_properties_data-2.3.0\\build.rs","edition":"2024","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\icu_properties_data-e71578c99c934cd3\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_normalizer_data@2.3.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_normalizer_data-2.3.0\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_normalizer_data-2.3.0\\build.rs","edition":"2024","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\icu_normalizer_data-d3eca3773d389d92\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_normalizer_data@2.3.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\icu_normalizer_data-c001693e7c4263ec\\out"}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_properties_data@2.3.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\icu_properties_data-4b435d3927ffd8a7\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#document-features@0.2.12","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\document-features-0.2.12\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"document_features","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\document-features-0.2.12\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\document_features-34fc7797615e0364.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libdocument_features-34fc7797615e0364.dll.a"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.229","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\serde_core-a1da37301c02ee2a\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_collections@2.3.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_collections-2.3.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_collections","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_collections-2.3.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_collections-ac86742a9dd8c8f3.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_collections-ac86742a9dd8c8f3.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu-core@27.0.3","linked_libs":[],"linked_paths":[],"cfgs":["windows_linux_android","send_sync","dx12","gles","vulkan","supports_64bit_atomics"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\wgpu-core-32672e31d92304e1\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_provider@2.3.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_provider-2.3.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_provider","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_provider-2.3.1\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["baked"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_provider-74f7f3fb4ccff39a.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_provider-74f7f3fb4ccff39a.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#ring@0.17.14","linked_libs":["static=ring_core_0_17_14_","static=ring_core_0_17_14__test"],"linked_paths":["native=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\ring-5f8d2d20440f09b4\\out"],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\ring-5f8d2d20440f09b4\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu-core-deps-windows-linux-android@27.0.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-core-deps-windows-linux-android-27.0.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"wgpu_core_deps_windows_linux_android","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-core-deps-windows-linux-android-27.0.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["dx12","gles","renderdoc","vulkan"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu_core_deps_windows_linux_android-db4c47168a33fb44.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu_core_deps_windows_linux_android-db4c47168a33fb44.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#http@1.5.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\http-1.5.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"http","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\http-1.5.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhttp-47a7410cfc172b84.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhttp-47a7410cfc172b84.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu@27.0.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-27.0.1\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-27.0.1\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","dx12","gles","metal","parking_lot","std","vulkan","web","webgpu","wgsl"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\wgpu-dffdc39599e5ad0e\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tracing-core@0.1.36","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tracing-core-0.1.36\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tracing_core","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tracing-core-0.1.36\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["once_cell","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtracing_core-2dc069dfba18ede6.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtracing_core-2dc069dfba18ede6.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tracing-attributes@0.1.31","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tracing-attributes-0.1.31\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"tracing_attributes","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tracing-attributes-0.1.31\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\tracing_attributes-fa36f052cc72e303.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtracing_attributes-fa36f052cc72e303.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#percent-encoding@2.3.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\percent-encoding-2.3.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"percent_encoding","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\percent-encoding-2.3.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libpercent_encoding-2c27496c68b2308e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libpercent_encoding-2c27496c68b2308e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#svg_fmt@0.4.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\svg_fmt-0.4.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"svg_fmt","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\svg_fmt-0.4.5\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsvg_fmt-1f58261d1798c1e9.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsvg_fmt-1f58261d1798c1e9.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zeroize@1.9.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zeroize-1.9.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zeroize","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zeroize-1.9.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzeroize-244976d554ece06f.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzeroize-244976d554ece06f.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustls-pki-types@1.15.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustls-pki-types-1.15.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustls_pki_types","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustls-pki-types-1.15.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librustls_pki_types-1bd3655517871842.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librustls_pki_types-1bd3655517871842.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tracing@0.1.44","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tracing-0.1.44\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tracing","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tracing-0.1.44\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["attributes","default","std","tracing-attributes"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtracing-a25988cc6932fd96.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtracing-a25988cc6932fd96.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu@27.0.1","linked_libs":[],"linked_paths":[],"cfgs":["native","send_sync","dx12","vulkan","gles","wgpu_core","supports_64bit_atomics","std"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\wgpu-9d5b56fe8fcf3c6d\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#http-body@1.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\http-body-1.1.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"http_body","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\http-body-1.1.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhttp_body-1e221e4b8f6ce076.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhttp_body-1e221e4b8f6ce076.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu-core@27.0.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-core-27.0.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"wgpu_core","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-core-27.0.3\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","dx12","gles","metal","portable-atomic","raw-window-handle","renderdoc","std","vulkan","wgpu-core-deps-windows-linux-android","wgsl"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu_core-bce128809e3bbd57.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu_core-bce128809e3bbd57.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.229","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_core-1.0.229\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_core","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_core-1.0.229\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["result","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libserde_core-f52ac0796dd4fc39.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libserde_core-f52ac0796dd4fc39.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_properties_data@2.3.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_properties_data-2.3.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_properties_data","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_properties_data-2.3.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_properties_data-0a55d3110383d8cf.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_properties_data-0a55d3110383d8cf.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_normalizer_data@2.3.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_normalizer_data-2.3.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_normalizer_data","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_normalizer_data-2.3.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_normalizer_data-cc624475940b4280.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_normalizer_data-cc624475940b4280.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_graphics@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_graphics-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_graphics","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_graphics-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["geometry","lyon_path"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_graphics-624c1ad1d2dc2a19.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_graphics-624c1ad1d2dc2a19.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.2.17","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\getrandom-0.2.17\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"getrandom","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\getrandom-0.2.17\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgetrandom-185bbb1050af4ba4.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgetrandom-185bbb1050af4ba4.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#float_next_after@1.0.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\float_next_after-1.0.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"float_next_after","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\float_next_after-1.0.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfloat_next_after-f37d5e9e563fe7b6.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfloat_next_after-f37d5e9e563fe7b6.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#untrusted@0.9.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\untrusted-0.9.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"untrusted","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\untrusted-0.9.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libuntrusted-8ff786a1980b4b0a.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libuntrusted-8ff786a1980b4b0a.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#static_assertions@1.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\static_assertions-1.1.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"static_assertions","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\static_assertions-1.1.0\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libstatic_assertions-e30c198504c77e70.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libstatic_assertions-e30c198504c77e70.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#httparse@1.10.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\httparse-1.10.1\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\httparse-1.10.1\\build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\httparse-a2eedd5114971ddd\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#httparse@1.10.1","linked_libs":[],"linked_paths":[],"cfgs":["httparse_simd_neon_intrinsics","httparse_simd"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\httparse-698f1875f21d9b15\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#wgpu@27.0.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-27.0.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"wgpu","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\wgpu-27.0.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","dx12","gles","metal","parking_lot","std","vulkan","web","webgpu","wgsl"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu-595090e3ab7ff771.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwgpu-595090e3ab7ff771.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ring@0.17.14","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ring-0.17.14\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ring","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ring-0.17.14\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","dev_urandom_fallback"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libring-738dab64282c6eef.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libring-738dab64282c6eef.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lyon_tessellation@1.0.21","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon_tessellation-1.0.21\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lyon_tessellation","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon_tessellation-1.0.21\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon_tessellation-c823cc7a711760b5.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon_tessellation-c823cc7a711760b5.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_normalizer@2.3.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_normalizer-2.3.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_normalizer","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_normalizer-2.3.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["compiled_data"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_normalizer-59c6783bf6a5e835.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_normalizer-59c6783bf6a5e835.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_properties@2.3.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_properties-2.3.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_properties","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\icu_properties-2.3.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["compiled_data"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_properties-5116ed65b0290f32.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libicu_properties-5116ed65b0290f32.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#etagere@0.2.15","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\etagere-0.2.15\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"etagere","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\etagere-0.2.15\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libetagere-11863a42386f547a.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libetagere-11863a42386f547a.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_debug@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_debug-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_debug","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_debug-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_debug-fe62b2ca2b80c527.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_debug-fe62b2ca2b80c527.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lyon_algorithms@1.0.21","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon_algorithms-1.0.21\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lyon_algorithms","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon_algorithms-1.0.21\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon_algorithms-edfce36ea52c6680.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon_algorithms-edfce36ea52c6680.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#try-lock@0.2.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\try-lock-0.2.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"try_lock","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\try-lock-0.2.5\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtry_lock-9f27ccc0a055ed63.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtry_lock-9f27ccc0a055ed63.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower-service@0.3.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tower-service-0.3.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower_service","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tower-service-0.3.3\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtower_service-7458f32bbeb2d4e8.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtower_service-7458f32bbeb2d4e8.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.4.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\getrandom-0.4.3\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\getrandom-0.4.3\\build.rs","edition":"2024","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\getrandom-168cb7f91c8645ca\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lru@0.16.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lru-0.16.4\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lru","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lru-0.16.4\\src\\lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblru-a0c556d4aa0be9d2.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblru-a0c556d4aa0be9d2.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.229","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde-1.0.229\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde-1.0.229\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","serde_derive","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\serde-c9911adbe87e85d2\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zmij@1.0.23","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zmij-1.0.23\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zmij-1.0.23\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\zmij-e8f67a20243f3063\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustls@0.23.43","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustls-0.23.43\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustls-0.23.43\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ring","std","tls12"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\rustls-4731cd7a4b08d473\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustls@0.23.43","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\rustls-2bbc978437ba46fb\\out"}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#zmij@1.0.23","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\zmij-c8f8f3187a72be14\\out"}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.229","linked_libs":[],"linked_paths":[],"cfgs":["if_docsrs_then_no_serde_core"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\serde-963672309bf9e4ba\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cryoglyph@0.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cryoglyph-0.1.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cryoglyph","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cryoglyph-0.1.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcryoglyph-b2394e118b4d9376.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcryoglyph-b2394e118b4d9376.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.4.3","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\getrandom-4967b63cf7b288b8\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#want@0.3.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\want-0.3.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"want","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\want-0.3.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwant-32f9dd7f41c480ab.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwant-32f9dd7f41c480ab.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lyon@1.0.19","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon-1.0.19\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lyon","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\lyon-1.0.19\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon-4cdc4fdcfb93f989.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liblyon-4cdc4fdcfb93f989.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#idna_adapter@1.2.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\idna_adapter-1.2.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"idna_adapter","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\idna_adapter-1.2.2\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["compiled_data"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libidna_adapter-8d8c45dfcc1fdf6e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libidna_adapter-8d8c45dfcc1fdf6e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustls-webpki@0.103.15","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustls-webpki-0.103.15\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"webpki","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustls-webpki-0.103.15\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","ring","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwebpki-008d50ae9e845dae.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwebpki-008d50ae9e845dae.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#httparse@1.10.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\httparse-1.10.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"httparse","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\httparse-1.10.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhttparse-9c77e151b8820051.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhttparse-9c77e151b8820051.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#guillotiere@0.6.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\guillotiere-0.6.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"guillotiere","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\guillotiere-0.6.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libguillotiere-faf3950892ed8771.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libguillotiere-faf3950892ed8771.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#form_urlencoded@1.2.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\form_urlencoded-1.2.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"form_urlencoded","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\form_urlencoded-1.2.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libform_urlencoded-cc07c16f896fb577.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libform_urlencoded-cc07c16f896fb577.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#winit@0.30.13","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\winit-0.30.13\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\winit-0.30.13\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ahash","bytemuck","memmap2","percent-encoding","rwh_06","sctk","sctk-adwaita","wayland","wayland-backend","wayland-client","wayland-csd-adwaita","wayland-dlopen","wayland-protocols","wayland-protocols-plasma","x11","x11-dl","x11rb"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\winit-83b21ae2c86d60b6\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_derive@1.0.229","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_derive-1.0.229\\Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"serde_derive","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_derive-1.0.229\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\serde_derive-85ba47d41ea85c8c.dll","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libserde_derive-85ba47d41ea85c8c.dll.a"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#atomic-waker@1.1.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\atomic-waker-1.1.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"atomic_waker","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\atomic-waker-1.1.2\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libatomic_waker-e967f7e415cea2c2.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libatomic_waker-e967f7e415cea2c2.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#error-code@3.4.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\error-code-3.4.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"error_code","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\error-code-3.4.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liberror_code-0cb8a5eb06ab8729.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liberror_code-0cb8a5eb06ab8729.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#subtle@2.6.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\subtle-2.6.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"subtle","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\subtle-2.6.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsubtle-5343c5ccffb39419.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsubtle-5343c5ccffb39419.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.151","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_json-1.0.151\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_json-1.0.151\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\serde_json-28521d5277e5c15b\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.151","linked_libs":[],"linked_paths":[],"cfgs":["fast_arithmetic=\"64\""],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\serde_json-908788f6700df5fb\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustls@0.23.43","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustls-0.23.43\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustls","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rustls-0.23.43\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ring","std","tls12"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librustls-b129a6e715773239.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librustls-b129a6e715773239.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clipboard-win@5.4.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\clipboard-win-5.4.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clipboard_win","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\clipboard-win-5.4.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libclipboard_win-397533c2e2575812.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libclipboard_win-397533c2e2575812.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hyper@1.11.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hyper-1.11.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hyper-1.11.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["client","default","http1"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhyper-e5ef4fb4f9b64063.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhyper-e5ef4fb4f9b64063.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.229","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde-1.0.229\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde-1.0.229\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","serde_derive","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libserde-698855389a914a01.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libserde-698855389a914a01.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#winit@0.30.13","linked_libs":[],"linked_paths":[],"cfgs":["windows_platform"],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\winit-4ccf486d7e382df9\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_wgpu@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_wgpu-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_wgpu","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_wgpu-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","geometry","lyon"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_wgpu-c0f17b8f9b992dc8.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_wgpu-c0f17b8f9b992dc8.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#idna@1.1.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\idna-1.1.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"idna","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\idna-1.1.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","compiled_data","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libidna-bdd1376744228939.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libidna-bdd1376744228939.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.4.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\getrandom-0.4.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"getrandom","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\getrandom-0.4.3\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgetrandom-6e8efb5a01ff0cbb.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libgetrandom-6e8efb5a01ff0cbb.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zmij@1.0.23","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zmij-1.0.23\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zmij","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\zmij-1.0.23\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzmij-9f8770986f00ef15.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libzmij-9f8770986f00ef15.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_runtime@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_runtime-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_runtime","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_runtime-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_runtime-93fe602e2dabe64d.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_runtime-93fe602e2dabe64d.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.52.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-sys-0.52.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows_sys","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-sys-0.52.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["Win32","Win32_Devices","Win32_Devices_HumanInterfaceDevice","Win32_Foundation","Win32_Globalization","Win32_Graphics","Win32_Graphics_Dwm","Win32_Graphics_Gdi","Win32_Media","Win32_Security","Win32_System","Win32_System_Com","Win32_System_Com_StructuredStorage","Win32_System_LibraryLoader","Win32_System_Ole","Win32_System_SystemInformation","Win32_System_SystemServices","Win32_System_Threading","Win32_System_WindowsProgramming","Win32_UI","Win32_UI_Accessibility","Win32_UI_Controls","Win32_UI_HiDpi","Win32_UI_Input","Win32_UI_Input_Ime","Win32_UI_Input_KeyboardAndMouse","Win32_UI_Input_Pointer","Win32_UI_Input_Touch","Win32_UI_Shell","Win32_UI_TextServices","Win32_UI_WindowsAndMessaging","default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_sys-06c2af6f098f909f.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_sys-06c2af6f098f909f.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#sync_wrapper@1.0.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\sync_wrapper-1.0.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"sync_wrapper","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\sync_wrapper-1.0.2\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["futures","futures-core"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsync_wrapper-6990166b58a7374a.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsync_wrapper-6990166b58a7374a.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cursor-icon@1.2.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cursor-icon-1.2.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cursor_icon","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\cursor-icon-1.2.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcursor_icon-ad27fa28bd28652d.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libcursor_icon-ad27fa28bd28652d.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#dpi@0.1.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\dpi-0.1.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"dpi","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\dpi-0.1.2\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libdpi-f5f7fb1c621a018e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libdpi-f5f7fb1c621a018e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#base64@0.22.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\base64-0.22.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"base64","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\base64-0.22.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbase64-727bb2e9e77ea808.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libbase64-727bb2e9e77ea808.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ipnet@2.12.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ipnet-2.12.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ipnet","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ipnet-2.12.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libipnet-b58970b857bf6042.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libipnet-b58970b857bf6042.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower-layer@0.3.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tower-layer-0.3.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower_layer","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tower-layer-0.3.3\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtower_layer-f71a1751e33be8db.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtower_layer-f71a1751e33be8db.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower@0.5.3","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tower-0.5.3\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tower-0.5.3\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["futures-core","futures-util","pin-project-lite","retry","sync_wrapper","timeout","tokio","util"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtower-ee71091376f45b24.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtower-ee71091376f45b24.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hyper-util@0.1.20","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hyper-util-0.1.20\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_util","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hyper-util-0.1.20\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["client","client-legacy","client-proxy","default","http1","tokio"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhyper_util-b26eeba27e741a08.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhyper_util-b26eeba27e741a08.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#winit@0.30.13","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\winit-0.30.13\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"winit","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\winit-0.30.13\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ahash","bytemuck","memmap2","percent-encoding","rwh_06","sctk","sctk-adwaita","wayland","wayland-backend","wayland-client","wayland-csd-adwaita","wayland-dlopen","wayland-protocols","wayland-protocols-plasma","x11","x11-dl","x11rb"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwinit-ba7482330d748070.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwinit-ba7482330d748070.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_program@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_program-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_program","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_program-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_program-ffcde4ddf0598e31.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_program-ffcde4ddf0598e31.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.151","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_json-1.0.151\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_json","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_json-1.0.151\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libserde_json-39fc764f03e68759.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libserde_json-39fc764f03e68759.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#url@2.5.8","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\url-2.5.8\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"url","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\url-2.5.8\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liburl-2d7487f095ea9231.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liburl-2d7487f095ea9231.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_renderer@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_renderer-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_renderer","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_renderer-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["geometry","iced_wgpu","wayland","wgpu","wgpu-bare","x11"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_renderer-2573a9f65f468446.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_renderer-2573a9f65f468446.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#window_clipboard@0.5.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\window_clipboard-0.5.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"window_clipboard","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\window_clipboard-0.5.1\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clipboard_wayland","clipboard_x11","wayland","x11"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindow_clipboard-51aae3cf7171c4ae.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindow_clipboard-51aae3cf7171c4ae.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-rustls@0.26.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tokio-rustls-0.26.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_rustls","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tokio-rustls-0.26.5\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ring","tls12"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtokio_rustls-71f10d02a9f9e4e6.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtokio_rustls-71f10d02a9f9e4e6.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#webpki-roots@1.0.9","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\webpki-roots-1.0.9\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"webpki_roots","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\webpki-roots-1.0.9\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwebpki_roots-3b25851f8e797647.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwebpki_roots-3b25851f8e797647.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#winapi-util@0.1.11","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\winapi-util-0.1.11\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"winapi_util","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\winapi-util-0.1.11\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwinapi_util-178409c37516f0da.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwinapi_util-178409c37516f0da.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"path+file:///C:/ar-text-9e8r6t/crates/oa-core#0.2.0","manifest_path":"C:\\ar-text-9e8r6t\\crates\\oa-core\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\ar-text-9e8r6t\\crates\\oa-core\\build.rs","edition":"2024","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\oa-core-6f46b396061b0e99\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ryu@1.0.23","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ryu-1.0.23\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ryu","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\ryu-1.0.23\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libryu-28cfd08a9cfed0fa.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libryu-28cfd08a9cfed0fa.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#sha1_smol@1.0.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\sha1_smol-1.0.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"sha1_smol","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\sha1_smol-1.0.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsha1_smol-c4b7e5ec8b41792e.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsha1_smol-c4b7e5ec8b41792e.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fastrand@2.5.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\fastrand-2.5.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fastrand","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\fastrand-2.5.0\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfastrand-3df248e815d242e1.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libfastrand-3df248e815d242e1.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rfd@0.15.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rfd-0.15.4\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rfd-0.15.4\\build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ashpd","async-std","default","pollster","urlencoding","xdg-portal"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\rfd-8cedae2692909516\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#rfd@0.15.4","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\rfd-6a203449fa297c36\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tempfile@3.27.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tempfile-3.27.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tempfile","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tempfile-3.27.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","getrandom"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtempfile-86aac28d6be16d2f.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtempfile-86aac28d6be16d2f.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#uuid@1.26.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\uuid-1.26.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"uuid","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\uuid-1.26.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","rng","serde","sha1","std","v4","v5"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libuuid-f7851e8936dae115.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libuuid-f7851e8936dae115.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_urlencoded@0.7.1","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_urlencoded-0.7.1\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_urlencoded","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\serde_urlencoded-0.7.1\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libserde_urlencoded-ad8d1ce9366d3ed4.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libserde_urlencoded-ad8d1ce9366d3ed4.rmeta"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"path+file:///C:/ar-text-9e8r6t/crates/oa-core#0.2.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\oa-core-08552b12a2cacda2\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#same-file@1.0.6","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\same-file-1.0.6\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"same_file","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\same-file-1.0.6\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsame_file-e8a4d164978c7bf3.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libsame_file-e8a4d164978c7bf3.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hyper-rustls@0.27.9","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hyper-rustls-0.27.9\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_rustls","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\hyper-rustls-0.27.9\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["http1","ring","tls12","webpki-roots","webpki-tokio"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhyper_rustls-c6aa16b733036ee9.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhyper_rustls-c6aa16b733036ee9.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_winit@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_winit-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_winit","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_winit-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["wayland","x11"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_winit-5aa41936858bc773.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_winit-5aa41936858bc773.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced_widget@0.14.2","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_widget-0.14.2\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced_widget","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced_widget-0.14.2\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["advanced","canvas","wgpu"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_widget-8513284801154688.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced_widget-8513284801154688.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower-http@0.6.11","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tower-http-0.6.11\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower_http","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tower-http-0.6.11\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["follow-redirect","futures-util","tower"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtower_http-92f42ef6b0d2c3ab.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libtower_http-92f42ef6b0d2c3ab.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#http-body-util@0.1.5","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\http-body-util-0.1.5\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"http_body_util","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\http-body-util-0.1.5\\src\\lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhttp_body_util-70fa0b4576b964c7.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libhttp_body_util-70fa0b4576b964c7.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.59.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-sys-0.59.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"windows_sys","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\windows-sys-0.59.0\\src\\lib.rs","edition":"2021","doc":true,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["Win32","Win32_Foundation","Win32_System","Win32_System_Com","Win32_UI","Win32_UI_Shell","Win32_UI_Shell_Common","Win32_UI_WindowsAndMessaging","default"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_sys-c21bfdf36c33841c.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libwindows_sys-c21bfdf36c33841c.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"path+file:///C:/ar-text-9e8r6t/crates/oa-desktop#0.2.0","manifest_path":"C:\\ar-text-9e8r6t\\crates\\oa-desktop\\Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"C:\\ar-text-9e8r6t\\crates\\oa-desktop\\build.rs","edition":"2024","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\oa-desktop-64bfcb13993fdcf4\\build-script-build.exe"],"executable":null,"fresh":true}
{"reason":"build-script-executed","package_id":"path+file:///C:/ar-text-9e8r6t/crates/oa-desktop#0.2.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\build\\oa-desktop-664d65ac5124e646\\out"}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rfd@0.15.4","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rfd-0.15.4\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rfd","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\rfd-0.15.4\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ashpd","async-std","default","pollster","urlencoding","xdg-portal"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librfd-17cc7ba2db223d7b.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\librfd-17cc7ba2db223d7b.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#reqwest@0.12.28","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\reqwest-0.12.28\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reqwest","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\reqwest-0.12.28\\src\\lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["__rustls","__rustls-ring","__tls","json","rustls-tls","rustls-tls-webpki-roots","rustls-tls-webpki-roots-no-provider"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libreqwest-b01c69cdcc184887.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libreqwest-b01c69cdcc184887.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iced@0.14.0","manifest_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced-0.14.0\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iced","src_path":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\iced-0.14.0\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["advanced","canvas","tokio","wayland","wgpu","wgpu-bare","x11"],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced-a4e48b220c5d9711.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\libiced-a4e48b220c5d9711.rmeta"],"executable":null,"fresh":true}
{"reason":"compiler-artifact","package_id":"path+file:///C:/ar-text-9e8r6t/crates/oa-core#0.2.0","manifest_path":"C:\\ar-text-9e8r6t\\crates\\oa-core\\Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"oa_core","src_path":"C:\\ar-text-9e8r6t\\crates\\oa-core\\src\\lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liboa_core-3e81c616fea1d901.rlib","C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\deps\\liboa_core-3e81c616fea1d901.rmeta"],"executable":null,"fresh":false}
{"reason":"compiler-artifact","package_id":"path+file:///C:/ar-text-9e8r6t/crates/oa-desktop#0.2.0","manifest_path":"C:\\ar-text-9e8r6t\\crates\\oa-desktop\\Cargo.toml","target":{"kind":["bin"],"crate_types":["bin"],"name":"arcadia-studio","src_path":"C:\\ar-text-9e8r6t\\crates\\oa-desktop\\src\\main.rs","edition":"2024","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\arcadia-studio.exe"],"executable":"C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\target-gnullvm\\debug\\arcadia-studio.exe","fresh":false}
{"reason":"build-finished","success":true}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,38 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"--",
"--list"
],
"started": "2026-09-13T02:18:28.501200+00:00",
"finished": "2026-09-13T02:22:47.122499+00:00",
"seconds": 258.62018909999824,
"exitCode": 0,
"inputsUnchanged": true,
"stdoutSha256": "a309cb73becffea6de10375deac7a9e30fc7c3d7a125aa10f30b5cd06b007cdd",
"stderrSha256": "a8db625d670cd4dce500735df31815f01e3089d9d84a949fd2bf6a3aecb1b3d0",
"testMembership": {
"listed": 859,
"required": [
"app::source_symbols::tests::retained_choices_cannot_replay_after_hide_or_references_problems_references",
"app::text_workspace::lifecycle_tests::invalid_repair_open_clears_prior_presentation_and_publishes_current_problems_preserving_worker",
"app::text_workspace::lifecycle_tests::saved_new_destination_republishes_current_warning_and_refuses_old_primary_and_related",
"app::text_workspace::tests::document_reset_preserves_popup_token_sequence_and_drops_old_menu_authority",
"app::text_workspace::tests::queued_group_toggle_cannot_mutate_a_reopened_or_rotated_visit",
"app::text_workspace::tests::stale_retained_group_can_expand_without_navigating_or_applying_drafts",
"diagnostic_input::tests::same_publication_new_visit_cancels_armed_rows_without_a_hidden_tree_frame",
"views::text_workspace::summary_visibility_tests::all_reference_exceptions_fit_allocated_width_with_wide_alias_and_large_counts",
"views::text_workspace::tests::drawer_clamps_to_actual_center_allocation_including_oversize_requests",
"views::text_workspace::tests::highlighted_sensor_editor_retains_real_scrolled_buffer_across_panel_rebuilds"
],
"missing": [],
"diagnosticGuardCount": 20
}
}
@@ -0,0 +1,3 @@
Compiling oa-desktop v0.2.0 (C:\ar-text-9e8r6t\crates\oa-desktop)
Finished `test` profile [unoptimized] target(s) in 4m 18s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
@@ -0,0 +1,861 @@
app::architecture_authoring::tests::architecture_allocated_work_is_root_owned_and_one_exact_history_change: test
app::architecture_authoring::tests::architecture_blank_names_and_escape_never_accept_placeholder_or_rename: test
app::architecture_authoring::tests::architecture_captured_escape_does_not_cancel_other_controls_or_placement: test
app::architecture_authoring::tests::architecture_f2_routes_selected_node_to_inline_rename_and_exact_undo: test
app::architecture_authoring::tests::architecture_first_focused_input_escape_cancels_create_and_rename: test
app::architecture_authoring::tests::architecture_invalid_click_cannot_poison_inline_or_checkpoint_geometry: test
app::architecture_authoring::tests::architecture_stale_submit_keeps_create_and_rename_visible_and_exact: test
app::architecture_authoring_tests::architecture_cancelled_gesture_cannot_commit_a_later_named_draft: test
app::architecture_authoring_tests::architecture_canvas_left_click_uses_world_coordinate_once_at_zoom_and_pan: test
app::architecture_authoring_tests::architecture_checkpoint_retains_exact_name_point_and_fresh_binding_without_commands: test
app::architecture_authoring_tests::architecture_context_choices_are_small_and_system_is_singleton: test
app::architecture_authoring_tests::architecture_contextual_allocation_creates_work_relation_and_node_in_one_undo: test
app::architecture_authoring_tests::architecture_creation_names_before_commit_preserves_camera_and_undoes_once: test
app::architecture_authoring_tests::architecture_existing_inventory_is_contextual_and_placement_never_implies_allocation: test
app::architecture_authoring_tests::architecture_f2_rename_preserves_identity_placement_and_atomic_history: test
app::architecture_authoring_tests::architecture_name_survives_rejected_click_resize_navigation_and_escape_is_explicit: test
app::architecture_authoring_tests::architecture_rejected_submission_keeps_inline_name_visible_and_invalid_click_is_ignored: test
app::architecture_authoring_tests::basic_transition_explicit_overview_focus_wins_over_an_already_populated_architecture: test
app::behavior_lifecycle_tests::incomplete_behavior_form_is_dirty_close_save_retains_it_and_cancel_allows_switching: test
app::behavior_lifecycle_tests::passive_behavior_canvas_events_do_not_apply_property_drafts: test
app::behavior_lifecycle_tests::pending_behavior_blocks_navigation_property_edits_and_model_history: test
app::behavior_lifecycle_tests::pending_behavior_blocks_source_creation_and_source_history_replay: test
app::behavior_lifecycle_tests::save_prepares_behavior_before_opening_destination_and_cancel_keeps_one_undo: test
app::behavior_lifecycle_tests::source_writeback_failure_keeps_typed_behavior_form_for_repair_and_one_undo: test
app::checkpoints::tests::checkpoint_completion_releases_the_writer_while_a_context_menu_is_open: test
app::checkpoints::tests::checkpoint_inline_create_and_rename_restore_focus_without_changing_drafts_or_history: test
app::checkpoints::tests::checkpoint_noninline_contexts_keep_other_focus_and_still_lint: test
app::checkpoints::tests::discard_and_close_waits_for_the_late_checkpoint_then_retires_it: test
app::checkpoints::tests::home_resume_keeps_state_view_while_explicit_architecture_remains_reachable: test
app::checkpoints::tests::home_resume_retains_invalid_source_and_property_drafts: test
app::checkpoints::tests::home_resume_returns_to_each_actual_workspace_without_model_edits: test
app::checkpoints::tests::malformed_checkpoint_does_not_replace_the_current_model: test
app::checkpoints::tests::recent_and_recovery_navigation_respect_unsaved_decision: test
app::checkpoints::tests::restored_copy_keeps_raw_property_and_requires_save_without_local_or_hosted_binding: test
app::checkpoints::tests::saving_an_older_snapshot_keeps_recovery_for_newer_unsaved_work: test
app::checkpoints::tests::stale_write_completion_cannot_recover_a_discarded_document: test
app::checkpoints::tests::walkthrough_request_keeps_unfinished_source_behind_the_normal_pending_guard: test
app::data_paging_lifecycle_tests::paging_preserves_same_context_and_resets_on_layer_or_document_replacement: test
app::diagram_selection_tests::changing_visible_view_follows_its_clean_inspector_without_a_model_edit: test
app::diagram_selection_tests::diagram_switch_preserves_an_independent_semantic_inspection: test
app::diagram_selection_tests::diagram_uuid_edit_follows_the_same_view_or_a_different_picker_target: test
app::diagram_selection_tests::invalid_view_draft_blocks_the_switch_and_retains_raw_input: test
app::diagram_selection_tests::stale_diagram_choice_never_applies_an_unrelated_valid_draft: test
app::diagram_selection_tests::valid_pending_view_edit_applies_to_old_view_then_inspects_the_new_view: test
app::direct_scenario_tests::direct_scenario_creation_and_reorder_preserve_selection_and_each_undo_once: test
app::direct_scenario_tests::direct_scenario_rejects_every_stale_context_and_preserves_property_drafts: test
app::direct_scenario_tests::direct_scenario_scroll_and_real_resize_invalidate_only_pointer_context: test
app::direct_scenario_tests::direct_scenario_source_failure_and_navigation_keep_form_until_success: test
app::hosted::tests::hosted_actual_app_tasks_publish_edit_conflict_correct_credentials_reload_and_open: test
app::hosted::tests::hosted_catalog_invalidation_follows_service_writes_and_observed_revision_changes: test
app::hosted::tests::hosted_catalog_search_credentials_and_failed_refresh_never_mix_result_scopes: test
app::hosted::tests::hosted_changed_bound_head_does_not_invalidate_another_services_empty_filter: test
app::hosted::tests::hosted_conflict_fetches_review_without_adoption_and_reload_is_undoable: test
app::hosted::tests::hosted_detached_drafts_and_recovery_remain_available_after_rejected_publish: test
app::hosted::tests::hosted_failed_cross_service_publication_checks_and_reloads_its_own_resource: test
app::hosted::tests::hosted_failed_or_cancelled_local_open_keeps_the_existing_document_and_destination: test
app::hosted::tests::hosted_invalid_and_detached_source_drafts_never_start_network_writes: test
app::hosted::tests::hosted_invalid_local_open_repair_saves_locally_and_never_replaces_old_resource: test
app::hosted::tests::hosted_modal_blocks_underlying_edits_and_credentials_are_redacted: test
app::hosted::tests::hosted_new_revision_invalidates_filtered_catalog_even_without_a_displayed_row: test
app::hosted::tests::hosted_only_successful_source_save_as_changes_the_active_destination: test
app::hosted::tests::hosted_open_waits_for_unsaved_guard_and_failed_open_preserves_current_document: test
app::hosted::tests::hosted_publish_acknowledges_only_the_sent_snapshot_and_retains_undo: test
app::hosted::tests::hosted_stale_completions_do_not_clear_current_busy_or_adopt_another_document: test
app::hosted::tests::hosted_unknown_save_is_acknowledged_by_exact_readback_without_retry: test
app::lint_tests::committed_check_cache_follows_edit_and_undo_while_drafts_stay_separate: test
app::lint_tests::lint_coalesces_work_and_rejects_obsolete_results: test
app::lint_tests::prior_document_lint_cannot_enter_reopened_model_or_block_next_checks: test
app::port_view_tests::catalog_creation_follows_the_new_port_and_keeps_group_browsing_explicit: test
app::port_view_tests::filtered_active_view_cannot_hide_a_created_port_when_eligible_owner_view_is_folded: test
app::process_canvas::direct_process_dirty_source_blocks_canvas_creation_without_losing_text: test
app::process_canvas::tests::direct_process_app_open_source_and_back_preserve_local_reference_identity: test
app::process_canvas::tests::direct_process_app_same_owner_selection_preserves_tool_but_owner_change_resets_it: test
app::process_canvas::tests::direct_process_app_save_scroll_resize_and_passive_geometry_keep_drafts_and_current_origin: test
app::process_canvas::tests::direct_process_app_source_failure_retains_form_then_commits_once_and_selects_occurrence: test
app::process_canvas::tests::direct_process_app_stale_context_dirty_source_and_properties_never_mutate: test
app::process_canvas::tests::direct_process_append_empty_first_second_exchange_has_exact_source_history: test
app::process_canvas::tests::process_focus_retains_rejected_draft_and_guards_selection_until_panels_restore: test
app::repair_save_state_tests::recovering_applied_repair_rebinds_rolled_back_disk_bytes_without_changing_model: test
app::repair_save_state_tests::recovery_missing_entry_or_failed_reload_preserves_current_destination_save_authority: test
app::repair_save_state_tests::repair_history_compares_to_new_disk_baseline_and_then_successful_save: test
app::repair_save_state_tests::repair_to_previous_saved_bytes_requires_save_at_new_destination_and_guards_close: test
app::repair_save_state_tests::valid_equal_content_at_distinct_destinations_stays_clean: test
app::review_navigation_tests::rejected_semantic_source_writeback_retains_review_camera_and_original_navigation: test
app::review_navigation_tests::review_already_showing_the_target_keeps_its_camera_and_query: test
app::review_navigation_tests::semantic_name_take_selects_the_counterpart_view_in_both_directions_with_one_exact_history_entry: test
app::review_navigation_tests::semantic_review_without_a_destination_view_clears_the_old_layer_canvas_without_creating_a_view: test
app::save_as_tests::save_as_late_receipt_preserves_newer_raw_source_draft_and_destination: test
app::save_as_tests::save_as_preflight_rejects_historical_collision_before_starting_io: test
app::save_as_tests::save_as_receipt_then_one_undo_restores_meaning_and_saving_preserves_redo: test
app::source_project_tests::closed_detached_file_keeps_first_save_conflict_then_can_be_reloaded_fresh: test
app::source_project_tests::inactive_invalid_draft_blocks_graphical_changes_and_diagnostic_switches_files: test
app::source_project_tests::json_export_and_rejected_save_as_preserve_source_location_history_and_bytes: test
app::source_project_tests::missing_include_open_keeps_old_model_and_can_be_repaired_and_saved: test
app::source_project_tests::recovery_after_first_save_failure_retains_target_then_retries_without_reentering_path: test
app::source_project_tests::recovery_of_previous_save_as_target_does_not_redirect_current_project: test
app::source_project_tests::recovery_open_finds_first_save_journal_without_an_entry_file: test
app::source_project_tests::recovery_target_survives_edit_lint_apply_and_rejected_recovery_until_success: test
app::source_project_tests::source3_native_open_preserves_report_comments_nesting_and_save_reopen: test
app::source_project_tests::two_file_apply_graphical_edit_exact_undo_save_as_and_reopen: test
app::source_rename::alias_input::tests::effective_escape_reset_follows_child_after_early_returns: test
app::source_rename::alias_input::tests::held_paste_cache_contains_only_previously_admitted_text: test
app::source_rename::alias_input::tests::paste_refusal_matches_child_focus_enabled_and_stored_modifier_protocol: test
app::source_rename::editor_patch::tests::all_preflight_refusals_leave_text_cursor_and_selection_unchanged: test
app::source_rename::editor_patch::tests::already_laid_out_editor_notifies_highlighter_from_zero_after_later_line_patch: test
app::source_rename::editor_patch::tests::exact_text_matrix_and_reverse_preserve_endings: test
app::source_rename::editor_patch::tests::unchanged_content_preserves_selection_and_next_direct_edit_works: test
app::source_rename::tests::actual_alias_clipboard_rejects_controls_without_normalizing_or_moving_selection: test
app::source_rename::tests::actual_captured_escape_closes_only_its_priority_owner_and_retains_worker: test
app::source_rename::tests::actual_dialog_enter_requests_preview_even_when_confirm_is_available: test
app::source_rename::tests::actual_dialog_real_paragraph_geometry_keeps_input_preview_and_footer_reachable: test
app::source_rename::tests::alias_editor_sync_fallback_restores_accepted_display_and_preserves_model_history: test
app::source_rename::tests::close_and_reset_retain_worker_slot_until_exact_completion_without_reopening: test
app::source_rename::tests::complete_alias_change_preserves_literals_and_last_comment_separated_origin_and_undo: test
app::source_rename::tests::full_details_selection_survives_readonly_and_passive_messages_and_tracks_input: test
app::source_rename::tests::genuine_save_receipts_preserve_same_destination_preview_but_invalidate_save_as: test
app::source_rename::tests::invalid_open_retains_accepted_document_but_refuses_alias_rename: test
app::source_rename::tests::last_same_line_use_beyond_reference_row_limit_and_selection_boundaries: test
app::source_rename::tests::mounted_editor_f2_requires_focus_and_no_modifiers: test
app::source_rename::tests::paging_all_utf8_fragments_preserves_exact_preview_and_approval: test
app::source_rename::tests::preview_glyph_tests::actual_preview_source_glyphs_clear_scrollbar_and_all_long_fragments_are_reachable: test
app::source_rename::tests::preview_scroll_tests::delayed_page_and_approval_operations_cannot_reset_a_new_destination: test
app::source_rename::tests::preview_scroll_tests::explicit_navigation_resets_retained_scroll_but_id_change_alone_does_not: test
app::source_rename::tests::preview_scroll_tests::repeated_page_visits_filters_and_fast_preview_completion_have_distinct_destinations: test
app::source_rename::tests::property_draft_and_detached_buffer_refuse_without_hidden_apply: test
app::source_rename::tests::replacement_generation_aba_and_modal_shortcuts_cannot_commit_stale_preview: test
app::source_rename::tests::same_alias_invalid_and_cancel_keep_existing_redo_and_source_selection: test
app::source_rename::tests::source_edit_undo_and_recovery_invalidation_do_not_revive_approval: test
app::source_rename::tests::stale_dialog_envelopes_do_not_cancel_new_same_path_form_or_its_approval: test
app::source_rename::timing_tests::accepted_release1_prepare_commit_sync_and_confirm_timing: test
app::source_rename::timing_tests::layout_timing_tests::accepted_release1_constructor_vs_reuse_through_next_highlight: test
app::source_symbols::tests::back_after_origin_edit_uses_its_current_cursor_instead_of_the_old_range: test
app::source_symbols::tests::back_keeps_the_latest_64_actual_locations_without_reusing_dropped_history: test
app::source_symbols::tests::back_restores_exact_reversed_utf8_selection_and_crlf_source: test
app::source_symbols::tests::captured_find_and_modal_escape_use_one_actual_subscription_and_preserve_pending_work: test
app::source_symbols::tests::captured_subscription_does_not_duplicate_existing_behavior_or_architecture_routes: test
app::source_symbols::tests::close_during_busy_retains_hidden_completion_without_reopening_or_navigation: test
app::source_symbols::tests::closed_results_stay_closed_on_exact_back_and_reopen_only_for_a_return_notice: test
app::source_symbols::tests::completion_retains_current_display_but_rejects_navigation_after_context_changes: test
app::source_symbols::tests::delayed_definition_after_hide_or_tab_change_retains_data_without_reopening_or_focus: test
app::source_symbols::tests::detached_duplicate_requires_an_explicit_choice_even_when_included_source_is_validated: test
app::source_symbols::tests::escape_dismisses_modal_before_underlying_source_results: test
app::source_symbols::tests::escape_hides_results_and_cancels_navigation_but_retains_latest_display: test
app::source_symbols::tests::find_close_releases_removed_input_and_guarded_focus_respects_later_input: test
app::source_symbols::tests::find_only_captured_escape_closes_once_and_preserves_raw_query_and_selection: test
app::source_symbols::tests::hidden_completion_checks_exact_bytes_even_when_snapshot_key_was_not_advanced: test
app::source_symbols::tests::invalid_unapplied_drafts_navigate_without_apply_or_losing_either_history: test
app::source_symbols::tests::matching_old_worker_cannot_replace_a_newer_display_owner: test
app::source_symbols::tests::matching_reveal_ticket_is_required_and_raw_input_invalidates_pending_reveal: test
app::source_symbols::tests::old_find_close_cannot_cancel_a_new_file_session_or_reopened_find_intent: test
app::source_symbols::tests::old_symbol_widget_envelopes_after_file_switch_preserve_same_session_intent: test
app::source_symbols::tests::old_symbol_widget_envelopes_after_reset_preserve_new_same_path_intent: test
app::source_symbols::tests::popup_escape_has_no_duplicate_bridge_and_dismissal_preserves_underlying_find_and_drawer: test
app::source_symbols::tests::reset_retains_worker_slot_until_old_completion_then_admits_new_session_query: test
app::source_symbols::tests::retained_choices_cannot_replay_after_hide_or_references_problems_references: test
app::source_symbols::tests::same_worker_with_changed_request_envelope_cannot_publish_or_navigate: test
app::source_symbols::tests::saturated_raw_clock_never_authorizes_completion_or_reveal: test
app::source_symbols::tests::source_symbols_100_modules_1000_definitions_10000_uses: test
app::source_symbols::tests::unknown_job_cannot_release_current_worker_and_old_duplicate_cannot_replace_new_results: test
app::source_symbols::tests::valid_definition_and_reference_choice_keep_whole_model_and_source_unchanged: test
app::state_diagram_tests::all_context_dimensions_reject_stale_selection_camera_and_model_messages: test
app::state_diagram_tests::create_view_places_only_its_machine_and_restores_exact_source_in_one_undo: test
app::state_diagram_tests::direct_create_connect_select_and_move_keep_semantic_identity_and_atomic_history: test
app::state_diagram_tests::fallback_owner_first_selection_keeps_the_captured_context_for_its_first_move: test
app::state_diagram_tests::pending_drafts_block_every_direct_mutation_and_passive_camera_preserves_inputs: test
app::state_diagram_tests::real_view_tool_and_history_changes_invalidate_old_release_events: test
app::state_diagram_tests::rejected_creation_keeps_source_and_selection_then_valid_owner_can_retry: test
app::state_diagram_tests::same_size_viewport_after_revision_or_tool_epoch_does_not_refit_the_camera: test
app::state_diagram_tests::shared_semantic_states_keep_architecture_and_behavior_placements_independent: test
app::state_diagram_tests::state_diagram_routes_constructor_and_source_open_to_the_existing_workspace_without_edits: test
app::state_diagram_tests::state_diagram_routes_picker_and_reveal_but_explicit_architecture_does_not_bounce: test
app::state_diagram_tests::state_diagram_routes_preserve_selected_raw_properties_and_pending_behavior_guards: test
app::state_diagram_tests::state_navigation_catalog_selection_across_layers_resets_camera_and_tool: test
app::state_diagram_tests::state_navigation_catalog_selection_of_another_machine_resets_camera_and_tool: test
app::state_diagram_tests::state_navigation_layer_change_resets_the_new_machine_at_the_same_viewport_size: test
app::state_diagram_tests::state_navigation_return_to_the_same_view_preserves_camera_tool_and_fit_mode: test
app::state_diagram_tests::state_navigation_root_event_and_same_layer_keep_the_current_camera_and_tool: test
app::text_workspace::lifecycle_tests::canceled_or_failed_open_that_installs_nothing_retains_current_presentation_and_diagnostics: test
app::text_workspace::lifecycle_tests::invalid_repair_open_clears_prior_presentation_and_publishes_current_problems_preserving_worker: test
app::text_workspace::lifecycle_tests::saved_new_destination_does_not_revalidate_already_stale_warning_locations: test
app::text_workspace::lifecycle_tests::saved_new_destination_republishes_current_warning_and_refuses_old_primary_and_related: test
app::text_workspace::tests::current_diagnostic_target_navigates_but_changed_source_or_clear_refuses_it: test
app::text_workspace::tests::diagnostic_span_must_be_loaded_ordered_and_utf8_exact: test
app::text_workspace::tests::disabled_entry_cannot_become_a_new_action_under_the_same_menu_token: test
app::text_workspace::tests::document_reset_preserves_popup_token_sequence_and_drops_old_menu_authority: test
app::text_workspace::tests::enabled_entry_is_readmitted_at_dispatch_and_blocked_by_busy: test
app::text_workspace::tests::equal_diagnostic_republication_invalidates_primary_and_related_targets: test
app::text_workspace::tests::menu_own_open_invalidation_does_not_stale_find_and_invoke_is_once: test
app::text_workspace::tests::menu_source_caret_document_path_and_interaction_changes_refuse_stale_find: test
app::text_workspace::tests::old_dismiss_and_invoke_do_not_consume_a_newer_menu: test
app::text_workspace::tests::only_valid_explicit_group_and_resize_intent_cancel_pending_navigation: test
app::text_workspace::tests::queued_group_toggle_cannot_mutate_a_reopened_or_rotated_visit: test
app::text_workspace::tests::queued_toolbar_request_cannot_retarget_after_source_change: test
app::text_workspace::tests::reference_groups_and_scroll_survive_tabs_and_reject_old_visits_and_queries: test
app::text_workspace::tests::reset_removes_ui_and_publication_authority_and_resize_rejects_nan: test
app::text_workspace::tests::retained_primary_and_related_targets_cannot_replay_after_hide_or_problems_references_problems: test
app::text_workspace::tests::source_and_property_drafts_keep_find_and_text_undo_without_model_application: test
app::text_workspace::tests::stale_retained_group_can_expand_without_navigating_or_applying_drafts: test
app::transition_context_tests::explicit_behavior_internal_and_process_roots_keep_their_workspace_without_creating_a_view: test
app::transition_context_tests::explicit_destination_is_honored_and_ordinary_work_transition_still_places_in_architecture: test
app::transition_context_tests::machine_and_typed_action_transitions_resolve_the_owner_and_reusing_that_context_retains_camera: test
app::transition_context_tests::rejected_source_writeback_keeps_review_and_navigation_and_invalid_draft_still_blocks_start: test
app::transition_context_tests::scenario_transition_focuses_requested_counterpart_and_preserves_unrelated_views_in_both_directions: test
app::view_copy_tests::copying_architecture_keeps_architecture_even_with_a_retained_state_view: test
app::view_copy_tests::copying_the_current_state_view_uses_its_own_identity_and_is_one_source_undo: test
app::view_copy_tests::duplicate_rejection_preserves_an_incomplete_source_buffer: test
app::view_copy_tests::duplicate_rejection_preserves_invalid_property_and_pending_behavior_drafts: test
app::view_copy_tests::stale_copy_does_not_apply_an_unrelated_valid_property_draft: test
behavior::contextual_source_tests::contextual_source_app_checkpoint_restores_inner_raw_draft_without_model_adoption: test
behavior::contextual_source_tests::contextual_source_app_empty_actions_and_child_open_refuse_other_raw_editors: test
behavior::contextual_source_tests::contextual_source_app_modal_escape_then_child_back_then_parent_cancel_preserve_accepted_source: test
behavior::contextual_source_tests::contextual_source_back_remains_available_after_owner_deletion_and_with_dirty_editors: test
behavior::contextual_source_tests::contextual_source_back_retains_parent_and_rejects_late_child_event: test
behavior::contextual_source_tests::contextual_source_default_consumer_name_has_stable_alias_and_correlated_selection: test
behavior::contextual_source_tests::contextual_source_deleted_owner_view_retains_draft_instead_of_panicking_or_using_fallback: test
behavior::contextual_source_tests::contextual_source_empty_history_reports_no_change_and_success_requires_a_real_history_step: test
behavior::contextual_source_tests::contextual_source_existing_choice_prunes_staged_dependency: test
behavior::contextual_source_tests::contextual_source_failed_source_budget_preserves_both_drafts_and_accepted_bytes: test
behavior::contextual_source_tests::contextual_source_incomplete_recovered_kind_reports_error_without_panicking: test
behavior::contextual_source_tests::contextual_source_inserts_work_on_the_exact_guarded_link_and_refuses_exchange_identity_conflict: test
behavior::contextual_source_tests::contextual_source_lifelines_stage_exact_separate_records_and_one_history_entry: test
behavior::contextual_source_tests::contextual_source_machine_before_any_owner_creates_optional_view_atomically: test
behavior::contextual_source_tests::contextual_source_mounted_small_editor_keeps_back_and_use_outside_field_scroll: test
behavior::contextual_source_tests::contextual_source_nested_semantic_parent_is_explicit_and_revalidated: test
behavior::contextual_source_tests::contextual_source_new_callee_lifeline_preserves_caller_bindings_as_an_explicit_warning: test
behavior::contextual_source_tests::contextual_source_old_empty_action_cannot_open_a_previous_owner_or_layer: test
behavior::contextual_source_tests::contextual_source_original_document_remains_bound_after_back_or_choosing_existing: test
behavior::contextual_source_tests::contextual_source_owner_first_can_return_to_an_unnamed_machine_without_losing_source: test
behavior::contextual_source_tests::contextual_source_recovery_keeps_inner_raw_fields_and_refuses_deleted_or_changed_owner: test
behavior::contextual_source_tests::contextual_source_second_system_and_role_machine_owner_refuse_without_fallback: test
behavior::contextual_source_tests::contextual_source_work_uses_reserved_contribution_and_link_ids_and_one_undo: test
behavior::creation::app_tests::app_choosing_another_behavior_or_layer_cannot_commit_a_creation_draft: test
behavior::creation::app_tests::app_creation_opens_the_actual_new_owner_instead_of_first_or_previously_active_behavior: test
behavior::creation::app_tests::app_first_captured_escape_dismisses_file_or_pending_overlay_before_creation: test
behavior::creation::app_tests::app_lesson_request_cancel_retains_creation_then_escape_discards_only_the_draft: test
behavior::creation::app_tests::app_machine_behavior_submit_opens_its_opted_in_view_as_one_undoable_transaction: test
behavior::creation::app_tests::app_new_never_auto_applies_valid_or_invalid_property_and_source_drafts: test
behavior::creation::app_tests::app_recovered_rootless_sa_creation_retains_layer_ids_and_other_raw_drafts: test
behavior::creation::app_tests::app_stale_layer_open_never_starts_or_replaces_a_draft: test
behavior::creation::tests::all_four_viewpoints_are_explicit_and_survive_source_history_reopen: test
behavior::creation::tests::cancel_and_illegal_family_layer_switches_never_create_model_objects: test
behavior::creation::tests::corrupted_recovery_and_reserved_identity_collision_refuse_without_repairing_raw_values: test
behavior::creation::tests::creation_selection_rejects_changed_scenario_body_and_post_creation_operations: test
behavior::creation::tests::machine_requires_valid_owner_and_first_view_adds_no_region_or_state: test
behavior::creation::tests::mounted_creation_keeps_actions_visible_and_renders_only_six_owner_candidates: test
behavior::creation::tests::oa_process_and_sa_chain_keep_exact_names_root_ownership_and_one_history_entry: test
behavior::creation::tests::optional_context_collapses_without_losing_authored_reference_or_raw_search: test
behavior::creation::tests::owner_search_is_name_ordered_filtered_and_page_sized_not_a_catalog: test
behavior::creation::tests::post_commit_selection_is_correlated_with_exact_created_behavior_and_view: test
behavior::creation::tests::recovery_preserves_exact_raw_inputs_reserved_ids_and_revalidates_stale_owner: test
behavior::creation::tests::rejected_source_transaction_keeps_draft_and_every_accepted_source_byte: test
behavior::creation::tests::repeated_owner_names_remain_distinguishable_by_searchable_parent_context_and_alias: test
behavior::direct_canvas_tests::direct_alt_execution_stops_each_operand_at_its_reply_and_marks_open_operand: test
behavior::direct_canvas_tests::direct_bounds_change_during_held_drag_never_commits_old_slot: test
behavior::direct_canvas_tests::direct_clicked_occurrence_capture_cancels_on_view_and_context_changes: test
behavior::direct_canvas_tests::direct_context_escape_unfocus_and_pending_form_cancel_gestures: test
behavior::direct_canvas_tests::direct_drag_and_click_click_use_ordered_sources_and_publish_once: test
behavior::direct_canvas_tests::direct_execution_span_ends_at_its_correlated_reply_and_marks_an_open_call: test
behavior::direct_canvas_tests::direct_scroll_resize_and_bounds_changes_cancel_captured_slots: test
behavior::direct_canvas_tests::direct_scrolled_canvas_maps_raw_pointer_events_to_the_visible_slot: test
behavior::direct_canvas_tests::direct_selected_handle_reorders_and_hits_keep_semantic_identity: test
behavior::direct_canvas_tests::reused_exchange_messages_display_their_distinct_occurrence_names: test
behavior::scenario::data_contract_tests::large_payload_has_one_editor_with_reachable_field_and_authored_pages: test
behavior::scenario::data_contract_tests::recursive_browsing_up_and_root_keep_values_and_report_the_depth_limit: test
behavior::scenario::data_contract_tests::recursive_value_focus_exposes_authored_leaf_and_phase_changes_retain_surviving_keys: test
behavior::scenario::data_contract_tests::reply_call_picker_previews_the_same_value_reset_as_selecting_another_exchange: test
behavior::scenario::data_contract_tests::scenario_form_commits_two_reused_record_values_and_correlated_reply_atomically: test
behavior::scenario::direct_tests::direct_busy_save_keeps_observed_scroll_current_for_the_next_pointer_gesture: test
behavior::scenario::direct_tests::direct_clicked_occurrence_rejects_stale_slots_and_retains_recoverable_drafts: test
behavior::scenario::direct_tests::direct_clicked_occurrences_use_root_and_operand_slots_with_exact_source_history: test
behavior::scenario::direct_tests::direct_exchange_compatibility_browsing_preserves_final_slot_validation: test
behavior::scenario::direct_tests::direct_exchange_picker_is_bounded_and_browsing_keeps_pending_values: test
behavior::scenario::direct_tests::direct_five_hundred_exchange_choice_render_probe: test
behavior::scenario::direct_tests::direct_form_keeps_the_same_canvas_in_the_widget_tree: test
behavior::scenario::direct_tests::direct_middle_pair_insertion_is_one_exact_source_and_model_undo: test
behavior::scenario::direct_tests::direct_operand_pair_keeps_parent_sequence_and_cannot_reorder_across_operands: test
behavior::scenario::direct_tests::direct_reply_choices_cache_keeps_typing_fast_and_revalidates_changed_contexts: test
behavior::scenario::direct_tests::direct_reply_choices_validate_the_actual_slot_and_reorder_rejects_reverse_order: test
behavior::scenario::direct_tests::direct_scenario_reference_navigation_blocks_pending_drafts_and_stale_contexts: test
behavior::scenario::direct_tests::direct_scenario_reference_navigation_retains_each_exact_caller_without_history: test
behavior::scenario::direct_tests::direct_scenario_reference_return_survives_rename_and_rejects_deleted_or_changed_use: test
behavior::scenario::operation_tests::operation_gui_async_picker_uses_request_root_and_nested_directions_without_erasing_rejected_values: test
behavior::scenario::operation_tests::operation_gui_selects_two_parameterless_allocations_without_inventing_refinement_and_reply_derives_call: test
behavior::scenario::operation_tests::operation_gui_unresolved_and_disabled_selection_recovery_preserves_rejected_raw_values: test
behavior::scenario::tests::fragment_operands_accept_paired_messages_through_normal_destination_picker: test
behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent: test
behavior::scenario::tests::invalid_lifecycle_edit_keeps_draft_and_timer_has_no_global_exchange: test
behavior::scenario::tests::lifeline_picker_uses_core_viewpoint_contract: test
behavior::scenario::tests::reverse_communication_canvas_choices_and_correlated_reply_share_core_direction: test
behavior::scenario::tests::scenario_reuse_requires_explicit_compatible_bindings: test
behavior::scenario::tests::tagged_scenario_commit_is_not_redirected_by_other_editor_events: test
behavior::scenario::workspace::tests::scenario_workspace_allocates_remaining_height_and_pins_actions_at_minimum_and_wide_sizes: test
behavior::scenario::workspace::tests::scenario_workspace_caller_restores_actual_mounted_canvas_and_shelf_with_camera: test
behavior::scenario::workspace::tests::scenario_workspace_canvas_and_form_scroll_survive_disclosures_focus_width_and_resize: test
behavior::scenario::workspace::tests::scenario_workspace_choosing_tools_preserves_valid_and_invalid_pending_editors: test
behavior::scenario::workspace::tests::scenario_workspace_fit_reobserves_same_sized_owner_and_document_changes: test
behavior::scenario::workspace::tests::scenario_workspace_fit_uses_measured_inner_viewport_and_rejects_nonfinite_inputs: test
behavior::scenario::workspace::tests::scenario_workspace_open_and_back_restore_owner_and_mounted_scroll_after_preselection: test
behavior::scenario::workspace::tests::scenario_workspace_scaled_and_scrolled_scene_keeps_clicked_slots_and_message_endpoints: test
behavior::scenario::workspace::tests::scenario_workspace_scaled_nested_occurrences_and_reorder_keep_exact_sequence_identity: test
behavior::scenario::workspace::tests::scenario_workspace_viewport_events_are_passive_guarded_and_do_not_apply_raw_forms: test
behavior::scenario::workspace::tests::scenario_workspace_whole_app_canvas_tree_survives_pending_shelves_and_focus: test
behavior::scenario_scroll::tests::direct_scenario_caller_restores_mounted_scroll_once_with_clamping_and_app_receipt: test
behavior::scenario_scroll::tests::direct_scenario_restore_cannot_scroll_another_document_owner_or_process_view: test
behavior::scenario_scroll::tests::direct_scroll_mounted_identity_resets_navigation_but_preserves_edits_before_first_report: test
behavior::scenario_scroll::tests::direct_scroll_observer_reports_actual_initial_clamped_and_remounted_offsets_once: test
behavior::scenario_scroll::tests::independent_process_owner_change_resets_actual_scroll_offsets: test
behavior::source_draft::layout_tests::contextual_source_layout_initial_essentials_fit_short_composed_host_with_real_paragraphs: test
behavior::source_draft::layout_tests::contextual_source_layout_long_parent_wraps_after_visible_name_without_losing_raw_data: test
behavior::source_draft::layout_tests::contextual_source_layout_visible_kind_click_keeps_choice_explicit_and_name_input_works: test
behavior::state_canvas::tests::context_menu_keeps_window_anchor_and_explicit_placement_identity: test
behavior::state_canvas::tests::context_tool_and_pending_form_changes_cancel_mutating_gestures: test
behavior::state_canvas::tests::creation_uses_the_explicit_deepest_owner_and_never_a_fallback_ancestor: test
behavior::state_canvas::tests::drag_uses_ordered_release_at_each_zoom_and_moves_descendants_in_one_undo: test
behavior::state_canvas::tests::escape_and_view_switch_discard_the_armed_transition_source: test
behavior::state_canvas::tests::internal_rows_and_pseudostate_hits_use_shared_persisted_geometry: test
behavior::state_canvas::tests::ordered_stationary_click_does_not_move_on_later_motion_in_the_same_batch: test
behavior::state_canvas::tests::pan_is_button_scoped_read_only_and_hover_does_not_reproject_the_scene: test
behavior::state_canvas::tests::pseudostate_names_avoid_rightward_and_downward_routes_and_share_hit_bounds: test
behavior::state_canvas::tests::relayout_does_not_turn_a_transition_click_into_a_drag_or_pan: test
behavior::state_canvas::tests::selected_endpoint_reconnect_preserves_identity_and_requires_handle_motion: test
behavior::state_canvas::tests::selection_relayout_does_not_move_nodes_or_change_drag_distance: test
behavior::state_canvas::tests::stacked_symbol_names_avoid_each_other_and_are_independent_of_input_order: test
behavior::state_canvas::tests::transition_supports_click_click_and_drag_without_coalesced_accidental_edges: test
behavior::state_canvas::tests::typed_state_actions_are_named_selectable_rows_before_internal_transitions_and_regions: test
behavior::state_canvas::tests::viewport_uses_full_canvas_coordinates_and_republishes_for_a_new_context: test
behavior::state_edit::tests::an_empty_machine_has_an_explicit_visible_owner_for_first_region_creation: test
behavior::state_edit::tests::connect_preserves_self_loops_and_rejects_hidden_or_incompatible_vertices: test
behavior::state_edit::tests::creation_places_missing_ancestry_and_unfolds_existing_owners_atomically: test
behavior::state_edit::tests::every_context_component_and_invalid_ownership_are_checked_before_planning: test
behavior::state_edit::tests::placing_existing_content_and_moving_a_folded_group_preserve_other_views_and_semantics: test
behavior::state_edit::tests::reconnect_preserves_the_complete_record_and_replaces_cardinality_in_place: test
behavior::state_edit::tests::view_initializes_only_its_machine_in_one_source_and_model_history_entry: test
behavior::states::tests::internal_choice_targets_self_and_edit_preserves_identity_and_description: test
behavior::states::tests::invalid_pseudo_trigger_keeps_draft_and_does_not_create_orphan_event: test
behavior::states::tests::selected_composite_owns_new_region_and_history_uses_selected_region: test
behavior::states::tests::timeout_and_work_trigger_commit_together_roundtrip_and_undo: test
behavior::tests::failed_document_commit_retains_typed_transition_and_time_event_for_repair: test
behavior::tests::legacy_process_and_chain_keep_their_ordered_exchange_scene: test
behavior::tests::one_behavior_form_survives_start_edit_and_unrelated_cancel_until_commit: test
behavior::tests::recovery_preserves_distinct_qualified_value_paths_and_rejects_invalid_payload_atomically: test
behavior::tests::recovery_retains_each_incomplete_behavior_form_without_executing_it: test
behavior::tests::selecting_state_transition_keeps_its_behavior_context: test
behavior::topology::contextual::tests::qualified_link_gui_deleted_transient_selection_does_not_seed_or_hide_retained_authored_endpoint: test
behavior::topology::contextual::tests::qualified_link_gui_nested_preview_folds_only_the_exact_reference_instance: test
behavior::topology::contextual::tests::qualified_link_gui_rejected_endpoint_keeps_exact_raw_intent_after_recovery: test
behavior::topology::contextual::tests::qualified_link_gui_repeated_sources_remain_distinct_and_apply_has_exact_source_history: test
behavior::topology::contextual::tests::qualified_link_gui_scope_paging_and_search_reach_tail_beyond_512_without_losing_endpoints: test
behavior::topology::contextual_routing::tests::contextual_route_native_x_to_first_b_keeps_visible_arrow_above_background_and_clear_of_other_references: test
behavior::topology::contextual_routing::tests::contextual_route_nested_visible_hidden_and_parallel_paths_keep_exact_addresses_and_legacy_routes: test
behavior::topology::contextual_routing::tests::contextual_route_shared_anchor_preserves_selected_direct_reconnect_at_fit_and_full_scale: test
behavior::topology::direct_tests::direct_process_append_preserves_existing_order_and_rejects_incompatible_exchange: test
behavior::topology::direct_tests::direct_process_controls_allow_incomplete_work_and_preserve_branch_semantics: test
behavior::topology::direct_tests::direct_process_empty_first_and_second_exchange_keep_the_same_interactive_renderer: test
behavior::topology::direct_tests::direct_process_imported_order_is_projected_without_mutation_and_first_canvas_edit_is_atomic: test
behavior::topology::direct_tests::direct_process_incompatible_imported_order_rejects_conversion_without_losing_draft: test
behavior::topology::direct_tests::direct_process_nested_source_reopen_and_api_command_use_one_transaction: test
behavior::topology::direct_tests::direct_process_oa_sa_repeated_occurrences_share_sources_and_split_one_guarded_link: test
behavior::topology::direct_tests::direct_process_palette_preserves_fit_and_manual_camera: test
behavior::topology::direct_tests::direct_process_pending_form_diff_retains_the_canvas_scroll_state: test
behavior::topology::direct_tests::direct_process_production_click_click_drag_insert_and_scroll_coordinates: test
behavior::topology::direct_tests::direct_process_production_endpoint_and_peer_reorder_handles_publish_exact_identity: test
behavior::topology::direct_tests::direct_process_production_stale_focus_scroll_bounds_and_pending_cancel: test
behavior::topology::direct_tests::direct_process_readable_default_fit_expansion_and_bounded_choices: test
behavior::topology::direct_tests::direct_process_real_picker_stays_bounded_and_search_keeps_selection: test
behavior::topology::direct_tests::direct_process_reconnect_delete_and_reorder_preserve_other_paths_and_sources: test
behavior::topology::direct_tests::direct_process_reuse_preview_is_local_expandable_and_recursive_sources_are_rejected: test
behavior::topology::direct_tests::direct_process_scaled_control_and_link_gestures_use_visible_positions: test
behavior::topology::direct_tests::direct_process_specific_parallel_link_and_incompatible_adjacency: test
behavior::topology::direct_tests::direct_process_three_ordered_exchanges_preserve_outer_paths_on_insertion: test
behavior::topology::tests::cycle_projection_terminates_and_retains_actual_links: test
behavior::topology::tests::empty_process_can_start_through_normal_authoring_events: test
behavior::topology::tests::fitting_a_branch_keeps_all_nodes_visible_and_selection_uses_scaled_coordinates: test
behavior::topology::tests::guarded_branch_is_one_transaction_with_distinct_source_identities: test
behavior::topology::tests::insertion_picker_only_offers_work_matching_adjacent_exchanges: test
behavior::topology::tests::legacy_branch_insertion_replaces_only_the_selected_implied_link: test
behavior::topology::tests::legacy_edit_preserves_order_and_new_work_in_one_undo: test
behavior::topology::tests::long_engineering_identifiers_stay_inside_label_width: test
behavior::topology::tests::process_fit_canvas_selection_ignores_retained_ordered_page_scroll: test
behavior::topology::tests::process_fit_disclosures_and_focus_preserve_rejected_raw_draft_and_accepted_source: test
behavior::topology::tests::process_fit_uses_measured_height_and_reports_minimum_without_changing_manual_zoom: test
behavior::topology::tests::reusable_preview_preserves_identity_and_filters_recursive_sources: test
behavior::topology::tests::stale_or_invalid_submit_preserves_inputs_and_creates_nothing: test
behavior::topology::tests::unlinked_contributions_do_not_gain_fictional_edges: test
behavior::topology::view::layout_tests::direct_process_pending_editor_uses_available_height_and_keeps_actions_visible: test
behavior::topology::view::layout_tests::process_fit_layout_disclosures_and_pending_editor_keep_real_manual_canvas_scroll: test
behavior::topology::view::layout_tests::process_fit_layout_measures_remaining_canvas_with_details_forms_and_window_resize: test
behavior::topology::view::layout_tests::process_fit_whole_app_focus_and_disclosures_retain_canvas_tree_with_pending_raw_form: test
connection_edit::tests::cancel_navigation_revision_and_dirty_drafts_cannot_commit_a_stale_connection: test
connection_edit::tests::visible_endpoint_drawing_commits_ports_and_exchange_once_with_exact_history: test
connection_tool::tests::boundary_candidates_match_core_orientation_and_reject_same_owner_or_mixed_kind: test
connection_tool::tests::boundary_feasibility_keeps_interface_warnings_and_final_carried_item_checks: test
connection_tool::tests::boundary_feasibility_rejects_dangling_identity_in_a_malformed_element_map: test
connection_tool::tests::direct_connections_share_exact_source_history_and_model_parity: test
connection_tool::tests::explicit_function_ports_keep_owners_contracts_and_do_not_invent_carried_items: test
connection_tool::tests::final_command_validation_rejects_invalid_models_without_mutation: test
connection_tool::tests::function_cards_use_unique_reuse_and_atomic_generation_when_ambiguous: test
connection_tool::tests::mismatched_port_owners_layers_and_contract_kinds_are_not_candidates: test
connection_tool::tests::operational_communication_uses_participants_without_creating_ports: test
connection_tool::tests::operational_interaction_targets_only_distinct_oa_activities: test
context_menu::tests::a_new_context_token_cannot_reuse_the_previous_mouse_press_or_scroll: test
context_menu::tests::actions_area_does_not_swallow_first_independent_click_after_overlay_consumed_its_release: test
context_menu::tests::anchors_outside_the_window_and_nonfinite_input_stay_bounded: test
context_menu::tests::clicking_disabled_or_dragging_off_an_action_never_executes_it: test
context_menu::tests::coalesced_dismissal_release_does_not_swallow_the_next_independent_click: test
context_menu::tests::empty_and_disabled_only_menus_still_capture_keys_and_escape_closes: test
context_menu::tests::keyboard_skips_headers_separators_and_disabled_actions_and_invokes_once: test
context_menu::tests::outside_dismissal_consumes_press_and_release_across_controlled_close: test
context_menu::tests::reconstructed_overlay_uses_retained_layout_for_rows_and_hit_testing: test
context_menu::tests::retained_overlay_layout_keeps_measured_width_and_scrollbar_after_reconstruction: test
context_menu::tests::tall_menu_clamps_to_viewport_and_keyboard_wheel_and_scrollbar_reach_the_end: test
data_values::tests::phase_choices_keep_reused_record_addresses_distinct: test
data_values::tests::recursive_picker_starts_with_distinct_leaf_names_and_sorts_them: test
data_values::tests::recursive_records_can_be_drilled_into_and_valid_imported_paths_resolve: test
data_values::tests::reference_parameter_stops_descent_and_unspecified_direction_remains_visible: test
data_values::tests::roots_and_one_hop_children_do_not_expand_unrelated_payload_branches: test
data_view::tests::allocation_rows_edit_relationship_identity_and_remove_only_that_allocation: test
data_view::tests::association_creation_is_a_separate_relation_with_editable_end_contracts: test
data_view::tests::browsing_pages_preserves_invalid_numeric_draft_and_inherited_allocation_identity: test
data_view::tests::contextual_data_actions_use_typed_defaults_and_one_undo: test
data_view::tests::large_inherited_dictionary_has_bounded_widgets_and_every_original_field_is_reachable: test
diagnostic_input::tests::already_captured_terminal_cancels_child_without_activation_or_lingering_press: test
diagnostic_input::tests::captured_terminal_cancellation_preserves_same_publication_focusable_child_state: test
diagnostic_input::tests::current_primary_and_related_mouse_clicks_survive_same_publication_diff: test
diagnostic_input::tests::current_touch_activates_primary_and_related_and_cancel_does_not_activate: test
diagnostic_input::tests::fresh_mouse_press_after_missing_stale_release_can_activate_current_row: test
diagnostic_input::tests::hidden_zero_height_scroller_delivers_cancelled_mouse_and_touch_terminals_to_guard: test
diagnostic_input::tests::hidden_zero_size_list_consumes_release_outside_old_bounds_once: test
diagnostic_input::tests::missed_press_is_ignored_and_dragging_release_outside_does_not_activate: test
diagnostic_input::tests::negative_control_iced_button_retargets_a_press_after_plain_tree_diff: test
diagnostic_input::tests::negative_control_plain_focusable_row_migrates_activation_to_replacement: test
diagnostic_input::tests::negative_control_removing_unguarded_rows_exposes_background_release: test
diagnostic_input::tests::outer_scroll_offset_survives_same_and_changed_publications: test
diagnostic_input::tests::replaced_primary_and_related_rows_consume_stale_release_then_accept_new_click: test
diagnostic_input::tests::replaced_touch_consumes_lift_or_cancel_even_when_hidden: test
diagnostic_input::tests::same_publication_missing_terminal_recovers_on_fresh_mouse_or_touch_down: test
diagnostic_input::tests::same_publication_new_visit_cancels_armed_rows_without_a_hidden_tree_frame: test
diagnostic_input::tests::same_publication_preserves_focus_but_replacement_never_inherits_activation: test
diagnostic_input::tests::stale_release_does_not_bubble_to_real_background_controls: test
diagnostic_input::tests::stale_touch_release_does_not_disarm_a_new_current_gesture: test
diagnostic_input::tests::unrelated_finger_or_mouse_release_cannot_complete_another_fingers_press: test
diagram::lifecycle_tests::menu_reset_and_draw_use_fresh_open_context: test
diagram::lifecycle_tests::middle_and_arrow_panning_preserve_source_and_history: test
diagram::lifecycle_tests::motion_after_release_must_not_move_clicked_port: test
diagram::lifecycle_tests::motion_after_source_click_release_must_not_create_connection: test
diagram::pointer_tests::coalesced_fe_ports_commit_once_through_app_and_source_history: test
diagram::pointer_tests::coalesced_port_drag_commits_once_through_app_and_source_history: test
diagram::pointer_tests::drag_from_already_selected_stationary_port_keeps_source_between_batches: test
diagram::pointer_tests::menu_captured_motion_must_not_turn_following_click_into_old_port_drag: test
diagram::pointer_tests::modal_and_stale_epoch_block_queued_connection_and_port_commits: test
diagram::port_hit_tests::coincident_ports_keep_selection_then_use_stable_identity: test
diagram::port_hit_tests::nearest_port_center_wins_on_all_borders_and_zoom_levels: test
diagram::port_hit_tests::nested_owner_palette_selection_drag_and_context_menu_pick_the_same_port: test
diagram::port_labels::tests::leaving_and_reentering_keeps_suppression_until_each_held_button_releases: test
diagram::port_labels::tests::menu_epoch_clears_suppression_when_the_overlay_consumes_release: test
diagram::port_labels::tests::outside_presses_do_not_suppress_and_cancel_or_focus_loss_clear_held_buttons: test
diagram::port_labels::tests::passive_layer_leaves_port_drag_selection_and_commit_with_the_interactive_canvas: test
diagram::tests::association_end_contracts_share_svg_geometry_and_select_without_moving_name_label: test
diagram::tests::bend_gestures_use_screen_hit_radius_and_commit_one_undo_at_three_zooms: test
diagram::tests::coincident_line_hit_retains_the_selected_connection: test
diagram::tests::connection_gestures_pick_real_ports_and_commit_coalesced_drag_at_every_zoom: test
diagram::tests::detached_label_selects_connection_and_occluding_card_owns_its_hit: test
diagram::tests::dragging_a_child_previews_the_same_enclosure_and_ports_as_commit: test
diagram::tests::fast_drags_commit_the_release_cursor_without_a_final_motion_event: test
diagram::tests::implicit_port_click_selects_semantics_and_drag_preview_svg_share_anchors: test
diagram::tests::route_cache_ignores_pan_zoom_and_cancelled_drag_cannot_commit: test
diagram::tests::routed_svg_has_same_polyline_label_and_bounds_as_canvas_scene: test
diagram::tests::svg_distinguishes_inferred_work_allocation_from_direct_allocation: test
diagram::tests::svg_preserves_visible_exchange_labels_and_capability_stereotypes: test
diagram::tests::typed_function_glyphs_and_unoriented_standard_connections_have_distinct_svg: test
diagram::view_options_tests::communication_svg_uses_saved_visibility_labels_and_direction: test
document::alias_rename::tests::each_identity_family_changes_only_authored_alias_roles_and_one_history_entry: test
document::alias_rename::tests::equal_bytes_undo_replay_cross_document_and_exhausted_revision_refuse: test
document::alias_rename::tests::exact_history_capacity_admits_immediate_undo_and_rejects_larger_candidate: test
document::alias_rename::tests::highlighted_keyword_alias_is_valid_without_normalizing_input: test
document::alias_rename::tests::invalid_and_identical_aliases_preserve_live_state_and_redo: test
document::alias_rename::tests::mint_and_commit_refuse_exhausted_or_inconsistent_live_history_estimate: test
document::alias_rename::tests::mutable_public_preview_copies_cannot_change_prepared_authority: test
document::alias_rename::tests::preview_retains_latest_saved_baseline_and_recovery_state: test
document::save_as_tests::save_as_preserves_explicit_source_entry_changes_in_history: test
document::save_as_tests::save_as_rebases_uniform_history_without_an_undo_step_or_lost_redo: test
document::save_as_tests::save_as_rejects_included_filename_collisions_in_past_and_future_without_mutation: test
document::save_as_tests::save_as_rejects_stale_or_content_changing_receipt_atomically: test
document::tests::accepted_history_keeps_the_latest_hundred_complete_snapshots: test
document::tests::altered_compiled_model_or_index_is_rejected_without_mutation: test
document::tests::asynchronous_save_marks_its_snapshot_without_cleaning_later_edits: test
document::tests::byte_budget_trims_oldest_history_without_discarding_a_large_current: test
document::tests::cached_view_index_tracks_accepted_creation_undo_and_redo: test
document::tests::comment_and_semantic_history_restore_exact_bytes_and_branch_together: test
document::tests::creation_selects_the_single_uuid_persisted_in_source: test
document::tests::invalid_project_is_rejected_before_format_can_normalize_it: test
document::tests::nested_cross_file_reparent_and_source_edit_share_exact_history: test
document::tests::no_op_command_or_source_apply_preserves_history_revision_and_redo: test
document::tests::omitted_id_stabilization_remains_dirty_until_exact_source_is_saved: test
document::tests::recreated_equal_record_does_not_inherit_deleted_source_ownership: test
document::tests::rejected_compile_command_and_writeback_preserve_state_and_redo: test
explorer::tests::collapse_and_search_retain_context_without_changing_collapse_state: test
explorer::tests::deep_containment_and_search_keep_the_full_path_without_recursion: test
explorer::tests::equal_names_have_stable_alias_and_identity_tie_breakers: test
explorer::tests::perspective_isolation_and_allocations_do_not_change_containment: test
explorer::tests::prefix_names_cannot_separate_a_parent_from_its_children: test
forms::data_fields::tests::defaults_distinguish_absent_empty_and_typed_literals_with_escaped_unicode: test
forms::data_fields::tests::field_browser_pages_every_direct_field_without_flattening_other_records: test
forms::data_fields::tests::independent_review_combined_take_type_informs_actual_default_form_in_both_directions: test
forms::data_fields::tests::numeric_bound_drafts_keep_partial_and_full_precision_values_out_of_accepted_state: test
forms::data_fields::tests::selecting_qualified_path_preserves_expression_typed_before_the_next_render: test
forms::data_fields::tests::semantic_reference_choices_follow_selected_mechanism_and_revert_on_keep: test
forms::data_fields::tests::supertype_picker_excludes_descendants_and_keeps_original_inherited_field_identity: test
forms::history_fields::tests::history_absent_baseline_and_empty_history_use_explicit_facts_and_exact_document_history: test
forms::history_fields::tests::history_clear_discards_inactive_invalid_constructors_before_reusing_the_same_row: test
forms::history_fields::tests::history_compound_value_and_constructor_variants_are_editable_without_live_context: test
forms::history_fields::tests::history_deleted_keys_and_observation_uuids_remain_exact_and_duplicate_history_rejects: test
forms::history_fields::tests::history_every_descriptor_fact_choice_matches_actual_closed_types_and_source_contract: test
forms::history_fields::tests::history_exact_strings_do_not_confuse_uuid_shaped_prose_or_literal_keys_with_references: test
forms::history_fields::tests::history_invalid_numbers_survive_constructor_switch_reorder_removal_and_recovery: test
forms::history_fields::tests::history_missing_semantic_field_can_be_added_and_removed_without_touching_prose_or_live_objects: test
forms::history_fields::tests::history_nested_optional_number_events_switch_absent_present_and_recover_invalid_raw: test
forms::history_fields::tests::history_nested_uuid_and_list_events_preserve_present_values_and_tagged_item_branches: test
forms::history_fields::tests::history_optional_uuid_and_text_seed_absence_without_inventing_observations: test
forms::history_fields::tests::history_primitive_type_choices_remain_visible_inside_the_tagged_union: test
forms::history_fields::tests::history_retained_text_constructors_follow_exact_mode_without_changing_the_observation: test
forms::port_fields::tests::all_demo_records_roundtrip_through_graphical_and_escaped_string_drafts: test
forms::port_fields::tests::boundary_choices_honor_draft_direction_same_kind_and_direct_interface_items: test
forms::port_fields::tests::contract_choices_follow_owner_and_never_offer_legacy_or_oa_typed_ports: test
forms::port_fields::tests::failed_shape_keeps_incomplete_text_and_saved_contract_payloads: test
forms::port_fields::tests::functional_endpoints_require_owner_direction_and_items_but_retain_bad_current_choice: test
forms::port_fields::tests::interface_roles_offer_participants_and_component_ports_independent_of_orientation: test
forms::port_fields::tests::port_allocation_choices_use_actual_owner_direction_and_ignore_edited_relation: test
forms::port_fields::tests::standard_switch_retains_incompatible_orientation_until_explicit_repair: test
forms::port_fields::tests::switching_function_direction_preserves_invalid_items_and_each_authored_payload: test
forms::tests::data_and_port_choices_are_typed_but_retain_invalid_current_values: test
forms::tests::editing_allocation_offers_other_performers_without_counting_itself_twice: test
forms::tests::moving_placement_and_changing_identity_is_one_lossless_undoable_edit: test
forms::tests::parent_choices_reject_cycles_without_removing_clear_or_current_choice: test
forms::tests::reply_and_reuse_forms_offer_semantically_compatible_references: test
forms::tests::scenario_choices_respect_owner_and_exchange_layer: test
forms::tests::semantic_port_group_choices_use_combined_owner_and_retain_invalid_transferred_items: test
forms::tests::shared_perspective_change_keeps_payload_and_rejects_incompatible_dependencies: test
forms::tests::state_observation_picker_keeps_work_lifelines_allocated_to_machine_owner: test
forms::tests::state_placement_form_uses_draft_destination_membership_without_changing_other_views: test
forms::tests::state_projection_form_keeps_string_variants_and_requires_a_typed_context: test
forms::view_fields::tests::category_family_change_retains_members_until_explicit_correction: test
forms::view_fields::tests::selective_view_property_apply_recovery_and_undo_preserve_semantics_and_empty_choices: test
guide::tests::filtering_and_related_navigation_keep_selection_visible: test
guide::tests::guide_topic_navigation_resets_only_article_and_same_topic_search_keeps_scroll: test
guide::tests::search_finds_concepts_in_walkthroughs_and_api_reference: test
home::tests::corrupt_future_and_oversized_history_are_preserved_with_usable_session_history: test
home::tests::failed_metadata_replace_keeps_previous_history_and_reports_memory_only_entry: test
home::tests::first_and_replaced_metadata_are_parseable_and_contain_no_model_bytes: test
home::tests::forgotten_and_missing_files_never_change_the_model_or_other_entries: test
home::tests::loading_missing_history_does_not_create_files_or_directories: test
home::tests::malformed_entries_and_unknown_fields_never_become_open_requests: test
home::tests::successful_local_history_is_bounded_ordered_deduplicated_and_durable: test
home::tests::unavailable_location_can_reappear_on_refresh_without_losing_identity: test
home::tests::walkthrough_uses_packaged_bundle_before_development_and_reports_missing_assets: test
hosted::client::tests::hosted_endpoint_validation_redacts_secrets_and_preserves_proxy_paths: test
hosted::client::tests::hosted_lost_publication_response_is_uncertain_without_retry: test
hosted::client::tests::hosted_open_rejects_incoherent_envelopes_missing_etags_and_unstable_ids: test
hosted::client::tests::hosted_oversized_local_bundle_is_rejected_before_network_admission: test
hosted::client::tests::hosted_production_auth_proxy_prefix_and_located_rejection: test
hosted::client::tests::hosted_production_roundtrip_preserves_comments_noops_and_conflicts: test
hosted::client::tests::hosted_publication_race_keeps_receipt_identity_for_review: test
hosted::client::tests::hosted_publication_retains_known_resource_after_failed_followup: test
hosted::client::tests::hosted_put_preserves_an_opaque_etag_and_compiles_the_accepted_bundle: test
hosted::client::tests::hosted_redirect_is_not_followed_or_retried_and_problem_tokens_are_redacted: test
hosted::client::tests::hosted_response_limits_cover_declared_and_chunked_bodies: test
hosted::client::tests::hosted_structured_mutation_failures_distinguish_precommit_rejections: test
hosted::client::tests::hosted_timeout_and_disconnect_leave_mutation_outcomes_explicit: test
model_menu::tests::add_bend_here_uses_context_point_and_one_source_aware_history_change: test
model_menu::tests::late_menu_actions_do_not_dismiss_new_menu_or_cross_view_context: test
model_menu::tests::menu_preserves_pending_properties_and_rejects_delayed_mutations: test
model_menu::tests::pending_source_allows_file_navigation_but_disables_model_actions: test
model_menu::tests::right_click_targets_actor_without_changing_selection_until_action: test
model_menu::tests::show_from_explorer_places_unfolds_and_keeps_semantic_selection: test
model_menu::tests::state_menu_folds_and_hides_only_its_captured_placement_and_rejects_stale_views: test
model_menu::tests::state_menu_keeps_typed_creation_reachable_and_preserves_pending_properties: test
navigation::tests::semantic_browser_finds_behavior_users_without_confusing_containment: test
port_edit::tests::all_border_drags_commit_exact_preview_and_restore_automatic_anchors_in_history: test
port_edit::tests::graphical_port_reparent_clears_old_anchors_in_the_same_history_operation: test
port_preview::tests::functional_creation_identifies_new_and_reused_endpoints_and_owners: test
port_preview::tests::legacy_split_discloses_endpoint_routing_item_origins_and_retained_evidence: test
port_preview::tests::reused_boundary_shows_item_union_and_existing_allocating_facts: test
port_preview::tests::synchronization_preview_exposes_contract_shrinkage_and_current_declaration_origin: test
port_workflow::recovery_tests::port_recovery_retains_authored_contract_and_identity_but_rebuilds_preview: test
port_workflow::tests::creating_typed_port_and_rejecting_stale_preview_preserve_drafts_and_identity: test
port_workflow::tests::graphical_function_exchange_and_component_generation_commit_and_undo_whole_contracts: test
port_workflow::tests::legacy_resolution_preserves_original_record_and_applies_as_one_undo: test
port_workflow::tests::port_creation_keeps_owner_diagram_and_unfolds_in_the_same_undo: test
port_workflow::tests::synchronization_uses_active_contract_instead_of_preserved_direction: test
recovery::source5::tests::source5_fingerprint_preserves_historical_field_order_and_diagram_shape: test
recovery::source5_tests::source4_checkpoint_remains_explicitly_unsupported_without_touching_disk: test
recovery::source5_tests::source5_checkpoint_does_not_refresh_unrelated_clean_buffer_baseline: test
recovery::source5_tests::source5_checkpoint_missing_identity_is_not_a_lossless_upgrade: test
recovery::source5_tests::source5_checkpoint_old_diagram_property_shape_remains_editable: test
recovery::source5_tests::source5_checkpoint_port_draft_replans_and_rejects_stale_base: test
recovery::source5_tests::source5_checkpoint_preserves_dirty_invalid_text_and_baseline_exactly: test
recovery::source5_tests::source5_checkpoint_preserves_distinct_unapplied_open_workspace: test
recovery::source5_tests::source5_checkpoint_property_preserves_invalid_raw_input: test
recovery::source5_tests::source5_checkpoint_upgrade_never_rewrites_checkpoint_or_origin: test
recovery::source5_tests::source5_checkpoint_upgrades_only_header_and_clean_editor_baseline: test
recovery::source5_tests::source5_checkpoint_workflow_rebinds_only_the_proven_old_revision: test
recovery::source7_tests::source7_current_combined_contextual_and_operation_drafts_survive_without_execution: test
recovery::source7_tests::source7_explicit_new_fields_cannot_enter_frozen_old_model_profiles: test
recovery::source7_tests::source7_legacy_inactive_constructor_path_is_structural_but_raw_prose_is_not: test
recovery::source7_tests::source7_legacy_profile_workflow_and_semantic_drafts_replan_with_exact_base: test
recovery::source7_tests::source7_legacy_profiles_preserve_dirty_source_property_and_behavior_raw_fields: test
recovery::source7_tests::source7_legacy_structural_intent_rejects_even_null_but_never_scans_raw_strings: test
recovery::source7_tests::source7_legacy_view_selector_refuses_new_relation_kind_without_rewriting_checkpoint: test
recovery::source7_tests::source7_recovers_nonempty_frozen_5_and_6_profiles_with_exact_historical_binding: test
recovery::tests::altered_accepted_identity_and_unrecognized_raw_property_fields_reject: test
recovery::tests::exact_source_and_unfinished_invalid_buffers_restore_without_model_overwrite: test
recovery::tests::excess_retained_buffers_cannot_replace_the_last_recoverable_checkpoint: test
recovery::tests::invalid_open_retains_distinct_accepted_model_and_repair_workspace: test
recovery::tests::missing_includes_remain_reachable_repair_targets_without_fabricated_buffers: test
recovery::tests::multiple_sessions_replace_only_their_own_checkpoint_and_corruption_is_retained: test
recovery::tests::raw_invalid_property_number_survives_and_stays_rejected_until_repaired: test
semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_draft_cannot_target_an_unreserved_or_non_artifact_identity: test
semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_raw_variants_duplicate_addresses_and_unknown_fields_are_refused: test
semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_reservations_cannot_duplicate_or_claim_an_existing_identity_or_another_owner: test
semantic_review::artifacts_recovery_falsifier_tests::legitimate_invalid_artifact_checkpoint_round_trips_and_prepares_only_after_explicit_repair: test
semantic_review::artifacts_tests::artifact_candidate_is_a_complete_record_not_a_tombstone_or_unattached_creation_shortcut: test
semantic_review::artifacts_tests::artifact_creation_and_identified_source_deletion_follow_core_metadata_and_history_boundary_both_directions: test
semantic_review::artifacts_tests::artifact_gui_reserves_recovers_and_creates_only_after_all_seven_metadata_reviews_both_directions: test
semantic_review::artifacts_tests::artifact_metadata_apply_and_exact_history_reset_are_one_source_preserving_undo_redo: test
semantic_review::artifacts_tests::artifact_move_metadata_none_empty_and_invalid_raw_recovery_are_independent_both_directions: test
semantic_review::artifacts_tests::artifact_moved_source_absence_deletes_but_destination_only_take_retains_both_directions: test
semantic_review::attachments::tests::absent_attachment_payloads_migrate_v1_and_v2_and_source5_upgrade_requires_exact_legacy_base: test
semantic_review::attachments::tests::addressed_attachment_candidates_equal_direct_core_oracle_both_directions: test
semantic_review::attachments::tests::attachment_apply_is_one_exact_source_and_history_undo_redo: test
semantic_review::attachments::tests::attachment_candidate_and_direct_record_keep_conflict_on_actual_slot_without_losing_drafts: test
semantic_review::attachments::tests::attachment_pair_drafts_survive_family_switch_and_restore_without_mutating_model: test
semantic_review::attachments::tests::functional_incident_source_requires_explicit_matching_port_review_in_one_atomic_candidate: test
semantic_review::attachments::tests::parent_and_each_endpoint_candidate_preserve_other_fields_and_match_core_both_directions: test
semantic_review::attachments::tests::raw_rejected_attachment_reference_survives_recovery_and_wrong_scope_is_rejected: test
semantic_review::attachments::tests::source_only_absence_and_explicit_absent_endpoint_are_different: test
semantic_review::attachments::tests::two_incident_endpoint_candidates_form_one_complete_record_and_recover_invalid_excluded_draft: test
semantic_review::batch_tests::batch_apply_is_one_exact_source_and_history_undo_redo_roundtrip: test
semantic_review::batch_tests::batch_candidate_conflict_keeps_both_raw_values_and_keep_is_a_real_constraint: test
semantic_review::batch_tests::batch_complete_constructor_cannot_erase_another_rows_new_literal: test
semantic_review::batch_tests::batch_constructor_retirement_conflicts_with_another_rows_kept_bound_in_both_orders: test
semantic_review::batch_tests::batch_delayed_text_targets_its_original_row_and_facet_without_switching_focus: test
semantic_review::batch_tests::batch_excluded_invalid_row_survives_focus_reopen_and_v2_recovery: test
semantic_review::batch_tests::batch_first_equal_constructor_acknowledgement_allows_an_independent_bound: test
semantic_review::batch_tests::batch_joint_bounds_use_one_candidate_and_match_an_independent_atomic_core_oracle: test
semantic_review::batch_tests::batch_reverse_distinct_targets_work_and_reverse_convergence_is_explicit: test
semantic_review::batch_tests::batch_v2_rejects_duplicate_included_sources_bad_addresses_and_stale_model: test
semantic_review::batch_tests::category_family_and_members_are_independent_core_checked_facets_both_directions: test
semantic_review::batch_tests::recovered_trace_picker_names_existing_trace_instead_of_deleted_reference: test
semantic_review::batch_tests::rejected_direction_switch_at_row_limit_preserves_every_recoverable_draft: test
semantic_review::compose::diagnostic_tests::distinct_review_conflict_keeps_trace_aliases_even_when_names_are_equal: test
semantic_review::compose::diagnostic_tests::reserved_creation_conflict_uses_its_rows_seed_instead_of_a_deleted_reference: test
semantic_review::compose::diagnostic_tests::same_review_presence_and_owner_conflict_names_both_facets_and_owners_and_retains_drafts: test
semantic_review::compose::diagnostic_tests::typed_owner_display_does_not_reinterpret_uuid_shaped_artifact_text: test
semantic_review::constructor_tests::closed_data_and_event_take_composition_matches_core_across_every_kind_pair_and_direction: test
semantic_review::constructor_tests::data_group_candidates_cover_every_definition_and_companion_default_both_directions: test
semantic_review::constructor_tests::data_group_retains_invalid_sibling_drafts_companion_default_and_variant_editor_buffers: test
semantic_review::constructor_tests::exchange_constructor_takes_qualified_annotation_addresses_without_remapping_expression_text: test
semantic_review::constructor_tests::existing_fragment_and_branch_group_candidates_edit_complete_owned_order_without_deletion: test
semantic_review::constructor_tests::group_take_reference_payload_and_scalar_candidate_match_core_and_one_document_batch: test
semantic_review::constructor_tests::historical_event_keep_retires_only_obsolete_branch_and_unchanged_kind_acknowledges_no_payload: test
semantic_review::constructor_tests::historical_same_kind_take_preserves_target_only_literals_when_composed_with_candidate: test
semantic_review::constructor_tests::occurrence_and_event_candidate_variants_cover_closed_families_without_touching_headers: test
semantic_review::constructor_tests::outer_and_nested_constructor_candidates_require_explicit_resolution_and_retain_both_drafts: test
semantic_review::constructor_tests::port_group_companions_typed_owner_context_and_direction_restrictions_are_explicit: test
semantic_review::constructor_tests::reverse_existing_typed_port_reviews_keep_or_candidate_legacy_without_permitting_typed_oa_write: test
semantic_review::constructor_tests::scenario_use_group_takes_typed_binding_references_and_preserves_source_text_both_directions: test
semantic_review::keyed_rows_tests::annotation_address_browser_descends_qualified_fields_without_changing_rows: test
semantic_review::keyed_rows_tests::annotation_observations_keep_uuid_shaped_expression_text_in_both_sides_and_history: test
semantic_review::keyed_rows_tests::batch_keyed_rows_compare_exact_target_slots_and_retain_independent_values: test
semantic_review::keyed_rows_tests::binding_choices_separate_reused_keys_from_local_lifelines: test
semantic_review::keyed_rows_tests::binding_local_picker_follows_a_candidate_parent_before_the_review_is_valid: test
semantic_review::keyed_rows_tests::binding_take_requires_local_correspondence_and_candidate_rejects_wrong_scenario: test
semantic_review::keyed_rows_tests::independent_rows_keep_take_candidate_match_core_and_preserve_siblings_both_directions: test
semantic_review::keyed_rows_tests::keyed_recovery_retains_raw_rows_and_staged_pairs_both_directions_without_applying: test
semantic_review::keyed_rows_tests::keyed_row_drafts_retain_expression_local_and_presence_across_decisions_and_staging: test
semantic_review::keyed_rows_tests::keyed_rows_distinguish_unpaired_source_from_explicit_absence_and_require_exact_reset: test
semantic_review::keyed_rows_tests::multiple_new_rows_compose_in_empty_collections_using_destination_key_order: test
semantic_review::keyed_rows_tests::row_review_apply_preserves_exact_source_and_semantic_history_through_undo_redo: test
semantic_review::keyed_tests::deleted_member_source_observation_removes_only_mapped_membership_both_directions: test
semantic_review::keyed_tests::exact_literal_new_rows_and_removals_commit_both_directions_without_default_loss: test
semantic_review::keyed_tests::exact_reset_only_is_one_history_source_transaction_and_undo_redo_both_directions: test
semantic_review::keyed_tests::function_port_members_use_existing_typed_choices_and_preserve_oa_legacy: test
semantic_review::keyed_tests::historical_one_sided_pair_migration_requires_exact_reset_and_explicit_overlap_resolution: test
semantic_review::keyed_tests::invalid_literal_removal_and_unselected_scalar_buffers_are_retained_and_repairable: test
semantic_review::keyed_tests::member_identity_labels_and_new_tabs_preserve_exact_names_and_deleted_keys: test
semantic_review::keyed_tests::reset_precedes_equal_constructor_candidate_and_preserves_independent_literal_draft: test
semantic_review::keyed_tests::staging_removal_and_obsolete_reset_recovery_keep_other_decisions_and_raw_presence: test
semantic_review::keyed_tests::stale_or_source_failed_reset_and_membership_apply_retain_exact_choices: test
semantic_review::keyed_tests::unordered_members_keep_take_candidate_preserve_other_rows_both_directions: test
semantic_review::keyed_tests::unsupported_independent_families_and_missing_identities_do_not_gain_edit_authority: test
semantic_review::message_kind_tests::message_group_candidate_closed_kinds_are_core_validated_in_both_directions: test
semantic_review::message_kind_tests::message_group_candidate_timer_switches_preserve_both_drafts_and_overlap_is_explicit: test
semantic_review::message_kind_tests::message_group_initial_equal_take_acknowledges_only_kind_and_checks_authored_timer_agreement: test
semantic_review::message_kind_tests::message_group_keep_historical_switch_retires_timer_and_completed_no_switch_rejects: test
semantic_review::message_kind_tests::message_group_rejects_protected_edits_stale_plan_and_source_failure_without_losing_timer: test
semantic_review::message_kind_tests::message_group_reply_and_reference_take_require_explicit_call_mapping_both_directions: test
semantic_review::message_kind_tests::message_group_take_full_timer_and_scalar_candidate_are_one_source_history_change_both_directions: test
semantic_review::message_kind_tests::message_group_timer_does_not_erase_exchange_without_its_own_selected_decision: test
semantic_review::ordered_tests::ambiguous_order_preserves_local_member_and_requires_explicit_candidate_positions: test
semantic_review::ordered_tests::historical_pair_restore_uses_exact_member_keys_and_never_zips_order_observations: test
semantic_review::ordered_tests::order_take_preserves_destination_only_positions_and_order_alone_cannot_add_members: test
semantic_review::ordered_tests::ordered_membership_choices_stage_exact_pairs_in_all_owner_shapes: test
semantic_review::ordered_tests::ordered_presence_keep_take_candidate_remove_only_selected_entry_and_order_take_reorders_only: test
semantic_review::ordered_tests::ordered_review_apply_is_exact_source_history_transaction_with_reopen_and_undo_redo: test
semantic_review::ordered_tests::ordered_take_uses_unique_anchors_and_matches_core_with_unrelated_candidate_both_directions: test
semantic_review::ordered_tests::raw_order_survives_membership_changes_decisions_and_recovery_until_explicit_reconcile: test
semantic_review::ordered_tests::several_incoming_members_follow_source_order_despite_independent_identity_sorting: test
semantic_review::recovery::tests::raw_scalar_and_closed_constructor_drafts_recover_against_exact_model_only: test
semantic_review::recovery::tests::version_one_without_orders_restores_raw_intent_and_replans_without_execution: test
semantic_review::source7_tests::contextual_incident_leaf_keep_allows_path_change_but_conflicts_with_changed_leaf_both_directions: test
semantic_review::source7_tests::reverse_operation_omission_gui_requires_raw_rationale_and_matches_one_core_batch_after_recovery: test
semantic_review::source7_tests::semantic_operation_virtual_none_candidate_uses_exact_allocation_and_preserves_accepted_bytes: test
semantic_review::tests::candidate_mixed_with_reference_take_uses_typed_correspondence_not_text_guessing: test
semantic_review::tests::deselected_invalid_candidate_is_retained_but_does_not_poison_another_selected_scalar: test
semantic_review::tests::explicit_trace_selection_updates_only_that_history: test
semantic_review::tests::first_equal_constructor_acknowledges_only_kind_and_allows_independent_leaves: test
semantic_review::tests::independent_review_clear_bound_ignores_retained_invalid_other_facet: test
semantic_review::tests::independent_review_keyed_fact_titles_keep_live_deleted_and_qualified_identity: test
semantic_review::tests::inherited_annotation_impact_requires_exact_acceptance_and_edits_clear_approval: test
semantic_review::tests::invalid_numeric_draft_and_protected_edits_retain_workflow_and_source: test
semantic_review::tests::read_only_structured_facts_and_partial_rollup_are_honest: test
semantic_review::tests::relation_candidates_preserve_endpoints_and_combine_selected_roles_and_bounds: test
semantic_review::tests::scalar_keep_take_candidate_commit_exact_source_and_history_in_both_directions: test
semantic_review::tests::scoped_literal_list_edits_preserve_unfinished_values_and_other_facet_buffers: test
semantic_review::tests::stale_plan_and_source_writeback_failure_do_not_lose_decisions_or_history: test
semantic_review::tests::state_kind_scalar_uses_typed_candidate_and_core_validation: test
semantic_review::view::reserved_artifact_tests::reserved_artifact_facet_and_reference_labels_survive_recovery_without_calling_it_deleted: test
source_navigation::interaction::tests::captured_find_click_invalidates_without_app_message_and_preserves_focus: test
source_navigation::interaction::tests::focus_rechecks_clock_between_inspection_and_application_and_missing_target_is_inert: test
source_navigation::interaction::tests::raw_navigation_inputs_advance_but_passive_geometry_does_not_and_exhaustion_refuses: test
source_navigation::query::tests::comments_strings_and_comment_gap_are_not_navigation_hits: test
source_navigation::query::tests::detached_alias_and_identity_collisions_never_auto_select: test
source_navigation::query::tests::dirty_but_parseable_text_has_current_names_and_no_validated_fallback: test
source_navigation::query::tests::exact_multifile_unicode_crlf_definition_and_repeated_lexical_references: test
source_navigation::query::tests::exact_snapshot_readback_rejects_same_key_byte_membership_and_evidence_changes: test
source_navigation::query::tests::include_cycle_depth_and_aggregate_edges_are_explicit_partial_outcomes: test
source_navigation::query::tests::invalid_include_syntax_never_borrows_the_old_reachable_file_set: test
source_navigation::query::tests::keyword_alias_and_loaded_path_case_collisions_use_reviewed_index_rules: test
source_navigation::query::tests::large_display_name_cannot_escape_the_owned_row_string_budget: test
source_navigation::query::tests::missing_and_noncanonical_authored_ids_remain_draft_spans_without_generated_anchors: test
source_navigation::query::tests::missing_include_partial_scope_does_not_resurrect_witness_text: test
source_navigation::query::tests::omitted_rows_are_counted_before_result_allocation_and_never_confer_uniqueness: test
source_navigation::query::tests::origin_keeps_exact_hit_when_display_rows_are_omitted: test
source_navigation::query::tests::owned_request_checks_raw_limits_immediately_and_extracts_only_on_worker: test
source_navigation::query::tests::owned_request_moves_exact_text_into_worker_snapshot_and_matches_sync_results: test
source_navigation::query::tests::owned_validation_proof_preserves_full_witness_count_and_partial_scope: test
source_navigation::query::tests::raw_aggregate_limits_refuse_before_outline_or_copied_snapshot: test
source_navigation::query::tests::sole_detached_candidate_and_unapplied_equal_bytes_require_choice: test
source_navigation::query::tests::token_declaration_and_live_reference_limits_are_aggregate_not_per_file: test
source_navigation::query::tests::validation_witness_must_match_entry_and_complete_included_file_set: test
source_navigation::symbols::tests::admitted_unicode_path_budget_keeps_original_policy_after_single_fold: test
source_navigation::symbols::tests::comment_separated_reference_keeps_crlf_unicode_and_disjoint_hit_spans: test
source_navigation::symbols::tests::declaration_order_and_duplicate_roles_refuse_instead_of_corrupting_hit_search: test
source_navigation::symbols::tests::detached_uuid_clone_disables_anchor_even_for_included_query: test
source_navigation::symbols::tests::duplicate_aliases_are_candidates_without_false_reference_attribution: test
source_navigation::symbols::tests::every_budget_admits_boundary_and_returns_no_index_one_below: test
source_navigation::symbols::tests::header_metadata_must_match_current_token_boundaries_and_authored_id: test
source_navigation::symbols::tests::incomplete_draft_is_lexical_and_error_token_does_not_leak_references: test
source_navigation::symbols::tests::legal_keyword_classified_alias_is_not_discarded: test
source_navigation::symbols::tests::missing_ids_produce_only_current_snapshot_locations_without_stabilization: test
source_navigation::symbols::tests::nested_declaration_extents_do_not_turn_body_text_into_definition_hits: test
source_navigation::symbols::tests::noncanonical_header_identity_cannot_enter_through_query_metadata: test
source_navigation::symbols::tests::path_identity_rejects_normalization_and_case_collisions: test
source_navigation::symbols::tests::query_header_admission_preserves_uppercase_and_json_escape_bytes: test
source_navigation::symbols::tests::repeated_live_uses_are_distinct_and_strings_comments_history_are_excluded: test
source_navigation::symbols::tests::reused_alias_cannot_steal_old_identity_and_old_locations_are_stale: test
source_navigation::symbols::tests::scope_provenance_and_detached_alias_collision_are_explicit: test
source_navigation::symbols::tests::stopped_outline_is_not_a_successful_empty_query: test
source_navigation::symbols::tests::truncated_or_gapped_tokens_refuse_even_when_project_scope_is_partial: test
source_navigation::symbols::tests::unicode_path_collisions_match_core_lowercase_policy: test
source_navigation::tests::search_uses_utf8_columns_wraps_and_refreshes_after_edits: test
source_rename::origin::tests::maps_last_repeated_reference_with_unicode_crlf_and_comment_separator: test
source_rename::origin::tests::permits_identifier_keyword_transitions_in_alias_roles: test
source_rename::origin::tests::preserves_final_same_line_occurrence_not_first_or_prose: test
source_rename::origin::tests::rejects_changed_trivia_non_alias_words_and_wrong_marker: test
source_rename::preview::tests::each_bound_is_exact_and_overflow_never_returns_a_partial_preview: test
source_rename::preview::tests::first_and_last_lines_form_complete_separate_hunks_and_pages: test
source_rename::preview::tests::limits_apply_to_the_whole_preview_not_each_file: test
source_rename::preview::tests::long_unicode_lines_are_fully_reachable_as_bounded_fragments: test
source_rename::preview::tests::nearby_changes_merge_and_all_changed_files_are_reachable: test
source_rename::preview::tests::preserves_unicode_mixed_endings_and_counts_lines_not_repeated_uses: test
source_rename::preview::tests::refuses_membership_entry_line_count_and_line_ending_changes: test
source_rename::preview::tests::unchanged_and_empty_sources_have_no_preview: test
source_tree::tests::active_scroll_offset_uses_the_visible_order_and_retains_ancestor_context: test
source_tree::tests::collapsed_folders_retain_active_dirty_and_diagnostic_markers: test
source_tree::tests::deep_paths_build_expand_and_drop_on_a_small_stack: test
source_tree::tests::detached_buffers_keep_paths_and_only_clean_buffers_are_closable: test
source_tree::tests::exact_unicode_spaces_and_file_folder_name_collisions_are_not_normalized: test
source_tree::tests::folders_are_compact_and_sorted_before_files_without_losing_duplicate_basenames: test
source_workspace::tests::draft_history_budget_covers_inactive_files_without_discarding_drafts: test
source_workspace::tests::fresh_session_cannot_reuse_a_retained_buffer_generation: test
source_workspace::tests::navigation_revision_wrap_cannot_reuse_an_old_workspace_key: test
source_workspace::tests::navigation_scope_changes_invalidate_without_changing_unchanged_positions: test
source_workspace::tests::navigation_versions_distinguish_reopened_recovered_and_changed_drafts: test
source_workspace::tests::switching_retains_invalid_drafts_and_independent_history: test
tests::actor_port_creation_updates_containment_and_locate_reveals_its_owner: test
tests::adding_bend_between_close_ports_stays_outside_owner_clearance: test
tests::behavior_and_data_authoring_do_not_place_nodes_in_unrelated_architecture_views: test
tests::bidirectional_transition_ui_commits_once_and_preserves_other_diagrams: test
tests::counterpart_creation_focuses_visible_target_and_reuse_keeps_views: test
tests::creation_from_capabilities_routes_work_to_architecture_and_folded_allocation_inserts_below_existing_work: test
tests::dragging_keeps_semantic_selection_and_same_node_remains_editable: test
tests::escaped_string_mode_preserves_exact_control_characters: test
tests::every_demo_record_has_a_lossless_graphical_draft: test
tests::explicit_relationship_builder_never_mutates_on_preview: test
tests::explorer_and_creation_selection_follow_their_own_placement: test
tests::fit_adapts_to_canvas_returning_after_help_but_preserves_manual_navigation: test
tests::fit_uses_measured_canvas_bounds_and_preserves_them_on_open: test
tests::focused_explorer_follows_reparenting_without_changing_identity: test
tests::graphical_rename_keeps_aliases_and_references_and_undo: test
tests::identity_property_change_is_atomic_and_rewrites_all_live_references: test
tests::invalid_numeric_draft_survives_navigation_save_and_help: test
tests::invalid_save_and_continue_returns_to_repairable_draft: test
tests::malformed_source_preserves_model_and_is_recoverable: test
tests::manual_trace_requires_target_and_selection_normalizes_creation_kind: test
tests::mission_capability_authoring_is_contextual_atomic_and_text_equivalent: test
tests::modal_owns_background_commands_and_shortcuts: test
tests::nested_allocation_insertion_reflows_sibling_subtrees_and_preserves_fold_state: test
tests::opening_and_creating_models_preserve_the_actual_window_size_for_fit: test
tests::opening_legacy_source_surfaces_report_without_modifying_original_bytes: test
tests::pending_source_prevents_property_draft_collision_and_preserves_both_if_present: test
tests::placement_identity_edit_then_drag_and_diagram_identity_then_arrange: test
tests::placement_relocation_follows_cross_layer_traceability_view: test
tests::property_enum_and_optional_reference_roundtrip: test
tests::reopening_canvas_for_a_modal_preserves_viewport_after_route_edits: test
tests::revealing_an_implicit_function_port_unfolds_its_visible_architecture_owner: test
tests::routing_actions_are_atomic_guarded_and_fit_the_authored_detour: test
tests::selecting_current_constructors_preserves_payloads: test
tests::source_find_navigates_an_invalid_draft_without_applying_or_losing_it: test
tests::source_navigation_waits_for_editor_layout_and_cancels_on_edit: test
tests::system_only_models_open_the_populated_perspective: test
tests::transition_resolutions_belong_to_the_effective_target_and_kind: test
view_copy::tests::duplicate_retains_ports_routes_options_and_artifact_claims_with_exact_undo_redo: test
view_copy::tests::duplicate_state_view_preserves_machine_nesting_and_collapse_with_unique_aliases: test
view_copy::tests::missing_view_does_not_propose_an_empty_replacement: test
views::source_symbols::tests::suffixes_distinguish_nested_duplicate_basenames_without_changing_unicode: test
views::source_tests::source_editor_windows_menu_payload_is_inert_but_space_and_altgr_still_edit: test
views::text_workspace::summary_visibility_tests::all_reference_exceptions_fit_allocated_width_with_wide_alias_and_large_counts: test
views::text_workspace::tests::drawer_clamps_to_actual_center_allocation_including_oversize_requests: test
views::text_workspace::tests::five_slots_keep_editor_state_and_selection_through_explicit_and_passive_changes: test
views::text_workspace::tests::highlighted_sensor_editor_retains_real_scrolled_buffer_across_panel_rebuilds: test
views::text_workspace::tests::keyboard_resize_uses_effective_height_and_only_exact_open_drawer_shortcut: test
views::traceability::tests::traceability_browsing_retains_invalid_property_draft_and_existing_select_guard: test
views::traceability::tests::traceability_filter_reaches_artifacts_after_68_traces_and_searches_all_metadata: test
workflow::communication::tests::communication_requires_two_explicit_ports_and_recovers_the_partial_choice: test
workflow::port_authoring_tests::boundary_picker_matches_exact_commands_across_contracts_and_ownership: test
workflow::port_authoring_tests::boundary_picker_recomputes_for_unoriented_reverse_endpoints_without_relaxing_contracts: test
workflow::port_authoring_tests::duplicate_port_names_show_owner_contract_and_unique_alias: test
workflow::port_authoring_tests::fresh_functions_are_actual_picker_targets_and_plan_enables_apply: test
workflow::port_authoring_tests::generic_component_port_connection_keeps_its_endpoint_and_direction: test
workflow::port_authoring_tests::ordinary_standard_connections_default_unoriented_and_new_roles_exclude_legacy: test
workflow::recovery::tests::incomplete_relationship_and_trace_recover_raw_fields_and_reject_changed_model: test
workflow::recovery::tests::transition_recovery_replans_typed_request_without_persisted_commands: test
workflow::transition_tests::basic_transition_boundary_choice_is_required_without_an_inferred_system: test
workflow::transition_tests::basic_transition_creates_overview_when_existing_views_cannot_show_result: test
workflow::transition_tests::basic_transition_explicit_destination_appends_below_existing_bounds_and_is_one_source_edit: test
workflow::transition_tests::basic_transition_invalid_explicit_destination_retains_choice_and_refuses: test
workflow::transition_tests::basic_transition_reconcile_keeps_existing_selected_view_placement_and_route_exact: test
workflow::transition_tests::basic_transition_skips_lowest_uuid_state_view_and_preserves_oa: test
859 tests, 0 benchmarks
@@ -0,0 +1,21 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"--",
"--test-threads=1"
],
"started": "2026-09-13T02:22:52.927057+00:00",
"finished": "2026-09-13T02:29:07.021086+00:00",
"seconds": 374.08875499999704,
"exitCode": 0,
"inputsUnchanged": true,
"stdoutSha256": "49b6da231b96fcc5dfa0bd8ed2e4d105045c1efa6b8d198bd4350f1ee8e28818",
"stderrSha256": "4bc3b596e2cb08b0af0a4bcdeae80135ce14b0b9046215b4c2ccfeafe1d2317a"
}
@@ -0,0 +1,2 @@
Finished `test` profile [unoptimized] target(s) in 2.11s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
@@ -0,0 +1,864 @@
running 859 tests
test app::architecture_authoring::tests::architecture_allocated_work_is_root_owned_and_one_exact_history_change ... ok
test app::architecture_authoring::tests::architecture_blank_names_and_escape_never_accept_placeholder_or_rename ... ok
test app::architecture_authoring::tests::architecture_captured_escape_does_not_cancel_other_controls_or_placement ... ok
test app::architecture_authoring::tests::architecture_f2_routes_selected_node_to_inline_rename_and_exact_undo ... ok
test app::architecture_authoring::tests::architecture_first_focused_input_escape_cancels_create_and_rename ... ok
test app::architecture_authoring::tests::architecture_invalid_click_cannot_poison_inline_or_checkpoint_geometry ... ok
test app::architecture_authoring::tests::architecture_stale_submit_keeps_create_and_rename_visible_and_exact ... ok
test app::architecture_authoring_tests::architecture_cancelled_gesture_cannot_commit_a_later_named_draft ... ok
test app::architecture_authoring_tests::architecture_canvas_left_click_uses_world_coordinate_once_at_zoom_and_pan ... ok
test app::architecture_authoring_tests::architecture_checkpoint_retains_exact_name_point_and_fresh_binding_without_commands ... ok
test app::architecture_authoring_tests::architecture_context_choices_are_small_and_system_is_singleton ... ok
test app::architecture_authoring_tests::architecture_contextual_allocation_creates_work_relation_and_node_in_one_undo ... ok
test app::architecture_authoring_tests::architecture_creation_names_before_commit_preserves_camera_and_undoes_once ... ok
test app::architecture_authoring_tests::architecture_existing_inventory_is_contextual_and_placement_never_implies_allocation ... ok
test app::architecture_authoring_tests::architecture_f2_rename_preserves_identity_placement_and_atomic_history ... ok
test app::architecture_authoring_tests::architecture_name_survives_rejected_click_resize_navigation_and_escape_is_explicit ... ok
test app::architecture_authoring_tests::architecture_rejected_submission_keeps_inline_name_visible_and_invalid_click_is_ignored ... ok
test app::architecture_authoring_tests::basic_transition_explicit_overview_focus_wins_over_an_already_populated_architecture ... ok
test app::behavior_lifecycle_tests::incomplete_behavior_form_is_dirty_close_save_retains_it_and_cancel_allows_switching ... ok
test app::behavior_lifecycle_tests::passive_behavior_canvas_events_do_not_apply_property_drafts ... ok
test app::behavior_lifecycle_tests::pending_behavior_blocks_navigation_property_edits_and_model_history ... ok
test app::behavior_lifecycle_tests::pending_behavior_blocks_source_creation_and_source_history_replay ... ok
test app::behavior_lifecycle_tests::save_prepares_behavior_before_opening_destination_and_cancel_keeps_one_undo ... ok
test app::behavior_lifecycle_tests::source_writeback_failure_keeps_typed_behavior_form_for_repair_and_one_undo ... ok
test app::checkpoints::tests::checkpoint_completion_releases_the_writer_while_a_context_menu_is_open ... ok
test app::checkpoints::tests::checkpoint_inline_create_and_rename_restore_focus_without_changing_drafts_or_history ... ok
test app::checkpoints::tests::checkpoint_noninline_contexts_keep_other_focus_and_still_lint ... ok
test app::checkpoints::tests::discard_and_close_waits_for_the_late_checkpoint_then_retires_it ... ok
test app::checkpoints::tests::home_resume_keeps_state_view_while_explicit_architecture_remains_reachable ... ok
test app::checkpoints::tests::home_resume_retains_invalid_source_and_property_drafts ... ok
test app::checkpoints::tests::home_resume_returns_to_each_actual_workspace_without_model_edits ... ok
test app::checkpoints::tests::malformed_checkpoint_does_not_replace_the_current_model ... ok
test app::checkpoints::tests::recent_and_recovery_navigation_respect_unsaved_decision ... ok
test app::checkpoints::tests::restored_copy_keeps_raw_property_and_requires_save_without_local_or_hosted_binding ... ok
test app::checkpoints::tests::saving_an_older_snapshot_keeps_recovery_for_newer_unsaved_work ... ok
test app::checkpoints::tests::stale_write_completion_cannot_recover_a_discarded_document ... ok
test app::checkpoints::tests::walkthrough_request_keeps_unfinished_source_behind_the_normal_pending_guard ... ok
test app::data_paging_lifecycle_tests::paging_preserves_same_context_and_resets_on_layer_or_document_replacement ... ok
test app::diagram_selection_tests::changing_visible_view_follows_its_clean_inspector_without_a_model_edit ... ok
test app::diagram_selection_tests::diagram_switch_preserves_an_independent_semantic_inspection ... ok
test app::diagram_selection_tests::diagram_uuid_edit_follows_the_same_view_or_a_different_picker_target ... ok
test app::diagram_selection_tests::invalid_view_draft_blocks_the_switch_and_retains_raw_input ... ok
test app::diagram_selection_tests::stale_diagram_choice_never_applies_an_unrelated_valid_draft ... ok
test app::diagram_selection_tests::valid_pending_view_edit_applies_to_old_view_then_inspects_the_new_view ... ok
test app::direct_scenario_tests::direct_scenario_creation_and_reorder_preserve_selection_and_each_undo_once ... ok
test app::direct_scenario_tests::direct_scenario_rejects_every_stale_context_and_preserves_property_drafts ... ok
test app::direct_scenario_tests::direct_scenario_scroll_and_real_resize_invalidate_only_pointer_context ... ok
test app::direct_scenario_tests::direct_scenario_source_failure_and_navigation_keep_form_until_success ... ok
test app::hosted::tests::hosted_actual_app_tasks_publish_edit_conflict_correct_credentials_reload_and_open ... ok
test app::hosted::tests::hosted_catalog_invalidation_follows_service_writes_and_observed_revision_changes ... ok
test app::hosted::tests::hosted_catalog_search_credentials_and_failed_refresh_never_mix_result_scopes ... ok
test app::hosted::tests::hosted_changed_bound_head_does_not_invalidate_another_services_empty_filter ... ok
test app::hosted::tests::hosted_conflict_fetches_review_without_adoption_and_reload_is_undoable ... ok
test app::hosted::tests::hosted_detached_drafts_and_recovery_remain_available_after_rejected_publish ... ok
test app::hosted::tests::hosted_failed_cross_service_publication_checks_and_reloads_its_own_resource ... ok
test app::hosted::tests::hosted_failed_or_cancelled_local_open_keeps_the_existing_document_and_destination ... ok
test app::hosted::tests::hosted_invalid_and_detached_source_drafts_never_start_network_writes ... ok
test app::hosted::tests::hosted_invalid_local_open_repair_saves_locally_and_never_replaces_old_resource ... ok
test app::hosted::tests::hosted_modal_blocks_underlying_edits_and_credentials_are_redacted ... ok
test app::hosted::tests::hosted_new_revision_invalidates_filtered_catalog_even_without_a_displayed_row ... ok
test app::hosted::tests::hosted_only_successful_source_save_as_changes_the_active_destination ... ok
test app::hosted::tests::hosted_open_waits_for_unsaved_guard_and_failed_open_preserves_current_document ... ok
test app::hosted::tests::hosted_publish_acknowledges_only_the_sent_snapshot_and_retains_undo ... ok
test app::hosted::tests::hosted_stale_completions_do_not_clear_current_busy_or_adopt_another_document ... ok
test app::hosted::tests::hosted_unknown_save_is_acknowledged_by_exact_readback_without_retry ... ok
test app::lint_tests::committed_check_cache_follows_edit_and_undo_while_drafts_stay_separate ... ok
test app::lint_tests::lint_coalesces_work_and_rejects_obsolete_results ... ok
test app::lint_tests::prior_document_lint_cannot_enter_reopened_model_or_block_next_checks ... ok
test app::port_view_tests::catalog_creation_follows_the_new_port_and_keeps_group_browsing_explicit ... ok
test app::port_view_tests::filtered_active_view_cannot_hide_a_created_port_when_eligible_owner_view_is_folded ... ok
test app::process_canvas::direct_process_dirty_source_blocks_canvas_creation_without_losing_text ... ok
test app::process_canvas::tests::direct_process_app_open_source_and_back_preserve_local_reference_identity ... ok
test app::process_canvas::tests::direct_process_app_same_owner_selection_preserves_tool_but_owner_change_resets_it ... ok
test app::process_canvas::tests::direct_process_app_save_scroll_resize_and_passive_geometry_keep_drafts_and_current_origin ... ok
test app::process_canvas::tests::direct_process_app_source_failure_retains_form_then_commits_once_and_selects_occurrence ... ok
test app::process_canvas::tests::direct_process_app_stale_context_dirty_source_and_properties_never_mutate ... ok
test app::process_canvas::tests::direct_process_append_empty_first_second_exchange_has_exact_source_history ... ok
test app::process_canvas::tests::process_focus_retains_rejected_draft_and_guards_selection_until_panels_restore ... ok
test app::repair_save_state_tests::recovering_applied_repair_rebinds_rolled_back_disk_bytes_without_changing_model ... ok
test app::repair_save_state_tests::recovery_missing_entry_or_failed_reload_preserves_current_destination_save_authority ... ok
test app::repair_save_state_tests::repair_history_compares_to_new_disk_baseline_and_then_successful_save ... ok
test app::repair_save_state_tests::repair_to_previous_saved_bytes_requires_save_at_new_destination_and_guards_close ... ok
test app::repair_save_state_tests::valid_equal_content_at_distinct_destinations_stays_clean ... ok
test app::review_navigation_tests::rejected_semantic_source_writeback_retains_review_camera_and_original_navigation ... ok
test app::review_navigation_tests::review_already_showing_the_target_keeps_its_camera_and_query ... ok
test app::review_navigation_tests::semantic_name_take_selects_the_counterpart_view_in_both_directions_with_one_exact_history_entry ... ok
test app::review_navigation_tests::semantic_review_without_a_destination_view_clears_the_old_layer_canvas_without_creating_a_view ... ok
test app::save_as_tests::save_as_late_receipt_preserves_newer_raw_source_draft_and_destination ... ok
test app::save_as_tests::save_as_preflight_rejects_historical_collision_before_starting_io ... ok
test app::save_as_tests::save_as_receipt_then_one_undo_restores_meaning_and_saving_preserves_redo ... ok
test app::source_project_tests::closed_detached_file_keeps_first_save_conflict_then_can_be_reloaded_fresh ... ok
test app::source_project_tests::inactive_invalid_draft_blocks_graphical_changes_and_diagnostic_switches_files ... ok
test app::source_project_tests::json_export_and_rejected_save_as_preserve_source_location_history_and_bytes ... ok
test app::source_project_tests::missing_include_open_keeps_old_model_and_can_be_repaired_and_saved ... ok
test app::source_project_tests::recovery_after_first_save_failure_retains_target_then_retries_without_reentering_path ... ok
test app::source_project_tests::recovery_of_previous_save_as_target_does_not_redirect_current_project ... ok
test app::source_project_tests::recovery_open_finds_first_save_journal_without_an_entry_file ... ok
test app::source_project_tests::recovery_target_survives_edit_lint_apply_and_rejected_recovery_until_success ... ok
test app::source_project_tests::source3_native_open_preserves_report_comments_nesting_and_save_reopen ... ok
test app::source_project_tests::two_file_apply_graphical_edit_exact_undo_save_as_and_reopen ... ok
test app::source_rename::alias_input::tests::effective_escape_reset_follows_child_after_early_returns ... ok
test app::source_rename::alias_input::tests::held_paste_cache_contains_only_previously_admitted_text ... ok
test app::source_rename::alias_input::tests::paste_refusal_matches_child_focus_enabled_and_stored_modifier_protocol ... ok
test app::source_rename::editor_patch::tests::all_preflight_refusals_leave_text_cursor_and_selection_unchanged ... ok
test app::source_rename::editor_patch::tests::already_laid_out_editor_notifies_highlighter_from_zero_after_later_line_patch ... ok
test app::source_rename::editor_patch::tests::exact_text_matrix_and_reverse_preserve_endings ... ok
test app::source_rename::editor_patch::tests::unchanged_content_preserves_selection_and_next_direct_edit_works ... ok
test app::source_rename::tests::actual_alias_clipboard_rejects_controls_without_normalizing_or_moving_selection ... ok
test app::source_rename::tests::actual_captured_escape_closes_only_its_priority_owner_and_retains_worker ... ok
test app::source_rename::tests::actual_dialog_enter_requests_preview_even_when_confirm_is_available ... ok
test app::source_rename::tests::actual_dialog_real_paragraph_geometry_keeps_input_preview_and_footer_reachable ... ok
test app::source_rename::tests::alias_editor_sync_fallback_restores_accepted_display_and_preserves_model_history ... ok
test app::source_rename::tests::close_and_reset_retain_worker_slot_until_exact_completion_without_reopening ... ok
test app::source_rename::tests::complete_alias_change_preserves_literals_and_last_comment_separated_origin_and_undo ... ok
test app::source_rename::tests::full_details_selection_survives_readonly_and_passive_messages_and_tracks_input ... ok
test app::source_rename::tests::genuine_save_receipts_preserve_same_destination_preview_but_invalidate_save_as ... ok
test app::source_rename::tests::invalid_open_retains_accepted_document_but_refuses_alias_rename ... ok
test app::source_rename::tests::last_same_line_use_beyond_reference_row_limit_and_selection_boundaries ... ok
test app::source_rename::tests::mounted_editor_f2_requires_focus_and_no_modifiers ... ok
test app::source_rename::tests::paging_all_utf8_fragments_preserves_exact_preview_and_approval ... ok
test app::source_rename::tests::preview_glyph_tests::actual_preview_source_glyphs_clear_scrollbar_and_all_long_fragments_are_reachable ... ok
test app::source_rename::tests::preview_scroll_tests::delayed_page_and_approval_operations_cannot_reset_a_new_destination ... ok
test app::source_rename::tests::preview_scroll_tests::explicit_navigation_resets_retained_scroll_but_id_change_alone_does_not ... ok
test app::source_rename::tests::preview_scroll_tests::repeated_page_visits_filters_and_fast_preview_completion_have_distinct_destinations ... ok
test app::source_rename::tests::property_draft_and_detached_buffer_refuse_without_hidden_apply ... ok
test app::source_rename::tests::replacement_generation_aba_and_modal_shortcuts_cannot_commit_stale_preview ... ok
test app::source_rename::tests::same_alias_invalid_and_cancel_keep_existing_redo_and_source_selection ... ok
test app::source_rename::tests::source_edit_undo_and_recovery_invalidation_do_not_revive_approval ... ok
test app::source_rename::tests::stale_dialog_envelopes_do_not_cancel_new_same_path_form_or_its_approval ... ok
test app::source_rename::timing_tests::accepted_release1_prepare_commit_sync_and_confirm_timing ... ignored, manual Windows dev/debug rename latency trial; run alone with --ignored --nocapture --test-threads=1
test app::source_rename::timing_tests::layout_timing_tests::accepted_release1_constructor_vs_reuse_through_next_highlight ... ignored, manual Windows dev/debug editor replacement + layout/highlight trial; run alone with --ignored --nocapture --test-threads=1
test app::source_symbols::tests::back_after_origin_edit_uses_its_current_cursor_instead_of_the_old_range ... ok
test app::source_symbols::tests::back_keeps_the_latest_64_actual_locations_without_reusing_dropped_history ... ok
test app::source_symbols::tests::back_restores_exact_reversed_utf8_selection_and_crlf_source ... ok
test app::source_symbols::tests::captured_find_and_modal_escape_use_one_actual_subscription_and_preserve_pending_work ... ok
test app::source_symbols::tests::captured_subscription_does_not_duplicate_existing_behavior_or_architecture_routes ... ok
test app::source_symbols::tests::close_during_busy_retains_hidden_completion_without_reopening_or_navigation ... ok
test app::source_symbols::tests::closed_results_stay_closed_on_exact_back_and_reopen_only_for_a_return_notice ... ok
test app::source_symbols::tests::completion_retains_current_display_but_rejects_navigation_after_context_changes ... ok
test app::source_symbols::tests::delayed_definition_after_hide_or_tab_change_retains_data_without_reopening_or_focus ... ok
test app::source_symbols::tests::detached_duplicate_requires_an_explicit_choice_even_when_included_source_is_validated ... ok
test app::source_symbols::tests::escape_dismisses_modal_before_underlying_source_results ... ok
test app::source_symbols::tests::escape_hides_results_and_cancels_navigation_but_retains_latest_display ... ok
test app::source_symbols::tests::find_close_releases_removed_input_and_guarded_focus_respects_later_input ... ok
test app::source_symbols::tests::find_only_captured_escape_closes_once_and_preserves_raw_query_and_selection ... ok
test app::source_symbols::tests::hidden_completion_checks_exact_bytes_even_when_snapshot_key_was_not_advanced ... ok
test app::source_symbols::tests::invalid_unapplied_drafts_navigate_without_apply_or_losing_either_history ... ok
test app::source_symbols::tests::matching_old_worker_cannot_replace_a_newer_display_owner ... ok
test app::source_symbols::tests::matching_reveal_ticket_is_required_and_raw_input_invalidates_pending_reveal ... ok
test app::source_symbols::tests::old_find_close_cannot_cancel_a_new_file_session_or_reopened_find_intent ... ok
test app::source_symbols::tests::old_symbol_widget_envelopes_after_file_switch_preserve_same_session_intent ... ok
test app::source_symbols::tests::old_symbol_widget_envelopes_after_reset_preserve_new_same_path_intent ... ok
test app::source_symbols::tests::popup_escape_has_no_duplicate_bridge_and_dismissal_preserves_underlying_find_and_drawer ... ok
test app::source_symbols::tests::reset_retains_worker_slot_until_old_completion_then_admits_new_session_query ... ok
test app::source_symbols::tests::retained_choices_cannot_replay_after_hide_or_references_problems_references ... ok
test app::source_symbols::tests::same_worker_with_changed_request_envelope_cannot_publish_or_navigate ... ok
test app::source_symbols::tests::saturated_raw_clock_never_authorizes_completion_or_reveal ... ok
test app::source_symbols::tests::source_symbols_100_modules_1000_definitions_10000_uses ... ignored, manual 100-module latency/process-memory trial; run alone with --ignored --nocapture --test-threads=1
test app::source_symbols::tests::unknown_job_cannot_release_current_worker_and_old_duplicate_cannot_replace_new_results ... ok
test app::source_symbols::tests::valid_definition_and_reference_choice_keep_whole_model_and_source_unchanged ... ok
test app::state_diagram_tests::all_context_dimensions_reject_stale_selection_camera_and_model_messages ... ok
test app::state_diagram_tests::create_view_places_only_its_machine_and_restores_exact_source_in_one_undo ... ok
test app::state_diagram_tests::direct_create_connect_select_and_move_keep_semantic_identity_and_atomic_history ... ok
test app::state_diagram_tests::fallback_owner_first_selection_keeps_the_captured_context_for_its_first_move ... ok
test app::state_diagram_tests::pending_drafts_block_every_direct_mutation_and_passive_camera_preserves_inputs ... ok
test app::state_diagram_tests::real_view_tool_and_history_changes_invalidate_old_release_events ... ok
test app::state_diagram_tests::rejected_creation_keeps_source_and_selection_then_valid_owner_can_retry ... ok
test app::state_diagram_tests::same_size_viewport_after_revision_or_tool_epoch_does_not_refit_the_camera ... ok
test app::state_diagram_tests::shared_semantic_states_keep_architecture_and_behavior_placements_independent ... ok
test app::state_diagram_tests::state_diagram_routes_constructor_and_source_open_to_the_existing_workspace_without_edits ... ok
test app::state_diagram_tests::state_diagram_routes_picker_and_reveal_but_explicit_architecture_does_not_bounce ... ok
test app::state_diagram_tests::state_diagram_routes_preserve_selected_raw_properties_and_pending_behavior_guards ... ok
test app::state_diagram_tests::state_navigation_catalog_selection_across_layers_resets_camera_and_tool ... ok
test app::state_diagram_tests::state_navigation_catalog_selection_of_another_machine_resets_camera_and_tool ... ok
test app::state_diagram_tests::state_navigation_layer_change_resets_the_new_machine_at_the_same_viewport_size ... ok
test app::state_diagram_tests::state_navigation_return_to_the_same_view_preserves_camera_tool_and_fit_mode ... ok
test app::state_diagram_tests::state_navigation_root_event_and_same_layer_keep_the_current_camera_and_tool ... ok
test app::text_workspace::lifecycle_tests::canceled_or_failed_open_that_installs_nothing_retains_current_presentation_and_diagnostics ... ok
test app::text_workspace::lifecycle_tests::invalid_repair_open_clears_prior_presentation_and_publishes_current_problems_preserving_worker ... ok
test app::text_workspace::lifecycle_tests::saved_new_destination_does_not_revalidate_already_stale_warning_locations ... ok
test app::text_workspace::lifecycle_tests::saved_new_destination_republishes_current_warning_and_refuses_old_primary_and_related ... ok
test app::text_workspace::tests::current_diagnostic_target_navigates_but_changed_source_or_clear_refuses_it ... ok
test app::text_workspace::tests::diagnostic_span_must_be_loaded_ordered_and_utf8_exact ... ok
test app::text_workspace::tests::disabled_entry_cannot_become_a_new_action_under_the_same_menu_token ... ok
test app::text_workspace::tests::document_reset_preserves_popup_token_sequence_and_drops_old_menu_authority ... ok
test app::text_workspace::tests::enabled_entry_is_readmitted_at_dispatch_and_blocked_by_busy ... ok
test app::text_workspace::tests::equal_diagnostic_republication_invalidates_primary_and_related_targets ... ok
test app::text_workspace::tests::menu_own_open_invalidation_does_not_stale_find_and_invoke_is_once ... ok
test app::text_workspace::tests::menu_source_caret_document_path_and_interaction_changes_refuse_stale_find ... ok
test app::text_workspace::tests::old_dismiss_and_invoke_do_not_consume_a_newer_menu ... ok
test app::text_workspace::tests::only_valid_explicit_group_and_resize_intent_cancel_pending_navigation ... ok
test app::text_workspace::tests::queued_group_toggle_cannot_mutate_a_reopened_or_rotated_visit ... ok
test app::text_workspace::tests::queued_toolbar_request_cannot_retarget_after_source_change ... ok
test app::text_workspace::tests::reference_groups_and_scroll_survive_tabs_and_reject_old_visits_and_queries ... ok
test app::text_workspace::tests::reset_removes_ui_and_publication_authority_and_resize_rejects_nan ... ok
test app::text_workspace::tests::retained_primary_and_related_targets_cannot_replay_after_hide_or_problems_references_problems ... ok
test app::text_workspace::tests::source_and_property_drafts_keep_find_and_text_undo_without_model_application ... ok
test app::text_workspace::tests::stale_retained_group_can_expand_without_navigating_or_applying_drafts ... ok
test app::transition_context_tests::explicit_behavior_internal_and_process_roots_keep_their_workspace_without_creating_a_view ... ok
test app::transition_context_tests::explicit_destination_is_honored_and_ordinary_work_transition_still_places_in_architecture ... ok
test app::transition_context_tests::machine_and_typed_action_transitions_resolve_the_owner_and_reusing_that_context_retains_camera ... ok
test app::transition_context_tests::rejected_source_writeback_keeps_review_and_navigation_and_invalid_draft_still_blocks_start ... ok
test app::transition_context_tests::scenario_transition_focuses_requested_counterpart_and_preserves_unrelated_views_in_both_directions ... ok
test app::view_copy_tests::copying_architecture_keeps_architecture_even_with_a_retained_state_view ... ok
test app::view_copy_tests::copying_the_current_state_view_uses_its_own_identity_and_is_one_source_undo ... ok
test app::view_copy_tests::duplicate_rejection_preserves_an_incomplete_source_buffer ... ok
test app::view_copy_tests::duplicate_rejection_preserves_invalid_property_and_pending_behavior_drafts ... ok
test app::view_copy_tests::stale_copy_does_not_apply_an_unrelated_valid_property_draft ... ok
test behavior::contextual_source_tests::contextual_source_app_checkpoint_restores_inner_raw_draft_without_model_adoption ... ok
test behavior::contextual_source_tests::contextual_source_app_empty_actions_and_child_open_refuse_other_raw_editors ... ok
test behavior::contextual_source_tests::contextual_source_app_modal_escape_then_child_back_then_parent_cancel_preserve_accepted_source ... ok
test behavior::contextual_source_tests::contextual_source_back_remains_available_after_owner_deletion_and_with_dirty_editors ... ok
test behavior::contextual_source_tests::contextual_source_back_retains_parent_and_rejects_late_child_event ... ok
test behavior::contextual_source_tests::contextual_source_default_consumer_name_has_stable_alias_and_correlated_selection ... ok
test behavior::contextual_source_tests::contextual_source_deleted_owner_view_retains_draft_instead_of_panicking_or_using_fallback ... ok
test behavior::contextual_source_tests::contextual_source_empty_history_reports_no_change_and_success_requires_a_real_history_step ... ok
test behavior::contextual_source_tests::contextual_source_existing_choice_prunes_staged_dependency ... ok
test behavior::contextual_source_tests::contextual_source_failed_source_budget_preserves_both_drafts_and_accepted_bytes ... ok
test behavior::contextual_source_tests::contextual_source_incomplete_recovered_kind_reports_error_without_panicking ... ok
test behavior::contextual_source_tests::contextual_source_inserts_work_on_the_exact_guarded_link_and_refuses_exchange_identity_conflict ... ok
test behavior::contextual_source_tests::contextual_source_lifelines_stage_exact_separate_records_and_one_history_entry ... ok
test behavior::contextual_source_tests::contextual_source_machine_before_any_owner_creates_optional_view_atomically ... ok
test behavior::contextual_source_tests::contextual_source_mounted_small_editor_keeps_back_and_use_outside_field_scroll ... ok
test behavior::contextual_source_tests::contextual_source_nested_semantic_parent_is_explicit_and_revalidated ... ok
test behavior::contextual_source_tests::contextual_source_new_callee_lifeline_preserves_caller_bindings_as_an_explicit_warning ... ok
test behavior::contextual_source_tests::contextual_source_old_empty_action_cannot_open_a_previous_owner_or_layer ... ok
test behavior::contextual_source_tests::contextual_source_original_document_remains_bound_after_back_or_choosing_existing ... ok
test behavior::contextual_source_tests::contextual_source_owner_first_can_return_to_an_unnamed_machine_without_losing_source ... ok
test behavior::contextual_source_tests::contextual_source_recovery_keeps_inner_raw_fields_and_refuses_deleted_or_changed_owner ... ok
test behavior::contextual_source_tests::contextual_source_second_system_and_role_machine_owner_refuse_without_fallback ... ok
test behavior::contextual_source_tests::contextual_source_work_uses_reserved_contribution_and_link_ids_and_one_undo ... ok
test behavior::creation::app_tests::app_choosing_another_behavior_or_layer_cannot_commit_a_creation_draft ... ok
test behavior::creation::app_tests::app_creation_opens_the_actual_new_owner_instead_of_first_or_previously_active_behavior ... ok
test behavior::creation::app_tests::app_first_captured_escape_dismisses_file_or_pending_overlay_before_creation ... ok
test behavior::creation::app_tests::app_lesson_request_cancel_retains_creation_then_escape_discards_only_the_draft ... ok
test behavior::creation::app_tests::app_machine_behavior_submit_opens_its_opted_in_view_as_one_undoable_transaction ... ok
test behavior::creation::app_tests::app_new_never_auto_applies_valid_or_invalid_property_and_source_drafts ... ok
test behavior::creation::app_tests::app_recovered_rootless_sa_creation_retains_layer_ids_and_other_raw_drafts ... ok
test behavior::creation::app_tests::app_stale_layer_open_never_starts_or_replaces_a_draft ... ok
test behavior::creation::tests::all_four_viewpoints_are_explicit_and_survive_source_history_reopen ... ok
test behavior::creation::tests::cancel_and_illegal_family_layer_switches_never_create_model_objects ... ok
test behavior::creation::tests::corrupted_recovery_and_reserved_identity_collision_refuse_without_repairing_raw_values ... ok
test behavior::creation::tests::creation_selection_rejects_changed_scenario_body_and_post_creation_operations ... ok
test behavior::creation::tests::machine_requires_valid_owner_and_first_view_adds_no_region_or_state ... ok
test behavior::creation::tests::mounted_creation_keeps_actions_visible_and_renders_only_six_owner_candidates ... ok
test behavior::creation::tests::oa_process_and_sa_chain_keep_exact_names_root_ownership_and_one_history_entry ... ok
test behavior::creation::tests::optional_context_collapses_without_losing_authored_reference_or_raw_search ... ok
test behavior::creation::tests::owner_search_is_name_ordered_filtered_and_page_sized_not_a_catalog ... ok
test behavior::creation::tests::post_commit_selection_is_correlated_with_exact_created_behavior_and_view ... ok
test behavior::creation::tests::recovery_preserves_exact_raw_inputs_reserved_ids_and_revalidates_stale_owner ... ok
test behavior::creation::tests::rejected_source_transaction_keeps_draft_and_every_accepted_source_byte ... ok
test behavior::creation::tests::repeated_owner_names_remain_distinguishable_by_searchable_parent_context_and_alias ... ok
test behavior::direct_canvas_tests::direct_alt_execution_stops_each_operand_at_its_reply_and_marks_open_operand ... ok
test behavior::direct_canvas_tests::direct_bounds_change_during_held_drag_never_commits_old_slot ... ok
test behavior::direct_canvas_tests::direct_clicked_occurrence_capture_cancels_on_view_and_context_changes ... ok
test behavior::direct_canvas_tests::direct_context_escape_unfocus_and_pending_form_cancel_gestures ... ok
test behavior::direct_canvas_tests::direct_drag_and_click_click_use_ordered_sources_and_publish_once ... ok
test behavior::direct_canvas_tests::direct_execution_span_ends_at_its_correlated_reply_and_marks_an_open_call ... ok
test behavior::direct_canvas_tests::direct_scroll_resize_and_bounds_changes_cancel_captured_slots ... ok
test behavior::direct_canvas_tests::direct_scrolled_canvas_maps_raw_pointer_events_to_the_visible_slot ... ok
test behavior::direct_canvas_tests::direct_selected_handle_reorders_and_hits_keep_semantic_identity ... ok
test behavior::direct_canvas_tests::reused_exchange_messages_display_their_distinct_occurrence_names ... ok
test behavior::scenario::data_contract_tests::large_payload_has_one_editor_with_reachable_field_and_authored_pages ... ok
test behavior::scenario::data_contract_tests::recursive_browsing_up_and_root_keep_values_and_report_the_depth_limit ... ok
test behavior::scenario::data_contract_tests::recursive_value_focus_exposes_authored_leaf_and_phase_changes_retain_surviving_keys ... ok
test behavior::scenario::data_contract_tests::reply_call_picker_previews_the_same_value_reset_as_selecting_another_exchange ... ok
test behavior::scenario::data_contract_tests::scenario_form_commits_two_reused_record_values_and_correlated_reply_atomically ... ok
test behavior::scenario::direct_tests::direct_busy_save_keeps_observed_scroll_current_for_the_next_pointer_gesture ... ok
test behavior::scenario::direct_tests::direct_clicked_occurrence_rejects_stale_slots_and_retains_recoverable_drafts ... ok
test behavior::scenario::direct_tests::direct_clicked_occurrences_use_root_and_operand_slots_with_exact_source_history ... ok
test behavior::scenario::direct_tests::direct_exchange_compatibility_browsing_preserves_final_slot_validation ... ok
test behavior::scenario::direct_tests::direct_exchange_picker_is_bounded_and_browsing_keeps_pending_values ... ok
test behavior::scenario::direct_tests::direct_five_hundred_exchange_choice_render_probe ... ok
test behavior::scenario::direct_tests::direct_form_keeps_the_same_canvas_in_the_widget_tree ... ok
test behavior::scenario::direct_tests::direct_middle_pair_insertion_is_one_exact_source_and_model_undo ... ok
test behavior::scenario::direct_tests::direct_operand_pair_keeps_parent_sequence_and_cannot_reorder_across_operands ... ok
test behavior::scenario::direct_tests::direct_reply_choices_cache_keeps_typing_fast_and_revalidates_changed_contexts ... ok
test behavior::scenario::direct_tests::direct_reply_choices_validate_the_actual_slot_and_reorder_rejects_reverse_order ... ok
test behavior::scenario::direct_tests::direct_scenario_reference_navigation_blocks_pending_drafts_and_stale_contexts ... ok
test behavior::scenario::direct_tests::direct_scenario_reference_navigation_retains_each_exact_caller_without_history ... ok
test behavior::scenario::direct_tests::direct_scenario_reference_return_survives_rename_and_rejects_deleted_or_changed_use ... ok
test behavior::scenario::operation_tests::operation_gui_async_picker_uses_request_root_and_nested_directions_without_erasing_rejected_values ... ok
test behavior::scenario::operation_tests::operation_gui_selects_two_parameterless_allocations_without_inventing_refinement_and_reply_derives_call ... ok
test behavior::scenario::operation_tests::operation_gui_unresolved_and_disabled_selection_recovery_preserves_rejected_raw_values ... ok
test behavior::scenario::tests::fragment_operands_accept_paired_messages_through_normal_destination_picker ... ok
test behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent ... ok
test behavior::scenario::tests::invalid_lifecycle_edit_keeps_draft_and_timer_has_no_global_exchange ... ok
test behavior::scenario::tests::lifeline_picker_uses_core_viewpoint_contract ... ok
test behavior::scenario::tests::reverse_communication_canvas_choices_and_correlated_reply_share_core_direction ... ok
test behavior::scenario::tests::scenario_reuse_requires_explicit_compatible_bindings ... ok
test behavior::scenario::tests::tagged_scenario_commit_is_not_redirected_by_other_editor_events ... ok
test behavior::scenario::workspace::tests::scenario_workspace_allocates_remaining_height_and_pins_actions_at_minimum_and_wide_sizes ... ok
test behavior::scenario::workspace::tests::scenario_workspace_caller_restores_actual_mounted_canvas_and_shelf_with_camera ... ok
test behavior::scenario::workspace::tests::scenario_workspace_canvas_and_form_scroll_survive_disclosures_focus_width_and_resize ... ok
test behavior::scenario::workspace::tests::scenario_workspace_choosing_tools_preserves_valid_and_invalid_pending_editors ... ok
test behavior::scenario::workspace::tests::scenario_workspace_fit_reobserves_same_sized_owner_and_document_changes ... ok
test behavior::scenario::workspace::tests::scenario_workspace_fit_uses_measured_inner_viewport_and_rejects_nonfinite_inputs ... ok
test behavior::scenario::workspace::tests::scenario_workspace_open_and_back_restore_owner_and_mounted_scroll_after_preselection ... ok
test behavior::scenario::workspace::tests::scenario_workspace_scaled_and_scrolled_scene_keeps_clicked_slots_and_message_endpoints ... ok
test behavior::scenario::workspace::tests::scenario_workspace_scaled_nested_occurrences_and_reorder_keep_exact_sequence_identity ... ok
test behavior::scenario::workspace::tests::scenario_workspace_viewport_events_are_passive_guarded_and_do_not_apply_raw_forms ... ok
test behavior::scenario::workspace::tests::scenario_workspace_whole_app_canvas_tree_survives_pending_shelves_and_focus ... ok
test behavior::scenario_scroll::tests::direct_scenario_caller_restores_mounted_scroll_once_with_clamping_and_app_receipt ... ok
test behavior::scenario_scroll::tests::direct_scenario_restore_cannot_scroll_another_document_owner_or_process_view ... ok
test behavior::scenario_scroll::tests::direct_scroll_mounted_identity_resets_navigation_but_preserves_edits_before_first_report ... ok
test behavior::scenario_scroll::tests::direct_scroll_observer_reports_actual_initial_clamped_and_remounted_offsets_once ... ok
test behavior::scenario_scroll::tests::independent_process_owner_change_resets_actual_scroll_offsets ... ok
test behavior::source_draft::layout_tests::contextual_source_layout_initial_essentials_fit_short_composed_host_with_real_paragraphs ... ok
test behavior::source_draft::layout_tests::contextual_source_layout_long_parent_wraps_after_visible_name_without_losing_raw_data ... ok
test behavior::source_draft::layout_tests::contextual_source_layout_visible_kind_click_keeps_choice_explicit_and_name_input_works ... ok
test behavior::state_canvas::tests::context_menu_keeps_window_anchor_and_explicit_placement_identity ... ok
test behavior::state_canvas::tests::context_tool_and_pending_form_changes_cancel_mutating_gestures ... ok
test behavior::state_canvas::tests::creation_uses_the_explicit_deepest_owner_and_never_a_fallback_ancestor ... ok
test behavior::state_canvas::tests::drag_uses_ordered_release_at_each_zoom_and_moves_descendants_in_one_undo ... ok
test behavior::state_canvas::tests::escape_and_view_switch_discard_the_armed_transition_source ... ok
test behavior::state_canvas::tests::internal_rows_and_pseudostate_hits_use_shared_persisted_geometry ... ok
test behavior::state_canvas::tests::ordered_stationary_click_does_not_move_on_later_motion_in_the_same_batch ... ok
test behavior::state_canvas::tests::pan_is_button_scoped_read_only_and_hover_does_not_reproject_the_scene ... ok
test behavior::state_canvas::tests::pseudostate_names_avoid_rightward_and_downward_routes_and_share_hit_bounds ... ok
test behavior::state_canvas::tests::relayout_does_not_turn_a_transition_click_into_a_drag_or_pan ... ok
test behavior::state_canvas::tests::selected_endpoint_reconnect_preserves_identity_and_requires_handle_motion ... ok
test behavior::state_canvas::tests::selection_relayout_does_not_move_nodes_or_change_drag_distance ... ok
test behavior::state_canvas::tests::stacked_symbol_names_avoid_each_other_and_are_independent_of_input_order ... ok
test behavior::state_canvas::tests::transition_supports_click_click_and_drag_without_coalesced_accidental_edges ... ok
test behavior::state_canvas::tests::typed_state_actions_are_named_selectable_rows_before_internal_transitions_and_regions ... ok
test behavior::state_canvas::tests::viewport_uses_full_canvas_coordinates_and_republishes_for_a_new_context ... ok
test behavior::state_edit::tests::an_empty_machine_has_an_explicit_visible_owner_for_first_region_creation ... ok
test behavior::state_edit::tests::connect_preserves_self_loops_and_rejects_hidden_or_incompatible_vertices ... ok
test behavior::state_edit::tests::creation_places_missing_ancestry_and_unfolds_existing_owners_atomically ... ok
test behavior::state_edit::tests::every_context_component_and_invalid_ownership_are_checked_before_planning ... ok
test behavior::state_edit::tests::placing_existing_content_and_moving_a_folded_group_preserve_other_views_and_semantics ... ok
test behavior::state_edit::tests::reconnect_preserves_the_complete_record_and_replaces_cardinality_in_place ... ok
test behavior::state_edit::tests::view_initializes_only_its_machine_in_one_source_and_model_history_entry ... ok
test behavior::states::tests::internal_choice_targets_self_and_edit_preserves_identity_and_description ... ok
test behavior::states::tests::invalid_pseudo_trigger_keeps_draft_and_does_not_create_orphan_event ... ok
test behavior::states::tests::selected_composite_owns_new_region_and_history_uses_selected_region ... ok
test behavior::states::tests::timeout_and_work_trigger_commit_together_roundtrip_and_undo ... ok
test behavior::tests::failed_document_commit_retains_typed_transition_and_time_event_for_repair ... ok
test behavior::tests::legacy_process_and_chain_keep_their_ordered_exchange_scene ... ok
test behavior::tests::one_behavior_form_survives_start_edit_and_unrelated_cancel_until_commit ... ok
test behavior::tests::recovery_preserves_distinct_qualified_value_paths_and_rejects_invalid_payload_atomically ... ok
test behavior::tests::recovery_retains_each_incomplete_behavior_form_without_executing_it ... ok
test behavior::tests::selecting_state_transition_keeps_its_behavior_context ... ok
test behavior::topology::contextual::tests::qualified_link_gui_deleted_transient_selection_does_not_seed_or_hide_retained_authored_endpoint ... ok
test behavior::topology::contextual::tests::qualified_link_gui_nested_preview_folds_only_the_exact_reference_instance ... ok
test behavior::topology::contextual::tests::qualified_link_gui_rejected_endpoint_keeps_exact_raw_intent_after_recovery ... ok
test behavior::topology::contextual::tests::qualified_link_gui_repeated_sources_remain_distinct_and_apply_has_exact_source_history ... ok
test behavior::topology::contextual::tests::qualified_link_gui_scope_paging_and_search_reach_tail_beyond_512_without_losing_endpoints ... ok
test behavior::topology::contextual_routing::tests::contextual_route_native_x_to_first_b_keeps_visible_arrow_above_background_and_clear_of_other_references ... ok
test behavior::topology::contextual_routing::tests::contextual_route_nested_visible_hidden_and_parallel_paths_keep_exact_addresses_and_legacy_routes ... ok
test behavior::topology::contextual_routing::tests::contextual_route_shared_anchor_preserves_selected_direct_reconnect_at_fit_and_full_scale ... ok
test behavior::topology::direct_tests::direct_process_append_preserves_existing_order_and_rejects_incompatible_exchange ... ok
test behavior::topology::direct_tests::direct_process_controls_allow_incomplete_work_and_preserve_branch_semantics ... ok
test behavior::topology::direct_tests::direct_process_empty_first_and_second_exchange_keep_the_same_interactive_renderer ... ok
test behavior::topology::direct_tests::direct_process_imported_order_is_projected_without_mutation_and_first_canvas_edit_is_atomic ... ok
test behavior::topology::direct_tests::direct_process_incompatible_imported_order_rejects_conversion_without_losing_draft ... ok
test behavior::topology::direct_tests::direct_process_nested_source_reopen_and_api_command_use_one_transaction ... ok
test behavior::topology::direct_tests::direct_process_oa_sa_repeated_occurrences_share_sources_and_split_one_guarded_link ... ok
test behavior::topology::direct_tests::direct_process_palette_preserves_fit_and_manual_camera ... ok
test behavior::topology::direct_tests::direct_process_pending_form_diff_retains_the_canvas_scroll_state ... ok
test behavior::topology::direct_tests::direct_process_production_click_click_drag_insert_and_scroll_coordinates ... ok
test behavior::topology::direct_tests::direct_process_production_endpoint_and_peer_reorder_handles_publish_exact_identity ... ok
test behavior::topology::direct_tests::direct_process_production_stale_focus_scroll_bounds_and_pending_cancel ... ok
test behavior::topology::direct_tests::direct_process_readable_default_fit_expansion_and_bounded_choices ... ok
test behavior::topology::direct_tests::direct_process_real_picker_stays_bounded_and_search_keeps_selection ... ok
test behavior::topology::direct_tests::direct_process_reconnect_delete_and_reorder_preserve_other_paths_and_sources ... ok
test behavior::topology::direct_tests::direct_process_reuse_preview_is_local_expandable_and_recursive_sources_are_rejected ... ok
test behavior::topology::direct_tests::direct_process_scaled_control_and_link_gestures_use_visible_positions ... ok
test behavior::topology::direct_tests::direct_process_specific_parallel_link_and_incompatible_adjacency ... ok
test behavior::topology::direct_tests::direct_process_three_ordered_exchanges_preserve_outer_paths_on_insertion ... ok
test behavior::topology::tests::cycle_projection_terminates_and_retains_actual_links ... ok
test behavior::topology::tests::empty_process_can_start_through_normal_authoring_events ... ok
test behavior::topology::tests::fitting_a_branch_keeps_all_nodes_visible_and_selection_uses_scaled_coordinates ... ok
test behavior::topology::tests::guarded_branch_is_one_transaction_with_distinct_source_identities ... ok
test behavior::topology::tests::insertion_picker_only_offers_work_matching_adjacent_exchanges ... ok
test behavior::topology::tests::legacy_branch_insertion_replaces_only_the_selected_implied_link ... ok
test behavior::topology::tests::legacy_edit_preserves_order_and_new_work_in_one_undo ... ok
test behavior::topology::tests::long_engineering_identifiers_stay_inside_label_width ... ok
test behavior::topology::tests::process_fit_canvas_selection_ignores_retained_ordered_page_scroll ... ok
test behavior::topology::tests::process_fit_disclosures_and_focus_preserve_rejected_raw_draft_and_accepted_source ... ok
test behavior::topology::tests::process_fit_uses_measured_height_and_reports_minimum_without_changing_manual_zoom ... ok
test behavior::topology::tests::reusable_preview_preserves_identity_and_filters_recursive_sources ... ok
test behavior::topology::tests::stale_or_invalid_submit_preserves_inputs_and_creates_nothing ... ok
test behavior::topology::tests::unlinked_contributions_do_not_gain_fictional_edges ... ok
test behavior::topology::view::layout_tests::direct_process_pending_editor_uses_available_height_and_keeps_actions_visible ... ok
test behavior::topology::view::layout_tests::process_fit_layout_disclosures_and_pending_editor_keep_real_manual_canvas_scroll ... ok
test behavior::topology::view::layout_tests::process_fit_layout_measures_remaining_canvas_with_details_forms_and_window_resize ... ok
test behavior::topology::view::layout_tests::process_fit_whole_app_focus_and_disclosures_retain_canvas_tree_with_pending_raw_form ... ok
test connection_edit::tests::cancel_navigation_revision_and_dirty_drafts_cannot_commit_a_stale_connection ... ok
test connection_edit::tests::visible_endpoint_drawing_commits_ports_and_exchange_once_with_exact_history ... ok
test connection_tool::tests::boundary_candidates_match_core_orientation_and_reject_same_owner_or_mixed_kind ... ok
test connection_tool::tests::boundary_feasibility_keeps_interface_warnings_and_final_carried_item_checks ... ok
test connection_tool::tests::boundary_feasibility_rejects_dangling_identity_in_a_malformed_element_map ... ok
test connection_tool::tests::direct_connections_share_exact_source_history_and_model_parity ... ok
test connection_tool::tests::explicit_function_ports_keep_owners_contracts_and_do_not_invent_carried_items ... ok
test connection_tool::tests::final_command_validation_rejects_invalid_models_without_mutation ... ok
test connection_tool::tests::function_cards_use_unique_reuse_and_atomic_generation_when_ambiguous ... ok
test connection_tool::tests::mismatched_port_owners_layers_and_contract_kinds_are_not_candidates ... ok
test connection_tool::tests::operational_communication_uses_participants_without_creating_ports ... ok
test connection_tool::tests::operational_interaction_targets_only_distinct_oa_activities ... ok
test context_menu::tests::a_new_context_token_cannot_reuse_the_previous_mouse_press_or_scroll ... ok
test context_menu::tests::actions_area_does_not_swallow_first_independent_click_after_overlay_consumed_its_release ... ok
test context_menu::tests::anchors_outside_the_window_and_nonfinite_input_stay_bounded ... ok
test context_menu::tests::clicking_disabled_or_dragging_off_an_action_never_executes_it ... ok
test context_menu::tests::coalesced_dismissal_release_does_not_swallow_the_next_independent_click ... ok
test context_menu::tests::empty_and_disabled_only_menus_still_capture_keys_and_escape_closes ... ok
test context_menu::tests::keyboard_skips_headers_separators_and_disabled_actions_and_invokes_once ... ok
test context_menu::tests::outside_dismissal_consumes_press_and_release_across_controlled_close ... ok
test context_menu::tests::reconstructed_overlay_uses_retained_layout_for_rows_and_hit_testing ... ok
test context_menu::tests::retained_overlay_layout_keeps_measured_width_and_scrollbar_after_reconstruction ... ok
test context_menu::tests::tall_menu_clamps_to_viewport_and_keyboard_wheel_and_scrollbar_reach_the_end ... ok
test data_values::tests::phase_choices_keep_reused_record_addresses_distinct ... ok
test data_values::tests::recursive_picker_starts_with_distinct_leaf_names_and_sorts_them ... ok
test data_values::tests::recursive_records_can_be_drilled_into_and_valid_imported_paths_resolve ... ok
test data_values::tests::reference_parameter_stops_descent_and_unspecified_direction_remains_visible ... ok
test data_values::tests::roots_and_one_hop_children_do_not_expand_unrelated_payload_branches ... ok
test data_view::tests::allocation_rows_edit_relationship_identity_and_remove_only_that_allocation ... ok
test data_view::tests::association_creation_is_a_separate_relation_with_editable_end_contracts ... ok
test data_view::tests::browsing_pages_preserves_invalid_numeric_draft_and_inherited_allocation_identity ... ok
test data_view::tests::contextual_data_actions_use_typed_defaults_and_one_undo ... ok
test data_view::tests::large_inherited_dictionary_has_bounded_widgets_and_every_original_field_is_reachable ... ok
test diagnostic_input::tests::already_captured_terminal_cancels_child_without_activation_or_lingering_press ... ok
test diagnostic_input::tests::captured_terminal_cancellation_preserves_same_publication_focusable_child_state ... ok
test diagnostic_input::tests::current_primary_and_related_mouse_clicks_survive_same_publication_diff ... ok
test diagnostic_input::tests::current_touch_activates_primary_and_related_and_cancel_does_not_activate ... ok
test diagnostic_input::tests::fresh_mouse_press_after_missing_stale_release_can_activate_current_row ... ok
test diagnostic_input::tests::hidden_zero_height_scroller_delivers_cancelled_mouse_and_touch_terminals_to_guard ... ok
test diagnostic_input::tests::hidden_zero_size_list_consumes_release_outside_old_bounds_once ... ok
test diagnostic_input::tests::missed_press_is_ignored_and_dragging_release_outside_does_not_activate ... ok
test diagnostic_input::tests::negative_control_iced_button_retargets_a_press_after_plain_tree_diff ... ok
test diagnostic_input::tests::negative_control_plain_focusable_row_migrates_activation_to_replacement ... ok
test diagnostic_input::tests::negative_control_removing_unguarded_rows_exposes_background_release ... ok
test diagnostic_input::tests::outer_scroll_offset_survives_same_and_changed_publications ... ok
test diagnostic_input::tests::replaced_primary_and_related_rows_consume_stale_release_then_accept_new_click ... ok
test diagnostic_input::tests::replaced_touch_consumes_lift_or_cancel_even_when_hidden ... ok
test diagnostic_input::tests::same_publication_missing_terminal_recovers_on_fresh_mouse_or_touch_down ... ok
test diagnostic_input::tests::same_publication_new_visit_cancels_armed_rows_without_a_hidden_tree_frame ... ok
test diagnostic_input::tests::same_publication_preserves_focus_but_replacement_never_inherits_activation ... ok
test diagnostic_input::tests::stale_release_does_not_bubble_to_real_background_controls ... ok
test diagnostic_input::tests::stale_touch_release_does_not_disarm_a_new_current_gesture ... ok
test diagnostic_input::tests::unrelated_finger_or_mouse_release_cannot_complete_another_fingers_press ... ok
test diagram::lifecycle_tests::menu_reset_and_draw_use_fresh_open_context ... ok
test diagram::lifecycle_tests::middle_and_arrow_panning_preserve_source_and_history ... ok
test diagram::lifecycle_tests::motion_after_release_must_not_move_clicked_port ... ok
test diagram::lifecycle_tests::motion_after_source_click_release_must_not_create_connection ... ok
test diagram::pointer_tests::coalesced_fe_ports_commit_once_through_app_and_source_history ... ok
test diagram::pointer_tests::coalesced_port_drag_commits_once_through_app_and_source_history ... ok
test diagram::pointer_tests::drag_from_already_selected_stationary_port_keeps_source_between_batches ... ok
test diagram::pointer_tests::menu_captured_motion_must_not_turn_following_click_into_old_port_drag ... ok
test diagram::pointer_tests::modal_and_stale_epoch_block_queued_connection_and_port_commits ... ok
test diagram::port_hit_tests::coincident_ports_keep_selection_then_use_stable_identity ... ok
test diagram::port_hit_tests::nearest_port_center_wins_on_all_borders_and_zoom_levels ... ok
test diagram::port_hit_tests::nested_owner_palette_selection_drag_and_context_menu_pick_the_same_port ... ok
test diagram::port_labels::tests::leaving_and_reentering_keeps_suppression_until_each_held_button_releases ... ok
test diagram::port_labels::tests::menu_epoch_clears_suppression_when_the_overlay_consumes_release ... ok
test diagram::port_labels::tests::outside_presses_do_not_suppress_and_cancel_or_focus_loss_clear_held_buttons ... ok
test diagram::port_labels::tests::passive_layer_leaves_port_drag_selection_and_commit_with_the_interactive_canvas ... ok
test diagram::tests::association_end_contracts_share_svg_geometry_and_select_without_moving_name_label ... ok
test diagram::tests::bend_gestures_use_screen_hit_radius_and_commit_one_undo_at_three_zooms ... ok
test diagram::tests::coincident_line_hit_retains_the_selected_connection ... ok
test diagram::tests::connection_gestures_pick_real_ports_and_commit_coalesced_drag_at_every_zoom ... ok
test diagram::tests::detached_label_selects_connection_and_occluding_card_owns_its_hit ... ok
test diagram::tests::dragging_a_child_previews_the_same_enclosure_and_ports_as_commit ... ok
test diagram::tests::fast_drags_commit_the_release_cursor_without_a_final_motion_event ... ok
test diagram::tests::implicit_port_click_selects_semantics_and_drag_preview_svg_share_anchors ... ok
test diagram::tests::route_cache_ignores_pan_zoom_and_cancelled_drag_cannot_commit ... ok
test diagram::tests::routed_svg_has_same_polyline_label_and_bounds_as_canvas_scene ... ok
test diagram::tests::svg_distinguishes_inferred_work_allocation_from_direct_allocation ... ok
test diagram::tests::svg_preserves_visible_exchange_labels_and_capability_stereotypes ... ok
test diagram::tests::typed_function_glyphs_and_unoriented_standard_connections_have_distinct_svg ... ok
test diagram::view_options_tests::communication_svg_uses_saved_visibility_labels_and_direction ... ok
test document::alias_rename::tests::each_identity_family_changes_only_authored_alias_roles_and_one_history_entry ... ok
test document::alias_rename::tests::equal_bytes_undo_replay_cross_document_and_exhausted_revision_refuse ... ok
test document::alias_rename::tests::exact_history_capacity_admits_immediate_undo_and_rejects_larger_candidate ... ok
test document::alias_rename::tests::highlighted_keyword_alias_is_valid_without_normalizing_input ... ok
test document::alias_rename::tests::invalid_and_identical_aliases_preserve_live_state_and_redo ... ok
test document::alias_rename::tests::mint_and_commit_refuse_exhausted_or_inconsistent_live_history_estimate ... ok
test document::alias_rename::tests::mutable_public_preview_copies_cannot_change_prepared_authority ... ok
test document::alias_rename::tests::preview_retains_latest_saved_baseline_and_recovery_state ... ok
test document::save_as_tests::save_as_preserves_explicit_source_entry_changes_in_history ... ok
test document::save_as_tests::save_as_rebases_uniform_history_without_an_undo_step_or_lost_redo ... ok
test document::save_as_tests::save_as_rejects_included_filename_collisions_in_past_and_future_without_mutation ... ok
test document::save_as_tests::save_as_rejects_stale_or_content_changing_receipt_atomically ... ok
test document::tests::accepted_history_keeps_the_latest_hundred_complete_snapshots ... ok
test document::tests::altered_compiled_model_or_index_is_rejected_without_mutation ... ok
test document::tests::asynchronous_save_marks_its_snapshot_without_cleaning_later_edits ... ok
test document::tests::byte_budget_trims_oldest_history_without_discarding_a_large_current ... ok
test document::tests::cached_view_index_tracks_accepted_creation_undo_and_redo ... ok
test document::tests::comment_and_semantic_history_restore_exact_bytes_and_branch_together ... ok
test document::tests::creation_selects_the_single_uuid_persisted_in_source ... ok
test document::tests::invalid_project_is_rejected_before_format_can_normalize_it ... ok
test document::tests::nested_cross_file_reparent_and_source_edit_share_exact_history ... ok
test document::tests::no_op_command_or_source_apply_preserves_history_revision_and_redo ... ok
test document::tests::omitted_id_stabilization_remains_dirty_until_exact_source_is_saved ... ok
test document::tests::recreated_equal_record_does_not_inherit_deleted_source_ownership ... ok
test document::tests::rejected_compile_command_and_writeback_preserve_state_and_redo ... ok
test explorer::tests::collapse_and_search_retain_context_without_changing_collapse_state ... ok
test explorer::tests::deep_containment_and_search_keep_the_full_path_without_recursion ... ok
test explorer::tests::equal_names_have_stable_alias_and_identity_tie_breakers ... ok
test explorer::tests::perspective_isolation_and_allocations_do_not_change_containment ... ok
test explorer::tests::prefix_names_cannot_separate_a_parent_from_its_children ... ok
test forms::data_fields::tests::defaults_distinguish_absent_empty_and_typed_literals_with_escaped_unicode ... ok
test forms::data_fields::tests::field_browser_pages_every_direct_field_without_flattening_other_records ... ok
test forms::data_fields::tests::independent_review_combined_take_type_informs_actual_default_form_in_both_directions ... ok
test forms::data_fields::tests::numeric_bound_drafts_keep_partial_and_full_precision_values_out_of_accepted_state ... ok
test forms::data_fields::tests::selecting_qualified_path_preserves_expression_typed_before_the_next_render ... ok
test forms::data_fields::tests::semantic_reference_choices_follow_selected_mechanism_and_revert_on_keep ... ok
test forms::data_fields::tests::supertype_picker_excludes_descendants_and_keeps_original_inherited_field_identity ... ok
test forms::history_fields::tests::history_absent_baseline_and_empty_history_use_explicit_facts_and_exact_document_history ... ok
test forms::history_fields::tests::history_clear_discards_inactive_invalid_constructors_before_reusing_the_same_row ... ok
test forms::history_fields::tests::history_compound_value_and_constructor_variants_are_editable_without_live_context ... ok
test forms::history_fields::tests::history_deleted_keys_and_observation_uuids_remain_exact_and_duplicate_history_rejects ... ok
test forms::history_fields::tests::history_every_descriptor_fact_choice_matches_actual_closed_types_and_source_contract ... ok
test forms::history_fields::tests::history_exact_strings_do_not_confuse_uuid_shaped_prose_or_literal_keys_with_references ... ok
test forms::history_fields::tests::history_invalid_numbers_survive_constructor_switch_reorder_removal_and_recovery ... ok
test forms::history_fields::tests::history_missing_semantic_field_can_be_added_and_removed_without_touching_prose_or_live_objects ... ok
test forms::history_fields::tests::history_nested_optional_number_events_switch_absent_present_and_recover_invalid_raw ... ok
test forms::history_fields::tests::history_nested_uuid_and_list_events_preserve_present_values_and_tagged_item_branches ... ok
test forms::history_fields::tests::history_optional_uuid_and_text_seed_absence_without_inventing_observations ... ok
test forms::history_fields::tests::history_primitive_type_choices_remain_visible_inside_the_tagged_union ... ok
test forms::history_fields::tests::history_retained_text_constructors_follow_exact_mode_without_changing_the_observation ... ok
test forms::port_fields::tests::all_demo_records_roundtrip_through_graphical_and_escaped_string_drafts ... ok
test forms::port_fields::tests::boundary_choices_honor_draft_direction_same_kind_and_direct_interface_items ... ok
test forms::port_fields::tests::contract_choices_follow_owner_and_never_offer_legacy_or_oa_typed_ports ... ok
test forms::port_fields::tests::failed_shape_keeps_incomplete_text_and_saved_contract_payloads ... ok
test forms::port_fields::tests::functional_endpoints_require_owner_direction_and_items_but_retain_bad_current_choice ... ok
test forms::port_fields::tests::interface_roles_offer_participants_and_component_ports_independent_of_orientation ... ok
test forms::port_fields::tests::port_allocation_choices_use_actual_owner_direction_and_ignore_edited_relation ... ok
test forms::port_fields::tests::standard_switch_retains_incompatible_orientation_until_explicit_repair ... ok
test forms::port_fields::tests::switching_function_direction_preserves_invalid_items_and_each_authored_payload ... ok
test forms::tests::data_and_port_choices_are_typed_but_retain_invalid_current_values ... ok
test forms::tests::editing_allocation_offers_other_performers_without_counting_itself_twice ... ok
test forms::tests::moving_placement_and_changing_identity_is_one_lossless_undoable_edit ... ok
test forms::tests::parent_choices_reject_cycles_without_removing_clear_or_current_choice ... ok
test forms::tests::reply_and_reuse_forms_offer_semantically_compatible_references ... ok
test forms::tests::scenario_choices_respect_owner_and_exchange_layer ... ok
test forms::tests::semantic_port_group_choices_use_combined_owner_and_retain_invalid_transferred_items ... ok
test forms::tests::shared_perspective_change_keeps_payload_and_rejects_incompatible_dependencies ... ok
test forms::tests::state_observation_picker_keeps_work_lifelines_allocated_to_machine_owner ... ok
test forms::tests::state_placement_form_uses_draft_destination_membership_without_changing_other_views ... ok
test forms::tests::state_projection_form_keeps_string_variants_and_requires_a_typed_context ... ok
test forms::view_fields::tests::category_family_change_retains_members_until_explicit_correction ... ok
test forms::view_fields::tests::selective_view_property_apply_recovery_and_undo_preserve_semantics_and_empty_choices ... ok
test guide::tests::filtering_and_related_navigation_keep_selection_visible ... ok
test guide::tests::guide_topic_navigation_resets_only_article_and_same_topic_search_keeps_scroll ... ok
test guide::tests::search_finds_concepts_in_walkthroughs_and_api_reference ... ok
test home::tests::corrupt_future_and_oversized_history_are_preserved_with_usable_session_history ... ok
test home::tests::failed_metadata_replace_keeps_previous_history_and_reports_memory_only_entry ... ok
test home::tests::first_and_replaced_metadata_are_parseable_and_contain_no_model_bytes ... ok
test home::tests::forgotten_and_missing_files_never_change_the_model_or_other_entries ... ok
test home::tests::loading_missing_history_does_not_create_files_or_directories ... ok
test home::tests::malformed_entries_and_unknown_fields_never_become_open_requests ... ok
test home::tests::successful_local_history_is_bounded_ordered_deduplicated_and_durable ... ok
test home::tests::unavailable_location_can_reappear_on_refresh_without_losing_identity ... ok
test home::tests::walkthrough_uses_packaged_bundle_before_development_and_reports_missing_assets ... ok
test hosted::client::tests::hosted_endpoint_validation_redacts_secrets_and_preserves_proxy_paths ... ok
test hosted::client::tests::hosted_lost_publication_response_is_uncertain_without_retry ... ok
test hosted::client::tests::hosted_open_rejects_incoherent_envelopes_missing_etags_and_unstable_ids ... ok
test hosted::client::tests::hosted_oversized_local_bundle_is_rejected_before_network_admission ... ok
test hosted::client::tests::hosted_production_auth_proxy_prefix_and_located_rejection ... ok
test hosted::client::tests::hosted_production_roundtrip_preserves_comments_noops_and_conflicts ... ok
test hosted::client::tests::hosted_publication_race_keeps_receipt_identity_for_review ... ok
test hosted::client::tests::hosted_publication_retains_known_resource_after_failed_followup ... ok
test hosted::client::tests::hosted_put_preserves_an_opaque_etag_and_compiles_the_accepted_bundle ... ok
test hosted::client::tests::hosted_redirect_is_not_followed_or_retried_and_problem_tokens_are_redacted ... ok
test hosted::client::tests::hosted_response_limits_cover_declared_and_chunked_bodies ... ok
test hosted::client::tests::hosted_structured_mutation_failures_distinguish_precommit_rejections ... ok
test hosted::client::tests::hosted_timeout_and_disconnect_leave_mutation_outcomes_explicit ... ok
test model_menu::tests::add_bend_here_uses_context_point_and_one_source_aware_history_change ... ok
test model_menu::tests::late_menu_actions_do_not_dismiss_new_menu_or_cross_view_context ... ok
test model_menu::tests::menu_preserves_pending_properties_and_rejects_delayed_mutations ... ok
test model_menu::tests::pending_source_allows_file_navigation_but_disables_model_actions ... ok
test model_menu::tests::right_click_targets_actor_without_changing_selection_until_action ... ok
test model_menu::tests::show_from_explorer_places_unfolds_and_keeps_semantic_selection ... ok
test model_menu::tests::state_menu_folds_and_hides_only_its_captured_placement_and_rejects_stale_views ... ok
test model_menu::tests::state_menu_keeps_typed_creation_reachable_and_preserves_pending_properties ... ok
test navigation::tests::semantic_browser_finds_behavior_users_without_confusing_containment ... ok
test port_edit::tests::all_border_drags_commit_exact_preview_and_restore_automatic_anchors_in_history ... ok
test port_edit::tests::graphical_port_reparent_clears_old_anchors_in_the_same_history_operation ... ok
test port_preview::tests::functional_creation_identifies_new_and_reused_endpoints_and_owners ... ok
test port_preview::tests::legacy_split_discloses_endpoint_routing_item_origins_and_retained_evidence ... ok
test port_preview::tests::reused_boundary_shows_item_union_and_existing_allocating_facts ... ok
test port_preview::tests::synchronization_preview_exposes_contract_shrinkage_and_current_declaration_origin ... ok
test port_workflow::recovery_tests::port_recovery_retains_authored_contract_and_identity_but_rebuilds_preview ... ok
test port_workflow::tests::creating_typed_port_and_rejecting_stale_preview_preserve_drafts_and_identity ... ok
test port_workflow::tests::graphical_function_exchange_and_component_generation_commit_and_undo_whole_contracts ... ok
test port_workflow::tests::legacy_resolution_preserves_original_record_and_applies_as_one_undo ... ok
test port_workflow::tests::port_creation_keeps_owner_diagram_and_unfolds_in_the_same_undo ... ok
test port_workflow::tests::synchronization_uses_active_contract_instead_of_preserved_direction ... ok
test recovery::source5::tests::source5_fingerprint_preserves_historical_field_order_and_diagram_shape ... ok
test recovery::source5_tests::source4_checkpoint_remains_explicitly_unsupported_without_touching_disk ... ok
test recovery::source5_tests::source5_checkpoint_does_not_refresh_unrelated_clean_buffer_baseline ... ok
test recovery::source5_tests::source5_checkpoint_missing_identity_is_not_a_lossless_upgrade ... ok
test recovery::source5_tests::source5_checkpoint_old_diagram_property_shape_remains_editable ... ok
test recovery::source5_tests::source5_checkpoint_port_draft_replans_and_rejects_stale_base ... ok
test recovery::source5_tests::source5_checkpoint_preserves_dirty_invalid_text_and_baseline_exactly ... ok
test recovery::source5_tests::source5_checkpoint_preserves_distinct_unapplied_open_workspace ... ok
test recovery::source5_tests::source5_checkpoint_property_preserves_invalid_raw_input ... ok
test recovery::source5_tests::source5_checkpoint_upgrade_never_rewrites_checkpoint_or_origin ... ok
test recovery::source5_tests::source5_checkpoint_upgrades_only_header_and_clean_editor_baseline ... ok
test recovery::source5_tests::source5_checkpoint_workflow_rebinds_only_the_proven_old_revision ... ok
test recovery::source7_tests::source7_current_combined_contextual_and_operation_drafts_survive_without_execution ... ok
test recovery::source7_tests::source7_explicit_new_fields_cannot_enter_frozen_old_model_profiles ... ok
test recovery::source7_tests::source7_legacy_inactive_constructor_path_is_structural_but_raw_prose_is_not ... ok
test recovery::source7_tests::source7_legacy_profile_workflow_and_semantic_drafts_replan_with_exact_base ... ok
test recovery::source7_tests::source7_legacy_profiles_preserve_dirty_source_property_and_behavior_raw_fields ... ok
test recovery::source7_tests::source7_legacy_structural_intent_rejects_even_null_but_never_scans_raw_strings ... ok
test recovery::source7_tests::source7_legacy_view_selector_refuses_new_relation_kind_without_rewriting_checkpoint ... ok
test recovery::source7_tests::source7_recovers_nonempty_frozen_5_and_6_profiles_with_exact_historical_binding ... ok
test recovery::tests::altered_accepted_identity_and_unrecognized_raw_property_fields_reject ... ok
test recovery::tests::exact_source_and_unfinished_invalid_buffers_restore_without_model_overwrite ... ok
test recovery::tests::excess_retained_buffers_cannot_replace_the_last_recoverable_checkpoint ... ok
test recovery::tests::invalid_open_retains_distinct_accepted_model_and_repair_workspace ... ok
test recovery::tests::missing_includes_remain_reachable_repair_targets_without_fabricated_buffers ... ok
test recovery::tests::multiple_sessions_replace_only_their_own_checkpoint_and_corruption_is_retained ... ok
test recovery::tests::raw_invalid_property_number_survives_and_stays_rejected_until_repaired ... ok
test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_draft_cannot_target_an_unreserved_or_non_artifact_identity ... ok
test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_raw_variants_duplicate_addresses_and_unknown_fields_are_refused ... ok
test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_reservations_cannot_duplicate_or_claim_an_existing_identity_or_another_owner ... ok
test semantic_review::artifacts_recovery_falsifier_tests::legitimate_invalid_artifact_checkpoint_round_trips_and_prepares_only_after_explicit_repair ... ok
test semantic_review::artifacts_tests::artifact_candidate_is_a_complete_record_not_a_tombstone_or_unattached_creation_shortcut ... ok
test semantic_review::artifacts_tests::artifact_creation_and_identified_source_deletion_follow_core_metadata_and_history_boundary_both_directions ... ok
test semantic_review::artifacts_tests::artifact_gui_reserves_recovers_and_creates_only_after_all_seven_metadata_reviews_both_directions ... ok
test semantic_review::artifacts_tests::artifact_metadata_apply_and_exact_history_reset_are_one_source_preserving_undo_redo ... ok
test semantic_review::artifacts_tests::artifact_move_metadata_none_empty_and_invalid_raw_recovery_are_independent_both_directions ... ok
test semantic_review::artifacts_tests::artifact_moved_source_absence_deletes_but_destination_only_take_retains_both_directions ... ok
test semantic_review::attachments::tests::absent_attachment_payloads_migrate_v1_and_v2_and_source5_upgrade_requires_exact_legacy_base ... ok
test semantic_review::attachments::tests::addressed_attachment_candidates_equal_direct_core_oracle_both_directions ... ok
test semantic_review::attachments::tests::attachment_apply_is_one_exact_source_and_history_undo_redo ... ok
test semantic_review::attachments::tests::attachment_candidate_and_direct_record_keep_conflict_on_actual_slot_without_losing_drafts ... ok
test semantic_review::attachments::tests::attachment_pair_drafts_survive_family_switch_and_restore_without_mutating_model ... ok
test semantic_review::attachments::tests::functional_incident_source_requires_explicit_matching_port_review_in_one_atomic_candidate ... ok
test semantic_review::attachments::tests::parent_and_each_endpoint_candidate_preserve_other_fields_and_match_core_both_directions ... ok
test semantic_review::attachments::tests::raw_rejected_attachment_reference_survives_recovery_and_wrong_scope_is_rejected ... ok
test semantic_review::attachments::tests::source_only_absence_and_explicit_absent_endpoint_are_different ... ok
test semantic_review::attachments::tests::two_incident_endpoint_candidates_form_one_complete_record_and_recover_invalid_excluded_draft ... ok
test semantic_review::batch_tests::batch_apply_is_one_exact_source_and_history_undo_redo_roundtrip ... ok
test semantic_review::batch_tests::batch_candidate_conflict_keeps_both_raw_values_and_keep_is_a_real_constraint ... ok
test semantic_review::batch_tests::batch_complete_constructor_cannot_erase_another_rows_new_literal ... ok
test semantic_review::batch_tests::batch_constructor_retirement_conflicts_with_another_rows_kept_bound_in_both_orders ... ok
test semantic_review::batch_tests::batch_delayed_text_targets_its_original_row_and_facet_without_switching_focus ... ok
test semantic_review::batch_tests::batch_excluded_invalid_row_survives_focus_reopen_and_v2_recovery ... ok
test semantic_review::batch_tests::batch_first_equal_constructor_acknowledgement_allows_an_independent_bound ... ok
test semantic_review::batch_tests::batch_joint_bounds_use_one_candidate_and_match_an_independent_atomic_core_oracle ... ok
test semantic_review::batch_tests::batch_reverse_distinct_targets_work_and_reverse_convergence_is_explicit ... ok
test semantic_review::batch_tests::batch_v2_rejects_duplicate_included_sources_bad_addresses_and_stale_model ... ok
test semantic_review::batch_tests::category_family_and_members_are_independent_core_checked_facets_both_directions ... ok
test semantic_review::batch_tests::recovered_trace_picker_names_existing_trace_instead_of_deleted_reference ... ok
test semantic_review::batch_tests::rejected_direction_switch_at_row_limit_preserves_every_recoverable_draft ... ok
test semantic_review::compose::diagnostic_tests::distinct_review_conflict_keeps_trace_aliases_even_when_names_are_equal ... ok
test semantic_review::compose::diagnostic_tests::reserved_creation_conflict_uses_its_rows_seed_instead_of_a_deleted_reference ... ok
test semantic_review::compose::diagnostic_tests::same_review_presence_and_owner_conflict_names_both_facets_and_owners_and_retains_drafts ... ok
test semantic_review::compose::diagnostic_tests::typed_owner_display_does_not_reinterpret_uuid_shaped_artifact_text ... ok
test semantic_review::constructor_tests::closed_data_and_event_take_composition_matches_core_across_every_kind_pair_and_direction ... ok
test semantic_review::constructor_tests::data_group_candidates_cover_every_definition_and_companion_default_both_directions ... ok
test semantic_review::constructor_tests::data_group_retains_invalid_sibling_drafts_companion_default_and_variant_editor_buffers ... ok
test semantic_review::constructor_tests::exchange_constructor_takes_qualified_annotation_addresses_without_remapping_expression_text ... ok
test semantic_review::constructor_tests::existing_fragment_and_branch_group_candidates_edit_complete_owned_order_without_deletion ... ok
test semantic_review::constructor_tests::group_take_reference_payload_and_scalar_candidate_match_core_and_one_document_batch ... ok
test semantic_review::constructor_tests::historical_event_keep_retires_only_obsolete_branch_and_unchanged_kind_acknowledges_no_payload ... ok
test semantic_review::constructor_tests::historical_same_kind_take_preserves_target_only_literals_when_composed_with_candidate ... ok
test semantic_review::constructor_tests::occurrence_and_event_candidate_variants_cover_closed_families_without_touching_headers ... ok
test semantic_review::constructor_tests::outer_and_nested_constructor_candidates_require_explicit_resolution_and_retain_both_drafts ... ok
test semantic_review::constructor_tests::port_group_companions_typed_owner_context_and_direction_restrictions_are_explicit ... ok
test semantic_review::constructor_tests::reverse_existing_typed_port_reviews_keep_or_candidate_legacy_without_permitting_typed_oa_write ... ok
test semantic_review::constructor_tests::scenario_use_group_takes_typed_binding_references_and_preserves_source_text_both_directions ... ok
test semantic_review::keyed_rows_tests::annotation_address_browser_descends_qualified_fields_without_changing_rows ... ok
test semantic_review::keyed_rows_tests::annotation_observations_keep_uuid_shaped_expression_text_in_both_sides_and_history ... ok
test semantic_review::keyed_rows_tests::batch_keyed_rows_compare_exact_target_slots_and_retain_independent_values ... ok
test semantic_review::keyed_rows_tests::binding_choices_separate_reused_keys_from_local_lifelines ... ok
test semantic_review::keyed_rows_tests::binding_local_picker_follows_a_candidate_parent_before_the_review_is_valid ... ok
test semantic_review::keyed_rows_tests::binding_take_requires_local_correspondence_and_candidate_rejects_wrong_scenario ... ok
test semantic_review::keyed_rows_tests::independent_rows_keep_take_candidate_match_core_and_preserve_siblings_both_directions ... ok
test semantic_review::keyed_rows_tests::keyed_recovery_retains_raw_rows_and_staged_pairs_both_directions_without_applying ... ok
test semantic_review::keyed_rows_tests::keyed_row_drafts_retain_expression_local_and_presence_across_decisions_and_staging ... ok
test semantic_review::keyed_rows_tests::keyed_rows_distinguish_unpaired_source_from_explicit_absence_and_require_exact_reset ... ok
test semantic_review::keyed_rows_tests::multiple_new_rows_compose_in_empty_collections_using_destination_key_order ... ok
test semantic_review::keyed_rows_tests::row_review_apply_preserves_exact_source_and_semantic_history_through_undo_redo ... ok
test semantic_review::keyed_tests::deleted_member_source_observation_removes_only_mapped_membership_both_directions ... ok
test semantic_review::keyed_tests::exact_literal_new_rows_and_removals_commit_both_directions_without_default_loss ... ok
test semantic_review::keyed_tests::exact_reset_only_is_one_history_source_transaction_and_undo_redo_both_directions ... ok
test semantic_review::keyed_tests::function_port_members_use_existing_typed_choices_and_preserve_oa_legacy ... ok
test semantic_review::keyed_tests::historical_one_sided_pair_migration_requires_exact_reset_and_explicit_overlap_resolution ... ok
test semantic_review::keyed_tests::invalid_literal_removal_and_unselected_scalar_buffers_are_retained_and_repairable ... ok
test semantic_review::keyed_tests::member_identity_labels_and_new_tabs_preserve_exact_names_and_deleted_keys ... ok
test semantic_review::keyed_tests::reset_precedes_equal_constructor_candidate_and_preserves_independent_literal_draft ... ok
test semantic_review::keyed_tests::staging_removal_and_obsolete_reset_recovery_keep_other_decisions_and_raw_presence ... ok
test semantic_review::keyed_tests::stale_or_source_failed_reset_and_membership_apply_retain_exact_choices ... ok
test semantic_review::keyed_tests::unordered_members_keep_take_candidate_preserve_other_rows_both_directions ... ok
test semantic_review::keyed_tests::unsupported_independent_families_and_missing_identities_do_not_gain_edit_authority ... ok
test semantic_review::message_kind_tests::message_group_candidate_closed_kinds_are_core_validated_in_both_directions ... ok
test semantic_review::message_kind_tests::message_group_candidate_timer_switches_preserve_both_drafts_and_overlap_is_explicit ... ok
test semantic_review::message_kind_tests::message_group_initial_equal_take_acknowledges_only_kind_and_checks_authored_timer_agreement ... ok
test semantic_review::message_kind_tests::message_group_keep_historical_switch_retires_timer_and_completed_no_switch_rejects ... ok
test semantic_review::message_kind_tests::message_group_rejects_protected_edits_stale_plan_and_source_failure_without_losing_timer ... ok
test semantic_review::message_kind_tests::message_group_reply_and_reference_take_require_explicit_call_mapping_both_directions ... ok
test semantic_review::message_kind_tests::message_group_take_full_timer_and_scalar_candidate_are_one_source_history_change_both_directions ... ok
test semantic_review::message_kind_tests::message_group_timer_does_not_erase_exchange_without_its_own_selected_decision ... ok
test semantic_review::ordered_tests::ambiguous_order_preserves_local_member_and_requires_explicit_candidate_positions ... ok
test semantic_review::ordered_tests::historical_pair_restore_uses_exact_member_keys_and_never_zips_order_observations ... ok
test semantic_review::ordered_tests::order_take_preserves_destination_only_positions_and_order_alone_cannot_add_members ... ok
test semantic_review::ordered_tests::ordered_membership_choices_stage_exact_pairs_in_all_owner_shapes ... ok
test semantic_review::ordered_tests::ordered_presence_keep_take_candidate_remove_only_selected_entry_and_order_take_reorders_only ... ok
test semantic_review::ordered_tests::ordered_review_apply_is_exact_source_history_transaction_with_reopen_and_undo_redo ... ok
test semantic_review::ordered_tests::ordered_take_uses_unique_anchors_and_matches_core_with_unrelated_candidate_both_directions ... ok
test semantic_review::ordered_tests::raw_order_survives_membership_changes_decisions_and_recovery_until_explicit_reconcile ... ok
test semantic_review::ordered_tests::several_incoming_members_follow_source_order_despite_independent_identity_sorting ... ok
test semantic_review::recovery::tests::raw_scalar_and_closed_constructor_drafts_recover_against_exact_model_only ... ok
test semantic_review::recovery::tests::version_one_without_orders_restores_raw_intent_and_replans_without_execution ... ok
test semantic_review::source7_tests::contextual_incident_leaf_keep_allows_path_change_but_conflicts_with_changed_leaf_both_directions ... ok
test semantic_review::source7_tests::reverse_operation_omission_gui_requires_raw_rationale_and_matches_one_core_batch_after_recovery ... ok
test semantic_review::source7_tests::semantic_operation_virtual_none_candidate_uses_exact_allocation_and_preserves_accepted_bytes ... ok
test semantic_review::tests::candidate_mixed_with_reference_take_uses_typed_correspondence_not_text_guessing ... ok
test semantic_review::tests::deselected_invalid_candidate_is_retained_but_does_not_poison_another_selected_scalar ... ok
test semantic_review::tests::explicit_trace_selection_updates_only_that_history ... ok
test semantic_review::tests::first_equal_constructor_acknowledges_only_kind_and_allows_independent_leaves ... ok
test semantic_review::tests::independent_review_clear_bound_ignores_retained_invalid_other_facet ... ok
test semantic_review::tests::independent_review_keyed_fact_titles_keep_live_deleted_and_qualified_identity ... ok
test semantic_review::tests::inherited_annotation_impact_requires_exact_acceptance_and_edits_clear_approval ... ok
test semantic_review::tests::invalid_numeric_draft_and_protected_edits_retain_workflow_and_source ... ok
test semantic_review::tests::read_only_structured_facts_and_partial_rollup_are_honest ... ok
test semantic_review::tests::relation_candidates_preserve_endpoints_and_combine_selected_roles_and_bounds ... ok
test semantic_review::tests::scalar_keep_take_candidate_commit_exact_source_and_history_in_both_directions ... ok
test semantic_review::tests::scoped_literal_list_edits_preserve_unfinished_values_and_other_facet_buffers ... ok
test semantic_review::tests::stale_plan_and_source_writeback_failure_do_not_lose_decisions_or_history ... ok
test semantic_review::tests::state_kind_scalar_uses_typed_candidate_and_core_validation ... ok
test semantic_review::view::reserved_artifact_tests::reserved_artifact_facet_and_reference_labels_survive_recovery_without_calling_it_deleted ... ok
test source_navigation::interaction::tests::captured_find_click_invalidates_without_app_message_and_preserves_focus ... ok
test source_navigation::interaction::tests::focus_rechecks_clock_between_inspection_and_application_and_missing_target_is_inert ... ok
test source_navigation::interaction::tests::raw_navigation_inputs_advance_but_passive_geometry_does_not_and_exhaustion_refuses ... ok
test source_navigation::query::tests::comments_strings_and_comment_gap_are_not_navigation_hits ... ok
test source_navigation::query::tests::detached_alias_and_identity_collisions_never_auto_select ... ok
test source_navigation::query::tests::dirty_but_parseable_text_has_current_names_and_no_validated_fallback ... ok
test source_navigation::query::tests::exact_multifile_unicode_crlf_definition_and_repeated_lexical_references ... ok
test source_navigation::query::tests::exact_snapshot_readback_rejects_same_key_byte_membership_and_evidence_changes ... ok
test source_navigation::query::tests::include_cycle_depth_and_aggregate_edges_are_explicit_partial_outcomes ... ok
test source_navigation::query::tests::invalid_include_syntax_never_borrows_the_old_reachable_file_set ... ok
test source_navigation::query::tests::keyword_alias_and_loaded_path_case_collisions_use_reviewed_index_rules ... ok
test source_navigation::query::tests::large_display_name_cannot_escape_the_owned_row_string_budget ... ok
test source_navigation::query::tests::missing_and_noncanonical_authored_ids_remain_draft_spans_without_generated_anchors ... ok
test source_navigation::query::tests::missing_include_partial_scope_does_not_resurrect_witness_text ... ok
test source_navigation::query::tests::omitted_rows_are_counted_before_result_allocation_and_never_confer_uniqueness ... ok
test source_navigation::query::tests::origin_keeps_exact_hit_when_display_rows_are_omitted ... ok
test source_navigation::query::tests::owned_request_checks_raw_limits_immediately_and_extracts_only_on_worker ... ok
test source_navigation::query::tests::owned_request_moves_exact_text_into_worker_snapshot_and_matches_sync_results ... ok
test source_navigation::query::tests::owned_validation_proof_preserves_full_witness_count_and_partial_scope ... ok
test source_navigation::query::tests::raw_aggregate_limits_refuse_before_outline_or_copied_snapshot ... ok
test source_navigation::query::tests::sole_detached_candidate_and_unapplied_equal_bytes_require_choice ... ok
test source_navigation::query::tests::token_declaration_and_live_reference_limits_are_aggregate_not_per_file ... ok
test source_navigation::query::tests::validation_witness_must_match_entry_and_complete_included_file_set ... ok
test source_navigation::symbols::tests::admitted_unicode_path_budget_keeps_original_policy_after_single_fold ... ok
test source_navigation::symbols::tests::comment_separated_reference_keeps_crlf_unicode_and_disjoint_hit_spans ... ok
test source_navigation::symbols::tests::declaration_order_and_duplicate_roles_refuse_instead_of_corrupting_hit_search ... ok
test source_navigation::symbols::tests::detached_uuid_clone_disables_anchor_even_for_included_query ... ok
test source_navigation::symbols::tests::duplicate_aliases_are_candidates_without_false_reference_attribution ... ok
test source_navigation::symbols::tests::every_budget_admits_boundary_and_returns_no_index_one_below ... ok
test source_navigation::symbols::tests::header_metadata_must_match_current_token_boundaries_and_authored_id ... ok
test source_navigation::symbols::tests::incomplete_draft_is_lexical_and_error_token_does_not_leak_references ... ok
test source_navigation::symbols::tests::legal_keyword_classified_alias_is_not_discarded ... ok
test source_navigation::symbols::tests::missing_ids_produce_only_current_snapshot_locations_without_stabilization ... ok
test source_navigation::symbols::tests::nested_declaration_extents_do_not_turn_body_text_into_definition_hits ... ok
test source_navigation::symbols::tests::noncanonical_header_identity_cannot_enter_through_query_metadata ... ok
test source_navigation::symbols::tests::path_identity_rejects_normalization_and_case_collisions ... ok
test source_navigation::symbols::tests::query_header_admission_preserves_uppercase_and_json_escape_bytes ... ok
test source_navigation::symbols::tests::repeated_live_uses_are_distinct_and_strings_comments_history_are_excluded ... ok
test source_navigation::symbols::tests::reused_alias_cannot_steal_old_identity_and_old_locations_are_stale ... ok
test source_navigation::symbols::tests::scope_provenance_and_detached_alias_collision_are_explicit ... ok
test source_navigation::symbols::tests::stopped_outline_is_not_a_successful_empty_query ... ok
test source_navigation::symbols::tests::truncated_or_gapped_tokens_refuse_even_when_project_scope_is_partial ... ok
test source_navigation::symbols::tests::unicode_path_collisions_match_core_lowercase_policy ... ok
test source_navigation::tests::search_uses_utf8_columns_wraps_and_refreshes_after_edits ... ok
test source_rename::origin::tests::maps_last_repeated_reference_with_unicode_crlf_and_comment_separator ... ok
test source_rename::origin::tests::permits_identifier_keyword_transitions_in_alias_roles ... ok
test source_rename::origin::tests::preserves_final_same_line_occurrence_not_first_or_prose ... ok
test source_rename::origin::tests::rejects_changed_trivia_non_alias_words_and_wrong_marker ... ok
test source_rename::preview::tests::each_bound_is_exact_and_overflow_never_returns_a_partial_preview ... ok
test source_rename::preview::tests::first_and_last_lines_form_complete_separate_hunks_and_pages ... ok
test source_rename::preview::tests::limits_apply_to_the_whole_preview_not_each_file ... ok
test source_rename::preview::tests::long_unicode_lines_are_fully_reachable_as_bounded_fragments ... ok
test source_rename::preview::tests::nearby_changes_merge_and_all_changed_files_are_reachable ... ok
test source_rename::preview::tests::preserves_unicode_mixed_endings_and_counts_lines_not_repeated_uses ... ok
test source_rename::preview::tests::refuses_membership_entry_line_count_and_line_ending_changes ... ok
test source_rename::preview::tests::unchanged_and_empty_sources_have_no_preview ... ok
test source_tree::tests::active_scroll_offset_uses_the_visible_order_and_retains_ancestor_context ... ok
test source_tree::tests::collapsed_folders_retain_active_dirty_and_diagnostic_markers ... ok
test source_tree::tests::deep_paths_build_expand_and_drop_on_a_small_stack ... ok
test source_tree::tests::detached_buffers_keep_paths_and_only_clean_buffers_are_closable ... ok
test source_tree::tests::exact_unicode_spaces_and_file_folder_name_collisions_are_not_normalized ... ok
test source_tree::tests::folders_are_compact_and_sorted_before_files_without_losing_duplicate_basenames ... ok
test source_workspace::tests::draft_history_budget_covers_inactive_files_without_discarding_drafts ... ok
test source_workspace::tests::fresh_session_cannot_reuse_a_retained_buffer_generation ... ok
test source_workspace::tests::navigation_revision_wrap_cannot_reuse_an_old_workspace_key ... ok
test source_workspace::tests::navigation_scope_changes_invalidate_without_changing_unchanged_positions ... ok
test source_workspace::tests::navigation_versions_distinguish_reopened_recovered_and_changed_drafts ... ok
test source_workspace::tests::switching_retains_invalid_drafts_and_independent_history ... ok
test tests::actor_port_creation_updates_containment_and_locate_reveals_its_owner ... ok
test tests::adding_bend_between_close_ports_stays_outside_owner_clearance ... ok
test tests::behavior_and_data_authoring_do_not_place_nodes_in_unrelated_architecture_views ... ok
test tests::bidirectional_transition_ui_commits_once_and_preserves_other_diagrams ... ok
test tests::counterpart_creation_focuses_visible_target_and_reuse_keeps_views ... ok
test tests::creation_from_capabilities_routes_work_to_architecture_and_folded_allocation_inserts_below_existing_work ... ok
test tests::dragging_keeps_semantic_selection_and_same_node_remains_editable ... ok
test tests::escaped_string_mode_preserves_exact_control_characters ... ok
test tests::every_demo_record_has_a_lossless_graphical_draft ... ok
test tests::explicit_relationship_builder_never_mutates_on_preview ... ok
test tests::explorer_and_creation_selection_follow_their_own_placement ... ok
test tests::fit_adapts_to_canvas_returning_after_help_but_preserves_manual_navigation ... ok
test tests::fit_uses_measured_canvas_bounds_and_preserves_them_on_open ... ok
test tests::focused_explorer_follows_reparenting_without_changing_identity ... ok
test tests::graphical_rename_keeps_aliases_and_references_and_undo ... ok
test tests::identity_property_change_is_atomic_and_rewrites_all_live_references ... ok
test tests::invalid_numeric_draft_survives_navigation_save_and_help ... ok
test tests::invalid_save_and_continue_returns_to_repairable_draft ... ok
test tests::malformed_source_preserves_model_and_is_recoverable ... ok
test tests::manual_trace_requires_target_and_selection_normalizes_creation_kind ... ok
test tests::mission_capability_authoring_is_contextual_atomic_and_text_equivalent ... ok
test tests::modal_owns_background_commands_and_shortcuts ... ok
test tests::nested_allocation_insertion_reflows_sibling_subtrees_and_preserves_fold_state ... ok
test tests::opening_and_creating_models_preserve_the_actual_window_size_for_fit ... ok
test tests::opening_legacy_source_surfaces_report_without_modifying_original_bytes ... ok
test tests::pending_source_prevents_property_draft_collision_and_preserves_both_if_present ... ok
test tests::placement_identity_edit_then_drag_and_diagram_identity_then_arrange ... ok
test tests::placement_relocation_follows_cross_layer_traceability_view ... ok
test tests::property_enum_and_optional_reference_roundtrip ... ok
test tests::reopening_canvas_for_a_modal_preserves_viewport_after_route_edits ... ok
test tests::revealing_an_implicit_function_port_unfolds_its_visible_architecture_owner ... ok
test tests::routing_actions_are_atomic_guarded_and_fit_the_authored_detour ... ok
test tests::selecting_current_constructors_preserves_payloads ... ok
test tests::source_find_navigates_an_invalid_draft_without_applying_or_losing_it ... ok
test tests::source_navigation_waits_for_editor_layout_and_cancels_on_edit ... ok
test tests::system_only_models_open_the_populated_perspective ... ok
test tests::transition_resolutions_belong_to_the_effective_target_and_kind ... ok
test view_copy::tests::duplicate_retains_ports_routes_options_and_artifact_claims_with_exact_undo_redo ... ok
test view_copy::tests::duplicate_state_view_preserves_machine_nesting_and_collapse_with_unique_aliases ... ok
test view_copy::tests::missing_view_does_not_propose_an_empty_replacement ... ok
test views::source_symbols::tests::suffixes_distinguish_nested_duplicate_basenames_without_changing_unicode ... ok
test views::source_tests::source_editor_windows_menu_payload_is_inert_but_space_and_altgr_still_edit ... ok
test views::text_workspace::summary_visibility_tests::all_reference_exceptions_fit_allocated_width_with_wide_alias_and_large_counts ... ok
test views::text_workspace::tests::drawer_clamps_to_actual_center_allocation_including_oversize_requests ... ok
test views::text_workspace::tests::five_slots_keep_editor_state_and_selection_through_explicit_and_passive_changes ... ok
test views::text_workspace::tests::highlighted_sensor_editor_retains_real_scrolled_buffer_across_panel_rebuilds ... ok
test views::text_workspace::tests::keyboard_resize_uses_effective_height_and_only_exact_open_drawer_shortcut ... ok
test views::traceability::tests::traceability_browsing_retains_invalid_property_draft_and_existing_select_guard ... ok
test views::traceability::tests::traceability_filter_reaches_artifacts_after_68_traces_and_searches_all_metadata ... ok
test workflow::communication::tests::communication_requires_two_explicit_ports_and_recovers_the_partial_choice ... ok
test workflow::port_authoring_tests::boundary_picker_matches_exact_commands_across_contracts_and_ownership ... ok
test workflow::port_authoring_tests::boundary_picker_recomputes_for_unoriented_reverse_endpoints_without_relaxing_contracts ... ok
test workflow::port_authoring_tests::duplicate_port_names_show_owner_contract_and_unique_alias ... ok
test workflow::port_authoring_tests::fresh_functions_are_actual_picker_targets_and_plan_enables_apply ... ok
test workflow::port_authoring_tests::generic_component_port_connection_keeps_its_endpoint_and_direction ... ok
test workflow::port_authoring_tests::ordinary_standard_connections_default_unoriented_and_new_roles_exclude_legacy ... ok
test workflow::recovery::tests::incomplete_relationship_and_trace_recover_raw_fields_and_reject_changed_model ... ok
test workflow::recovery::tests::transition_recovery_replans_typed_request_without_persisted_commands ... ok
test workflow::transition_tests::basic_transition_boundary_choice_is_required_without_an_inferred_system ... ok
test workflow::transition_tests::basic_transition_creates_overview_when_existing_views_cannot_show_result ... ok
test workflow::transition_tests::basic_transition_explicit_destination_appends_below_existing_bounds_and_is_one_source_edit ... ok
test workflow::transition_tests::basic_transition_invalid_explicit_destination_retains_choice_and_refuses ... ok
test workflow::transition_tests::basic_transition_reconcile_keeps_existing_selected_view_placement_and_route_exact ... ok
test workflow::transition_tests::basic_transition_skips_lowest_uuid_state_view_and_preserves_oa ... ok
test result: ok. 856 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 371.63s
@@ -0,0 +1,24 @@
{
"command": [
"cargo",
"test",
"--locked",
"--offline",
"-p",
"oa-desktop",
"--bin",
"arcadia-studio",
"app::source_rename::timing_tests::accepted_release1_prepare_commit_sync_and_confirm_timing",
"--",
"--ignored",
"--nocapture",
"--test-threads=1"
],
"started": "2026-09-13T02:29:07.844975+00:00",
"finished": "2026-09-13T02:29:38.038485+00:00",
"seconds": 30.192618299999594,
"exitCode": 0,
"inputsUnchanged": true,
"stdoutSha256": "5ae357431fa8d99f76e193aa08f1192fb7ed99d8c3667966ce97790eca8d98fe",
"stderrSha256": "041742f3b57dd07321bea988d47f853785d4f4679c0e9e9076cc605904a5d67e"
}
@@ -0,0 +1,2 @@
Finished `test` profile [unoptimized] target(s) in 3.55s
Running unittests src\main.rs (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\target-gnullvm\debug\deps\arcadia_studio-58e30cee1fd51a8b.exe)
@@ -0,0 +1,62 @@
running 1 test
test app::source_rename::timing_tests::accepted_release1_prepare_commit_sync_and_confirm_timing ... {"active_file":"traceability.arcadia","active_file_bytes":29506,"debug_assertions":true,"entry":"C:\\ar-text-9e8r6t\\crates\\oa-desktop\\../../examples/release1/project.arcadia","identities":258,"measured_trials":5,"new":"oa_restore_pressure","old":"oa_restore_work","reachable_files":30,"record":"fixture","scope":"real worker helpers, guarded Document commit, App sync and Confirm update; no task polling or rendering","source_bytes":78414,"warmups":1}
{"record":"order","separate_phases_first":true,"trial":0,"warmup":true}
{"elapsed_ms":0.1031,"elapsed_ns":"103100","phase":"document_request_mint","record":"timing","trial":0,"warmup":true}
{"elapsed_ms":437.2302,"elapsed_ns":"437230200","phase":"worker_document_prepare","record":"timing","trial":0,"warmup":true}
{"elapsed_ms":27.055699999999998,"elapsed_ns":"27055700","phase":"worker_preview_and_origin","record":"timing","trial":0,"warmup":true}
{"elapsed_ms":0.039,"elapsed_ns":"39000","phase":"document_guarded_commit","record":"timing","trial":0,"warmup":true}
{"elapsed_ms":895.5259,"elapsed_ns":"895525900","phase":"app_sync","record":"timing","trial":0,"warmup":true}
{"elapsed_ms":88.3319,"elapsed_ns":"88331900","phase":"app_confirm_update","record":"timing","trial":0,"warmup":true}
{"elapsed_ms":0.0014,"elapsed_ns":"1400","phase":"confirm_returned_task_drop_without_polling","record":"timing","trial":0,"warmup":true}
{"record":"order","separate_phases_first":false,"trial":1,"warmup":false}
{"elapsed_ms":36.0154,"elapsed_ns":"36015400","phase":"app_confirm_update","record":"timing","trial":1,"warmup":false}
{"elapsed_ms":0.0005,"elapsed_ns":"500","phase":"confirm_returned_task_drop_without_polling","record":"timing","trial":1,"warmup":false}
{"elapsed_ms":0.0976,"elapsed_ns":"97600","phase":"document_request_mint","record":"timing","trial":1,"warmup":false}
{"elapsed_ms":318.975,"elapsed_ns":"318975000","phase":"worker_document_prepare","record":"timing","trial":1,"warmup":false}
{"elapsed_ms":24.8242,"elapsed_ns":"24824200","phase":"worker_preview_and_origin","record":"timing","trial":1,"warmup":false}
{"elapsed_ms":0.008,"elapsed_ns":"8000","phase":"document_guarded_commit","record":"timing","trial":1,"warmup":false}
{"elapsed_ms":702.3933,"elapsed_ns":"702393300","phase":"app_sync","record":"timing","trial":1,"warmup":false}
{"record":"order","separate_phases_first":true,"trial":2,"warmup":false}
{"elapsed_ms":0.0309,"elapsed_ns":"30900","phase":"document_request_mint","record":"timing","trial":2,"warmup":false}
{"elapsed_ms":376.1622,"elapsed_ns":"376162200","phase":"worker_document_prepare","record":"timing","trial":2,"warmup":false}
{"elapsed_ms":22.912499999999998,"elapsed_ns":"22912500","phase":"worker_preview_and_origin","record":"timing","trial":2,"warmup":false}
{"elapsed_ms":0.0333,"elapsed_ns":"33300","phase":"document_guarded_commit","record":"timing","trial":2,"warmup":false}
{"elapsed_ms":736.6559,"elapsed_ns":"736655900","phase":"app_sync","record":"timing","trial":2,"warmup":false}
{"elapsed_ms":108.6872,"elapsed_ns":"108687200","phase":"app_confirm_update","record":"timing","trial":2,"warmup":false}
{"elapsed_ms":0.0013,"elapsed_ns":"1300","phase":"confirm_returned_task_drop_without_polling","record":"timing","trial":2,"warmup":false}
{"record":"order","separate_phases_first":false,"trial":3,"warmup":false}
{"elapsed_ms":36.039300000000004,"elapsed_ns":"36039300","phase":"app_confirm_update","record":"timing","trial":3,"warmup":false}
{"elapsed_ms":0.0006,"elapsed_ns":"600","phase":"confirm_returned_task_drop_without_polling","record":"timing","trial":3,"warmup":false}
{"elapsed_ms":0.1134,"elapsed_ns":"113400","phase":"document_request_mint","record":"timing","trial":3,"warmup":false}
{"elapsed_ms":391.56239999999997,"elapsed_ns":"391562400","phase":"worker_document_prepare","record":"timing","trial":3,"warmup":false}
{"elapsed_ms":9.941500000000001,"elapsed_ns":"9941500","phase":"worker_preview_and_origin","record":"timing","trial":3,"warmup":false}
{"elapsed_ms":0.0095,"elapsed_ns":"9500","phase":"document_guarded_commit","record":"timing","trial":3,"warmup":false}
{"elapsed_ms":974.0557,"elapsed_ns":"974055700","phase":"app_sync","record":"timing","trial":3,"warmup":false}
{"record":"order","separate_phases_first":true,"trial":4,"warmup":false}
{"elapsed_ms":0.0467,"elapsed_ns":"46700","phase":"document_request_mint","record":"timing","trial":4,"warmup":false}
{"elapsed_ms":401.9974,"elapsed_ns":"401997400","phase":"worker_document_prepare","record":"timing","trial":4,"warmup":false}
{"elapsed_ms":17.1722,"elapsed_ns":"17172200","phase":"worker_preview_and_origin","record":"timing","trial":4,"warmup":false}
{"elapsed_ms":0.008,"elapsed_ns":"8000","phase":"document_guarded_commit","record":"timing","trial":4,"warmup":false}
{"elapsed_ms":865.3566999999999,"elapsed_ns":"865356700","phase":"app_sync","record":"timing","trial":4,"warmup":false}
{"elapsed_ms":60.0406,"elapsed_ns":"60040600","phase":"app_confirm_update","record":"timing","trial":4,"warmup":false}
{"elapsed_ms":0.0015,"elapsed_ns":"1500","phase":"confirm_returned_task_drop_without_polling","record":"timing","trial":4,"warmup":false}
{"record":"order","separate_phases_first":false,"trial":5,"warmup":false}
{"elapsed_ms":61.8057,"elapsed_ns":"61805700","phase":"app_confirm_update","record":"timing","trial":5,"warmup":false}
{"elapsed_ms":0.0006,"elapsed_ns":"600","phase":"confirm_returned_task_drop_without_polling","record":"timing","trial":5,"warmup":false}
{"elapsed_ms":0.0451,"elapsed_ns":"45100","phase":"document_request_mint","record":"timing","trial":5,"warmup":false}
{"elapsed_ms":751.2613,"elapsed_ns":"751261300","phase":"worker_document_prepare","record":"timing","trial":5,"warmup":false}
{"elapsed_ms":68.5379,"elapsed_ns":"68537900","phase":"worker_preview_and_origin","record":"timing","trial":5,"warmup":false}
{"elapsed_ms":0.014199999999999999,"elapsed_ns":"14200","phase":"document_guarded_commit","record":"timing","trial":5,"warmup":false}
{"elapsed_ms":1538.5520999999999,"elapsed_ns":"1538552100","phase":"app_sync","record":"timing","trial":5,"warmup":false}
{"max_ms":108.6872,"median_ms":60.0406,"min_ms":36.0154,"phase":"app_confirm_update","record":"summary","samples":5}
{"max_ms":1538.5520999999999,"median_ms":865.3566999999999,"min_ms":702.3933,"phase":"app_sync","record":"summary","samples":5}
{"max_ms":0.0015,"median_ms":0.0006,"min_ms":0.0005,"phase":"confirm_returned_task_drop_without_polling","record":"summary","samples":5}
{"max_ms":0.0333,"median_ms":0.0095,"min_ms":0.008,"phase":"document_guarded_commit","record":"summary","samples":5}
{"max_ms":0.1134,"median_ms":0.0467,"min_ms":0.0309,"phase":"document_request_mint","record":"summary","samples":5}
{"max_ms":751.2613,"median_ms":391.56239999999997,"min_ms":318.975,"phase":"worker_document_prepare","record":"summary","samples":5}
{"max_ms":68.5379,"median_ms":22.912499999999998,"min_ms":9.941500000000001,"phase":"worker_preview_and_origin","record":"summary","samples":5}
ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 858 filtered out; finished in 26.23s
@@ -0,0 +1,39 @@
"""Preserve original trial evidence and exact gate capture without runtime binaries."""
from pathlib import Path
import hashlib
import json
import shutil
base = Path(__file__).resolve().parent
root = Path('C:/ar-text-9e8r6t')
dest = root / 'harness/experiments/text-workspace-initial-20260913'
dest.mkdir()
records = []
def keep(source, relative):
target = dest / relative
target.parent.mkdir(parents=True, exist_ok=True)
assert not target.exists()
shutil.copyfile(source, target)
raw = source.read_bytes()
assert target.read_bytes() == raw
records.append({'path': relative, 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()})
trial = base / 'trial-text-1'
for source in sorted(trial.rglob('*')):
rel = source.relative_to(trial)
if source.is_file() and (len(rel.parts) == 1 or rel.parts[0] == 'screenshots' or rel.parts[0].startswith('verification-')):
keep(source, 'trial-text-1/' + rel.as_posix())
gate = root / '.local/text-workspace-gates-20260912'
for attempt in ['attempt-3', 'attempt-4']:
for source in sorted((gate / attempt).iterdir()):
if source.is_file() and source.suffix in ['.json', '.log', '.zip']:
keep(source, attempt + '/' + source.name)
for name in ['fixture-manifest.json', 'launch.py', 'verify_saved.py', 'bind_gates.py']:
keep(base / name, 'helpers/' + name)
keep(gate / 'gate.py', 'helpers/gate.py')
keep(Path(__file__), 'helpers/archive_initial.py')
with (dest / 'manifest.json').open('x', encoding='utf-8', newline='\n') as stream:
json.dump({'scope': 'Original failed native trial and passing attempt4 gates; runtime binaries remain locally preserved by SHA, no native acceptance.', 'files': records}, stream, indent=2)
stream.write('\n')
print(json.dumps({'directory': str(dest), 'files': len(records), 'bytes': sum(r['bytes'] for r in records), 'manifestSha256': hashlib.sha256((dest / 'manifest.json').read_bytes()).hexdigest()}))
@@ -0,0 +1,86 @@
"""Bind completed Windows gate inputs and preserved GUI for a development trial."""
from pathlib import Path
from datetime import datetime, timezone
import hashlib
import json
import re
import subprocess
import sys
BASE = Path(__file__).resolve().parent
ROOT = Path('C:/ar-text-9e8r6t')
attempt = sys.argv[1]
assert re.fullmatch(r'attempt-[0-9]+', attempt)
gate = ROOT / '.local/text-workspace-gates-20260912' / attempt
destination = BASE / (attempt + '-launch-manifest.json')
assert not destination.exists()
def identity(path):
raw = path.read_bytes()
return {'path': str(path.resolve()), 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()}
def read(name):
return json.loads((gate / name).read_text(encoding='utf-8'))
names = ['clippy', 'membership', 'focused', 'tests', 'timing', 'gui']
complete = read('complete.json')
assert complete['inputsUnchanged'] is True and complete['gates'] == names
inputs = read('inputs.json')
assert identity(gate / 'inputs.zip')['sha256'] == inputs['archiveSha256']
assert subprocess.check_output(['git', 'rev-parse', 'HEAD'], cwd=ROOT).decode().strip() == inputs['baseCommit']
scopes = ['Cargo.toml', 'Cargo.lock', 'crates', 'build', '.cargo', 'docs', 'examples', 'harness/fixtures']
raw_names = subprocess.check_output(['git', 'ls-files', '-z', '--cached', '--others', '--exclude-standard', '--', *scopes], cwd=ROOT)
current_names = sorted(set(name.decode() for name in raw_names.split(b'\0') if name))
assert current_names == [item['path'] for item in inputs['files']]
for item in inputs['files']:
path = (ROOT / item['path']).resolve()
assert path.is_relative_to(ROOT.resolve())
measured = identity(path)
assert all(measured[key] == item[key] for key in ['bytes', 'sha256'])
evidence = [identity(gate / name) for name in ['inputs.json', 'inputs.zip', 'environment.json', 'complete.json']]
receipts = {}
for name in names:
receipt = read(name + '-result.json')
assert receipt['exitCode'] == 0 and receipt['inputsUnchanged'] is True
for stream in ['stdout', 'stderr']:
log = identity(gate / (name + '-' + stream + '.log'))
assert log['sha256'] == receipt[stream + 'Sha256']
evidence.append(log)
evidence.append(identity(gate / (name + '-result.json')))
receipts[name] = receipt
membership = receipts['membership']['testMembership']
assert not membership['missing'] and membership['diagnosticGuardCount'] == 20
assert any('queued_group_toggle_cannot_mutate' in name for name in membership['required'])
assert any('all_reference_exceptions_fit_allocated_width' in name for name in membership['required'])
test_output = (gate / 'tests-stdout.log').read_text(encoding='utf-8')
result = re.search(r'test result: ok\. (\d+) passed; 0 failed; (\d+) ignored;', test_output)
assert result and sum(map(int, result.groups())) == membership['listed']
timing_output = (gate / 'timing-stdout.log').read_text(encoding='utf-8')
assert 'test result: ok. 1 passed; 0 failed;' in timing_output
binary_record = receipts['gui']['binary']
binary = identity(Path(binary_record['preserved']))
assert all(binary[key] == binary_record[key] for key in ['bytes', 'sha256'])
artifact = binary_record['artifact']
assert Path(artifact['manifest_path']).resolve() == ROOT / 'crates/oa-desktop/Cargo.toml'
assert artifact['target']['name'] == 'arcadia-studio'
assert artifact['executable'] == binary_record['path']
manifest = {
'atUtc': datetime.now(timezone.utc).isoformat(),
'nativeReady': True,
'scope': 'Completed Windows source gates authorize development GUI evaluation; native and packaged acceptance remain pending.',
'target': 'x86_64-pc-windows-gnullvm',
'baseCommit': inputs['baseCommit'],
'sourceFiles': len(inputs['files']),
'sourceArchiveSha256': inputs['archiveSha256'],
'membership': membership,
'binary': binary,
'evidence': evidence,
'helper': identity(Path(__file__)),
}
with destination.open('x', encoding='utf-8', newline='\n') as output:
json.dump(manifest, output, indent=2)
output.write('\n')
print(json.dumps(identity(destination)), flush=True)
@@ -0,0 +1,435 @@
{
"preparedAtUtc": "2026-09-12T11:17:21.035184+00:00",
"oracle_sha256": "967d9ba3c6fb3a7efb410833903ec94556ca2d48a67d5072c8bb160f40a00f9c",
"dll_sha256": "f45604a12e8bcd839fd86f667c1be1cc7c4f9da2b3c69ff381ac708f0e1ae7d4",
"cases": {
"simple": {
"original": "valid-baseline",
"original_files": {
"links.arcadia": {
"sha256": "d3229ecf6300804103eb7f85bd5891c022f6f6c194dbdbbdcb54e9550338dc3b",
"bytes": 211
},
"project.arcadia": {
"sha256": "79e26836c048a35aaf98b21ff006ae8ac931160abd9913b9e67b542303215414",
"bytes": 277
},
"救援/assess.arcadia": {
"sha256": "d99593537e67b2dfd293623f467ffbd46af4ea259dffae55d1fe9995c86e6992",
"bytes": 192
},
"救援/confirm.arcadia": {
"sha256": "591b32db3b1282825750d002d9293cfc450d55252506623302ce36c949fe9919",
"bytes": 92
}
},
"literal_edits": [
{
"path": "救援/assess.arcadia",
"before": "oa_activity assess \"Assess 救援 request\"",
"after": "oa_activity assess_damage \"Assess 救援 request\"",
"count": 1,
"before_snippet_spans_at_edit": [
{
"start": 47,
"end": 89
}
]
},
{
"path": "links.arcadia",
"before": "; source @assess; target @confirm;",
"after": "; source @assess_damage; target @confirm;",
"count": 1,
"before_snippet_spans_at_edit": [
{
"start": 127,
"end": 161
}
]
}
],
"expected_files": {
"links.arcadia": {
"sha256": "c056d46011b3b86ae05dc49b8e6d69cba903f8e7379b06c6d0c5d93639768a09",
"bytes": 218
},
"project.arcadia": {
"sha256": "79e26836c048a35aaf98b21ff006ae8ac931160abd9913b9e67b542303215414",
"bytes": 277
},
"救援/assess.arcadia": {
"sha256": "8d326ec33370b8ecf73f6d611904875994888baa3495f7c1df4613866e645d03",
"bytes": 199
},
"救援/confirm.arcadia": {
"sha256": "591b32db3b1282825750d002d9293cfc450d55252506623302ce36c949fe9919",
"bytes": 92
}
},
"changed_files": [
"links.arcadia",
"救援/assess.arcadia"
],
"arcadia_files": 4
},
"representative": {
"original": "release1-baseline",
"original_files": {
"evidence/repair-check.md": {
"sha256": "f4db17bdca4ecbb1bf0caef01b2da5f1f7f798ab3152b648ce6dd8696a6a68e5",
"bytes": 1419
},
"expected-diagnostics.json": {
"sha256": "3700393d76b940cfc076bf52861bd7b1f43370f8eabce3594531bd0bf1fc851e",
"bytes": 288
},
"model.json": {
"sha256": "ef0ef4006c3e09d5db6e1b621256b3f7d6642f3a7b09cc34607cfbcca830c727",
"bytes": 134520
},
"model.rs": {
"sha256": "15f30f6bde655808fe754665c26d560e36f2a9bad340f346b09137d0d05045f5",
"bytes": 28762
},
"oa/activities/activity_oa_restore_work.arcadia": {
"sha256": "83e73d0a013d5c3e1a4af0d9139ab0cfa362d25a846671fc2dac59181061a9d4",
"bytes": 1307
},
"oa/behavior/process_oa_assessment_procedure.arcadia": {
"sha256": "172c32c044ef4b5bc58a1f4635cc81f48dabb4014479b47dce7b25fedf2dbd0d",
"bytes": 697
},
"oa/behavior/process_oa_field_procedure.arcadia": {
"sha256": "d2552dc5383e2e91cb302a790364e197f663c2edc013a2ab1978789825c9c324",
"bytes": 1781
},
"oa/behavior/process_oa_response.arcadia": {
"sha256": "cf86f46fa5c5d70592ef43f1bc1cb4d968efd8add384ba88036bef6b88aa4abc",
"bytes": 3225
},
"oa/behavior/scenario_oa_conversation.arcadia": {
"sha256": "b25be524e98a35ebac5e4481b7609c027b32baf9605e8097f807560f94a77ca6",
"bytes": 1795
},
"oa/behavior/scenario_oa_full_scenario.arcadia": {
"sha256": "00a1edf2c9707a0eb62ac070c2d02467874f2c9c1f273cc6ddb53d6d65999a1c",
"bytes": 1261
},
"oa/behavior/state_machine_oa_monitor.arcadia": {
"sha256": "447c9ad1359f4a31ecf975ad07c0b08d8e7e03191fb0858e2fc56f377b223cd5",
"bytes": 2022
},
"oa/capabilities.arcadia": {
"sha256": "fc8012e5554350b12e1cb80080f8feab80d933c9b33c0f2a7bb500cb7d609936",
"bytes": 781
},
"oa/model.arcadia": {
"sha256": "f7cf914766ea73ec53b85e32d117ea9a9dba52d3e038246863541ae7069b1a15",
"bytes": 661
},
"oa/participants.arcadia": {
"sha256": "951764c14179f27c10e315acf2ea37d1fff54c77b8441e23addd239e8c715ce3",
"bytes": 1834
},
"oa/types.arcadia": {
"sha256": "9d0396fb82dd5733edd8d1cf52f968ca84906927c704f9cf0944a7fae215cf49",
"bytes": 788
},
"project.arcadia": {
"sha256": "b2674e6bf77cfe0f6f0ba79c81d2e96d92f39c02ca2c6266d80e91723bfb9fda",
"bytes": 1958
},
"README.md": {
"sha256": "113cfb1cf38a98b51bff60442d86a35d636a3d80ef206bece7d53d0aae67f2d5",
"bytes": 11137
},
"sa/behavior/process_sa_assessment_procedure.arcadia": {
"sha256": "73928ced61c06cbc08728d7956676a50fd4c05aa5b7f1ff4f29ce27a0b0f2088",
"bytes": 706
},
"sa/behavior/process_sa_field_procedure.arcadia": {
"sha256": "886d462af83110cbfa55dd232a667ea1446761234471357cbb878794e98e8768",
"bytes": 1790
},
"sa/behavior/process_sa_response.arcadia": {
"sha256": "041785fc22842423822431bd5e6e8d16094ebd0716965e7c765fb8c1d7549e8a",
"bytes": 3234
},
"sa/behavior/scenario_sa_conversation.arcadia": {
"sha256": "97276f5757ee9aa12a0dbd9d3ccd58174b3091162bb8bcce357cec20a45f5d85",
"bytes": 2127
},
"sa/behavior/scenario_sa_full_scenario.arcadia": {
"sha256": "e12fc406b99d60a2f7768aaa0b25ba560e8605f0b8e37f3a7cdd3b8443562b74",
"bytes": 1256
},
"sa/behavior/state_machine_sa_monitor.arcadia": {
"sha256": "05ce29af99424c491c47fe2450dc6f5f8ce995511c01ec7e17bb5855be3c9736",
"bytes": 2022
},
"sa/capabilities.arcadia": {
"sha256": "b6912fb3ece439912345fa71724acd462e716a1e5a88203a1058a5c3b2c20a4f",
"bytes": 781
},
"sa/functions/function_sa_audit_thresholds.arcadia": {
"sha256": "e5a04325d52183956dca814dd90f4e56c96c6b7db0f4f202f203ecb49c3e0f4f",
"bytes": 297
},
"sa/functions/function_sa_restore_work.arcadia": {
"sha256": "fddeb67308051325041fee641fe758ddf43345b7c47b66d433616ad07fdccdd6",
"bytes": 2576
},
"sa/model.arcadia": {
"sha256": "d431509251acb859fbb98733b6d18add952495e10a78703fbe8f31e40bc083c4",
"bytes": 661
},
"sa/participants.arcadia": {
"sha256": "780d2eb08b217b67b55febb3d34846f727b8ee9018df6c5741748647e36b2ff8",
"bytes": 4012
},
"sa/types.arcadia": {
"sha256": "101fc0fbd99f1101514aa7b6da4f8e535aae0bb94c9e2b9e7e6c151135b28660",
"bytes": 1227
},
"traceability.arcadia": {
"sha256": "48a96f543456c9b5a5798fc795594e4119147fe45f11a6f109f141b7f514560f",
"bytes": 29506
},
"transition-before.json": {
"sha256": "2253e6434f741687e22327c37d520ed15c043bc36025498650bc2366bb6a874d",
"bytes": 35801
},
"transition-request.json": {
"sha256": "43b9a22e5f95ad3bc0ebd2478ead0e14406854abc989ae94ded9367b013d812a",
"bytes": 4276
},
"views/diagram_oa_allocation_view.arcadia": {
"sha256": "dfc0eb61e0e2aa5bda45524571fbfa3494f44ce19696f3e15e07438074a07bc7",
"bytes": 2176
},
"views/diagram_sa_allocation_view.arcadia": {
"sha256": "b78b43a26a82efb8fbd5374b09c329fa341f57b29f635d397b9ef8aede71d389",
"bytes": 2173
},
"views/diagram_sa_capability_view.arcadia": {
"sha256": "75e8dc9fb30f25d6f8fd3c6b595593ab4f98958a25798f961e336e0fac557649",
"bytes": 1620
},
"views/diagram_sa_service_view.arcadia": {
"sha256": "b08c84f3ea633e7c78dfdad3272f75415f6256cf3614b6d99bfd4f0269076c9b",
"bytes": 2209
},
"views/diagram_sa_state_view.arcadia": {
"sha256": "5f42f4c605e57b817d8400ed21f2b14bfc4e1592aebe941ff113767504c2b869",
"bytes": 1931
}
},
"literal_edits": [
{
"path": "oa/activities/activity_oa_restore_work.arcadia",
"before": "oa_activity oa_restore_work \"Restore safe pressure\"",
"after": "oa_activity oa_restore_pressure \"Restore safe pressure\"",
"count": 1,
"before_snippet_spans_at_edit": [
{
"start": 0,
"end": 51
}
]
},
{
"path": "oa/activities/activity_oa_restore_work.arcadia",
"before": " parent @oa_restore_work;",
"after": " parent @oa_restore_pressure;",
"count": 4,
"before_snippet_spans_at_edit": [
{
"start": 250,
"end": 278
},
{
"start": 393,
"end": 421
},
{
"start": 539,
"end": 567
},
{
"start": 679,
"end": 707
}
]
},
{
"path": "traceability.arcadia",
"before": " oa @oa_restore_work;",
"after": " oa @oa_restore_pressure;",
"count": 1,
"before_snippet_spans_at_edit": [
{
"start": 26877,
"end": 26901
}
]
}
],
"expected_files": {
"evidence/repair-check.md": {
"sha256": "f4db17bdca4ecbb1bf0caef01b2da5f1f7f798ab3152b648ce6dd8696a6a68e5",
"bytes": 1419
},
"expected-diagnostics.json": {
"sha256": "3700393d76b940cfc076bf52861bd7b1f43370f8eabce3594531bd0bf1fc851e",
"bytes": 288
},
"model.json": {
"sha256": "ef0ef4006c3e09d5db6e1b621256b3f7d6642f3a7b09cc34607cfbcca830c727",
"bytes": 134520
},
"model.rs": {
"sha256": "15f30f6bde655808fe754665c26d560e36f2a9bad340f346b09137d0d05045f5",
"bytes": 28762
},
"oa/activities/activity_oa_restore_work.arcadia": {
"sha256": "8c6cf1e9b6fdd118602659b6fb3ad0f1988ae700fcd548abede259da2c3a29e5",
"bytes": 1327
},
"oa/behavior/process_oa_assessment_procedure.arcadia": {
"sha256": "172c32c044ef4b5bc58a1f4635cc81f48dabb4014479b47dce7b25fedf2dbd0d",
"bytes": 697
},
"oa/behavior/process_oa_field_procedure.arcadia": {
"sha256": "d2552dc5383e2e91cb302a790364e197f663c2edc013a2ab1978789825c9c324",
"bytes": 1781
},
"oa/behavior/process_oa_response.arcadia": {
"sha256": "cf86f46fa5c5d70592ef43f1bc1cb4d968efd8add384ba88036bef6b88aa4abc",
"bytes": 3225
},
"oa/behavior/scenario_oa_conversation.arcadia": {
"sha256": "b25be524e98a35ebac5e4481b7609c027b32baf9605e8097f807560f94a77ca6",
"bytes": 1795
},
"oa/behavior/scenario_oa_full_scenario.arcadia": {
"sha256": "00a1edf2c9707a0eb62ac070c2d02467874f2c9c1f273cc6ddb53d6d65999a1c",
"bytes": 1261
},
"oa/behavior/state_machine_oa_monitor.arcadia": {
"sha256": "447c9ad1359f4a31ecf975ad07c0b08d8e7e03191fb0858e2fc56f377b223cd5",
"bytes": 2022
},
"oa/capabilities.arcadia": {
"sha256": "fc8012e5554350b12e1cb80080f8feab80d933c9b33c0f2a7bb500cb7d609936",
"bytes": 781
},
"oa/model.arcadia": {
"sha256": "f7cf914766ea73ec53b85e32d117ea9a9dba52d3e038246863541ae7069b1a15",
"bytes": 661
},
"oa/participants.arcadia": {
"sha256": "951764c14179f27c10e315acf2ea37d1fff54c77b8441e23addd239e8c715ce3",
"bytes": 1834
},
"oa/types.arcadia": {
"sha256": "9d0396fb82dd5733edd8d1cf52f968ca84906927c704f9cf0944a7fae215cf49",
"bytes": 788
},
"project.arcadia": {
"sha256": "b2674e6bf77cfe0f6f0ba79c81d2e96d92f39c02ca2c6266d80e91723bfb9fda",
"bytes": 1958
},
"README.md": {
"sha256": "113cfb1cf38a98b51bff60442d86a35d636a3d80ef206bece7d53d0aae67f2d5",
"bytes": 11137
},
"sa/behavior/process_sa_assessment_procedure.arcadia": {
"sha256": "73928ced61c06cbc08728d7956676a50fd4c05aa5b7f1ff4f29ce27a0b0f2088",
"bytes": 706
},
"sa/behavior/process_sa_field_procedure.arcadia": {
"sha256": "886d462af83110cbfa55dd232a667ea1446761234471357cbb878794e98e8768",
"bytes": 1790
},
"sa/behavior/process_sa_response.arcadia": {
"sha256": "041785fc22842423822431bd5e6e8d16094ebd0716965e7c765fb8c1d7549e8a",
"bytes": 3234
},
"sa/behavior/scenario_sa_conversation.arcadia": {
"sha256": "97276f5757ee9aa12a0dbd9d3ccd58174b3091162bb8bcce357cec20a45f5d85",
"bytes": 2127
},
"sa/behavior/scenario_sa_full_scenario.arcadia": {
"sha256": "e12fc406b99d60a2f7768aaa0b25ba560e8605f0b8e37f3a7cdd3b8443562b74",
"bytes": 1256
},
"sa/behavior/state_machine_sa_monitor.arcadia": {
"sha256": "05ce29af99424c491c47fe2450dc6f5f8ce995511c01ec7e17bb5855be3c9736",
"bytes": 2022
},
"sa/capabilities.arcadia": {
"sha256": "b6912fb3ece439912345fa71724acd462e716a1e5a88203a1058a5c3b2c20a4f",
"bytes": 781
},
"sa/functions/function_sa_audit_thresholds.arcadia": {
"sha256": "e5a04325d52183956dca814dd90f4e56c96c6b7db0f4f202f203ecb49c3e0f4f",
"bytes": 297
},
"sa/functions/function_sa_restore_work.arcadia": {
"sha256": "fddeb67308051325041fee641fe758ddf43345b7c47b66d433616ad07fdccdd6",
"bytes": 2576
},
"sa/model.arcadia": {
"sha256": "d431509251acb859fbb98733b6d18add952495e10a78703fbe8f31e40bc083c4",
"bytes": 661
},
"sa/participants.arcadia": {
"sha256": "780d2eb08b217b67b55febb3d34846f727b8ee9018df6c5741748647e36b2ff8",
"bytes": 4012
},
"sa/types.arcadia": {
"sha256": "101fc0fbd99f1101514aa7b6da4f8e535aae0bb94c9e2b9e7e6c151135b28660",
"bytes": 1227
},
"traceability.arcadia": {
"sha256": "cd3d7ebaf7d6aedf1eaa739afaf0268c487b05cc2685233568425ce0498cf338",
"bytes": 29510
},
"transition-before.json": {
"sha256": "2253e6434f741687e22327c37d520ed15c043bc36025498650bc2366bb6a874d",
"bytes": 35801
},
"transition-request.json": {
"sha256": "43b9a22e5f95ad3bc0ebd2478ead0e14406854abc989ae94ded9367b013d812a",
"bytes": 4276
},
"views/diagram_oa_allocation_view.arcadia": {
"sha256": "dfc0eb61e0e2aa5bda45524571fbfa3494f44ce19696f3e15e07438074a07bc7",
"bytes": 2176
},
"views/diagram_sa_allocation_view.arcadia": {
"sha256": "b78b43a26a82efb8fbd5374b09c329fa341f57b29f635d397b9ef8aede71d389",
"bytes": 2173
},
"views/diagram_sa_capability_view.arcadia": {
"sha256": "75e8dc9fb30f25d6f8fd3c6b595593ab4f98958a25798f961e336e0fac557649",
"bytes": 1620
},
"views/diagram_sa_service_view.arcadia": {
"sha256": "b08c84f3ea633e7c78dfdad3272f75415f6256cf3614b6d99bfd4f0269076c9b",
"bytes": 2209
},
"views/diagram_sa_state_view.arcadia": {
"sha256": "5f42f4c605e57b817d8400ed21f2b14bfc4e1592aebe941ff113767504c2b869",
"bytes": 1931
}
},
"changed_files": [
"oa/activities/activity_oa_restore_work.arcadia",
"traceability.arcadia"
],
"arcadia_files": 30
}
}
}

Some files were not shown because too many files have changed in this diff Show More